yep, more dotfiles
1let
2 inherit (builtins) listToAttrs attrNames;
3
4 # Map the name and value of all items of an attrset
5 mapAttrs' = f: set: listToAttrs (map (attr: f attr set.${attr}) (attrNames set));
6
7 keys = import secrets/keys.nix;
8
9 prependAttrsName =
10 prefix:
11 mapAttrs' (
12 name: value: {
13 name = prefix + name;
14 inherit value;
15 }
16 );
17 secretsDir = path: prependAttrsName (path + "/") ((import ./${path}/default.nix) keys);
18in
19
20secretsDir "secrets" // secretsDir "hosts/weird-row-server/secrets"