#+title: SSH Configuration

Configure SSH. Keys should be added to the SSH agent. Use the system keychain on all configurations.
#+begin_src nix
  { config, pkgs, ... }:
  {
    programs.ssh = {
      enable = true;
      addKeysToAgent = "yes";
      matchBlocks = {
        "*" = {
          identityFile = "~/.ssh/id_ed25519";
          extraOptions = {
            "UseKeychain" = "yes";
          };
        };

        "aviary" = {
          hostname = "aviary.cs.umanitoba.ca";
          user = "janzenj2";
          setEnv = {
            "TERM" = "xterm";
          };
        };

        "jjanzen.ca" = {
          setEnv = {
            "TERM" = "xterm";
          };
        };

        "minecraft" = {
          setEnv = {
            "TERM" = "xterm";
          };
          hostname = "jjanzen.ca";
          user = "minecraft";
        };

        "oracle" = {
          setEnv = {
            "TERM" = "xterm";
          };
          hostname = "jjanzen.ca";
          identityFile = "~/.ssh/oracle";
          identitiesOnly = true;
          user = "opc";
        };
      };
    };
  }
#+end_src
