From f817b3ddbec65653988f5fd6c0b832e330f83825 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Federico=20Dami=C3=A1n=20Schonborn?= Date: Fri, 11 Jul 2025 17:49:46 -0300 Subject: [PATCH] guile-git: 0.9.0 -> 0.10.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Federico Damián Schonborn (cherry-picked from commit 92db76bf5e378d0c9ba41728014be4c3e8b731e4) --- ...e-field-from-config-entry-on-libgit2.patch | 80 ------------------ ...te-refs-field-to-remote-callbacks-on.patch | 84 ------------------- pkgs/by-name/gu/guile-git/package.nix | 23 ++--- 3 files changed, 9 insertions(+), 178 deletions(-) delete mode 100644 pkgs/by-name/gu/guile-git/0001-structs-Omit-free-field-from-config-entry-on-libgit2.patch delete mode 100644 pkgs/by-name/gu/guile-git/0002-structs-Add-update-refs-field-to-remote-callbacks-on.patch diff --git a/pkgs/by-name/gu/guile-git/0001-structs-Omit-free-field-from-config-entry-on-libgit2.patch b/pkgs/by-name/gu/guile-git/0001-structs-Omit-free-field-from-config-entry-on-libgit2.patch deleted file mode 100644 index ce3db57c0bf9..000000000000 --- a/pkgs/by-name/gu/guile-git/0001-structs-Omit-free-field-from-config-entry-on-libgit2.patch +++ /dev/null @@ -1,80 +0,0 @@ -From cc70ed70b19a712babd834806d6fc700b20c020a Mon Sep 17 00:00:00 2001 -From: Emily -Date: Wed, 22 Jan 2025 23:25:51 +0000 -Subject: [PATCH 1/2] =?UTF-8?q?structs:=20Omit=20=E2=80=98free=E2=80=99=20?= - =?UTF-8?q?field=20from=20=E2=80=98%config-entry=E2=80=99=20on=20libgit2?= - =?UTF-8?q?=201.9+.?= -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -* configure.ac: Check for the ‘free’ field of ‘git_config_entry’. -* git/configuration.scm.in (%have-config-entry-free?): New variable. -* git/structs.scm (%config-entry): Omit ‘free’ field conditionally. ---- - configure.ac | 10 ++++++++++ - git/configuration.scm.in | 4 ++++ - git/structs.scm | 4 +++- - 3 files changed, 17 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index b04ca6b..7f8f0b9 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -87,6 +87,16 @@ else - fi - AC_SUBST([HAVE_CONFIG_ENTRY_BACKEND_TYPE]) - -+dnl Does 'git_config_entry' have 'free'? Removed in 1.9. -+AC_CHECK_MEMBER([git_config_entry.free], [], [], -+ [[#include ]]) -+if test "x$ac_cv_member_git_config_entry_free" = "xyes"; then -+ HAVE_CONFIG_ENTRY_FREE="#true" -+else -+ HAVE_CONFIG_ENTRY_FREE="#false" -+fi -+AC_SUBST([HAVE_CONFIG_ENTRY_FREE]) -+ - dnl Does 'git_diff_options' have 'oid_type'? It's new in 1.7. - AC_CHECK_MEMBER([git_diff_options.oid_type], [], [], - [[#include ]]) -diff --git a/git/configuration.scm.in b/git/configuration.scm.in -index e10b195..864b9ff 100644 ---- a/git/configuration.scm.in -+++ b/git/configuration.scm.in -@@ -24,6 +24,7 @@ - %have-fetch-options-depth? - %have-diff-options-oid-type? - %have-config-entry-backend-type? -+ %have-config-entry-free? - %have-GIT_OPT_SET_SERVER_CONNECT_TIMEOUT? - %have-GIT_OPT_SET_HOMEDIR? - %have-GIT_OPT_SET_USER_AGENT_PRODUCT?)) -@@ -48,6 +49,9 @@ - (define %have-config-entry-backend-type? - @HAVE_CONFIG_ENTRY_BACKEND_TYPE@) - -+(define %have-config-entry-free? -+ @HAVE_CONFIG_ENTRY_FREE@) -+ - (define %have-GIT_OPT_SET_SERVER_CONNECT_TIMEOUT? - @HAVE_GIT_OPT_SET_SERVER_CONNECT_TIMEOUT@) - -diff --git a/git/structs.scm b/git/structs.scm -index beebd11..b35ae6d 100644 ---- a/git/structs.scm -+++ b/git/structs.scm -@@ -505,7 +505,9 @@ - '()) - (include-depth ,unsigned-int) - (level ,int) ;git_config_level_t -- (free ,(bs:pointer int)) -+ ,@(if %have-config-entry-free? -+ `(free ,(bs:pointer int)) -+ '()) - ,@(if %have-config-entry-backend-type? - '() - `((payload ,(bs:pointer int))))))) ;removed in 1.8 --- -2.47.0 - diff --git a/pkgs/by-name/gu/guile-git/0002-structs-Add-update-refs-field-to-remote-callbacks-on.patch b/pkgs/by-name/gu/guile-git/0002-structs-Add-update-refs-field-to-remote-callbacks-on.patch deleted file mode 100644 index 34de2004bb43..000000000000 --- a/pkgs/by-name/gu/guile-git/0002-structs-Add-update-refs-field-to-remote-callbacks-on.patch +++ /dev/null @@ -1,84 +0,0 @@ -From 595b850c85f55592b94d2218a12084fd7050b508 Mon Sep 17 00:00:00 2001 -From: Emily -Date: Wed, 22 Jan 2025 23:55:45 +0000 -Subject: [PATCH 2/2] =?UTF-8?q?structs:=20Add=20=E2=80=98update-refs?= - =?UTF-8?q?=E2=80=99=20field=20to=20=E2=80=98%remote-callbacks=E2=80=99=20?= - =?UTF-8?q?on=20libgit2=201.9+.?= -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -* configure.ac: Check for the ‘update_refs’ field of -‘git_remote_callbacks’. -* git/configuration.scm.in (%have-remote-callbacks-update-refs?): New -variable. -* git/structs.scm (%remote-callbacks): Add ‘update-refs’ field -conditionally. ---- - configure.ac | 10 ++++++++++ - git/configuration.scm.in | 4 ++++ - git/structs.scm | 5 ++++- - 3 files changed, 18 insertions(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 7f8f0b9..a2575f4 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -107,6 +107,16 @@ else - fi - AC_SUBST([HAVE_DIFF_OPTIONS_OID_TYPE]) - -+dnl Does 'git_remote_callbacks' have 'update_refs'? New in 1.9. -+AC_CHECK_MEMBER([git_remote_callbacks.update_refs], [], [], -+ [[#include ]]) -+if test "x$ac_cv_member_git_remote_callbacks_update_refs" = "xyes"; then -+ HAVE_REMOTE_CALLBACKS_UPDATE_REFS="#true" -+else -+ HAVE_REMOTE_CALLBACKS_UPDATE_REFS="#false" -+fi -+AC_SUBST([HAVE_REMOTE_CALLBACKS_UPDATE_REFS]) -+ - dnl 'GIT_OPT_SET_SERVER_CONNECT_TIMEOUT' & co. are new in 1.7. - GUILE_GIT_CHECK_DECLARATION([GIT_OPT_SET_SERVER_CONNECT_TIMEOUT]) - -diff --git a/git/configuration.scm.in b/git/configuration.scm.in -index 864b9ff..1e82c24 100644 ---- a/git/configuration.scm.in -+++ b/git/configuration.scm.in -@@ -25,6 +25,7 @@ - %have-diff-options-oid-type? - %have-config-entry-backend-type? - %have-config-entry-free? -+ %have-remote-callbacks-update-refs? - %have-GIT_OPT_SET_SERVER_CONNECT_TIMEOUT? - %have-GIT_OPT_SET_HOMEDIR? - %have-GIT_OPT_SET_USER_AGENT_PRODUCT?)) -@@ -52,6 +53,9 @@ - (define %have-config-entry-free? - @HAVE_CONFIG_ENTRY_FREE@) - -+(define %have-remote-callbacks-update-refs? -+ @HAVE_REMOTE_CALLBACKS_UPDATE_REFS@) -+ - (define %have-GIT_OPT_SET_SERVER_CONNECT_TIMEOUT? - @HAVE_GIT_OPT_SET_SERVER_CONNECT_TIMEOUT@) - -diff --git a/git/structs.scm b/git/structs.scm -index b35ae6d..664a7c1 100644 ---- a/git/structs.scm -+++ b/git/structs.scm -@@ -670,7 +670,10 @@ type to 'specified for this to take effect." - (transport ,(bs:pointer uint8)) - (remote-ready ,(bs:pointer void)) - (payload ,(bs:pointer uint8)) -- (resolve-url ,(bs:pointer uint8))))) -+ (resolve-url ,(bs:pointer uint8)) -+ ,@(if %have-remote-callbacks-update-refs? -+ `((update-refs ,(bs:pointer uint8))) -+ '())))) - - (define-record-type - (%make-remote-callbacks bytestructure) --- -2.47.0 - diff --git a/pkgs/by-name/gu/guile-git/package.nix b/pkgs/by-name/gu/guile-git/package.nix index cf9c2cc02654..cd7ddae16674 100644 --- a/pkgs/by-name/gu/guile-git/package.nix +++ b/pkgs/by-name/gu/guile-git/package.nix @@ -10,22 +10,17 @@ texinfo, }: -stdenv.mkDerivation rec { +stdenv.mkDerivation (finalAttrs: { pname = "guile-git"; - version = "0.9.0"; + version = "0.10.0"; src = fetchFromGitLab { owner = "guile-git"; - repo = pname; - rev = "v${version}"; - hash = "sha256-lFBoA1VBJRHcZkP3h2gnlXQrMjDFWS4jl9RlF8VVf/Q="; + repo = "guile-git"; + tag = "v${finalAttrs.version}"; + hash = "sha256-ihKpEnng6Uemrguecbd25vElEhIu2Efb86aM8679TAc="; }; - patches = [ - ./0001-structs-Omit-free-field-from-config-entry-on-libgit2.patch - ./0002-structs-Add-update-refs-field-to-remote-callbacks-on.patch - ]; - strictDeps = true; nativeBuildInputs = [ autoreconfHook @@ -52,11 +47,11 @@ stdenv.mkDerivation rec { __darwinAllowLocalNetworking = true; - meta = with lib; { + meta = { description = "Bindings to Libgit2 for GNU Guile"; homepage = "https://gitlab.com/guile-git/guile-git"; - license = licenses.gpl3Plus; - maintainers = with maintainers; [ ethancedwards8 ]; + license = lib.licenses.gpl3Plus; + maintainers = with lib.maintainers; [ ethancedwards8 ]; platforms = guile.meta.platforms; }; -} +})