Nix flake (flake-parts) with the expressions for my personal infrastructure. Work in progress.
| Path | Contents |
|---|---|
nixos/modules |
Reusable NixOS modules (nixosModules.all) |
machines/ |
Per-host configurations |
home/ |
home-manager and nixvim configuration |
pkgs/by-name |
Custom packages |
openwrt/ |
OpenWrt images |
tf/, tf.nix |
DNS managed via terranix / OpenTofu |
secrets/ |
sops-nix encrypted secrets |
nix develop # dev shell (sops, nh, nixos-anywhere, treefmt, ...)
nix fmt # format with treefmt
nix run .#check # run all checks (same as CI)
nix run .#update # update flake.lock and commit it (conventional message)
nix run .#apply # generate config.tf.json and apply DNS via tofu
nh os switch .#<host> # deploy a machine (use nh, add --target-host for remote)Copy .env.template to .env for the required environment variables.
See LICENSE.