{ config, lib, pkgs, ... }: { programs.git = { enable = true; aliases = { lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit"; }; extraConfig = { user.name = "Tim McCarthy"; user.email = "thoomfish@gmail.com"; color.ui = true; init.defaultBranch = "main"; push.default = "simple"; pull.rebase = true; transfer.fsckobjects = true; credential.helper = "store"; # Needed for straight.el bootstrapping # nongnu-elpa repository has zero padded file modes fetch.fsck.zeroPaddedFilemode = "warn"; }; ignores = [ ".DS_Store" ".projectile" ".idea" "*.sw?" "*.pyc" ".#*" ".nrepl-port" ".rebel_readline_history" ".auctex-auto" "*.synctex.gz" ".ccls-cache" ".lein-repl-history" "ompile_commands.json" "*.egg-info" ".envrc" ".vscode" ".direnv" ".ipynb_checkpoints" "nfer-out" ".cache" ]; includes = [ { condition = "gitdir/i:~/SRI/"; contents.user.email = "tim.mccarthy@sri.com"; } ]; }; }