{ pkgs, ... }:

{
  home.packages = with pkgs; [
    # git-annex
    bfg-repo-cleaner
    delta
  ];

  programs.git = {
    enable = true;
    lfs = {
      enable = true;
    };
    userEmail = "matt@emenel.ca";
    userName = "Matt Nish-Lapidus";
    ignores = [
      ".DS_Store"
    ];
    extraConfig = {
      core = {
        editor = "$EDITOR";
        pager = "${pkgs.delta}/bin/delta";
      };
      interactive = {
        diffFilter = "${pkgs.delta}/bin/delta --color-only";
      };
      delta = {
        navigate = true;
        dark = true;
        line-numbers = true;
        side-by-side = true;
      };
      merge = {
        conflictstyle = "zdiff3";
      };
      init = {
        defaultBranch = "main";
      };
    };
    aliases = {
      co = "checkout";
      cm = "commit -m";
      a = "add .";
      p = "push";
    };
  };
}
