Status (updated at the v0.16 feature freeze)
Done: the Linux baseline and hardening (#279, #281, #284) and v0.16 Linux/WSL work run the canonical suite on Ubuntu 24.04 (Node 22/26) in CI; findings are in docs/architecture/v013-linux-foundations.md.
Remaining scope (physical): the "attempt to run NMSh on a Linux machine or VM" acceptance item: install/build, launch with real zsh, sessions, notifications (notify-send), clipboard (wl-copy / xclip), and WSL 2 under Windows Terminal. CI on Ubuntu is not physical validation.
Goal
Investigate what would be required to run NMSh on Linux, and whether the existing architecture translates cleanly.
Why
Linux is the preferred first non-macOS platform because the POSIX PTY and zsh model maps naturally to the NMSh architecture. There are no fundamental architectural barriers, but testing and packaging have not been done.
Research scope
- Does the PTY/zsh session work on Linux without modification?
- Are there Node.js PTY library differences on Linux?
- Are there any macOS-specific APIs in NMSh that need Linux equivalents?
- What terminal hosts are relevant for Linux testing (GNOME Terminal, Konsole, Alacritty, Kitty, WezTerm)?
- What packaging/distribution approach makes sense for Linux (AppImage, Flatpak, Snap, AUR, deb)?
- Are there any keyboard protocol or ANSI handling differences to test?
Non-goals
- Full Linux release in this issue
- CI infrastructure for Linux (separate concern)
Acceptance criteria (research)
- Document: what works today on Linux with no changes
- Document: what requires changes or investigation
- Rough estimate of porting effort
- Recommended first Linux terminal host to target
Human verification
- Attempt to run NMSh on a Linux machine or VM
- Document results
Dependencies
None blocking.
Rough effort
Research: 1 day; initial porting pass: unknown until research complete
Status (updated at the v0.16 feature freeze)
Done: the Linux baseline and hardening (#279, #281, #284) and v0.16 Linux/WSL work run the canonical suite on Ubuntu 24.04 (Node 22/26) in CI; findings are in
docs/architecture/v013-linux-foundations.md.Remaining scope (physical): the "attempt to run NMSh on a Linux machine or VM" acceptance item: install/build, launch with real zsh, sessions, notifications (
notify-send), clipboard (wl-copy/xclip), and WSL 2 under Windows Terminal. CI on Ubuntu is not physical validation.Goal
Investigate what would be required to run NMSh on Linux, and whether the existing architecture translates cleanly.
Why
Linux is the preferred first non-macOS platform because the POSIX PTY and zsh model maps naturally to the NMSh architecture. There are no fundamental architectural barriers, but testing and packaging have not been done.
Research scope
Non-goals
Acceptance criteria (research)
Human verification
Dependencies
None blocking.
Rough effort
Research: 1 day; initial porting pass: unknown until research complete