#!/usr/bin/env bash # Gera o fujo.pgapp do Fujo (Radomir Dopieralski, 2014: codigo e graficos; musica de Joanna Piechowiak; tudo CC BY-SA 4.0) # a partir do commit 1d5cf99 do repositorio (codeberg.org/osgames/fujo), com o patch fujo/web.patch: porta de Python 2 para # 3 (xrange, parametros-tupla, divisao inteira, .next(), StringIO, listas no lugar de views), lacos assincronos (pygbag), # a janela de 480x480 (o original abria 320x200, pequena demais para a arte), save em /saves e "Exit" voltando ao titulo. # Um arquivo trocado: a fonte PF Ronda Seven Bold (Yusuke Kamiyamane, "All rights reserved" nos metadados) vira a # Jersey 15 (OFL 1.1, google/fonts), com a OFL junto. Fora do pacote: arquivos de empacotamento do Python 2. # Zip deterministico (Builds/pgapp.py). # # src/FredGames.Bundler/Builds/build-fujo.sh # # Saida: artifacts/build/fujo-1d5cf99/fujo.pgapp set -euo pipefail COMMIT=1d5cf9938d4eac78abb6fe96e1d699f7f4f63013 SHA256=8901eacc94b181e9ed281cfb19caca0df71043c581a0e912825dd0fe962d5124 FONTS_COMMIT=2eb0b48d5f760f62e286216f0859a8c540dbc1bd FONT_SHA256=dbe00479d62bb3b9fcf0d28f88a021ffc4bd7b01d6ad5c6f74b5fa371bb210ed OFL_SHA256=436d5836064cec796c7ddde6fb4faeabdb6f2f17443a24a30d0c38b75d13f922 here="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" root="$(git -C "$here" rev-parse --show-toplevel 2>/dev/null || pwd)" out="$root/artifacts/build/fujo-1d5cf99" cache="$root/artifacts/build/cache" mkdir -p "$cache" fetch() { [ -f "$cache/$1" ] || curl -fsSL "$2" -o "$cache/$1"; echo "$3 $cache/$1" | shasum -a 256 -c -; } fetch fujo-1d5cf99.tar.gz "https://codeberg.org/osgames/fujo/archive/$COMMIT.tar.gz" "$SHA256" fetch Jersey15-Regular.ttf "https://raw.githubusercontent.com/google/fonts/$FONTS_COMMIT/ofl/jersey15/Jersey15-Regular.ttf" "$FONT_SHA256" fetch Jersey15-OFL-2eb0b48.txt "https://raw.githubusercontent.com/google/fonts/$FONTS_COMMIT/ofl/jersey15/OFL.txt" "$OFL_SHA256" rm -rf "$out" mkdir -p "$out/tree" tar -xzf "$cache/fujo-1d5cf99.tar.gz" -C "$out/tree" --strip-components 1 cd "$out/tree" rm -rf .hgignore __main__.py start.py hashbang Makefile MANIFEST.in setup.py fujo.ico fujo/__main__.py fujo/pf_ronda_seven_bold.ttf patch -p1 < "$here/fujo/web.patch" cp "$cache/Jersey15-Regular.ttf" fujo/Jersey15-Regular.ttf cp "$cache/Jersey15-OFL-2eb0b48.txt" fujo/Jersey15-OFL.txt find . -name __pycache__ -prune -exec rm -rf {} \; python3 -I "$here/pgapp.py" "$out/tree" "$out/fujo.pgapp" shasum -a 256 "$out/fujo.pgapp"