#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=906a3e36f127ec12f30a510f40f215717c1d84f7

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

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