#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=96850d181b90065a05de36909a5fe1dd8fdec53d

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

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