#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=24146f4b0a223354c5f2e42e59cad00358ff82a5

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