nix-config/home/modules/git.nix
2022-01-30 13:19:40 +01:00

71 lines
1.4 KiB
Nix

{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.dadada.home.git;
in
{
options.dadada.home.git = {
enable = mkEnableOption "Enable git config";
};
config = mkIf cfg.enable {
programs.git = {
enable = true;
extraConfig = {
core = {
whitespace = {
tab-in-indent = true;
tabwidth = 4;
};
alias = {
};
pager = "delta";
};
column = {
ui = "never";
};
checkout = {
defaultRemote = "origin";
};
delta = {
navigate = true; # use n and N to move between diff sections
side-by-side = false;
line-numbers = true;
};
diff = {
renames = "copies";
algorithm = "histogram";
colorMoved = "default";
};
interactive = {
diffFilter = "delta --color-only";
};
merge = {
conflictstyle = "diff3";
};
status = {
short = true;
branch = true;
showUntrackedFiled = "all";
};
commit = {
verbose = true;
};
log = {
date = "iso8601-local";
};
pull = {
prune = true;
};
};
};
home.packages = with pkgs; [
delta
git-lfs
gitAndTools.hub
gitAndTools.lab
gitAndTools.git-absorb
];
};
}