#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=0f0caeb66d6cf9f4d7785b66ddb4d7441f2db0ec

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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
xv8AnmBCvgB4AAA=
XSHAR_DATA
}

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