git: Add support for multiple identities
This commit is contained in:
parent
3703d7f392
commit
a06e6c3f92
1 changed files with 42 additions and 14 deletions
|
@ -1,21 +1,49 @@
|
||||||
{ ... }:
|
{ pkgs, lib, ... }:
|
||||||
|
|
||||||
{
|
let
|
||||||
|
ugp = "/nix/config/secrets/git_uni";
|
||||||
|
in {
|
||||||
home-manager.users.hu = {
|
home-manager.users.hu = {
|
||||||
programs.git = {
|
home.file."/home/hu/.config/git/personal" = {
|
||||||
enable = true;
|
text = ''
|
||||||
|
[user]
|
||||||
|
email = "me@caem.dev"
|
||||||
|
name = "caem"
|
||||||
|
signingKey = "E50FC66B5062070DC462661C69A830D03203405F"
|
||||||
|
|
||||||
userName = "caem";
|
[tag]
|
||||||
userEmail = "me@caem.dev";
|
gpgSign = true
|
||||||
signing = {
|
|
||||||
key = "E50FC66B5062070DC462661C69A830D03203405F";
|
[init]
|
||||||
signByDefault = true;
|
defaultBranch = "master"
|
||||||
|
|
||||||
|
[pull]
|
||||||
|
rebase = true
|
||||||
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
extraConfig = {
|
home.file."/home/hu/.config/git/uni" = (lib.mkIf (builtins.pathExists ugp) {
|
||||||
init.defaultBranch = "master";
|
source = "/nix/config/secrets/git_uni";
|
||||||
pull.rebase = true;
|
});
|
||||||
};
|
|
||||||
|
home.file."/home/hu/.config/git/config" = {
|
||||||
|
text = ''
|
||||||
|
[gpg]
|
||||||
|
program = "${pkgs.gnupg}/bin/gpg2"
|
||||||
|
|
||||||
|
[includeIf "gitdir:~/programming/personal/**"]
|
||||||
|
path = ~/.config/git/personal
|
||||||
|
|
||||||
|
[includeIf "gitdir:~/programming/forks/**"]
|
||||||
|
path = ~/.config/git/personal
|
||||||
|
|
||||||
|
'' + (if builtins.pathExists ugp then ''
|
||||||
|
[includeIf "gitdir:~/programming/uni/**"]
|
||||||
|
path = ~/.config/git/uni
|
||||||
|
|
||||||
|
'' else ''
|
||||||
|
# Uni config omitted
|
||||||
|
'');
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue