#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=cd4cf4bfdd30e78045922b7c33338cf789b56d56

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

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