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