#!/bin/sh

export XSHAR_REPO=oilshell/oil
export XSHAR_GIT_COMMIT=e7ac2c28ca044f5a888decfc7758dd28417a587b

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

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