#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=54392e4b16e4d5414a3282b9781113399c1a0684

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