#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=96df61ee055bc6db32e61c1e025b047ffe965e6f

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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
P+L4D6YH7vQAeAAA
XSHAR_DATA
}

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