hosts | ||
modules | ||
nix | ||
secrets | ||
users | ||
.envrc | ||
.gitignore | ||
.luacheckrc | ||
flake.lock | ||
flake.nix | ||
README.md |
Meine wundervolle nix config
Structure
hosts/
contain nixos configuration for hostscommon/
shared configuration modulescore/
base configuration shared on all machinesdev/
configuration enabling dev environmentgraphical/
configuration for graphical environmentshardware/
configuration for hardware components
<hostname>/
configuration for hostsdefault.nix
Toplevel system definitionfs.nix
file system definitonnet.nix
network setupsecrets/
secrets local to this hostssecrets.nix.age
local secrets usable on deployhost.pub
host public key, needed for rekeying agenix secrets
modules/
extra nixos modulessecrets.nix
module to enable deploy-time secrets
nix/
additional nix functionschecks.nix
pre-commit checkscolmena.nix
Setup for using colmena to deploydevshell.nix
Development shellextra-builtins.nix
Extra builtin plugin file to enable repository secretsgenerate-node.nix
logic to generate nodes for colmenalib.nix
additional library functions
secrets/
global secrets<name>.key.pub
public key handles to decrypt secrets using yubikeyrecipients.txt
rage recipient file for encrypting secrets- currently containing both yubikeys and a rage backup key
secrets.nix.age
global secrets available at deploy
users/
home manager user configurationcommon/
shared home-manager modulesgraphical/
configuration for graphical programsprograms/
configuration for miscellaneous programsshells/
configuration for shellsimpermanence.nix
hm-impermanence setup for usersdefault.nix
minimal setup for all usersinteractive.nix
minimal setup for interactive users on a command linegraphical.nix
configuration for users utilizing a graphical interface
<username>/
configuration for usersimpermanence.nix
users persistence configuration
Hosts
patricknix
my main laptop
Users
patrick
my normal everyday unprivileged userroot
root user imported by every host
Flake structure
How-To
...TODO
Deploy
colmena apply --on <hostname>
If deploying from a host not containing the necessary nix configuration option append
--nix-option plugin-files "$NIX_PLUGINS"/lib/nix/plugins --nix-option extra-builtins-file ./nix/extra-builtins`