Adding modding folder with a hacked build.
This commit is contained in:
Executable
+46
@@ -0,0 +1,46 @@
|
||||
#!/usr/bin/env bash
|
||||
# Runs the hacked build-image against this folder to compile hacked/ (the
|
||||
# vendored InkyBlackness HackEd snapshot, see README.md) for Linux and
|
||||
# Windows, entirely offline - every Go module dependency it needs was already
|
||||
# fetched into the image by ./hacked-build-image.sh.
|
||||
#
|
||||
# Output lands in dist/ (both platforms, packaged as .tgz/.zip).
|
||||
#
|
||||
# Usage: ./hacked-build-run-image.sh [command...]
|
||||
# With no arguments, runs the image's baked-in build-hacked.sh (its default
|
||||
# CMD). Pass a command (e.g. `bash`) to get a shell in the build environment
|
||||
# instead, useful for debugging a failed build.
|
||||
set -euo pipefail
|
||||
|
||||
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||
ROOT="$(pwd)"
|
||||
|
||||
fail() { echo "PREFLIGHT FAIL: $*" >&2; exit 1; }
|
||||
|
||||
command -v docker >/dev/null 2>&1 \
|
||||
|| fail "docker not found in PATH"
|
||||
|
||||
IMAGE="${HACKED_REGISTRY_IMAGE:-questshock/hacked-builder}"
|
||||
if [ -f "$ROOT/../registry.env" ]; then
|
||||
# shellcheck disable=SC1091
|
||||
source "$ROOT/../registry.env"
|
||||
IMAGE="${HACKED_REGISTRY_IMAGE:-$IMAGE}"
|
||||
fi
|
||||
|
||||
IMAGE_TAG="$(<"$ROOT/hacked-build-image/VERSION")"
|
||||
[ -n "$IMAGE_TAG" ] || fail "hacked-build-image/VERSION is empty"
|
||||
IMAGE="$IMAGE:$IMAGE_TAG"
|
||||
|
||||
docker image inspect "$IMAGE" >/dev/null 2>&1 \
|
||||
|| fail "$IMAGE not found locally - run ./hacked-build-image.sh first"
|
||||
|
||||
TTY_FLAGS="-i"
|
||||
[ -t 1 ] && TTY_FLAGS="-it"
|
||||
|
||||
# shellcheck disable=SC2086
|
||||
docker run --rm $TTY_FLAGS \
|
||||
-v "$ROOT:/workspace" \
|
||||
-e HOST_UID="$(id -u)" \
|
||||
-e HOST_GID="$(id -g)" \
|
||||
"$IMAGE" \
|
||||
"$@"
|
||||
Reference in New Issue
Block a user