#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=2e7a7ab9289f0835bd02604f4cefd307363452bd

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 "$@"