...
1#!/bin/bash
2
3set -eo pipefail
4
5if [ -z "${HERMIT_STATE_DIR}" ]; then
6 case "$(uname -s)" in
7 Darwin)
8 export HERMIT_STATE_DIR="${HOME}/Library/Caches/hermit"
9 ;;
10 Linux)
11 export HERMIT_STATE_DIR="${XDG_CACHE_HOME:-${HOME}/.cache}/hermit"
12 ;;
13 esac
14fi
15
16export HERMIT_DIST_URL="${HERMIT_DIST_URL:-https://github.com/cashapp/hermit/releases/download/stable}"
17HERMIT_CHANNEL="$(basename "${HERMIT_DIST_URL}")"
18export HERMIT_CHANNEL
19export HERMIT_EXE=${HERMIT_EXE:-${HERMIT_STATE_DIR}/pkg/hermit@${HERMIT_CHANNEL}/hermit}
20
21if [ ! -x "${HERMIT_EXE}" ]; then
22 echo "Bootstrapping ${HERMIT_EXE} from ${HERMIT_DIST_URL}" 1>&2
23 curl -fsSL "${HERMIT_DIST_URL}/install.sh" | /bin/bash 1>&2
24fi
25
26exec "${HERMIT_EXE}" --level=fatal exec "$0" -- "$@"
View as plain text