carotte: disable gpg because pinentry misses libassuan
[julm/julm-nix.git] / home-manager / profiles / git.nix
index 8f32b910bc6caac70fd1dab0dcfae73a4ab967e5..403acc87bdf305ef8de7c7374892171fb3429674 100644 (file)
@@ -1,28 +1,36 @@
 { pkgs, lib, config, ... }:
 {
+home.packages = [
+  pkgs.git-chglog
+  pkgs.git-crypt
+  pkgs.git-quick-stats
+];
 programs.git = {
   enable = true;
   ignores = [ "*~" "*.swp" ];
   package = lib.mkDefault pkgs.gitFull;
   aliases = {
+    a = "add";
     authors = "shortlog -s -n";
     bl = "git log -p -M --follow --stat --";
-    br = "branch";
-    ci = "commit";
+    b = "branch";
+    c = "commit";
     ca = "commit --amend -C@";
+    cf = "commit --fixup";
     co = "checkout";
+    d = "diff";
     dc = "diff --cached";
-    df = "diff";
     dh = "diff --histogram";
     dp = "diff --patience";
     ign = "ls-files -o -i --exclude-standard";
     ll = "log --graph --decorate --pretty=oneline --abbrev-commit";
-    lp = "log -p";
-    s = "status -s";
+    lp = "log -p --pretty=fuller";
+    s = "status";
     spull = "!git-svn fetch && git-svn rebase";
     spush = "!git-svn dcommit";
-    st = "status";
-    su = "status -uno";
+    ss = "status -s";
+    st = "status -uno";
+    sw = "switch";
     fetch-local = "!git fetch local && git tag -d $(git describe --exact-match 2>/dev/null >/dev/null) && git fetch --tags local";
     pull-local = "!git fetch-local && git checkout -B master local/master";
     pull-local-old = "!git fetch-local && git checkout HEAD'^' && git branch -f master local/master && git checkout master";