#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=88232a610fb6df3031d592bf8a0924bcf448e30d

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

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