This is my personal NixOS configuration for my desktops and servers.
Important
I do not recommend anyone to use it, given that it is highly personalised to my own needs.
Why publishing?
- Making this repository public allows me to setup devices easier since I don't need to manage credentials.
- Public Nix configs allows new users to get inspired by different ideas and configuration methods.
The term "planet" refers to a single node in my "universe" (cluster) with its own
set of rules, e.g. hardware-configuration
, custom services, etc.
The term "universe" refers to the cluster of nodes. The universes comprises universal rules, like shell aliases, users, domain, etc.
.
├──. dns
│ └── dns records configured via dnscontrol
├──. options
│ ├── universe
│ │ └── universal configuration applied to all hosts
│ └── planets
│ └── host-specific configuration that needs to be toggled
├──. planets
│ └── host-specific entry configurations
├──. secrets
│ └── encrypted sops-nix secrets
├──. wallpapers
│ └── wallpapers that are randomly chosen on desktops
└── universe.nix
└── universally applied values, like username, domain, etc.
This configuration takes advantage of some other repositories and projects, including: