#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=bbf3899737819f26f47a0ee0bf4ab9e887a9b0a3

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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
3cb/AKTs3BUAeAAA
XSHAR_DATA
}

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