51 lines
1.3 KiB
Nix
51 lines
1.3 KiB
Nix
{
|
|
user ? throw "user argument is required",
|
|
home ? throw "home argument is required",
|
|
}:
|
|
{ lib, pkgs, ... }:
|
|
{
|
|
home-manager.users.${user} = {
|
|
sops.secrets = {
|
|
"git/credentials" = {
|
|
sopsFile = ../../../../../../../secrets/personal/secrets.yaml;
|
|
path = "${home}/.config/git/credentials";
|
|
};
|
|
|
|
"git/cookies" = {
|
|
sopsFile = ../../../../../../../secrets/personal/secrets.yaml;
|
|
path = "${home}/.config/git/cookies";
|
|
};
|
|
};
|
|
|
|
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;
|
|
}
|
|
);
|
|
|
|
ssh.matchBlocks = {
|
|
"github.com" = {
|
|
hostname = "github.com";
|
|
user = "git";
|
|
};
|
|
|
|
"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";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|