#!/bin/sh export XSHAR_REPO=oilshell/oil export XSHAR_GIT_COMMIT=16c4ded5a9e659138ab58147d0eee2f83d5e8624 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 "$@"