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