#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=f43463b3011c9bc641ad174934080e56934731f2

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