#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=8fcca2719616865e88d0b9baa52cc735ab836caf

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

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