[Guix packaging] potatomushclient/potato #262

Closed
opened 2026-08-22 05:13:36 +00:00 by htayj · 1 comment
htayj commented 2026-08-22 05:13:36 +00:00 (Migrated from github.com)

Candidate

User-facing deliverable

Cross-platform graphical MUSH client written in Tcl/Tk, with scripting and standard text-game client features.

Packaging approach

Package the Tcl/Tk source tree and its runtime modules, install a launcher and desktop integration, and keep writable profiles outside the store.

Known blockers and investigation points

Audit bundled Tcl modules/assets and determine whether the upstream Starkit packaging should be reproduced or replaced with a plain Guix launcher.

Acceptance checks

  • Pin an immutable upstream release or commit and record a real Guix source hash.
  • Build without network access using Guix-provided dependencies; do not download runtimes or plugins during the build.
  • Preserve all applicable project and bundled-component license notices.
  • Verify the installed launcher/version output and run an offline protocol smoke test against a local fake MUD endpoint where the platform permits it.
  • Keep profiles, logs, maps, plugins, and other mutable state outside the store.

Existing-package coverage

Checked on 2026-08-22 against GNU Guix, Nonguix, Guix Science, Guix HPC, Guix Past, Guix R Us, and RDE, plus all states of this repository issue tracker. No same-upstream package or existing ticket was found. GNU Guix already packages TinTin++ and POWWOW; this candidate is distinct.


Imported from GitHub issue/PR. Originally posted by htayj on 2026-08-22T05:13:36Z.

## Candidate - Canonical upstream: [https://github.com/potatomushclient/potato](https://github.com/potatomushclient/potato) - Packaging target: 2.0.0b19 (2025-05-12) - Category: MUD client - Tags: mud-client, desktop, MUSH, Tcl, Tk, cross-platform - Primary language/build ecosystem: Tcl/Tk with Starkit-style application layout - License: MIT/Expat - License evidence: https://github.com/potatomushclient/potato/blob/master/potato.vfs/LICENSE - Expected Guix packaging difficulty: moderate ## User-facing deliverable Cross-platform graphical MUSH client written in Tcl/Tk, with scripting and standard text-game client features. ## Packaging approach Package the Tcl/Tk source tree and its runtime modules, install a launcher and desktop integration, and keep writable profiles outside the store. ## Known blockers and investigation points Audit bundled Tcl modules/assets and determine whether the upstream Starkit packaging should be reproduced or replaced with a plain Guix launcher. ## Acceptance checks - Pin an immutable upstream release or commit and record a real Guix source hash. - Build without network access using Guix-provided dependencies; do not download runtimes or plugins during the build. - Preserve all applicable project and bundled-component license notices. - Verify the installed launcher/version output and run an offline protocol smoke test against a local fake MUD endpoint where the platform permits it. - Keep profiles, logs, maps, plugins, and other mutable state outside the store. ## Existing-package coverage Checked on 2026-08-22 against GNU Guix, Nonguix, Guix Science, Guix HPC, Guix Past, Guix R Us, and RDE, plus all states of this repository issue tracker. No same-upstream package or existing ticket was found. GNU Guix already packages TinTin++ and POWWOW; this candidate is distinct. --- Imported from [GitHub issue/PR](https://github.com/htayj/guix-channel/issues/262). Originally posted by [htayj](https://github.com/htayj) on 2026-08-22T05:13:36Z.
htayj commented 2026-08-22 09:46:46 +00:00 (Migrated from github.com)

Implemented and published in signed commit 0e1b2a61984bd6c196bf9d780d32859bac230e1d.

Evidence:

  • Packages tag 2.0.0b19 at commit 8f187da3ceddcc0e355f0f14d2060ed381d73bc3, NAR hash 17cbcrrraba9cn3zq9px1fls4188ifgxvhf4azgg1iydz95imb6w.
  • Installs the applicable Expat and verbatim Tcl/Tk/Tcllib license terms; foreign Windows/macOS binaries and the Linux self-compiling helper are removed.
  • Real output: /gnu/store/7hx4692w9xs2il3sacvc4a4i696npld6-potato-2.0.0b19.
  • TLS is deliberately disabled because TclTLS lacks hostname validation and upstream accepted invalid certificates. Ambient TCLLIBPATH cannot re-enable it.
  • Cleartext background update scheduling is forcibly disabled after user-profile loading.
  • Reproducibility build and focused no-network lint passed. Xvfb smoke covers truly empty HOME startup, hostile Tcl paths, and configured loopback fake-MUD protocol completion. It contacts no public MUD.
  • Independent security/license review passed.

Imported from GitHub comment. Originally posted by htayj on 2026-08-22T09:46:46Z.

Implemented and published in signed commit `0e1b2a61984bd6c196bf9d780d32859bac230e1d`. Evidence: - Packages tag 2.0.0b19 at commit `8f187da3ceddcc0e355f0f14d2060ed381d73bc3`, NAR hash `17cbcrrraba9cn3zq9px1fls4188ifgxvhf4azgg1iydz95imb6w`. - Installs the applicable Expat and verbatim Tcl/Tk/Tcllib license terms; foreign Windows/macOS binaries and the Linux self-compiling helper are removed. - Real output: `/gnu/store/7hx4692w9xs2il3sacvc4a4i696npld6-potato-2.0.0b19`. - TLS is deliberately disabled because TclTLS lacks hostname validation and upstream accepted invalid certificates. Ambient `TCLLIBPATH` cannot re-enable it. - Cleartext background update scheduling is forcibly disabled after user-profile loading. - Reproducibility build and focused no-network lint passed. Xvfb smoke covers truly empty HOME startup, hostile Tcl paths, and configured loopback fake-MUD protocol completion. It contacts no public MUD. - Independent security/license review passed. --- Imported from [GitHub comment](https://github.com/htayj/guix-channel/issues/262#issuecomment-5379616156). Originally posted by [htayj](https://github.com/htayj) on 2026-08-22T09:46:46Z.
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#262
No description provided.