My configuration. Probably nothing to look for here.
Go to file
2023-07-20 15:02:38 +03:00
hosts users and passwords 2023-07-20 15:02:38 +03:00
modules users and passwords 2023-07-20 15:02:38 +03:00
secrets flakes 2023-07-18 11:27:59 +03:00
.envrc flakes 2023-07-18 11:27:59 +03:00
.gitattributes Configure git repository for gpg file diff. 2023-01-03 13:41:30 +02:00
.gitignore make shell work 2023-04-03 16:43:34 +03:00
data.nix flakes 2023-07-18 11:27:59 +03:00
flake.lock nix flake update 2023-07-17 14:53:44 +03:00
flake.nix flakes 2023-07-18 11:27:59 +03:00
LICENSE add a license 2023-04-13 23:50:42 +03:00
nixpkgs.nix nix fmt . 2023-04-03 16:50:52 +03:00
README.md flakes 2023-07-18 11:27:59 +03:00
secrets.nix flakes 2023-07-18 11:27:59 +03:00
yubikey-installer.nix fmt 2023-04-08 18:06:03 +03:00

Config

This is an attempt to configure my NixOS servers with krops. Usage:

$ direnv allow .
$ nix-build ./krops.nix -A hel1a && ./result

There is probably nothing to look at here.

Upcoming flakes:

$ nix build .#deploy.nodes.hel1-a.profiles.system.path

VM:

$ nix build .#nixosConfigurations.vm.config.system.build.vm

Encoding host-only secrets

Encode a secret on host:

rage -e -r "$(cat /etc/ssh/ssh_host_ed25519_key.pub)" -o secret.age /path/to/plaintext

Decode a secret on host (to test things out):

rage -d -i /etc/ssh/ssh_host_ed25519_key secret.age

Bootstrapping

Prereqs:

mkdir -p /etc/secrets/initrd
ssh-keygen -t ed25519 -f /etc/secrets/initrd/ssh_host_ed25519