.files/nix/homeModules/common/git.nix
Léana 江 b0b7222d48
vanadium: fix build
packages/ruler: update

vanadium/overlays/fcitx5: fix patch

vanadium/overlays/fcitx5-chinese-addons: fix patch

treewide: system -> stdenv.hostPlatform.system

vanadium: fix warnings
2025-11-28 11:26:39 +08:00

71 lines
1.4 KiB
Nix

{
lib,
config,
pkgs,
...
}:
{
# git plugins
programs.git = {
lfs.enable = true;
};
programs.patdiff.enable = lib.mkMerge [
# known to fail on aarch64-linux
(lib.mkIf (pkgs.stdenv.hostPlatform.system == "aarch64-linux") (
# TODO: investigate this
lib.warn "patdiff has been forcibly disabled because it has previously failed to build" lib.mkForce
false
))
(lib.mkDefault true)
];
# 懶惰鬼賴皮
programs.lazygit =
let
patdiffCfg = config.programs.patdiff;
in
lib.mkIf patdiffCfg.enable {
settings = {
git.paging.externalDiffCommand = "${lib.getExe' patdiffCfg.package "patdiff-git-wrapper"}";
};
};
# git itself
programs.git = {
settings = {
init.defaultBranch = "trunk"; # I like trees
push.autoSetupRemote = true;
pull.ff = "only";
rerere.enabled = true;
};
ignores = [
# sanity
".env"
# vim
"*~"
"*.swp"
# darwin
"**/.DS_Store"
# nix
".direnv/"
"**/result"
"**/result-*" # building an attr of derivation will make multiple links
# pre-commit
".pre-commit-config.yaml"
];
};
# identity
programs.git.settings = {
user.email = "leana.jiang+git@icloud.com";
user.name = "Léana ";
signing = {
key = "0x4E887A4CA9714ADA";
signByDefault = lib.mkDefault false;
};
};
}