forked from emily/nixfiles
nix infra
0dd468d607
Flake lock file updates: • Updated input 'nixpkgs': 'github:nixos/nixpkgs/33d1e753c82ffc557b4a585c77de43d4c922ebb5' (2024-05-15) → 'github:nixos/nixpkgs/4a6b83b05df1a8bd7d99095ec4b4d271f2956b64' (2024-05-17) |
||
---|---|---|
config | ||
lib/shinyflakes | ||
modules | ||
pkgs | ||
secrets/services | ||
.gitignore | ||
.sops.yaml | ||
flake.lock | ||
flake.nix | ||
README.md |
emilys Nix Infra
First deployment
remote hosts
$ nix run github:nix-community/nixos-anywhere -- --flake ".#<configuration>" root@<target-host>
desktops
$ nix --extra-experimental-features nix-command run github:nix-community/nixos-anywhere -- --flake "git+https://git.bsd.gay/snaki/nixfiles.git#<configuration>" --no-reboot --build-on-target root@127.0.0.1
$ nixos-enter
$ passwd <local-user>
reboot
$ git clone https://git.bsd.gay/snaki/nixfiles.git
$ colmena apply-local --sudo --node <node>
Todo
- tomate (router dus)
- kartoffel
- most services
- brokkoli2 (router ams)
- alucard
- merge hetzner hosts
Structure
nixfiles
├── config # NixOS configuration
│ ├── common # configuration applyed to all hosts (some settings might be influenced by machine-type)
│ │ └── users # user configuration
│ ├── hosts # configuration for specific hosts
│ ├── profiles # configuariotn for specific machine types
│ └── services # common service configuration
├── lib # helper functions
├── modules # NixOS modules
└── pkgs # nixpkgs overlays