From ae9e326134413af50f65cd0098b641e82d6be8d8 Mon Sep 17 00:00:00 2001 From: igneum-josh <337424239+igneum-josh@users.noreply.github.com> Date: Mon, 5 Oct 2026 09:01:17 +0100 Subject: [PATCH] build inputs: ship igneum-pow beside the zip root and the coin image the engine embeds The first PC build (job build-20261005-075300) failed in 52 s: the node's crates depend on ../../../../igneum-pow, which the zip did not carry, and the engine embeds brand/igneum-coin-1024.png, which the staged brand/ lacked. Co-Authored-By: Claude Fable 5.1 --- packaging/windows/push-build-inputs.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packaging/windows/push-build-inputs.sh b/packaging/windows/push-build-inputs.sh index 9b3bc7bc2..67ed665ea 100755 --- a/packaging/windows/push-build-inputs.sh +++ b/packaging/windows/push-build-inputs.sh @@ -16,6 +16,8 @@ # app/igneum-app/ the engine crate (src, ui, resources, build.rs, Cargo.lock), without target/ # brand/icons/ igneum.ico and the icon sources (build.rs links the coin icon on the Windows target) # proto-cuda/ the worker sources (without nvrtc/redist, 90 MB of NVIDIA DLLs the job does not need) +# ../igneum-pow/ beside the zip root (the node's crates depend on ../../../../igneum-pow, which resolves to +# /igneum-pow when the zip is unpacked); without it every node build fails at once # Outputs the job returns: igneumd, igneum-miner (Linux and Windows), igneum-app (Windows; Linux when it builds). # # Reads: ~/.config/igneum/dl-token, ~/.config/igneum/dlsite-dir (IGNEUM_DLSITE overrides), ~/.config/igneum/vercel @@ -81,7 +83,11 @@ if [ "$WITH_APP" = 1 ]; then echo "packing app/igneum-app ($APP_VERSION) and brand/icons" rsync -a --exclude 'target' --exclude '.DS_Store' "$ROOT/app/igneum-app/" "$STAGE/app/igneum-app/" rsync -a --exclude '.DS_Store' "$ROOT/brand/icons/" "$STAGE/brand/icons/" + cp "$ROOT/brand/igneum-coin-1024.png" "$STAGE/brand/" # app/igneum-app/src/server.rs embeds ../../../brand/igneum-coin-1024.png fi +echo "packing igneum-pow (the node's path dependency ../../../../igneum-pow, a sibling of the zip root)" +[ -f "$ROOT/igneum-pow/Cargo.toml" ] || { echo "no $ROOT/igneum-pow/Cargo.toml" >&2; exit 1; } +rsync -a --exclude 'target' --exclude 'target-*' --exclude '.DS_Store' "$ROOT/igneum-pow/" "$TMP/igneum-pow/" echo "packing proto-cuda (without nvrtc/redist)" rsync -a --exclude 'nvrtc/redist' --exclude '.DS_Store' --exclude '*.exe' --exclude '*.dll' "$ROOT/proto-cuda/" "$STAGE/proto-cuda/" @@ -108,7 +114,7 @@ json.dump(m, open(out, "w"), indent=2, sort_keys=True) PY rm -f "$OUT" -(cd "$TMP" && zip -qr "$OUT" "igneum-build-inputs" -x '*.DS_Store') +(cd "$TMP" && zip -qr "$OUT" "igneum-build-inputs" "igneum-pow" -x '*.DS_Store') SUM="$(shasum -a 256 "$OUT" | awk '{print $1}')" SIZE="$(stat -f %z "$OUT")" printf '%s\n' "$SUM" > "${OUT%.zip}.sha256"