#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=f8d4906a94d21569714c4ed683cfb3d07b516aa7

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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
zzj+DVhGBTEAeAAA
XSHAR_DATA
}

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