nix-dotfiles/modules/software/dev/git.nix

46 lines
964 B
Nix

{ pkgs, config, lib, ... }:
with lib;
let
cfg = config.modules.software.dev.git;
in {
options.modules.software.dev.git = {
enable = mkEnableOption "Enable git. You know what git is";
};
config = mkIf cfg.enable {
hm.programs.git = {
enable = true;
package = pkgs.gitFull;
userName = ''Reid "reidlab"'';
userEmail = "reidlab325@gmail.com";
ignores = [
# General
"*.direnv"
"*.envrc"
# OS related
".DS_Store?"
".DS_Store"
".CFUserTextEncoding"
".Trash"
".Xauthority"
"thumbs.db"
"Thumbs.db"
"Icon?"
];
aliases = {
graph = ''log --graph --color --pretty=format:"%C(yellow)%H%C(green)%d%C(reset)%n%x20%cd%n%x20%cn%x20(%ce)%n%x20%s%n"'';
};
extraConfig = {
push.autoSetupRemote = true;
pull.rebase = true;
init.defaultBranch = "main";
};
};
};
}