#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=ec2ca91628f48da611a7db936e0319c2f8a38b0e

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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
+B+pb/lDAHgAAA==
XSHAR_DATA
}

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