{ config, lib, ... }: with lib; let cfg = config.settings.applications.ssh; in { options = { settings.applications.ssh.enable = lib.mkOption { type = lib.types.bool; description = '' Enable ssh and configure some endpoints ''; }; }; config = mkIf cfg.enable { programs.ssh = { enable = true; matchBlocks = { archserver = { hostname = "192.168.1.20"; user = "xeovalyte"; identityFile = "~/.ssh/archserver"; }; "gitea.xeovalyte.dev" = { hostname = "gitea.xeovalyte.dev"; port = 2222; user = "git"; identityFile = "~/.ssh/gitea"; }; }; addKeysToAgent = "yes"; }; }; }