[Guix packaging] Land of Strangers #421
Labels
No labels
accessibility
bug
category:ai-tool
category:browser
category:command-line-tool
category:compiler-toolchain
category:desktop-application
category:developer-tool
category:editor-extension
category:emulator
category:font
category:game
category:input-accessibility
category:library-framework
category:mud-client
category:multimedia
category:networking-client
category:programming-language
category:roguelike
category:storage-media-tool
category:system-tool
category:terminal-application
complexity:high
complexity:low
complexity:medium
difficulty:blocked
difficulty:easy
difficulty:hard
difficulty:moderate
documentation
duplicate
enhancement
good first issue
gooflow:guix-package-high
gooflow:guix-package-moderate
gooflow:guix-package-quality-gates
gooflow:guix-research-disposition
gooflow:guix-runtime-evidence-refresh
help wanted
invalid
kind:disposition
kind:packaging
needs:license-investigation
priority:quick
question
ready-for-agent
state:available-elsewhere
state:blocked
state:deferred
state:out-of-scope
state:ready
state:research
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
tay/guix-channel#421
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Candidate
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
Acceptance checks
guix lint -L . <package>has no package-specific findings.guix build -L . --no-grafts <package>succeeds without network access or opaque binaries.guix build -L . --no-grafts --check <package>verifies reproducibility.Imported from GitHub issue/PR. Originally posted by htayj on 2026-08-24T17:31:21Z.
Goocastle recorded disposition: blocked.
Blocked. The local channel has no equivalent Land of Strangers package or matching package/runtime-proof history. Authoritative upstream is the AgingMinotaur itch.io project page (https://agingminotaur.itch.io/land-of-strangers); its retrievable Python source upload is LoSt_13_src, upload 1053783, version #13, SHA-256 88ee0005fbee1db17c99117e39ce21363db621d8125df7c080bb98287fd029cc. However, the source has no maintained repository, tag, or commit, and itch.io exposes this upload through a POST-generated cloud URL expiring after 60 seconds rather than a stable Guix-fetchable source URL. The archive Readme declares Python 2.7 plus pygame; imports are Python-2-era standard-library modules plus pygame, with no submodules or language registry, and no updater, telemetry, or network code was found. The channel has python-2/python-pygame precedents, but the Guix daemon is unavailable here, so no build proof is claimed. license.txt grants GPLv3 for original code/assets and names Linux Biolinum, Smokum, and IMFell separately, but for IMFell_S.ttf and IMFell_R.ttf it gives only “Bequeathed to the University of Oxford by John Fell in 1686,” not an exact license/notice tied to the pinned files; external font catalogs identifying IM FELL English/SC as OFL do not establish the bundled-file provenance. Separately, LoSt changes to code and runs
python main.py;-q/--quickstartskips the menu but remains an interactive game loop, and there is no deterministic headless gameplay/save-load invocation with a single-line success marker. The program also creates and writes ~/.LoSt/save, ~/.LoSt/log, and ~/.LoSt/options, so a wrapper contract is required to isolate mutable state. Unblock only when upstream provides a stable immutable source URL or repository revision, the exact bundled-font provenance and redistribution notices are verified, and a reviewed wrapper/runtime contract can run meaningful isolated gameplay or save/load and terminate with an asserted marker; then retain the archive hash and validate the Python 2.7/pygame inputs against the channel.Imported from GitHub comment. Originally posted by htayj on 2026-09-10T23:27:32Z.