From c83a5bce66b68e4ce4d9dfce3a9a45265418e15b Mon Sep 17 00:00:00 2001 From: Luke Granger-Brown Date: Sun, 6 Jun 2021 15:19:15 +0000 Subject: [PATCH] mercurialFull: add support for experimental in-tree git extension The git extension is bundled in-tree, similarly to the hg gui, but also requires pygit2. Enable it for mercurialFull, but don't bother with it for the stock mercurial install. Alas, it doesn't (yet?) work on nixpkgs because it doesn't support octopus merges: mercurial.error.ProgrammingError: git support can't handle octopus merges, found a commit with 16 parents :( I'm sure that commit is loved equally by all 16 parents. --- pkgs/applications/version-management/mercurial/default.nix | 7 ++++--- pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pkgs/applications/version-management/mercurial/default.nix b/pkgs/applications/version-management/mercurial/default.nix index df58b2162fc1..b5609b584866 100644 --- a/pkgs/applications/version-management/mercurial/default.nix +++ b/pkgs/applications/version-management/mercurial/default.nix @@ -1,12 +1,13 @@ { lib, stdenv, fetchurl, fetchpatch, python3Packages, makeWrapper, gettext , re2Support ? true , rustSupport ? stdenv.hostPlatform.isLinux, rustPlatform -, guiSupport ? false, tk ? null +, gitSupport ? false +, guiSupport ? false, tk , ApplicationServices }: let - inherit (python3Packages) docutils python fb-re2; + inherit (python3Packages) docutils python fb-re2 pygit2; in python3Packages.buildPythonApplication rec { pname = "mercurial"; @@ -42,7 +43,7 @@ in python3Packages.buildPythonApplication rec { } else null; cargoRoot = if rustSupport then "rust" else null; - propagatedBuildInputs = lib.optional re2Support fb-re2; + propagatedBuildInputs = lib.optional re2Support fb-re2 ++ lib.optional gitSupport pygit2; nativeBuildInputs = [ makeWrapper gettext ] ++ lib.optionals rustSupport (with rustPlatform; [ cargoSetupHook diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index bb12c3c8df11..d6ec5a409cb3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25423,7 +25423,7 @@ in inherit (darwin.apple_sdk.frameworks) ApplicationServices; }; - mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; }); + mercurialFull = appendToName "full" (pkgs.mercurial.override { guiSupport = true; gitSupport = true; }); merkaartor = libsForQt5.callPackage ../applications/misc/merkaartor { };