Commit Graph

109 Commits

Author SHA1 Message Date
9bf38f1077 Remove age.rekey from lazyworkhorse (module not available, host key handles decryption directly) 2026-06-22 00:02:53 -04:00
cbb016d409 Fix agenix-rekey: add real uConsole host key, re-encrypt secrets
- Update uConsole hostPubkey from dummy to real SSH host key
- Add uConsole host key to keys.nix
- Add age.rekey config to lazyworkhorse
- Add SSH host key to identityPaths on both hosts
- Re-encrypt builder_key.age and gortium_password.age for both hosts
2026-06-22 00:02:22 -04:00
ea5eac2234 Comment foxtrotgps, viking, gpsbabel for cross-compile bootstrap 2026-06-21 23:37:42 -04:00
c9072e86da Temporarily comment native-only packages for cross-compile bootstrap
Comment out wsjtx, fldigi, sdrpp, gqrx, inspectrum, chirp, trustedqsl
- these need native compilation on uConsole but remote builder
  is not yet deployed. Will uncomment after bootstrap.
2026-06-21 23:36:09 -04:00
3a0fb70d26 Fix: remove ca-derivations (not supported in Lix 2.96) 2026-06-21 23:28:05 -04:00
e03f09c247 Merge feat/remote-builders into uconsole-cm5-incremental
Bidirectional remote building + rename uconsole-cm5 -> uConsole:
- Rename all uconsole-cm5 refs to uConsole (nixosSystem key, paths, module)
- Replace single-machine remote-builder module with multi-machine config
- Enable remote builder on lazyworkhorse -> uConsole (aarch64)
- Enable remote builder on uConsole -> lazyworkhorse (x86_64)
- Add builder system user + SSH key via agenix-rekey (secrets/builder_key.age)
- Add builder_key + gortium_password age secrets to all hosts
- Fix pre-existing bugs: missing modules in lazyworkhorse/cyt-pi,
  SSH config structure (hostKeys outside settings), cyt-pi inline user
