45 lines
1.3 KiB
Markdown
45 lines
1.3 KiB
Markdown
# emilys Nix Infra
|
|
|
|
[Build Status](https://hydra.kyouma.net/jobset/nixfiles/main#tabs-jobs)
|
|
|
|
## First deployment
|
|
|
|
### remote hosts
|
|
|
|
```console
|
|
$ nix run github:nix-community/nixos-anywhere -- --flake ".#<configuration>" root@<target-host>
|
|
```
|
|
|
|
### desktops
|
|
|
|
```console
|
|
$ nix --extra-experimental-features nix-command run github:nix-community/nixos-anywhere -- --flake "git+https://woof.rip/emily/nixfiles.git#<configuration>" --no-reboot --build-on-target root@127.0.0.1
|
|
$ nixos-enter
|
|
$ passwd <local-user>
|
|
reboot
|
|
$ git clone https://woof.rip/emily/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
|
|
```
|