blob: 6e33a4acc556002f63b060584c06da61f658a666 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
let
machines = {
bismuth = {
user = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEK96G1n31aJsZOrux3BKM0ztzi/SFAVHn0MsGkPDdqY";
system = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEP1Q8/07PD5AXghM7cd9Uf54YY8rkuBHfllr1Kzxh10";
};
graphite = {
user = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEDujTul5wWyGnidLnNuJDRze0Up29l2cDpyKdmvW2Ls";
system = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHd+EvfxJC1rZbeI6hUq5tPpy8b3Xio02orgMBLwPU2l";
};
moissanite = {
user = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINTG/DHTkuQgwLakSBuXx3XBe+WjUmDlSgLBGzldx/ZD";
system = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIPy6IFaPkJMT89s1PZ/ekFGDKF2kvsRuAUB5NTtYQPSL";
};
serpentine = {
user = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB2enlGTyVM/WWgpj/pCAwzatHiznpLQdcx6LCjQEe7t";
system = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMsjtgquC3tlOvtREUjSIq97D44Lq6SEM1Bxdnvl+snm";
};
};
keysOfType = type: from: with builtins; catAttrs type (attrValues from);
machinesWithKey = type: from: builtins.mapAttrs (m: k: k.${type}) from;
in
rec {
inherit machines;
# keys of admin accounts on network machines
allUsers = keysOfType "user" machines;
# system host keys of all network machines
allSystems = keysOfType "system" machines;
# all keys, whether system or user
all = allUsers ++ allSystems;
# user keys per machine
user = machinesWithKey "user" machines;
# system keys per machine
system = machinesWithKey "system" machines;
}
|