#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=4305f5e71e7635e104dc46924c26d2295ca2a6f6

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