2.home-manager/modules/programs/mergiraf.nix
Bob van der Linden ba6aaa0e0a mergiraf: add merge.conflictStyle git configuration
Mergiraf expects merge.conflictStyle to be "diff3" in git. If this isn't
the case, mergiraf cannot operate correctly. This change adds this
option to git's configuration.
2025-10-14 22:59:58 -05:00

43 lines
806 B
Nix

{
pkgs,
config,
lib,
...
}:
let
inherit (lib)
mkEnableOption
mkPackageOption
mkIf
maintainers
;
cfg = config.programs.mergiraf;
mergiraf = "${cfg.package}/bin/mergiraf";
in
{
meta.maintainers = [ maintainers.bobvanderlinden ];
options = {
programs.mergiraf = {
enable = mkEnableOption "mergiraf";
package = mkPackageOption pkgs "mergiraf" { };
};
};
config = mkIf cfg.enable {
home.packages = [ cfg.package ];
programs.git = {
attributes = [ "* merge=mergiraf" ];
extraConfig = {
merge = {
mergiraf = {
name = "mergiraf";
driver = "${mergiraf} merge --git %O %A %B -s %S -x %X -y %Y -p %P -l %L";
};
conflictStyle = "diff3";
};
};
};
};
}