mirror of
https://codeberg.org/leana8959/.files.git
synced 2025-12-06 06:39:14 +00:00
Reviewed-on: https://codeberg.org/leana8959/.files/pulls/20 Co-authored-by: Léana 江 <leana.jiang+git@icloud.com> Co-committed-by: Léana 江 <leana.jiang+git@icloud.com>
70 lines
1.4 KiB
Nix
70 lines
1.4 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
...
|
|
}: {
|
|
# git plugins
|
|
programs.git = {
|
|
lfs.enable = true;
|
|
patdiff.enable = lib.mkMerge [
|
|
# known to fail on aarch64-linux
|
|
(lib.mkIf (pkgs.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.git.patdiff;
|
|
in
|
|
lib.mkIf patdiffCfg.enable {
|
|
settings = {
|
|
git.paging.externalDiffCommand = "${lib.getExe' patdiffCfg.package "patdiff-git-wrapper"}";
|
|
};
|
|
};
|
|
|
|
# git itself
|
|
programs.git = {
|
|
extraConfig = {
|
|
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 = {
|
|
userEmail = "leana.jiang+git@icloud.com";
|
|
userName = "Léana 江";
|
|
signing = {
|
|
key = "0x4E887A4CA9714ADA";
|
|
signByDefault = lib.mkDefault false;
|
|
};
|
|
};
|
|
}
|