#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=f502c05b18e790065c0a5cfbdcb70245f7958c81

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

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