♻️ [shared] Refactor hm ssh config, added systems to hm module

This commit is contained in:
2025-05-20 22:03:58 +02:00
parent 9a8cc63674
commit 7455299dd7
3 changed files with 20 additions and 15 deletions

View File

@ -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;

View File

@ -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
);
}; };
} }

View File

@ -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