#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=72159ff52dda64483096ccc6b025df37322238ed

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

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