This repository holds the configuration for all my Linux systems. It includes both my servers, my laptop and my desktop.
I now manage all my configuration thanks to Nix.
Everything is managed thanks to a nix flake: flake.nix.
It relies heavily on the Dendritic pattern.
Each file is a flake-parts module.
Everything is stored under the modules/ folder and imported automatically thanks to vic/import-tree.
├── flake.nix # Entry-point of the flake
├── modules/
│ ├── flake/ # flake modules
│ ├── home/ # shared home-manager modules
│ ├── hosts/ # declaration of the NixOS/HM hosts
│ └── nixos/ # shared nixos modules
└── .secrets # (age encrypted) secrets for each system
| Hostname | Config type | Comment |
|---|---|---|
framework |
NixOS | Laptop |
cuda |
NixOS | Personal workstation |
builder |
home-manager | Linux x86 builder |
jrs |
home-manager | Jon Ringer's x86 builder |
vps |
NixOS | VPS (VPN, mail server, etc.) |
tank |
NixOS | NAS (ZFS, Nextcloud, etc.) |
backup |
NixOS | Backup (replication of tank) |
Here are the programs I use on my working systems. I keep my configuration minimal and efficient.
| Program | Name |
|---|---|
| Linux Distribution | NixOS |
| Web Browser | Firefox |
| Window Manager | sway |
| Bar | waybar |
| Terminal Emulator | foot |
| Code Editor | Neovim |
| Program Launcher | rofi |
| Shell | fish |
| PDF viewer | Zathura |
Thanks to @mightyiam and @drupol for helping me migrating my configuration to the dendritic pattern.
