Add ssh config

This commit is contained in:
David Morgan 2022-11-14 21:23:39 +00:00
parent ad935c670b
commit c835ffaccf
Signed by: djm
GPG Key ID: C171251002C200F2
2 changed files with 78 additions and 1 deletions

View File

@ -99,5 +99,67 @@ in
tabstop = 4;
};
};
programs.ssh = {
enable = true;
extraConfig = ''
Host *
AddKeysToAgent yes
IgnoreUnknown UseKeychain
UseKeychain yes
'';
includes = [ "~/.ssh/config_local" ];
matchBlocks = {
"djm.ovh" = {
hostname = "v.djm.ovh";
port = 2222;
};
"devio" = {
hostname = "devio.us";
user = "deejayem";
port = 2222;
};
"sdf" = {
hostname = "sdf.org";
user = "deejayem";
};
"sdfeu" = {
hostname = "sdf-eu.org";
user = "deejayem";
};
"grex" = {
hostname = "grex.org";
user = "deejayem";
};
"blinkenshell" = {
hostname = "ssh.blinkenshell.org";
port = 2222;
};
"hashbang" = {
hostname = "de1.hashbang.sh";
};
"o1" = {
hostname = "130.162.163.108";
};
"o2" = {
hostname = "143.47.239.39";
};
"tilde.institute" = {
hostname = "tilde.institute";
};
"tilde.team" = {
hostname = "tilde.team";
};
"ctrl-c.club" = {
hostname = "ctrl-c.club";
};
"github.com" = {
hostname = "github.com";
user = "git";
identityFile = "~/.ssh/id_ed25519";
identitiesOnly = true;
};
};
};
}

View File

@ -1,4 +1,4 @@
{ config, pkgs, ... }:
{ config, lib, pkgs, ... }:
{
imports = [
./includes/darwin.nix
@ -11,6 +11,21 @@
# paths it should manage.
home.username = "djm";
home.homeDirectory = "/Users/djm";
programs.ssh.matchBlocks = {
"github.com" = lib.mkForce {
hostname = "github.com";
user = "git";
identityFile = "~/.ssh/id_rsa";
identitiesOnly = true;
};
"github.com-personal" = {
hostname = "github.com";
user = "git";
identityFile = "~/.ssh/id_ed25519";
identitiesOnly = true;
};
};
# This value determines the Home Manager release that your
# configuration is compatible with. This helps avoid breakage