#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=18ddc70eb4f1d99165051d23a27f0de35a46cc6b

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 "$@"