♻️ [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
libHm
systemConfig
systems
;
};
users.${username} = import ./hosts/${hostName}/home-manager;

View File

@ -5,23 +5,25 @@
common,
...
}:
with builtins;
{
programs.ssh = {
enable = true;
matchBlocks =
let
block = hostname: {
port = 22;
user = systemConfig.username;
hostname = "${hostname}.dns.${common.domain}";
};
in
{
desktop = block "desktop";
homelab = block "admin"; # TODO rename to homelab
pi4 = block "pi4";
thinkpad = block "thinkpad";
};
matchBlocks = listToAttrs (
map (system: {
name = system.hostName;
value =
let
# TODO rename desktop to homelab
hostName = if system.hostName == "homelab" then "admin" else system.hostName;
in
{
port = 22;
user = systemConfig.username;
hostname = "${hostName}.dns.${common.domain}";
};
}) systems
);
};
}

View File

@ -14,7 +14,9 @@ in
map (system: {
name = system.hostName;
value = {
extraHostNames = [ "${system.hostName}.${domain}" ];
extraHostNames = [
"${system.hostName}.${domain}"
];
publicKey = system.ssh.publicKey;
};
}) systems