2024-04-03 18:54:40 +00:00
|
|
|
{ lib, ... }:
|
|
|
|
let
|
|
|
|
admins = import ./admins.nix;
|
|
|
|
robots = import ./robots.nix;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
flake = {
|
|
|
|
logins = {
|
2024-04-03 19:47:27 +00:00
|
|
|
admins =
|
|
|
|
lib.lists.foldl
|
|
|
|
(logins: adminConfig: {
|
|
|
|
sshPubKeys = logins.sshPubKeys ++ (lib.attrsets.attrValues adminConfig.sshPubKeys);
|
|
|
|
wireguardDevices =
|
|
|
|
logins.wireguardDevices
|
|
|
|
++ (if adminConfig ? "wireguardDevices" then adminConfig.wireguardDevices else [ ]);
|
|
|
|
})
|
|
|
|
{
|
|
|
|
sshPubKeys = [ ];
|
|
|
|
wireguardDevices = [ ];
|
|
|
|
}
|
|
|
|
(lib.attrsets.attrValues admins);
|
2024-04-03 18:54:40 +00:00
|
|
|
robots.sshPubKeys = lib.attrsets.attrValues robots;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|