{ config, pkgs, ... }: { programs.git = { enable = true; userName = "Leonora Tindall"; userEmail = "nora@nora.codes"; delta.enable = true; extraConfig = { init.defaultBranch = "main"; push.default = "current"; color.ui = "auto"; alias = { aa = "add --all"; ap = "add --patch"; branches = ''for-each-ref --sort=-committerdate --format=\"%(color:blue)%(authordate:relative)\t%(color:red)%(authorname)\t%(color:white)%(color:bold)%(refname:short)\" refs/remotes''; ci = "commit -v"; co = "checkout"; pf = "push --force-with-lease"; st = "status"; }; core = { excludesfile = "~/.gitignore"; autocrlf = "input"; }; merge = { ff = "only"; conflictstyle = "diff3"; }; fetch.prune = true; rebase.autosquash = true; diff.colorMoved = "default"; delta = { navigate = true; light = false; }; sendemail = { smtpserver = "smtp.fastmail.com"; smtpuser = "nora@nora.codes"; smtpencryption = "ssl"; smtpserverport = "465"; smtppass = "c75fkegmmwlndhnz"; }; }; }; home.file.".gitignore".source = ./rcfiles/gitignore; }