From 42d4a7df9245a38e3fbe90de7bf7c52cfd136b30 Mon Sep 17 00:00:00 2001 From: Rebecca Turner Date: Wed, 25 Feb 2026 17:04:47 -0800 Subject: [PATCH] claude-mergetool: init at 1.1.0 [`claude-mergetool`][1] is exactly what it sounds like: a git/jj conflict resolution tool which resolves conflicts by asking Claude to resolve the conflicts. It works very well if someone else is paying your Claude bill. [1]: https://github.com/9999years/claude-mergetool --- pkgs/by-name/cl/claude-mergetool/package.nix | 38 ++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 pkgs/by-name/cl/claude-mergetool/package.nix diff --git a/pkgs/by-name/cl/claude-mergetool/package.nix b/pkgs/by-name/cl/claude-mergetool/package.nix new file mode 100644 index 000000000000..95962e9feead --- /dev/null +++ b/pkgs/by-name/cl/claude-mergetool/package.nix @@ -0,0 +1,38 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + nix-update-script, + versionCheckHook, +}: +let + version = "1.1.0"; +in +rustPlatform.buildRustPackage { + pname = "claude-mergetool"; + inherit version; + + src = fetchFromGitHub { + owner = "9999years"; + repo = "claude-mergetool"; + tag = "v${version}"; + hash = "sha256-MqAtr7SxbarllzDgOWvzUooiRNf08aAVaLdZHJzMnRI="; + }; + + cargoHash = "sha256-RawDKKx+O79+TnLZRdatEcNDd4vLzTqHF2w1/D5zPjA="; + + doInstallCheck = true; + nativeInstallCheckInputs = [ versionCheckHook ]; + versionCheckProgram = "${placeholder "out"}/bin/claude-mergetool"; + + meta = { + homepage = "https://github.com/9999years/claude-mergetool"; + changelog = "https://github.com/9999years/claude-mergetool/releases/tag/v${version}"; + description = "Resolve Git/jj merge conflicts automatically with claude-code"; + license = [ lib.licenses.mit ]; + maintainers = [ lib.maintainers._9999years ]; + mainProgram = "claude-mergetool"; + }; + + passthru.updateScript = nix-update-script { }; +}