#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=d49c627f3d3c4c59ad0f763940538dd2394fba7e

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