The Project
A NixOS configuration for multiple users, multiple hosts, and multiple services:
- 🔥 Declarative, reproducible, immutable 🡕.
- 🚀 Modules ready to use.
- ❄️ Configuration 🡕 simplified.
- 🧩 Organization coherent.
- 🌎 A complete network.
Main Features
Section titled “Main Features”| Feature | Description | |
|---|---|---|
| ⚙️ | Fully automated | With nixos-anywhere 🡕, disko 🡕 and colmena 🡕 |
| 👤 | User profiles | Profiles 🡕 and modules Home Manager 🡕 (admin, gamer…) |
| 🖥️ | Host profiles | Host profiles (servers, network nodes, workstations…) |
| 🌐 | Tailnet VPN | Mesh VPN 🡕 with headscale 🡕 + tailscale 🡕 + subnets |
| 🛡️ | Ad Blocker | Secure and ad-free internet with AdguardHome 🡕 |
| 🧩 | Unique identities | SSO with Kanidm 🡕 and Vaultwarden 🡕 |
| 🤗 | Smart services | Immich 🡕, Nextcloud 🡕, Forgejo 🡕, Matrix 🡕, Jellyfin 🡕, etc. |
| 💻 | Clean GNOME | NixOS hosts with GNOME 🡕 and pre-configured apps |
| 💾 | 3-2-1 Backups | Robust, streamlined, distributed Restic 🡕 backups |
| 🏠 | Home page | Automated home page for each zone |
Under the Hood
Section titled “Under the Hood”| Feature | Description | |
|---|---|---|
| ❄️ | Declarative, Immutable | And reproducible thanks to Nix / NixOS 🡕 and its ecosystem |
| 🔑 | Enhanced Security | Simple and reliable security strategy based on sops-nix 🡕 |
| 📦 | Complete Modules | High-level NixOS modules easy to configure |
| 📐 | Architecture | Coherent, extensible, scalable, customizable |
| ✴️ | Reverse Proxy | Services distributed across the network via Caddy 🡕 proxies |
| 🛜 | Automated Network | dnsmasq 🡕 zero-conf plumbing (DNS, DHCP, firewall…) |
The DNF Network
Section titled “The DNF Network”This configuration manages the entire network and its nodes:
- Zones each containing a gateway and machines.
- The VPN that encompasses the zones and other machines on the internet.
The network operation can be summarized as follows:

File Organization
Section titled “File Organization”At the root:
dnf-> modules, users, hosts (framework)usr-> Local project (in write mode)var-> Generated files and logssrc-> Generator source filesdoc-> Project documentation
Structure
Section titled “Structure”- flake.nix Project flake
- Justfile Project management with just 🡕
Directorydnf/ Framework (modules & common files)
Directorymodules/ Framework modules
Directorystandard Standard modules
Directorysystem/ System & Hardware
- …
Directoryconsole/ CLI Applications
- …
Directorygraphic/ X Applications
- …
Directoryservice/ Network services
- …
Directoryadmin/ Administration
- …
Directoryuser/ User configurations (without HM)
- …
Directorymixin Macro-modules “Mixins”
Directoryhost/ Host profiles (desktop, server…)
- …
Directoryprofile/ User profile add-ons
- …
Directoryhome Home Manager (HM) configuration
Directorymodules/ Nix modules (features, programs)
- …
Directoryprofiles/ Profiles: admin, student, advanced…
- …
Directorynixos/ Additional NixOS (non-HM) configurations
- …
Directoryusr/ My network-specific configuration
- config.yaml My main config
Directorymodules/ My NixOS modules, same as
dnf/modules- …
Directoryhome/ My HM modules, same as
dnf/home- …
Directorysecrets/ My passwords
- secret.yaml Passwords and SOPS keys
Directorymachines/ Host-specific configs (hardware, etc.)
- …
Directoryusers/ Per-user HM configs
- …
Directoryvar/ Generated files
Directorylog/ Log files
- …
Directorygenerated/ Generated files
- hosts.nix
- users.nix
- network.nix
Directorysrc/ Generator sources
- …
Directorydoc/ This documentation
- …
Abstraction layers
Section titled “Abstraction layers”Lower levels serve the higher levels.

These configurations are organized by category:
- Mixin modules that compose and configure hosts.
- Service modules for self-hosted services.
- System modules for base system configuration.
- Security modules for system hardening.
- CLI applications command-line tools.
- GUI applications graphical applications.
- Administration modules for fleet management.
- User management modules for accounts and access.
- Home Manager modules for user profiles.
- User profiles, standard Home Manager 🡕 configurations.
- Tools to maintain a quality configuration.