Files
nix/home/modules/git/default.nix
T

34 lines
772 B
Nix

{
config,
lib,
pkgs,
dotsPath,
...
}:
{
options.git = {
enable = lib.mkEnableOption "git";
github.enable = lib.mkEnableOption "Github CLI";
gitlab.enable = lib.mkEnableOption "Gitlab CLI";
};
config = lib.mkIf config.git.enable {
assertions = [
{
assertion = config.nvim.enable;
message = "git module requires 'nvim' module (`nvimdiff`)";
}
];
programs.git.enable = true;
home.file = {
".gitconfig".source = dotsPath + "/.gitconfig";
".gitconfig.work".source = dotsPath + "/.gitconfig.work";
".gitignore".source = dotsPath + "/.gitignore";
};
programs.gh.enable = config.git.github.enable;
home.packages = lib.optionals config.git.gitlab.enable [ pkgs.glab ];
};
}