#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=5451eba4dce2d900646c39bcb34ef51ab28b46f3

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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
G/8DFIWEAAB4AAA=
XSHAR_DATA
}

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