dotfiles/modules/ssh.nix
Lucy von Overheidt f9c369c584 meow
2025-09-09 21:20:12 +02:00

38 lines
767 B
Nix

{ config
, pkgs
, lib
, ...
}:
let
mkMatchBlock =
{ hostname }:
{
inherit hostname;
user = "lucy"; # Use dynamically retrieved user
identityFile = [
"/nix/persist/etc/ssh/ssh_host_ed25519_key"
];
port = 22;
};
in
{
# Enable SSH client in Home Manager
programs.ssh = {
enable = true;
# Define host-specific SSH configurations (match blocks)
matchBlocks = {
"shell.c-base.org" = mkMatchBlock { hostname = "shell.c-base.org"; };
"code.c-base.org" = mkMatchBlock { hostname = "code.c-base.org"; };
};
# Any extra SSH configuration options you want globally
extraConfig = ''
# Example of global settings
Compression yes
ServerAliveInterval 60
'';
};
}