- Remove obsolete openclaw-node service + module + age secrets
2026-06-21 23:14:14 -04:00
db2d540b3c feat: server-side remote builder config (lazyworkhorse dispatches aarch64 to uConsole)
Server only — uConsole-side config will be added in uconsole-cm5-incremental branch.
Includes reusable module, builder system user, and SSH key placeholder.
2026-06-21 16:22:50 -04:00
01f8166529 feat: add uConsole as remote builder for aarch64-linux native builds 2026-06-20 20:04:04 -04:00
84ce9de5ca restore native-build packages in config (wsjtx, fldigi, chirp, sdrpp, gqrx, inspectrum, john, foxtrotgps, viking, gpsbabel, trustedqsl) 2026-06-20 20:02:56 -04:00
14755f1ea6 revert native-build packages — cross-compile still fails for Qt5/gpsbabel/john, install via nix profile instead 2026-06-20 20:01:36 -04:00
f51155823e temp: comment out Qt5 packages (wsjtx, fldigi, sdrpp, gqrx, inspectrum) — cross-compile fails, installed via nix profile instead 2026-06-20 19:59:36 -04:00
73c12abec2 feat: re-integrate native-build packages (wsjtx, fldigi, chirp, sdrpp, gqrx, inspectrum, hashcat, john, foxtrotgps, viking, gpsbabel, trustedqsl) 2026-06-20 19:00:39 -04:00
a97c68fd81 fix: add rtkit and pipewire service for uConsole audio 2026-06-20 18:16:43 -04:00
282b4bc229 chore: remove stale temp file 2026-06-20 17:50:18 -04:00
905998466c fix: update home.nix host/ paths after dotfiles rename 2026-06-20 17:50:13 -04:00
d765ead020 fix: kismet --log-base -> --log-prefix (wrong flag), aiov2 pinctrl from raspberrypi-utils not libraspberrypi 2026-06-20 15:07:00 -04:00
da3363e894 fix: remove chirp for aarch64 cross-compile (wxPython fails with GTK3) 2026-06-20 14:40:37 -04:00
bfb521f684 chore: remove accidentally committed .bak files 2026-06-20 12:42:03 -04:00
e38908de74 fix: remove john for aarch64 cross-compile (configure needs python) 2026-06-20 12:41:50 -04:00
1b70f95038 fix: remove gpsbabel for aarch64 cross-compile (qmake can't find g++) 2026-06-20 11:56:31 -04:00
9f62dac106 uConsole: remove wsjtx + fldigi (qtbase/Qt5 linker fails) — add to removal comment 2026-06-19 22:38:08 -04:00
a8215ae441 uConsole: remove accidental .bak file from tracking 2026-06-19 22:22:16 -04:00
eeb345b7e0 uConsole: add neovim to cross-compile removal tracking comment 2026-06-19 22:22:13 -04:00
95833f4d28 uConsole: fix missing closing brace (sed cleanup mishap) 2026-06-19 22:14:46 -04:00
93dc4f1cac uConsole: consolidate removal tracking into single block 2026-06-19 22:13:18 -04:00
12af6bb643 uConsole: remove failing cross-compile packages (round 3)
Removed for aarch64 bootstrap:
  sdrpp     — glfw/wxPython cross-compile fails
  gqrx      — Qt5 cascade fails
  emacs-pgtk/nox — GTK3 + mailutils → gss → shishi chain
  viking    — GTK3 GPS
  foxtrotgps — GTK2 GPS

Leave remaining as native install after first switch.
Add consolidated removal tracking comment.
2026-06-19 22:11:39 -04:00
e734102104 uConsole: remove clamav (cross-compile failure — cmake try_run + Rust proc-macro linker) 2026-06-19 12:20:44 -04:00
016cf4aa53 uConsole: remove hashcat (cross-compile failure — Makefile calls gcc directly, same issue as neovim) 2026-06-19 07:37:59 -04:00
8874f6ff66 feat: add gortium.clamav NixOS module
- New module at modules/nixos/services/clamav.nix
- Options: enable (CLI-only), enableDaemon (full services),
  onAccessScanning (clamonacc), scanPaths, dailyScanTime
- All scans are logging-only — no auto-quarantine or deletion
- uConsole: CLI tools only (enableDaemon=false)
- lazyworkhorse: full setup with on-access scanning, daily 3 AM scan

Also: remove neovim from uConsole (fails cross-compile, emacs available)
2026-06-18 21:53:33 -04:00
f14c74f50f feat: add ClamAV antivirus with daily auto-scan 2026-06-18 21:26:14 -04:00
b072e2052f fix: remove js8call + switch wireshark to CLI to drop qtquick3d dep 2026-06-18 21:13:31 -04:00
932de1752d fix: place agenix-rekey config inside module (was outside closing brace) 2026-06-18 17:19:29 -04:00
050f2d4761 feat: add agenix-rekey config + remote builder to uConsole 2026-06-18 17:17:29 -04:00
7e148791fb remove meshtastic (not in nixpkgs) 2026-06-18 16:58:56 -04:00
4989f9898c feat: merge Reticulum overlay, poup-16t-disk, open_code_server, merged uConsole config 2026-06-18 15:23:06 -04:00
33e98f32d7 feat: add HackerGadgets AIO v2 board module + enable on uConsole CM5 2026-06-17 08:27:15 -04:00
102586d7e8 fix: switch nixos-uconsole to cm5_fix branch (patches OK)
- Remove local boot.kernelPatches (now in nixos-uconsole fork)
- Point to github:gortium/nixos-uconsole/cm5_fix instead of pr/dcs-panel-detection
2026-06-16 19:21:54 -04:00
e05ef66b8f fix: correct secrets path in configuration.nix (../../secrets from hosts/uconsole-cm5/) 2026-06-16 19:09:24 -04:00
1d50b6455d fix: zsh conflicts for gortium home-manager on uConsole
- Remove duplicate .zshrc from home.file (managed by programs.zsh)
- Enable programs.zsh system-wide for gortium user
2026-06-16 19:06:44 -04:00
bcf924408b fix: remove programs.gitsign (not available in nixpkgs 25.11) 2026-06-16 19:06:11 -04:00
820de72c0f fix: remove duplicate ai-worker user definition in configuration.nix
ai-worker is now defined in users/ai-worker/ai-worker.nix module
2026-06-16 19:05:03 -04:00
1550219e77 Merge remote changes + feat: AIO v2 board module
- Cross-compile overlays for Hyprland (libcamera, pipewire, gjs)
- Refactor uconsoleBaseModules into reusable list
- Add wireguard-client service module
- Restructure users into subdirectories
- New: hardware.uconsole-cm5-aio-v2 module (GPIO rails, aiov2_ctl, GPS UART)
- Update configuration.nix with Hyprland + AIO v2
- Add AIO v2 module to both toplevel and SD image config
2026-06-16 19:02:38 -04:00
2572f47e41 feat: add NixOS module for HackerGadgets AIO v2 board (uConsole CM5)
- New module: hardware.uconsole-cm5-aio-v2
  - GPIO rail control for GPS (27), LORA (16), SDR (7), USB (23)
  - Systemd oneshot service (aiov2-rails-boot) to apply states at boot
  - aiov2_ctl CLI tool packaged from GitHub source
  - GPS UART support (ttyAMA0, 9600 baud) with dialout group
  - Optional systemd user service for system tray GUI
- Wired into uconsole-cm5 NixOS config + SD image

All rails default OFF — activate on demand with:
  aiov2_ctl <GPS|LORA|SDR|USB> on
2026-06-16 19:00:50 -04:00
bd8b1c564e feat: add reusable wireguard-client NixOS module
- modules/nixos/services/wireguard-client.nix — optional module under
  gortium.wireguard-client namespace with enable, vpnIp, privateKeyFile,
  and presharedKeyFile options
- Added to lazyworkhorse, cyt-pi, and uconsoleBaseModules (covers both
  uconsole-cm5 toplevel and SD image)
- Migrated lazyworkhorse from inline networking.wireguard to module
- Split-tunnel: allowedIPs = [ "10.8.0.0/24" ]

Usage in a host config:
  gortium.wireguard-client = {
    enable = true;
    vpnIp = "10.8.0.X/24";
    privateKeyFile = config.age.secrets.wireguard_private_key.path;
    presharedKeyFile = config.age.secrets.wireguard_preshared_key.path;
  };
2026-06-15 10:55:40 -04:00
6399196a2c fix: move gortium passwordFile to shared user module (applies to all hosts) 2026-06-14 21:55:48 -04:00
fba52fa66d fix: use passwordFile instead of hashedPasswordFile (matches other secrets: plain text) 2026-06-14 21:09:10 -04:00
cdbb7de04d fix: properly structure uConsole config (ai-worker, gortium password, age secret) 2026-06-14 19:56:33 -04:00
9004163891 feat: add agenix secret for gortium password on uConsole
- Add gortium_password.age entry in secrets.nix
- Add age.secrets.gortium_password in uConsole config
- Add hashedPasswordFile to existing gortium user
- Add ai-worker user for Hermes SSH access
2026-06-14 19:53:40 -04:00
f06d9028f0 feat: add ai-worker user to uConsole for Hermes SSH access 2026-06-14 19:52:11 -04:00
ce7f74c66f remove hyperspace files accidentally committed from feat/hyperspace-pods-module
These files were mixed into commit 16acc6a which was intended
to only fix SSH options for the uConsole configuration.
2026-06-14 18:58:35 -04:00