mirror of
https://github.com/lukasl-dev/nixos.git
synced 2025-10-16 08:45:24 +02:00
My personal NixOS configuration for my desktops and servers.
.github/workflows | ||
assets | ||
dns | ||
options | ||
packages/vim | ||
planets | ||
secrets | ||
wallpapers | ||
.gitignore | ||
.sops.yaml | ||
flake.lock | ||
flake.nix | ||
justfile | ||
README.md | ||
TODO.md | ||
universe.nix |
nixos
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 allow new users to get inspired by different ideas and configuration methods.
Terminology
Planet
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.
Universe
The term "universe" refers to the cluster of nodes. The universes comprises universal rules, like shell aliases, users, domain, etc.
Synopsis
.
├──. 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.
Credits
This configuration takes advantage of some other repositories and projects, including: