#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=71be5d97483cfb7d3812c2c245dcf86d55a827d6

name=$(basename $0)  # e.g. hello-xshar.xshar
default_dir=/tmp/$name.$$

# User can override this, and then _build/oils.sh can use SKIP_REBUILD to make
# it faster.  Multiple runs without compiling.

export XSHAR_DIR=${XSHAR_DIR:-$default_dir}

change_dir() {
  mkdir -p "$XSHAR_DIR"
  cd "$XSHAR_DIR"
}

extract_data() {
  base64 -d <<'XSHAR_DATA' | tar -x -z
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
XSHAR_DATA
}

change_dir
extract_data
devtools/hello-xshar.sh "$@"