|
||
---|---|---|
.git-crypt | ||
common | ||
extra | ||
machines | ||
modules/services | ||
pkgs | ||
secrets | ||
services | ||
system | ||
.build.yml | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.prettierrc.json | ||
.stylua.toml | ||
default.nix | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
Makefile | ||
README.md | ||
sources.nix | ||
statix.toml |
My nixOS configuration
Structure
-
common
: Contains configuration that should be applied on every machine. -
extra
: Non-Nix files, e.g. configuration files for other applications. -
machines
: Host-specific configuration.-
fort
: Public-reachable server on Hetzner infra. -
serv
: LXC container running different services, like sourcehut and paperless. -
trek
: Framework laptop. -
zero
: Main Ryzen 9 workstation.
-
-
modules
: Additional NixOS modules. -
pkgs
: Custom packages. -
secrets
: Secrects encrypted using git-crypt. -
services
: Configuration for bigger service deployments, e.g. nginx. -
system
: Configurations describing "classes" of machines, like servers or desktops.
Notable files
-
default.nix
: Morph deployment definitions -
flake.nix
: Nix development shell definition -
sources.nix
: Contains all Nix package/module source definitions
Hacking
nix develop
will provide an ephemeral shell with all tools needed.
License
The code is released into the public domain.
Other conditions apply to the following files:
extra/sway/background.png
: Photo by Lucas Kapla, Unsplash License