#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=59479a50ff4c5bc38ee1225e45f8429ba128cdf0

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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
8T8vtAF/AHgAAA==
XSHAR_DATA
}

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