♻️ [shared] Refactor hm ssh config, added systems to hm module
This commit is contained in:
@ -154,6 +154,7 @@
|
|||||||
theme
|
theme
|
||||||
libHm
|
libHm
|
||||||
systemConfig
|
systemConfig
|
||||||
|
systems
|
||||||
;
|
;
|
||||||
};
|
};
|
||||||
users.${username} = import ./hosts/${hostName}/home-manager;
|
users.${username} = import ./hosts/${hostName}/home-manager;
|
||||||
|
@ -5,23 +5,25 @@
|
|||||||
common,
|
common,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
with builtins;
|
||||||
|
|
||||||
{
|
{
|
||||||
programs.ssh = {
|
programs.ssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
matchBlocks =
|
matchBlocks = listToAttrs (
|
||||||
|
map (system: {
|
||||||
|
name = system.hostName;
|
||||||
|
value =
|
||||||
let
|
let
|
||||||
block = hostname: {
|
# TODO rename desktop to homelab
|
||||||
port = 22;
|
hostName = if system.hostName == "homelab" then "admin" else system.hostName;
|
||||||
user = systemConfig.username;
|
|
||||||
hostname = "${hostname}.dns.${common.domain}";
|
|
||||||
};
|
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
desktop = block "desktop";
|
port = 22;
|
||||||
homelab = block "admin"; # TODO rename to homelab
|
user = systemConfig.username;
|
||||||
pi4 = block "pi4";
|
hostname = "${hostName}.dns.${common.domain}";
|
||||||
thinkpad = block "thinkpad";
|
|
||||||
};
|
};
|
||||||
|
}) systems
|
||||||
|
);
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
@ -14,7 +14,9 @@ in
|
|||||||
map (system: {
|
map (system: {
|
||||||
name = system.hostName;
|
name = system.hostName;
|
||||||
value = {
|
value = {
|
||||||
extraHostNames = [ "${system.hostName}.${domain}" ];
|
extraHostNames = [
|
||||||
|
"${system.hostName}.${domain}"
|
||||||
|
];
|
||||||
publicKey = system.ssh.publicKey;
|
publicKey = system.ssh.publicKey;
|
||||||
};
|
};
|
||||||
}) systems
|
}) systems
|
||||||
|
Reference in New Issue
Block a user