bb4823efe901b1ff4cff49340acfaa6b3b561870
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
homelab
Flake-based NixOS config. Host: jupiter (ZimaBlade, NAS + services).
Structure
flake.nix # inputs + nixosConfigurations.jupiter
jupiter/configuration.nix # system, users, ssh, samba, containers, caddy
jupiter/hardware-configuration.nix # PLACEHOLDER — regenerate on real machine
First install (on the ZimaBlade)
- Boot NixOS minimal ISO, partition + mount disks at
/mnt. - Generate hardware config:
Copy
sudo nixos-generate-config --root /mnt/mnt/etc/nixos/hardware-configuration.nixintojupiter/. - Add your SSH public key to
users.users.erik.openssh.authorizedKeys.keys. - Install:
sudo nixos-install --flake .#jupiter
Rebuild after changes
sudo nixos-rebuild switch --flake .#jupiter
Remote from laptop:
nixos-rebuild switch --flake .#jupiter \
--target-host erik@jupiter --use-remote-sudo
Adding a service
Copy the whoami block in oci-containers.containers, swap image/ports/volumes.
Native NixOS module exists for many apps (Nextcloud, Jellyfin, Grafana...) —
prefer services.<app> over a container when available.
Notes
- Backend is Podman with
dockerCompat—dockerCLI works, no daemon. - Set correct
time.timeZoneand Sambapathfor your data mount. system.stateVersion=26.05, install-time schema. Do NOT bump on upgrades.
Languages
Nix
40.1%
QML
30.5%
Shell
25.9%
Python
3.5%