{ config, ... }: { programs.ssh = { enable = true; enableDefaultConfig = false; matchBlocks = { "*" = { addKeysToAgent = "yes"; forwardAgent = false; serverAliveInterval = 0; serverAliveCountMax = 3; identitiesOnly = true; }; "github.com" = { hostname = "github.com"; user = "git"; identityFile = "~/.ssh/commits"; }; "aethrvmn.gr" = { hostname = "aethrvmn.gr"; identityFile = "~/.ssh/connections"; }; "theke.ml" = { hostname = "theke.ml"; identityFile = "~/.ssh/connections"; }; "apo.theke.ml" = { hostname = "apo.theke.ml"; user = "git"; port = 222; identityFile = "~/.ssh/theke"; }; "code.aethrvmn.gr" = { hostname = "code.aethrvmn.gr"; identityFile = "~/.ssh/commits"; }; "velor.gr" = { hostname = "velor.gr"; identityFile = "~/.ssh/velor"; }; }; }; services = { # disable gNOME's "usecase?" ssh-agent gnome.gcr-ssh-agent.enable = lib.mkForce false; }; }