#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=d30c9ffc34d9262eff9cd7b7bb311aaef3e79fba

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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
A4TqwqgAeAAA
XSHAR_DATA
}

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