#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=10b6a70feea61977cf251a5302d50f87da81520b

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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
bR7AAHgAAA==
XSHAR_DATA
}

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