[Guix packaging] Yet Another Pixel Dungeon #592

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

Candidate

Scope

Package the independently playable roguelike variant 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:35:28Z.

## Candidate - Project: Yet Another Pixel Dungeon - Candidate upstream/homepage: https://github.com/ConsideredHamster/YetAnotherPixelDungeon - Discovery evidence: [Variant catalogs](https://en.wikipedia.org/wiki/Pixel_Dungeon) - Reported license: GPL-3.0 - License status: reported free license; verify exact terms and asset coverage against the pinned upstream source ## Scope Package the independently playable roguelike variant 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/592). Originally posted by [htayj](https://github.com/htayj) on 2026-08-24T17:35:28Z.
Owner

Goocastle recorded disposition: blocked.

Blocked: Yet Another Pixel Dungeon upstream https://github.com/ConsideredHamster/YetAnotherPixelDungeon is not a source-buildable Linux Guix package in its canonical form. The latest stable release is tag 0.3.4, fixed commit 8cfaed92ec3133513acf03b1cb5a13017c3c52c5 (tree 41166bf25a26aa57bcfabd17b28dcb687f2a58d3, authored 2024-05-18). At that revision, settings.gradle includes only ':app' and ':libs'; app/build.gradle applies com.android.application, requires Android SDK 33/build-tools 30.0.3, and depends only on project(':libs'). AndroidManifest.xml declares only the YetAnotherPixelDungeon launcher Activity with an OpenGL ES 2.0 requirement, and the inspected source tree has no desktop module or desktop/native backend entry point. The local channel has no equivalent package or prior issue/runtime-proof history for this upstream. License evidence at revision 8cfaed9 is a root LICENSE.txt containing GNU GPL version 3, but it contains no separate asset grant and no nested license/notice/credits files were found in the tree; asset redistribution therefore still requires a final shipping-closure review if a legal desktop port is produced. Guix-daemon-backed building was unavailable by phase boundary, so no build was attempted; this limitation does not alter the disqualifying platform finding. Exact blockers: (1) upstream 0.3.4 provides no Linux desktop runtime or source build target, so an independently playable package cannot be derived from the canonical source without a separate port; and (2) there is no meaningful, safe noninteractive runtime contract, and the normal Android activity cannot satisfy an isolated XDG/HOME Linux smoke proof without an unproven Android runtime/emulator strategy. Unblocked only by an upstream or explicitly justified fork/port that adds a complete Linux desktop backend and source-build target at a fixed revision, with established provenance/licensing for all code and assets and a deterministic observable gameplay or save/load invocation suitable for the runtime-proof contract.

<!-- goocastle-disposition:sequential-reviewer:592:1:blocked --> Goocastle recorded disposition: blocked. Blocked: Yet Another Pixel Dungeon upstream https://github.com/ConsideredHamster/YetAnotherPixelDungeon is not a source-buildable Linux Guix package in its canonical form. The latest stable release is tag 0.3.4, fixed commit 8cfaed92ec3133513acf03b1cb5a13017c3c52c5 (tree 41166bf25a26aa57bcfabd17b28dcb687f2a58d3, authored 2024-05-18). At that revision, settings.gradle includes only ':app' and ':libs'; app/build.gradle applies com.android.application, requires Android SDK 33/build-tools 30.0.3, and depends only on project(':libs'). AndroidManifest.xml declares only the YetAnotherPixelDungeon launcher Activity with an OpenGL ES 2.0 requirement, and the inspected source tree has no desktop module or desktop/native backend entry point. The local channel has no equivalent package or prior issue/runtime-proof history for this upstream. License evidence at revision 8cfaed9 is a root LICENSE.txt containing GNU GPL version 3, but it contains no separate asset grant and no nested license/notice/credits files were found in the tree; asset redistribution therefore still requires a final shipping-closure review if a legal desktop port is produced. Guix-daemon-backed building was unavailable by phase boundary, so no build was attempted; this limitation does not alter the disqualifying platform finding. Exact blockers: (1) upstream 0.3.4 provides no Linux desktop runtime or source build target, so an independently playable package cannot be derived from the canonical source without a separate port; and (2) there is no meaningful, safe noninteractive runtime contract, and the normal Android activity cannot satisfy an isolated XDG/HOME Linux smoke proof without an unproven Android runtime/emulator strategy. Unblocked only by an upstream or explicitly justified fork/port that adds a complete Linux desktop backend and source-build target at a fixed revision, with established provenance/licensing for all code and assets and a deterministic observable gameplay or save/load invocation suitable for the runtime-proof contract.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
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#592
No description provided.