#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=1b6e3220f70b154e6abb78f175eff8604406c9c6

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