#!/usr/bin/env bash # Gera o gatemender.pgapp do Gatemender 0.2 (Erik Letson, Librejam 2020) a partir do zip do autor (hmagellan.com, # hoje fora do ar; a copia do Internet Archive e identica byte a byte, sha256 abaixo), com um patch # (gatemender/web.patch): so o laco principal assincrono (exigido pelo pygbag). O jogo grava os recordes em hs.json # mas nunca os mostra, entao nao ha o que persistir. Fora do .pgapp: os .swp de editor e os .pyc do zip. Zip # deterministico (Builds/pgapp.py). # # src/FredGames.Bundler/Builds/build-gatemender.sh # # Saida: artifacts/build/gatemender-0.2/gatemender.pgapp set -euo pipefail SHA256=f33ceae5d161db7fdf3337899aca8b6fb9a7661dc89bda7b3573aeb7e3836c9a here="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" root="$(git -C "$here" rev-parse --show-toplevel 2>/dev/null || pwd)" out="$root/artifacts/build/gatemender-0.2" cache="$root/artifacts/build/cache" mkdir -p "$cache" zip="$cache/gatemender-0.2.zip" [ -f "$zip" ] || curl -fsSL "https://web.archive.org/web/2024id_/http://hmagellan.com/dl/gatemender-0.2.zip" -o "$zip" echo "$SHA256 $zip" | shasum -a 256 -c - rm -rf "$out" mkdir -p "$out/tree" unzip -q "$zip" -d "$out/tree" patch -d "$out/tree/gatemender" -p1 < "$here/gatemender/web.patch" python3 -I "$here/pgapp.py" "$out/tree/gatemender" "$out/gatemender.pgapp" shasum -a 256 "$out/gatemender.pgapp"