From 082a4ad541ae01ba4832db4605810635d8908c8f Mon Sep 17 00:00:00 2001 From: TheGeneralist <180094941+thegeneralist01@users.noreply.github.com> Date: Wed, 1 Apr 2026 16:50:27 +0200 Subject: [PATCH] yep --- modules/common/git.nix | 64 +++++++++++++++++++++++++++++------------- 1 file changed, 44 insertions(+), 20 deletions(-) diff --git a/modules/common/git.nix b/modules/common/git.nix index 6fe5b3e..cecf81a 100644 --- a/modules/common/git.nix +++ b/modules/common/git.nix @@ -1,31 +1,55 @@ -{ lib, pkgs, ... }: let +{ lib, pkgs, ... }: +let inherit (lib) getExe; -in { +in +{ environment.systemPackages = with pkgs; [ gnupg + difftastic ]; - home-manager.sharedModules = [{ - programs = { - gpg.enable = true; - gh.enable = true; - gh-dash.enable = true; - git = { - enable = true; + home-manager.sharedModules = [ + { + programs = { + gpg.enable = true; + gh.enable = true; + gh-dash.enable = true; - userName = "TheGeneralist"; - userEmail = "180094941+thegeneralist01@users.noreply.github.com"; - lfs.enable = true; + git = { + enable = true; - extraConfig = { - commit.gpgSign = true; - tag.gpgSign = true; - gpg.format = "ssh"; - gpg.program = getExe pkgs.gnupg; - user.signingKey = "~/.ssh/id_ed25519"; + userName = "TheGeneralist"; + userEmail = "180094941+thegeneralist01@users.noreply.github.com"; + lfs.enable = true; + + extraConfig = { + commit.gpgSign = true; + tag.gpgSign = true; + gpg.format = "ssh"; + gpg.program = getExe pkgs.gnupg; + user.signingKey = "~/.ssh/id_ed25519"; + diff.algorithm = "histogram"; + diff.colorMoved = "default"; + + pull.rebase = true; + push.autoSetupRemote = true; + + merge.conflictStyle = "zdiff3"; + rebase.autoSquash = true; + rebase.autoStash = true; + rebase.updateRefs = true; + rerere.enabled = true; + + fetch.fsckObjects = true; + receive.fsckObjects = true; + transfer.fsckobjects = true; + + # https://bernsteinbear.com/git + alias.recent = "! git branch --sort=-committerdate --format=\"%(committerdate:relative)%09%(refname:short)\" | head -10"; + }; }; }; - }; - }]; + } + ]; }