#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=b3638228e2697c096d00364e52f8272c7379d137

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