This is the NixOS Config Repo of Freifunk Rhein-Neckar.
The current deployment tool is Colmena.
Secrets are stored encypted with agenix in the private nixos-secrets Repository.
It's not neccesary to run NixOS to deploy. Hoewer the Nix package Mananger has to be installed.
Clone this repo with it's submodules and enter the dir.
Run nix-shell
. This will give you an shell where all relevant packages (colmena,
agenix, niv, ... ) are installed.
colmena build
colmena apply
You can also deploy to some to reduce impact:
colmena apply --on "gw01*"
colmena apply --on "gw0[1-4]*"
colmena apply --on "gw02,gw04,gw06,gw08"
And it's also possible to deploy in a way so config will only be activated for the next boot:
colmena apply boot
colmena apply --on "gw01" boot
The --no-substitute
parameter is quite useful if the target node(s) is reachable by colmena but has no working internet connection to copy closures from public caches.
To create, edit or view secrets cd
into the secrets dir.
Modify secrets.nix
with an editor of your choice and define which keys should be decryptable with which secret.
And now edit the secret:
agenix -e gw01/fastd.age
agenix -d gw01/fastd.age
niv update nixpkgs
Ideally only commited and pushed changes are deployed.