7.9 KiB
7.9 KiB
name, description, compatibility, metadata
| name | description | compatibility | metadata | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| system-architect | Sam's NixOS multi-machine infrastructure. Use for any task involving system config, cross-machine deployment, Docker, audio (Snapcast), MQTT (Mosquitto), NixOS flakes, Ubuntu, Sys Config, Nvim, Home Assistant. | NixOS 25.11+, Home Manager, flakes |
|
System Architect
Sam's NixOS multi-machine infrastructure reference.
Machines
| Machine | IP | Type | OS | Role |
|---|---|---|---|---|
| sam-4screen-desktop | 192.168.20.27 | Desktop | NixOS + Niri | Main dev machine |
| nixos-desktop | 192.168.20.13 | Desktop | NixOS + Niri | Second dev, web facing, Docker services |
| sam-thinkpad | 192.168.20.51 | Laptop | NixOS + Niri | Portable dev laptop |
| sam-ubuntu1 | 192.168.20.35 | VM | Ubuntu | Docker host for home network services |
| home-assistant | 192.168.20.30 | VM | HA OS | Home automation |
| file-server | 192.168.20.23 | VM | - | File server |
| proxmox-backup | 192.168.20.48 | VM | PBS | Proxmox backup server |
| proxmox | 192.168.20.28 | Host | Proxmox VE | Hypervisor — hosts all VMs (.23/.30/.35/.48), web UI :8006 |
| skinnyspeakers | 192.168.20.24 | Pi | Raspbian 12 | Speaker/audio client (Snapcast?) — identified 2026-08-29 |
Network
- DNS: Pi Hole on sam-ubuntu1 (Docker), redundancy on nixos-desktop
- Reverse Proxy: Caddy on sam-ubuntu1
- Proxmox VE host: 192.168.20.28 (web UI :8006); PBS: 192.168.20.48 (:8007)
- Router: 192.168.20.1 (main), 192.168.20.254 (secondary)
- External IP: 144.6.86.11 (NOT 173.231.229.92 — that's InMotion's server)
- Website: audasmedia.com.au → *.lab.audasmedia.com.au
Web Deploy Sync (.27 → .13)
- Manual lsyncd (not a service): config
~/.config/lsyncd/lsyncd.conf.luaon .27 → rsync+ssh to.13/var/www/<site>(delete = true). - Sites:
sprinklers(zola/sprinkler/public),sam-developer+sam-devops(home_network/web_sites/*/dist) — see config for the full list. - Permissions (.13): web folders use NixOS
usersgroup — new folders needsudo chown -R sam:users /var/www/<folder>. - Secrets:
~/.config/environment.d/10-secrets.conf(env keys, kept out of the git-tracked Nix store).
Full hardware specs are in the frontmatter metadata.
Pi Agent (uniform across machines)
- Binary: nixpkgs
pi-coding-agent0.82.1 inhome.packageson .27/.13/.51 (Nix-managed; npx wrapper + npm-global install removed 2026-08-05). Updates = nixpkgs flake bump + rebuild. - Assets:
~/.agents(git → Giteapi-configon .35). Each machine has its OWN clone — update each machine's repo individually (git -C ~/.agents pull). - Global settings:
~/.pi/agent/settings.json— home.nix-managed on .27/.51; plain file on .13 (chmod 600, keys inline, outside any git repo). Same content: Gitea source (tavily-search, pi-config, pi-tool-display), skills (nixos-workflow), themes, prompts. - pi-tool-display: global renderer (0 tools, 0 token cost). pi-lsp-extension: per-project via
/config-add ext pi-lsp-extension. SeeObsidian → 350 AI → Pi Agent Extensions & Skills.mdfor details.