infrastructure/lib/default.nix

23 lines
547 B
Nix

_:
let
sources = import ../npins;
nix-lib = import sources.nix-lib {
inherit ((import sources.nixpkgs { })) lib;
keysRoot = ../keys;
metaRoot = ../meta;
};
in nix-lib // (with nix-lib; {
# Get publickeys associated to a node
getNodeKeys = node:
let
meta = import ../meta;
names =
builtins.foldl' (names: group: names ++ meta.members.groups.${group})
(meta.nodes.${node}.admins ++ [ "/machines/${node}" ])
(meta.nodes.${node}.adminGroups ++ [ "root" ]);
in getAllKeys names;
})