feat: add uConsole CM5 host with Reticulum mesh network support #20

Closed
Hermes wants to merge 3 commits from feat/uconsole-cm5-support into master
Collaborator

uConsole CM5 Configuration

Adds the uConsole CM5 portable terminal to the infra flake with full hardware support and mesh networking capabilities.

Module Chain (Fixed)

The uconsole-cm5 module requires nixos-raspberrypi for hardware.raspberry-pi options:

nixos-raspberrypi.nixosModules.raspberry-pi-5.base  # Provides hardware.raspberry-pi
nixos-uconsole.nixosModules.uconsole-cm5            # uConsole hardware support

New: Reticulum Network Stack

Built from PyPI for off-grid mesh networking:

  • reticulum: The RNS stack (rnsd, rnsh)
  • nomadnet: Reticulum browser/messaging client
  • lxmf: Lightweight Mesh Exchange Protocol
  • sidechannel: Visual UI for Reticulum

Full Package List

Base: emacs-pgtk, git, ripgrep, fd, htop, tmux, neovim

HAM Radio: js8call, wsjtx, fldigi, pat, direwolf, chirp, hamlib, trustedqsl

SDR/RF: sdrpp, gqrx, rtl-sdr, inspectrum, soapysdr-with-plugins

Mesh/LoRa: meshtastic, reticulum, nomadnet, lxmf, sidechannel

Security: nmap, metasploit, aircrack-ng, kismet, bettercap, wireshark, burpsuite, hashcat, john, sqlmap

GPS/Maps: foxtrotgps, viking, gpsbabel

Verified

nix eval .#nixosConfigurations.uConsole.config.system.build.toplevel ✓

Deployment

After flashing uConsole eMMC and first boot:

nixos-rebuild switch --flake .#uConsole

Closes: #6 (replaced with correct module chain)

## uConsole CM5 Configuration Adds the uConsole CM5 portable terminal to the infra flake with full hardware support and mesh networking capabilities. ## Module Chain (Fixed) The uconsole-cm5 module requires nixos-raspberrypi for hardware.raspberry-pi options: ```nix nixos-raspberrypi.nixosModules.raspberry-pi-5.base # Provides hardware.raspberry-pi nixos-uconsole.nixosModules.uconsole-cm5 # uConsole hardware support ``` ## New: Reticulum Network Stack Built from PyPI for off-grid mesh networking: - **reticulum**: The RNS stack (rnsd, rnsh) - **nomadnet**: Reticulum browser/messaging client - **lxmf**: Lightweight Mesh Exchange Protocol - **sidechannel**: Visual UI for Reticulum ## Full Package List **Base:** emacs-pgtk, git, ripgrep, fd, htop, tmux, neovim **HAM Radio:** js8call, wsjtx, fldigi, pat, direwolf, chirp, hamlib, trustedqsl **SDR/RF:** sdrpp, gqrx, rtl-sdr, inspectrum, soapysdr-with-plugins **Mesh/LoRa:** meshtastic, reticulum, nomadnet, lxmf, sidechannel **Security:** nmap, metasploit, aircrack-ng, kismet, bettercap, wireshark, burpsuite, hashcat, john, sqlmap **GPS/Maps:** foxtrotgps, viking, gpsbabel ## Verified ```bash nix eval .#nixosConfigurations.uConsole.config.system.build.toplevel ✓ ``` ## Deployment After flashing uConsole eMMC and first boot: ```bash nixos-rebuild switch --flake .#uConsole ``` Closes: #6 (replaced with correct module chain)
Hermes added 3 commits 2026-04-29 23:56:13 +00:00
- Add nixos-uconsole and nixos-hardware inputs for CM5/RPi5 support
- Create hosts/uconsole/configuration.nix with HAM radio, SDR, and security tools
- Create hosts/uconsole/hardware-configuration.nix for CM5 hardware
- Register uConsole in flake.nix nixosConfigurations
- Add uconsole host key placeholder to lib/keys.nix
- reticulum: Reticulum Network Stack (from PyPI)
- nomadnet: Reticulum browser/messaging client
- lxmf: Lightweight Mesh Exchange Protocol
- sidechannel: Visual UI for Reticulum

Packages are built from PyPI using buildPythonPackage.
- reticulum-0.7.0: sha256-Yku40tRpQh22m4HX142cU/VevHAEfgHZicKFOyp1U/o=
- nomadnet-0.5.2: sha256-WP4IrlKLzFP0U8/00mOo8D9Jp2ubr6Q0peKbw401Nhw=
- lxmf-0.5.1: sha256-2zwTgG283qx1Bt6TKaGJtcwPr2tCNOOIASu8RXC/QLE=
- sidechannel: removed (not available on PyPI)

Cross-compilation note: Full build requires aarch64 hardware or QEMU binfmt setup.
Hermes closed this pull request 2026-04-30 15:55:16 +00:00

Pull request closed

Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: gortium/infra#20
No description provided.