#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=5ec1f256a4c5c268898c25a9e4fca7b250f0cbdf

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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
/27jfwDbqMerAHgAAA==
XSHAR_DATA
}

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