#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=77131e197c11ab4d11211d25e84a465b9d79f673

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