All my nix stuff, in a single flake
Flake lock file updates:
• Updated input 'disko':
'github:nix-community/disko/63b4e7e6cf75307c1d26ac3762b886b5b0247267?narHash=sha256-8GzXDOXckDWwST8TY5DbwYFjdvQLlP7K9CLSVx6iTTo%3D' (2026-05-02)
→ 'github:nix-community/disko/6e8dc7aa0e65fce67c76e18227a13a7d529f2cdf?narHash=sha256-6pvS9rIF9mZRj1ENwu9fDLHeG1JFDTCpRyy6vJhXkTA%3D' (2026-05-16)
• Updated input 'flake-parts':
'github:hercules-ci/flake-parts/5250617bffd85403b14dbf43c3870e7f255d2c16?narHash=sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT%2BIPhcsukVbgk%3D' (2026-05-01)
→ 'github:hercules-ci/flake-parts/f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb?narHash=sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4%3D' (2026-05-13)
• Updated input 'home-manager':
'github:nix-community/home-manager/b5e86c1b19f178a8ee10f7cb747325e02e3d3991?narHash=sha256-MrIhEoqXc4YsHEUfH4rDU/K09XnWcKntNhCjs7n7zi8%3D' (2026-05-03)
→ 'github:nix-community/home-manager/26aaab785b0bab4af60a2c42b22760fa906ef22a?narHash=sha256-oaNyOr05lblaQdtbkbN1wO0b2KLIL2O1LkmwDgdQp4I%3D' (2026-05-16)
• Updated input 'import-tree':
'github:vic/import-tree/c41e7d58045f9057880b0d85e1152d6a4430dbf1?narHash=sha256-BtZ2dtkBdSUnFPPFc%2Bn0kcMbgaTxzFNPv2iaO326Ffg%3D' (2026-03-16)
→ 'github:vic/import-tree/d321337efd0f23a9eb14a42adb7b2c29313ab274?narHash=sha256-Jjuz5CmSkur8KvLDoGa%2BvylEp%2BRkQtv4mt/qcMznpH0%3D' (2026-05-14)
• Updated input 'nix-ai-tools':
'github:numtide/llm-agents.nix/aba65497c7a653e78ac3966b8d3e0ace6c0f469f?narHash=sha256-vr9mvM9VQjd7p0vuBlKpb2Ia4fCEqiFSqH69hZn24U0%3D' (2026-05-03)
→ 'github:numtide/llm-agents.nix/7c2b15bbb92e200cb741372f050de789e7811539?narHash=sha256-sq50LUIQ58jHTH5mG811fpC24BVOCagBqi0UuSTZN9o%3D' (2026-05-17)
• Updated input 'nix-ai-tools/bun2nix':
'github:nix-community/bun2nix/e659e1cc4b8e1b21d0aa85f1c481f9db61ecfa98?narHash=sha256-1xW7cRZNsFNPQD%2BcE0fwnLVStnDth0HSoASEIFeT7uI%3D' (2026-04-28)
→ 'github:nix-community/bun2nix/2499dedd70744dba1815875b854818a3019e9e4c?narHash=sha256-oQvcadh2BCkrog%2BSGrG6YffKJrveYpjj3TdQJWaKhaM%3D' (2026-05-10)
• Updated input 'nix-ai-tools/flake-parts':
'github:hercules-ci/flake-parts/5250617bffd85403b14dbf43c3870e7f255d2c16?narHash=sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT%2BIPhcsukVbgk%3D' (2026-05-01)
→ 'github:hercules-ci/flake-parts/f7c1a2d347e4c52d5fb8d10cb4d94b5884e546fb?narHash=sha256-m1Yf0wZ8j1OHjTc2UwHwyQRSnNeSgLJOd7q5Y45hzi4%3D' (2026-05-13)
• Updated input 'nix-ai-tools/nixpkgs':
'github:NixOS/nixpkgs/c6d65881c5624c9cae5ea6cedef24699b0c0a4c0?narHash=sha256-WNGcmeOZ8Tr9dq6ztCspYbzWFswr2mPebM9LpsfGxPk%3D' (2026-05-01)
→ 'github:NixOS/nixpkgs/d233902339c02a9c334e7e593de68855ad26c4cb?narHash=sha256-30sZNZoA1cqF5JNO9fVX%2BwgiQYjB7HJqqJ4ztCDeBZE%3D' (2026-05-15)
• Updated input 'nix-index-database':
'github:nix-community/nix-index-database/2dea2b920e7127b3afa8506713f23536651de312?narHash=sha256-2KUbS/HhzWW3kkkY1%2BRiWj9mJ76VEXw8lBJzcCFKzfY%3D' (2026-05-03)
→ 'github:nix-community/nix-index-database/f680e0d3c1dbefe298c423691662e238496890f2?narHash=sha256-V5GquqJvAqwFTcpN6hxKSQAtwuJFRUEHmyNKbeaTQDg%3D' (2026-05-17)
• Updated input 'nixos-cli':
'github:nix-community/nixos-cli/ad72187c1628a409f8bb7a9256cca94c0362c5b9?narHash=sha256-8z6TM8o91moN%2BrhgzErnhluIHaS5X9B2xvZnIwFA88I%3D' (2026-04-25)
→ 'github:nix-community/nixos-cli/8ed74388393dbb3acd1ce9c54d0bb5fcf052a31d?narHash=sha256-ic1ew6he9q9nAIC2SJBBF/UUdeW8IDriVsj128cm7H8%3D' (2026-05-10)
• Updated input 'nixos-cli/flake-parts':
'github:hercules-ci/flake-parts/3107b77cd68437b9a76194f0f7f9c55f2329ca5b?narHash=sha256-91qqW8lhL7TLwgQWijoGBbiD4t7/q75KTi8NxjVmSmA%3D' (2026-04-01)
→ 'github:hercules-ci/flake-parts/5250617bffd85403b14dbf43c3870e7f255d2c16?narHash=sha256-EPIFsulyon7Z1vLQq5Fk64GR8L7cQsT%2BIPhcsukVbgk%3D' (2026-05-01)
• Updated input 'nixos-cli/flake-parts/nixpkgs-lib':
'github:nix-community/nixpkgs.lib/333c4e0545a6da976206c74db8773a1645b5870a?narHash=sha256-%2BU7gF3qxzwD5TZuANzZPeJTZRHS29OFQgkQ2kiTJBIQ%3D' (2026-03-29)
→ 'github:nix-community/nixpkgs.lib/f5901329dade4a6ea039af1433fb087bd9c1fe14?narHash=sha256-GOkGPcboWE9BmGCRMLX3worL4EMnsnG8MyKmXNeYuhQ%3D' (2026-04-26)
• Updated input 'nixos-cli/nixpkgs':
'github:NixOS/nixpkgs/9d29d5f667d7467f98efc31881e824fa586c927e?narHash=sha256-omax7atcZbol%2B6HJ2RLpP%2BZCFcPa5bZ65Hn71RufeWQ%3D' (2026-04-10)
→ 'github:NixOS/nixpkgs/7aaa00e7cc9be6c316cb5f6617bd740dd435c59d?narHash=sha256-WacE23EbHTsBKvr8cu%2B1DFNbP6Rh1brHUH5SDUI0NQI%3D' (2026-04-30)
• Updated input 'nixos-cli/optnix':
'github:water-sucks/optnix/853323ece22fb1ffed19cea4ae22804032034a8e?narHash=sha256-a8FWQZgqaS7o484iH7dFK%2BF9t7oMahKbcH2piIwUwFc%3D' (2026-03-26)
→ 'github:water-sucks/optnix/c320dc5494c0caaca9ee4341367618c06a957709?narHash=sha256-zx5O1RyRl6Fq%2BmvMh%2BJdS18aXR8644bcN9MKh2fN19M%3D' (2026-04-17)
• Updated input 'nixpkgs':
'github:nixos/nixpkgs/15f4ee454b1dce334612fa6843b3e05cf546efab?narHash=sha256-Ad49moKWeXtKBJNy2ebiTQUEgdLyvGmTeykAQ9xM%2BZ4%3D' (2026-04-30)
→ 'github:nixos/nixpkgs/d233902339c02a9c334e7e593de68855ad26c4cb?narHash=sha256-30sZNZoA1cqF5JNO9fVX%2BwgiQYjB7HJqqJ4ztCDeBZE%3D' (2026-05-15)
• Updated input 'nixpkgs-stable':
'github:nixos/nixpkgs/26ef669cffa904b6f6832ab57b77892a37c1a671?narHash=sha256-5c2POKPOjU40Kh0MirOdScBLG0bu9TAuPYAtPRNZMBs%3D' (2026-05-01)
→ 'github:nixos/nixpkgs/d7a713c0b7e47c908258e71cba7a2d77cc8d71d5?narHash=sha256-6xWoytx8jFW4PF1GjRm/i/53trbpKGfz6zjzQGBr4cI%3D' (2026-05-14)
• Updated input 'noctalia':
'github:noctalia-dev/noctalia-shell/f0469d2d6f9b1ca873932dcef6583f9d6a2eee28?narHash=sha256-MIFrNTX%2Bx42UdOiL9lWmwyyymh80/pxtU4afvEizZDk%3D' (2026-05-03)
→ 'github:noctalia-dev/noctalia-shell/aecc6c4db35bf4bee10ab63a4acee784ff21992a?narHash=sha256-eI7Vv6sWHxUnkOH3f7TBUzMhJIeVTi4A9tUk3%2BDfR08%3D' (2026-05-17)
• Updated input 'noctalia/noctalia-qs':
'github:noctalia-dev/noctalia-qs/8742a7a748c43bf44eb6862a8ebd3591ed71502d?narHash=sha256-q5mWOEICcZzr%2BKnjIwDHV9EXiBxOC9cnBpxZbDAViU8%3D' (2026-04-28)
→ 'github:noctalia-dev/noctalia-qs/4116b41cdc89e186be7cb8b24a9b6022af95d742?narHash=sha256-hE3EFK5GoSdbO5WHZ8bZDUVYkofbDLQN/KK25z7IOOI%3D' (2026-05-17)
• Updated input 'stylix':
'github:danth/stylix/7989a1054b01153212dede6005abfd1576b8328c?narHash=sha256-VLH8zPweblCOvpnQXp4fVs7f6Q79YhXF5XFKlOrvIFk%3D' (2026-05-03)
→ 'github:danth/stylix/e8ea85b4f7dddda9603e0f1ac86cd92cee3b2819?narHash=sha256-YhnEcpiY6%2Bl3RFA%2BcPmdTaeODGvNRuqE8B7VBjPVIxo%3D' (2026-05-14)
• Updated input 'vicinae':
'github:vicinaehq/vicinae/5ab9b061690e9e8695ec62dc793f9a3bda2eb616?narHash=sha256-tOHe63NSWVFYBry/KSd5wwF9Khha5AXT5Dqx%2BZ6ICww%3D' (2026-05-03)
→ 'github:vicinaehq/vicinae/79c17bd5a715c9d1bfe85851cd47d7e9c1d5a2be?narHash=sha256-lrTKD0IhGUwRlBSrS9fIcyvijd9d/eI%2Bgd0f7NSxhWI%3D' (2026-05-16)
• Updated input 'zen-browser':
'github:0xc000022070/zen-browser-flake/d93443c0f6fdb3b179bed68856f322dba4842612?narHash=sha256-O9VRkxg%2B2j%2Bsh%2Bc73wi4VeIBECoqW2PlnCR9Qe1nQKA%3D' (2026-04-30)
→ 'github:0xc000022070/zen-browser-flake/7c41a80acc12ab012448b84aec90ca9b4bf8b9ac?narHash=sha256-P2%2BaRay2sPQGVXzNmiD4yYlhy4ytxqBvT4A2OLOvkoU%3D' (2026-05-16)
• Updated input 'zen-browser/home-manager':
'github:nix-community/home-manager/3c7524c68348ef79ce48308e0978611a050089b2?narHash=sha256-No6QGBmIv5ChiwKCcbkxjdEQ/RO2ZS1gD7SFy6EZ7rc%3D' (2026-04-14)
→ 'github:nix-community/home-manager/9846abe15e7d0d36b8acbd4d05f2b87461744c92?narHash=sha256-nGFJ01m2CTBKD4ABtcY4vLhHrRN91LKr/pn41PcU78A%3D' (2026-05-15)
• Updated input 'zen-browser/nixpkgs':
'github:nixos/nixpkgs/4c1018dae018162ec878d42fec712642d214fdfa?narHash=sha256-ar3rofg%2BawPB8QXDaFJhJ2jJhu%2BKqN/PRCXeyuXR76E%3D' (2026-04-09)
→ 'github:nixos/nixpkgs/da5ad661ba4e5ef59ba743f0d112cbc30e474f32?narHash=sha256-zi7/fsqM/kFdNuED//4WOCUtezGtKKqRNORjMvfwjnA%3D' (2026-05-10)
|
||
|---|---|---|
| aspects | ||
| data | ||
| packages | ||
| secrets | ||
| shells | ||
| terranix | ||
| .envrc | ||
| .gitignore | ||
| flake.lock | ||
| flake.nix | ||
| readme.md | ||
NixOS Flake Configuration
Modular NixOS configuration using flake-parts with the dendritic pattern.
Structure
.
├── aspects/ # Reusable NixOS/home-manager modules (dendritic)
│ ├── base/ # Base system configuration
│ ├── hosts/ # Host-specific configurations
│ │ ├── _alexandria/
│ │ ├── _io/
│ │ ├── _rotterdam/
│ │ └── _trantor/
│ ├── systems/ # System type modules (desktop, server, cli, gaming)
│ └── users/ # User account configurations
├── data/ # Shared host/service definitions
├── packages/ # Custom packages and overlays
├── shells/ # Shell configurations
└── terranix/ # Terraform configurations for cloud resources
Hosts
| Host | Architecture | Type | Description |
|---|---|---|---|
| trantor | aarch64-linux | server | ARM server running Forgejo |
| alexandria | x86_64-linux | server | x86 server (Kanidm, Vaultwarden, Nextcloud, Jellyfin) |
| rotterdam | x86_64-linux | desktop | Main workstation setup for gaming |
| io | x86_64-linux | desktop | Workstation |
Services
- git.baduhai.dev (Forgejo) - Publicly accessible on trantor
Other services (LAN/Tailscale only): Vaultwarden, Nextcloud, Jellyfin
Features
- Ephemeral root: Automatic btrfs subvolume rollover with impermanence
- Secrets: Managed via agenix with age encryption
- Disk management: disko for declarative disk partitioning
- Modular architecture: Each aspect is a separate module imported via import-tree
- Dendritic pattern: Aspects are imported as a unified flake module
Building
# Build specific host
nix build .#nixosConfigurations.trantor.config.system.build.toplevel
# Rebuild host (if using nixos-cli on the host)
sudo nixos apply
Terranix
Terraform configurations for cloud infrastructure managed via terranix:
- baduhai.dev DNS on CloudFlare
- VPS provisioning on OCI
- Tailscale subnet routers
Key Dependencies
- nixpkgs (nixos-unstable for workstations, nixos for servers)
- home-manager
- agenix
- disko
- impermanence
- nix-flatpak
- nixos-cli