mirror of
https://github.com/ghostty-org/ghostty.git
synced 2025-04-22 01:18:36 +03:00

This fixes a regression in 1.1.1/1.1.2 where our PACKAGING docs mention using `fetch-zig-cache.sh` but it was removed. This commit adds it back, generating its contents from the build.zig.zon file (via zon2nix which we use for our Nix packaging). For packagers, there are no dependency changes: you still need Zig and POSIX sh. For release time, Ghostty has a new dependency on `jq` but otherwise the release process is the same. The check-zig-cache.sh script is updated to generate the new build.zig.zon.txt file.
28 lines
831 B
Bash
Executable File
28 lines
831 B
Bash
Executable File
#!/bin/sh
|
|
|
|
# NOTE THIS IS A TEMPORARY SCRIPT TO SUPPORT PACKAGE MAINTAINERS.
|
|
#
|
|
# A future Zig version will hopefully fix the issue where
|
|
# `zig build --fetch` doesn't fetch transitive dependencies[1]. When that
|
|
# is resolved, we won't need any special machinery for the general use case
|
|
# at all and packagers can just use `zig build --fetch`.
|
|
#
|
|
# [1]: https://github.com/ziglang/zig/issues/20976
|
|
|
|
if [ -z ${ZIG_GLOBAL_CACHE_DIR+x} ]
|
|
then
|
|
echo "must set ZIG_GLOBAL_CACHE_DIR!"
|
|
exit 1
|
|
fi
|
|
|
|
# Go through each line of our build.zig.zon.txt and fetch it.
|
|
SCRIPT_PATH="$(CDPATH= cd -- "$(dirname -- "$0")" && pwd)"
|
|
ZON_TXT_FILE="$SCRIPT_PATH/../../build.zig.zon.txt"
|
|
while IFS= read -r url; do
|
|
echo "Fetching: $url"
|
|
zig fetch "$url" >/dev/null 2>&1 || {
|
|
echo "Failed to fetch: $url" >&2
|
|
exit 1
|
|
}
|
|
done < "$ZON_TXT_FILE"
|