[Guix packaging] mudpuppy-rs/mudpuppy #257

Closed
opened 2026-08-22 05:13:32 +00:00 by htayj · 2 comments
htayj commented 2026-08-22 05:13:32 +00:00 (Migrated from github.com)

Candidate

User-facing deliverable

Terminal MUD client with a customizable TUI and embedded Python scripting.

Packaging approach

Package a pinned commit and complete Cargo lock graph offline; wire Python embedding and runtime modules explicitly.

Known blockers and investigation points

No release, mixed Rust/Python build, and interactive behavior require a local fake-server smoke test.

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:32Z.

## Candidate - Canonical upstream: [https://github.com/mudpuppy-rs/mudpuppy](https://github.com/mudpuppy-rs/mudpuppy) - Packaging target: current main (active; no tagged release) - Category: MUD client - Tags: mud-client, terminal, TUI, Rust, Python, scripting - Primary language/build ecosystem: Rust/Cargo with Python integration - License: MIT - License evidence: https://github.com/mudpuppy-rs/mudpuppy/blob/main/LICENSE - Expected Guix packaging difficulty: moderate ## User-facing deliverable Terminal MUD client with a customizable TUI and embedded Python scripting. ## Packaging approach Package a pinned commit and complete Cargo lock graph offline; wire Python embedding and runtime modules explicitly. ## Known blockers and investigation points No release, mixed Rust/Python build, and interactive behavior require a local fake-server smoke test. ## 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/257). Originally posted by [htayj](https://github.com/htayj) on 2026-08-22T05:13:32Z.
htayj commented 2026-08-22 10:28:11 +00:00 (Migrated from github.com)

Implemented and published in signed commit 39c843139d.

The channel now packages immutable upstream commit 3199e83e6173df178f17906b721630d927789c87 with its complete 283-crate Cargo.lock graph, builds and tests offline against Guix Python, preserves the MIT and locked-component notices, and keeps mutable state in user-selected config/data directories.

Validation completed:

  • real no-substitutes build; 29/29 upstream tests
  • reproducible guix build --check
  • focused no-network lint
  • three consecutive fresh-HOME PTY smokes against loopback-only fixtures
  • embedded Python handler response after observable Telnet DO CHARSET setup
  • self-signed TLS peer rejected with a certificate-verification alert and matching application log
  • representative Rustls Apache/MIT notices present in the installed output
  • exact staged/commit secret scans clean
  • remote SHA and GitHub signature verification confirmed

Imported from GitHub comment. Originally posted by htayj on 2026-08-22T10:28:11Z.

Implemented and published in signed commit 39c843139d1c5cee18642b2dfeb70ad626187f26. The channel now packages immutable upstream commit 3199e83e6173df178f17906b721630d927789c87 with its complete 283-crate Cargo.lock graph, builds and tests offline against Guix Python, preserves the MIT and locked-component notices, and keeps mutable state in user-selected config/data directories. Validation completed: - real no-substitutes build; 29/29 upstream tests - reproducible guix build --check - focused no-network lint - three consecutive fresh-HOME PTY smokes against loopback-only fixtures - embedded Python handler response after observable Telnet DO CHARSET setup - self-signed TLS peer rejected with a certificate-verification alert and matching application log - representative Rustls Apache/MIT notices present in the installed output - exact staged/commit secret scans clean - remote SHA and GitHub signature verification confirmed --- Imported from [GitHub comment](https://github.com/htayj/guix-channel/issues/257#issuecomment-5379764505). Originally posted by [htayj](https://github.com/htayj) on 2026-08-22T10:28:11Z.
htayj commented 2026-08-22 10:28:18 +00:00 (Migrated from github.com)

Closing as completed in the published channel.


Imported from GitHub comment. Originally posted by htayj on 2026-08-22T10:28:18Z.

Closing as completed in the published channel. --- Imported from [GitHub comment](https://github.com/htayj/guix-channel/issues/257#issuecomment-5379764915). Originally posted by [htayj](https://github.com/htayj) on 2026-08-22T10:28:18Z.
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#257
No description provided.