From 1310f227e84edaaa2d0377e116463a6a313dd10a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 12:11:54 +0100 Subject: [PATCH 01/10] libgit2: rename directory to expected name --- pkgs/development/libraries/{git2 => libgit2}/default.nix | 0 pkgs/top-level/all-packages.nix | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) rename pkgs/development/libraries/{git2 => libgit2}/default.nix (100%) diff --git a/pkgs/development/libraries/git2/default.nix b/pkgs/development/libraries/libgit2/default.nix similarity index 100% rename from pkgs/development/libraries/git2/default.nix rename to pkgs/development/libraries/libgit2/default.nix diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a0e362e7b1f1..0f63099ce1f8 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16717,7 +16717,7 @@ with pkgs; icon-lang = callPackage ../development/interpreters/icon-lang { }; - libgit2 = callPackage ../development/libraries/git2 { + libgit2 = callPackage ../development/libraries/libgit2 { inherit (darwin.apple_sdk.frameworks) Security; }; From fca1c9165c7a005ac662d39298828490e36a9c6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 12:31:31 +0100 Subject: [PATCH 02/10] libgit2: 1.3.0 -> 1.4.0, update meta Enable SSH backend which several libraries depend on which was disabled by default for some reason. --- .../development/libraries/libgit2/default.nix | 40 ++++++++++++++----- 1 file changed, 30 insertions(+), 10 deletions(-) diff --git a/pkgs/development/libraries/libgit2/default.nix b/pkgs/development/libraries/libgit2/default.nix index 35ef9fba1051..dc12e643cb75 100644 --- a/pkgs/development/libraries/libgit2/default.nix +++ b/pkgs/development/libraries/libgit2/default.nix @@ -1,23 +1,42 @@ -{ lib, stdenv, fetchFromGitHub, cmake, pkg-config, python3 -, zlib, libssh2, openssl, pcre, http-parser -, libiconv, Security +{ lib +, stdenv +, fetchFromGitHub +, fetchpatch +, cmake +, pkg-config +, python3 +, zlib +, libssh2 +, openssl +, pcre +, http-parser +, libiconv +, Security }: stdenv.mkDerivation rec { pname = "libgit2"; - version = "1.3.0"; - # keep the version in sync with python3.pkgs.pygit2 and libgit2-glib + version = "1.4.0"; + # also check the following packages for updates: python3.pkgs.pygit2 and libgit2-glib src = fetchFromGitHub { owner = "libgit2"; repo = "libgit2"; rev = "v${version}"; - sha256 = "sha256-7atNkOBzX+nU1gtFQEaE+EF1L+eex+Ajhq2ocoJY920="; + sha256 = "sha256-21t7fD/5O+HIHUDEv8MqloDmAIm9sSpJYqreCD3Co2k="; }; + patches = [ + (fetchpatch { + url = "https://github.com/libgit2/libgit2/commit/8bc9eda779b2e2602fc74944aba5d39198e0642f.patch"; + sha256 = "sha256-r2i4+WsrxIpSwH0g/AikBdAajBncXb1zz0uOQB0h1Jk="; + }) + ]; + cmakeFlags = [ "-DTHREADSAFE=ON" "-DUSE_HTTP_PARSER=system" + "-DUSE_SSH=ON" ]; nativeBuildInputs = [ cmake python3 pkg-config ]; @@ -30,9 +49,10 @@ stdenv.mkDerivation rec { doCheck = false; # hangs. or very expensive? meta = { - description = "The Git linkable library"; - homepage = "https://libgit2.github.com/"; - license = lib.licenses.gpl2; - platforms = with lib.platforms; all; + description = "Linkable library implementation of Git that you can use in your application"; + homepage = "https://libgit2.org/"; + license = lib.licenses.gpl2Plus; + platforms = lib.platforms.all; + maintainers = with lib.maintainers; [ ]; }; } From 4ae622152b15464407c8893342c93e51536df246 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 12:33:36 +0100 Subject: [PATCH 03/10] python39Packages.pygit2: use disabledTestPaths, add missing meta.maintainers, remove disabled for python2 --- pkgs/development/python-modules/pygit2/default.nix | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/pkgs/development/python-modules/pygit2/default.nix b/pkgs/development/python-modules/pygit2/default.nix index 6f8a9fa69687..b8b405a8ecf0 100644 --- a/pkgs/development/python-modules/pygit2/default.nix +++ b/pkgs/development/python-modules/pygit2/default.nix @@ -25,12 +25,12 @@ buildPythonPackage rec { checkInputs = [ pytestCheckHook ]; - preCheck = '' + disabledTestPaths = [ # disable tests that require networking - rm test/test_repository.py - rm test/test_credentials.py - rm test/test_submodule.py - ''; + "test/test_repository.py" + "test/test_credentials.py" + "test/test_submodule.py" + ]; # Tests require certificates # https://github.com/NixOS/nixpkgs/pull/72544#issuecomment-582674047 @@ -44,11 +44,10 @@ buildPythonPackage rec { # https://github.com/NixOS/nixpkgs/pull/72544#issuecomment-582681068 doCheck = false; - disabled = !isPy3k; - meta = with lib; { description = "A set of Python bindings to the libgit2 shared library"; homepage = "https://pypi.python.org/pypi/pygit2"; license = licenses.gpl2; + maintainers = with maintainers; [ ]; }; } From 99d0740a73617a60410cd2f15b15451d6bcb8297 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 12:56:18 +0100 Subject: [PATCH 04/10] libgit2_0_27: move top-level entry into julia_10 --- pkgs/top-level/all-packages.nix | 29 ++++++++++++++--------------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 0f63099ce1f8..8767f35a7507 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -12631,7 +12631,20 @@ with pkgs; julia_10 = callPackage ../development/compilers/julia/1.0.nix { gmp = gmp6; inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; - libgit2 = libgit2_0_27; + libgit2 = libgit2.overrideAttrs (_: rec { + version = "0.27.10"; + src = fetchFromGitHub { + owner = "libgit2"; + repo = "libgit2"; + rev = "v${version}"; + sha256 = "09jz2fzv0zl5058s0g1cpnw87a2rgg8wnjwlygi18i2n9nn6m0ad"; + }; + patches = []; + meta.knownVulnerabilities = [ + "CVE-2020-12278" + "CVE-2020-12279" + ]; + }); }; julia_15 = callPackage ../development/compilers/julia/1.5.nix { @@ -16721,20 +16734,6 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Security; }; - libgit2_0_27 = libgit2.overrideAttrs (_: rec { - version = "0.27.10"; - src = fetchFromGitHub { - owner = "libgit2"; - repo = "libgit2"; - rev = "v${version}"; - sha256 = "09jz2fzv0zl5058s0g1cpnw87a2rgg8wnjwlygi18i2n9nn6m0ad"; - }; - meta.knownVulnerabilities = [ - "CVE-2020-12278" - "CVE-2020-12279" - ]; - }); - libgit2_1_1 = libgit2.overrideAttrs (_: rec { version = "1.1.1"; src = fetchFromGitHub { From 7630d65bdb84b78d1b2c562da0235aeda4fc9091 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 12:56:40 +0100 Subject: [PATCH 05/10] libgit2_1_1: drop because unused --- pkgs/top-level/all-packages.nix | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 8767f35a7507..5d2f68a4320e 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16734,16 +16734,6 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Security; }; - libgit2_1_1 = libgit2.overrideAttrs (_: rec { - version = "1.1.1"; - src = fetchFromGitHub { - owner = "libgit2"; - repo = "libgit2"; - rev = "v${version}"; - sha256 = "sha256-SxceIxT0aeiiiZCeSIe6EOa+MyVpQVaiv/ZZn6fkwIc="; - }; - }); - libgit2-glib = callPackage ../development/libraries/libgit2-glib { }; libhsts = callPackage ../development/libraries/libhsts { }; From e388cf1654ed59a00ec3bb877e7e94252dcda9a6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 23:38:40 +0100 Subject: [PATCH 06/10] libgit2_1_3_0: init at 1.3.0 --- pkgs/top-level/all-packages.nix | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 5d2f68a4320e..a6bb2abf452a 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -16734,6 +16734,17 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Security; }; + libgit2_1_3_0 = libgit2.overrideAttrs (_: rec { + version = "1.3.0"; + src = pkgs.fetchFromGitHub { + owner = "libgit2"; + repo = "libgit2"; + rev = "v${version}"; + sha256 = "sha256-7atNkOBzX+nU1gtFQEaE+EF1L+eex+Ajhq2ocoJY920="; + }; + patches = []; + }); + libgit2-glib = callPackage ../development/libraries/libgit2-glib { }; libhsts = callPackage ../development/libraries/libhsts { }; From 3b53789e933b8b20db226a33730400bf665b1f04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 12:56:54 +0100 Subject: [PATCH 07/10] python39Packages.pytgit2: pin to libgit2 1.3.0 due to failing tests --- pkgs/top-level/python-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 0c0506fe2b46..a26676621da9 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6900,7 +6900,9 @@ in { pygetwindow = callPackage ../development/python-modules/pygetwindow { }; - pygit2 = callPackage ../development/python-modules/pygit2 { }; + pygit2 = callPackage ../development/python-modules/pygit2 { + libgit2 = pkgs.libgit2_1_3_0; + }; PyGithub = callPackage ../development/python-modules/pyGithub { }; From b836f5bd4e4d342a072f2b72c7edb3814977646e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Tue, 15 Feb 2022 23:38:19 +0100 Subject: [PATCH 08/10] turbogit: pin libgit2 to 1.3.0 --- pkgs/top-level/all-packages.nix | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index a6bb2abf452a..fceee93faf18 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -15715,7 +15715,9 @@ with pkgs; ttyd = callPackage ../servers/ttyd { }; - turbogit = callPackage ../development/tools/turbogit { }; + turbogit = callPackage ../development/tools/turbogit { + libgit2 = libgit2_1_3_0; + }; tweak = callPackage ../applications/editors/tweak { }; From e82383cf3aa106082f081df1e4323cd8a77470d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 16 Feb 2022 00:12:36 +0100 Subject: [PATCH 09/10] gitstatus: clear patches for libgit2 fork --- .../git-and-tools/gitstatus/romkatv_libgit2.nix | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix b/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix index f94f772f50f1..21ddff49e917 100644 --- a/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix +++ b/pkgs/applications/version-management/git-and-tools/gitstatus/romkatv_libgit2.nix @@ -1,4 +1,4 @@ -{ fetchFromGitHub, libgit2, ...}: +{ fetchFromGitHub, libgit2, ... }: libgit2.overrideAttrs (oldAttrs: { cmakeFlags = oldAttrs.cmakeFlags ++ [ @@ -8,15 +8,18 @@ libgit2.overrideAttrs (oldAttrs: { "-DUSE_BUNDLED_ZLIB=ON" "-DUSE_GSSAPI=OFF" "-DUSE_HTTPS=OFF" - "-DUSE_HTTP_PARSER=builtin" # overwritten from libgit2 + "-DUSE_HTTP_PARSER=builtin" # overwritten from libgit2 "-DUSE_NTLMCLIENT=OFF" "-DUSE_SSH=OFF" "-DZERO_NSEC=ON" ]; + src = fetchFromGitHub { owner = "romkatv"; repo = "libgit2"; rev = "tag-5860a42d19bcd226cb6eff2dcbfcbf155d570c73"; sha256 = "sha256-OdGLNGOzXbWQGqw5zYM1RhU4Z2yRXi9cpAt7Vn9+j5I="; }; + + patches = [ ]; }) From dece6ab9aa917486f703e15108dee6928b6c02b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20J=C3=A4ckel?= Date: Wed, 16 Feb 2022 00:45:23 +0100 Subject: [PATCH 10/10] gitaly: clear patches for libgit2 --- pkgs/applications/version-management/gitlab/gitaly/default.nix | 2 ++ 1 file changed, 2 insertions(+) diff --git a/pkgs/applications/version-management/gitlab/gitaly/default.nix b/pkgs/applications/version-management/gitlab/gitaly/default.nix index 7983251a459d..51c9dd71f160 100644 --- a/pkgs/applications/version-management/gitlab/gitaly/default.nix +++ b/pkgs/applications/version-management/gitlab/gitaly/default.nix @@ -14,6 +14,8 @@ let rev = "109b4c887ffb63962c7017a66fc4a1f48becb48e"; sha256 = "sha256-w029FHpOv5K49wE1OJMOlkTe+2cv+ORYqEHxs59GDBI="; }; + + patches = []; }); rubyEnv = bundlerEnv rec {