#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=d612225a56fb6248d86e86362751a5111e3d5192

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

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