#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=a626773079c550a2f25f768688ce51f4dcdb66d5

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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
B+u4NWcAeAAA
XSHAR_DATA
}

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