#!/bin/sh export XSHAR_REPO=oilshell/oil export XSHAR_GIT_COMMIT=7ebe52d04f3e7f870bceef397c243a263c0b6ccd 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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 rzj+B0w7fPsAeAAA XSHAR_DATA } change_dir extract_data devtools/hello-xshar.sh "$@"