{ self, lib, ... }: let inherit (lib.modules) mkMerge; inherit (lib.lists) forEach; inherit (builtins) attrNames; containerAddresses = import "${self}/hosts/hetzner-vm/data/containerAddresses.nix"; in { programs.ssh.enable = true; programs.ssh.matchBlocks = mkMerge ((forEach ["hetzner-vm" "vault" "raspberry" "vault-decrypt"] (hostname: { "${hostname}" = { user = "root"; hostname = "${hostname}.servers.genderfucked.monster"; }; })) ++ (forEach (attrNames containerAddresses.containers) (name: { "hetzner-vm-container-${name}" = { user = "root"; hostname = "${containerAddresses.containers.${name}}"; proxyJump = "hetzner-vm"; }; })) ++ [ { "blahaj" = { user = "chaos"; hostname = "blahaj.sapphicco.de"; }; } ]); }