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 = {
|
||||
programs.git = {
|
||||
enable = true;
|
||||
home.file."/home/hu/.config/git/personal" = {
|
||||
text = ''
|
||||
[user]
|
||||
email = "me@caem.dev"
|
||||
name = "caem"
|
||||
signingKey = "E50FC66B5062070DC462661C69A830D03203405F"
|
||||
|
||||
userName = "caem";
|
||||
userEmail = "me@caem.dev";
|
||||
signing = {
|
||||
key = "E50FC66B5062070DC462661C69A830D03203405F";
|
||||
signByDefault = true;
|
||||
};
|
||||
[tag]
|
||||
gpgSign = true
|
||||
|
||||
extraConfig = {
|
||||
init.defaultBranch = "master";
|
||||
pull.rebase = true;
|
||||
};
|
||||
[init]
|
||||
defaultBranch = "master"
|
||||
|
||||
[pull]
|
||||
rebase = true
|
||||
'';
|
||||
};
|
||||
|
||||
home.file."/home/hu/.config/git/uni" = (lib.mkIf (builtins.pathExists ugp) {
|
||||
source = "/nix/config/secrets/git_uni";
|
||||
});
|
||||
|
||||
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