[Guix packaging] Gruesome #384

Open
opened 2026-08-24 17:30:28 +00:00 by htayj · 1 comment
htayj commented 2026-08-24 17:30:28 +00:00 (Migrated from github.com)

Candidate

  • Project: Gruesome
  • Candidate upstream/homepage: http://www.gamesofgrey.com
  • Discovery evidence: IRLDb
  • Reported license: GPL, Open source
  • License status: reported free license; verify exact terms and asset coverage against the pinned upstream source
  • Catalog note: IRLDb status: beta.

Scope

Package the independently playable roguelike from source. The canonical repository, latest stable release, source hash, complete dependency closure, and relationship to parent games or sibling forks must be established before implementation. Do not substitute an opaque prebuilt binary.

Research checklist

  • Identify the canonical maintained source repository and immutable release/commit.
  • Verify the exact FOSS license for code and every installed font, tile, sound, map, documentation, and bundled dependency.
  • Check GNU Guix and the channel audit set for an equivalent same-upstream package.
  • Determine the offline build system and source closure, including submodules or language registries.
  • Identify updater, telemetry, runtime download, mutable-state, and network behavior that needs Guix integration.

Acceptance checks

  • guix lint -L . <package> has no package-specific findings.
  • guix build -L . --no-grafts <package> succeeds without network access or opaque binaries.
  • Upstream tests run where available, and guix build -L . --no-grafts --check <package> verifies reproducibility.
  • A fresh HOME/XDG smoke test starts a real local game, exercises meaningful gameplay or save/load behavior, and proves no store writes.
  • Installed license and third-party notices cover the shipped closure and assets.

Imported from GitHub issue/PR. Originally posted by htayj on 2026-08-24T17:30:28Z.

## Candidate - Project: Gruesome - Candidate upstream/homepage: http://www.gamesofgrey.com - Discovery evidence: [IRLDb](https://forums.roguetemple.com/irldb/index.php?i=47e013c) - Reported license: [[GPL]], [[Open source]] - License status: reported free license; verify exact terms and asset coverage against the pinned upstream source - Catalog note: IRLDb status: beta. ## Scope Package the independently playable roguelike from source. The canonical repository, latest stable release, source hash, complete dependency closure, and relationship to parent games or sibling forks must be established before implementation. Do not substitute an opaque prebuilt binary. ## Research checklist - Identify the canonical maintained source repository and immutable release/commit. - Verify the exact FOSS license for code and every installed font, tile, sound, map, documentation, and bundled dependency. - Check GNU Guix and the channel audit set for an equivalent same-upstream package. - Determine the offline build system and source closure, including submodules or language registries. - Identify updater, telemetry, runtime download, mutable-state, and network behavior that needs Guix integration. ## Acceptance checks - `guix lint -L . <package>` has no package-specific findings. - `guix build -L . --no-grafts <package>` succeeds without network access or opaque binaries. - Upstream tests run where available, and `guix build -L . --no-grafts --check <package>` verifies reproducibility. - A fresh HOME/XDG smoke test starts a real local game, exercises meaningful gameplay or save/load behavior, and proves no store writes. - Installed license and third-party notices cover the shipped closure and assets. --- Imported from [GitHub issue/PR](https://github.com/htayj/guix-channel/issues/384). Originally posted by [htayj](https://github.com/htayj) on 2026-08-24T17:30:28Z.
htayj commented 2026-09-05 08:12:27 +00:00 (Migrated from github.com)

Goocastle recorded disposition: implementation-ready.

Created implementation ticket: #690.

Canonical upstream is the author's official Games of Grey archive directory, http://www.gamesofgrey.com/games/gruesome/; its latest release is gruesome0.0.3.zip (version 0.0.3, SHA-256 2fd4eed45954a6a3893aa39958871ef9c3a9d23ad87b98dab014c13dfb1388f). No canonical VCS repository, newer release, or same-upstream package/audit entry was found in this channel. The fixed archive contains source.pas, readme.txt, history.txt, license.txt, and a prebuilt Windows .exe; package only source.pas and documentation and never install the opaque .exe. license.txt is the complete GNU GPL Version 3, and source.pas identifies Darren Grey and the same license. There are no fonts, tiles, sounds, maps, submodules, registries, network/updater code, save files, or runtime downloads; focused source inspection finds only the standard Free Pascal crt unit and console I/O. Delivery: create tay/packages/gruesome.scm with gnu-build-system, no configure/check phases, native input fpc, and build source.pas with fpc -O2 -g-; install the real executable and upstream notices under share/doc/gruesome. Add a bash/expect launcher: normal invocation execs the real binary, while --smoke starts it in a PTY, supplies a deterministic name, begins the game, sends one '.' turn, then Q and the final acknowledgement key, verifies clean exit, and prints GRUESOME-SMOKE: gameplay-turn-ok. The wrapper's expect runtime input must be retained. Later acceptance must run upstream's compile-only check (no upstream test suite), guix lint, offline no-grafts build/check, and a fresh HOME/XDG smoke through bounded validation with no writable store paths, asserting that marker and the screenshot at .goocastle/evidence/issue-384.png; inspect the installed GPL notice and prove no archive .exe or store writes are present. Research did not claim a build because the host Guix daemon is intentionally unavailable.


Imported from GitHub comment. Originally posted by htayj on 2026-09-05T08:12:27Z.

<!-- goocastle-disposition:sequential-reviewer:384:1:implementation-ready --> Goocastle recorded disposition: implementation-ready. Created implementation ticket: #690. Canonical upstream is the author's official Games of Grey archive directory, http://www.gamesofgrey.com/games/gruesome/; its latest release is gruesome0.0.3.zip (version 0.0.3, SHA-256 2fd4eed45954a6a3893aa39958871ef9c3a9d23ad87b98dab014c13dfb1388f). No canonical VCS repository, newer release, or same-upstream package/audit entry was found in this channel. The fixed archive contains source.pas, readme.txt, history.txt, license.txt, and a prebuilt Windows .exe; package only source.pas and documentation and never install the opaque .exe. license.txt is the complete GNU GPL Version 3, and source.pas identifies Darren Grey and the same license. There are no fonts, tiles, sounds, maps, submodules, registries, network/updater code, save files, or runtime downloads; focused source inspection finds only the standard Free Pascal crt unit and console I/O. Delivery: create tay/packages/gruesome.scm with gnu-build-system, no configure/check phases, native input fpc, and build source.pas with fpc -O2 -g-; install the real executable and upstream notices under share/doc/gruesome. Add a bash/expect launcher: normal invocation execs the real binary, while --smoke starts it in a PTY, supplies a deterministic name, begins the game, sends one '.' turn, then Q and the final acknowledgement key, verifies clean exit, and prints GRUESOME-SMOKE: gameplay-turn-ok. The wrapper's expect runtime input must be retained. Later acceptance must run upstream's compile-only check (no upstream test suite), guix lint, offline no-grafts build/check, and a fresh HOME/XDG smoke through bounded validation with no writable store paths, asserting that marker and the screenshot at .goocastle/evidence/issue-384.png; inspect the installed GPL notice and prove no archive .exe or store writes are present. Research did not claim a build because the host Guix daemon is intentionally unavailable. --- Imported from [GitHub comment](https://github.com/htayj/guix-channel/issues/384#issuecomment-5550508946). Originally posted by [htayj](https://github.com/htayj) on 2026-09-05T08:12:27Z.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
tay/guix-channel#384
No description provided.