Add git ssh key wrapper
Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
user ? throw "user argument is required",
|
||||
home ? throw "home argument is required",
|
||||
}:
|
||||
{ ... }:
|
||||
{ lib, pkgs, ... }:
|
||||
{
|
||||
home-manager.users.${user} = {
|
||||
sops.secrets = {
|
||||
@@ -17,27 +17,33 @@
|
||||
};
|
||||
};
|
||||
|
||||
programs.ssh.matchBlocks = {
|
||||
"github.com" = {
|
||||
hostname = "github.com";
|
||||
user = "git";
|
||||
identityFile = [
|
||||
"${home}/.ssh/ssh_sas_ed25519_key"
|
||||
"${home}/.ssh/ssh_personal_ed25519_key"
|
||||
];
|
||||
};
|
||||
programs = {
|
||||
git.extraConfig.core.sshCommand = lib.meta.getExe (
|
||||
pkgs.writeShellApplication {
|
||||
name = "git-ssh-key-wrapper";
|
||||
runtimeInputs = with pkgs; [ openssh ];
|
||||
text = builtins.readFile ./git-ssh-key-wrapper.sh;
|
||||
}
|
||||
);
|
||||
|
||||
"gitlab.sas.com" = {
|
||||
hostname = "gitlab.sas.com";
|
||||
user = "git";
|
||||
identityFile = "${home}/.ssh/ssh_sas_ed25519_key";
|
||||
};
|
||||
ssh.matchBlocks = {
|
||||
"github.com" = {
|
||||
hostname = "github.com";
|
||||
user = "git";
|
||||
};
|
||||
|
||||
"gerrit-svi.unx.sas.com" = {
|
||||
hostname = "gerrit-svi.unx.sas.com";
|
||||
user = "nikara";
|
||||
port = 29418;
|
||||
identityFile = "${home}/.ssh/ssh_sas_ed25519_key";
|
||||
"gitlab.sas.com" = {
|
||||
hostname = "gitlab.sas.com";
|
||||
user = "git";
|
||||
identityFile = "${home}/.ssh/ssh_sas_ed25519_key";
|
||||
};
|
||||
|
||||
"gerrit-svi.unx.sas.com" = {
|
||||
hostname = "gerrit-svi.unx.sas.com";
|
||||
user = "nikara";
|
||||
port = 29418;
|
||||
identityFile = "${home}/.ssh/ssh_sas_ed25519_key";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
Reference in New Issue
Block a user