summaryrefslogtreecommitdiff
path: root/modules/home-manager/personal/programs/git.nix
diff options
context:
space:
mode:
Diffstat (limited to 'modules/home-manager/personal/programs/git.nix')
-rw-r--r--modules/home-manager/personal/programs/git.nix81
1 files changed, 45 insertions, 36 deletions
diff --git a/modules/home-manager/personal/programs/git.nix b/modules/home-manager/personal/programs/git.nix
index 56078a8..488295e 100644
--- a/modules/home-manager/personal/programs/git.nix
+++ b/modules/home-manager/personal/programs/git.nix
@@ -3,19 +3,23 @@
lib,
pkgs,
...
-} @ extraArgs: let
- primaryEmail = let
- primaryEmailList =
- builtins.filter (account: account.primary)
- (lib.attrValues config.accounts.email.accounts);
- in
- if primaryEmailList == []
- then {
- userName = lib.mkDefault "Quentin Aristote";
- address = lib.mkDefault "quentin@aristote.fr";
- }
- else builtins.head primaryEmailList;
-in {
+}@extraArgs:
+let
+ primaryEmail =
+ let
+ primaryEmailList = builtins.filter (account: account.primary) (
+ lib.attrValues config.accounts.email.accounts
+ );
+ in
+ if primaryEmailList == [ ] then
+ {
+ userName = lib.mkDefault "Quentin Aristote";
+ address = lib.mkDefault "quentin@aristote.fr";
+ }
+ else
+ builtins.head primaryEmailList;
+in
+{
programs.git = {
userName = primaryEmail.userName;
userEmail = primaryEmail.address;
@@ -23,30 +27,35 @@ in {
inherit (primaryEmail.gpg) key signByDefault;
};
- ignores =
- [
- (builtins.readFile
- (pkgs.personal.static.gitignore.override {templates = ["Emacs" "Linux"];}))
- ]
- ++ [
- # Personal rules
- ''
- # direnv
- .direnv
- .envrc
+ ignores = [
+ (builtins.readFile (
+ pkgs.personal.static.gitignore.override {
+ templates = [
+ "Emacs"
+ "Linux"
+ ];
+ }
+ ))
+ ]
+ ++ [
+ # Personal rules
+ ''
+ # direnv
+ .direnv
+ .envrc
- # devenv
- .devenv.flake.nix
- .devenv/
- devenv.local.nix
+ # devenv
+ .devenv.flake.nix
+ .devenv/
+ devenv.local.nix
- # Nix
- shell.nix
- .nix-gc-roots
- .tmp
- result
- ''
- ];
+ # Nix
+ shell.nix
+ .nix-gc-roots
+ .tmp
+ result
+ ''
+ ];
extraConfig = {
safe.directory = lib.mkIf (extraArgs ? osConfig) (
@@ -55,7 +64,7 @@ in {
flakeIsValid = flake != null && lib.hasPrefix "git+file://" flake;
flakePath = lib.removePrefix "git+file://" flake;
in
- lib.optional flakeIsValid flakePath
+ lib.optional flakeIsValid flakePath
);
init.defaultBranch = "master";
pull.rebase = true;