GNU bug report logs -
#73034
[PATCH] gnu: git: Fix perl search-paths of wrapped programs.
Previous Next
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 73034 in the body.
You can then email your comments to 73034 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 01:57:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Simon Tournier <zimon.toutoune <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Thu, 05 Sep 2024 01:57:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Fixes a regression introduced in f288604428e9c8f096ec9e0eccf207e079806271,
where the git-send-email and gitweb.cgi wrap-programs had translated into the
"new style" using G-exps. See <https://issues.guix.gnu.org/73030>.
* gnu/packages/version-control.scm (git)[arguments]<phases>: Restore the
complete list of propagated inputs by modifying the functional composition
order.
Change-Id: Idfa33d9e5519aa9303b10138a166391244636ede
---
gnu/packages/version-control.scm | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
Hi,
Since there is no team, I guess, let CC people who submitted and reviewed the
initial patch. ;-)
Well, is this patch allowed to go to directly to master? Because it triggers
888 rebuilds:
$ ./pre-inst-env guix refresh -l git | cut -f1 -d':'
Building the following 411 packages would ensure 888 dependent packages are rebuilt
Cheers,
simon
PS: Sent using this fix. ;-) But an annoyance remains about Need MIME::Base64
and Authen::SASL; it requires perl-authen-sasl.
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 1db783b731..d43382368b 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -55,6 +55,7 @@
;;; Copyright © 2024 Hilton Chain <hako <at> ultrarare.space>
;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com>
;;; Copyright © 2024 Suhail Singh <suhail <at> bayesians.ca>
+;;; Copyright © 2024 Simon Tournier <zimon.toutoune <at> gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -657,21 +658,24 @@ (define-public git
,(search-path-as-list
'("lib/perl5/site_perl")
'#$(delete-duplicates
- (append-map
- (compose last package-transitive-propagated-inputs)
- (list (this-package-input "perl-authen-sasl")
- (this-package-input "perl-net-smtp-ssl")
- (this-package-input
- "perl-io-socket-ssl")))))))
+ (map last
+ (append-map
+ package-transitive-propagated-inputs
+ (list (this-package-input "perl-authen-sasl")
+ (this-package-input "perl-net-smtp-ssl")
+ (this-package-input
+ "perl-io-socket-ssl"))))))))
+
;; Tell 'gitweb.cgi' where perl modules are.
(wrap-program (string-append out "/share/gitweb/gitweb.cgi")
`("PERL5LIB" ":" prefix
,(search-path-as-list
'("lib/perl5/site_perl")
'#$(delete-duplicates
- (append-map
- (compose last package-transitive-propagated-inputs)
- (list (this-package-input "perl-cgi")))))))
+ (map last
+ (append-map
+ package-transitive-propagated-inputs
+ (list (this-package-input "perl-cgi"))))))))
;; Tell 'git-submodule' where Perl is.
(wrap-program git-sm
base-commit: ed95ddeb1e58c314f2e22b4cd35986042f3e2f21
--
2.45.2
Information forwarded
to
maxim.cournoyer <at> gmail.com, liliana.prikler <at> gmail.com, ludo <at> gnu.org, guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 02:41:01 GMT)
Full text and
rfc822 format available.
Message #8 received at 73034 <at> debbugs.gnu.org (full text, mbox):
Fixes a regression introduced in f288604428e9c8f096ec9e0eccf207e079806271,
where the git-send-email and gitweb.cgi wrap-programs had translated into the
"new style" using G-exps. See <https://issues.guix.gnu.org/73030>.
* gnu/packages/version-control.scm (git)[arguments]<phases>: Restore the
complete list of propagated inputs by modifying the functional composition
order.
Change-Id: Ia4e5feeae6418a9f098464556b74bc871e761be1
---
gnu/packages/version-control.scm | 29 ++++++++++++++++++++---------
1 file changed, 20 insertions(+), 9 deletions(-)
Hi,
Change since v1:
'package-transitive-propagated-inputs' does not return the package itself, so
let manually add it.
Cheers,
simon
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 1db783b731..b8192035c2 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -55,6 +55,7 @@
;;; Copyright © 2024 Hilton Chain <hako <at> ultrarare.space>
;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com>
;;; Copyright © 2024 Suhail Singh <suhail <at> bayesians.ca>
+;;; Copyright © 2024 Simon Tournier <zimon.toutoune <at> gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -657,21 +658,31 @@ (define-public git
,(search-path-as-list
'("lib/perl5/site_perl")
'#$(delete-duplicates
- (append-map
- (compose last package-transitive-propagated-inputs)
- (list (this-package-input "perl-authen-sasl")
- (this-package-input "perl-net-smtp-ssl")
- (this-package-input
- "perl-io-socket-ssl")))))))
+ (let ((these-inputs
+ (list (this-package-input "perl-authen-sasl")
+ (this-package-input "perl-net-smtp-ssl")
+ (this-package-input "perl-io-socket-ssl"))))
+ (append
+ these-inputs
+ (map last
+ (append-map
+ package-transitive-propagated-inputs
+ these-inputs))))))))
+
;; Tell 'gitweb.cgi' where perl modules are.
(wrap-program (string-append out "/share/gitweb/gitweb.cgi")
`("PERL5LIB" ":" prefix
,(search-path-as-list
'("lib/perl5/site_perl")
'#$(delete-duplicates
- (append-map
- (compose last package-transitive-propagated-inputs)
- (list (this-package-input "perl-cgi")))))))
+ (let ((these-inputs
+ (list (this-package-input "perl-cgi"))))
+ (append
+ these-inputs
+ (map last
+ (append-map
+ package-transitive-propagated-inputs
+ these-inputs))))))))
;; Tell 'git-submodule' where Perl is.
(wrap-program git-sm
base-commit: ed95ddeb1e58c314f2e22b4cd35986042f3e2f21
--
2.45.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 12:49:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 73034 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
Hi,
If we're going to apply this patch which would trigger so many rebuilds,
I suggest combining it with git 2.46.0 update, I sent in issue #72413[0]
Also, this patch fixed, git-send-email for me.
[0] https://issues.guix.gnu.org/72413
Thanks!
--
Ashish
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 15:44:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 73034 <at> debbugs.gnu.org (full text, mbox):
Fixes a regression introduced in f288604428e9c8f096ec9e0eccf207e079806271,
where the git-send-email and gitweb.cgi wrap-programs had translated into the
"new style" using G-exps. See <https://issues.guix.gnu.org/73030>.
* gnu/packages/version-control.scm (git)[arguments]<phases>: Restore the
complete list of propagated inputs by modifying the functional composition
order.
Change-Id: Ia4e5feeae6418a9f098464556b74bc871e761be1
---
gnu/packages/version-control.scm | 29 ++++++++++++++++++++---------
1 file changed, 20 insertions(+), 9 deletions(-)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 1db783b731..b8192035c2 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -55,6 +55,7 @@
;;; Copyright © 2024 Hilton Chain <hako <at> ultrarare.space>
;;; Copyright © 2023 Zheng Junjie <873216071 <at> qq.com>
;;; Copyright © 2024 Suhail Singh <suhail <at> bayesians.ca>
+;;; Copyright © 2024 Simon Tournier <zimon.toutoune <at> gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -657,21 +658,31 @@ (define-public git
,(search-path-as-list
'("lib/perl5/site_perl")
'#$(delete-duplicates
- (append-map
- (compose last package-transitive-propagated-inputs)
- (list (this-package-input "perl-authen-sasl")
- (this-package-input "perl-net-smtp-ssl")
- (this-package-input
- "perl-io-socket-ssl")))))))
+ (let ((these-inputs
+ (list (this-package-input "perl-authen-sasl")
+ (this-package-input "perl-net-smtp-ssl")
+ (this-package-input "perl-io-socket-ssl"))))
+ (append
+ these-inputs
+ (map last
+ (append-map
+ package-transitive-propagated-inputs
+ these-inputs))))))))
+
;; Tell 'gitweb.cgi' where perl modules are.
(wrap-program (string-append out "/share/gitweb/gitweb.cgi")
`("PERL5LIB" ":" prefix
,(search-path-as-list
'("lib/perl5/site_perl")
'#$(delete-duplicates
- (append-map
- (compose last package-transitive-propagated-inputs)
- (list (this-package-input "perl-cgi")))))))
+ (let ((these-inputs
+ (list (this-package-input "perl-cgi"))))
+ (append
+ these-inputs
+ (map last
+ (append-map
+ package-transitive-propagated-inputs
+ these-inputs))))))))
;; Tell 'git-submodule' where Perl is.
(wrap-program git-sm
--
2.45.2
Information forwarded
to
maxim.cournoyer <at> gmail.com, liliana.prikler <at> gmail.com, ludo <at> gnu.org, guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 15:56:02 GMT)
Full text and
rfc822 format available.
Message #17 received at 73034 <at> debbugs.gnu.org (full text, mbox):
Hi,
Since changes to the package Git imply large rebuilds, this series integrates
submission #72413.
Change since v2: Restore the ’origin’ of git-manpages under native-inputs.
Commit f288604428e9c8f096ec9e0eccf207e079806271 moved the origin inside the phase.
--8<---------------cut here---------------start------------->8---
+ (add-after 'split 'install-man-pages
+ (lambda _
+ (let ((man (string-append #$output "/share/man")))
+ (mkdir-p man)
+ (with-directory-excursion man
+ (invoke
+ "tar" "xvf"
+ #$(origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kernel.org/software/scm/git/"
+ "git-manpages-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0xsqakgy0s60zpa13ilj6zj420kdh8pf4v3nrp1nziwj8ja4qymw"))))))))
--8<---------------cut here---------------end--------------->8---
And this appears to me a bad idea, because 1. it makes harder to know what are
the inputs and more importantly 2. it is hidden from procedure
’package-direct-sources’, which means it will not be archived.
Cheers,
simon
1: https://issues.guix.gnu.org/72413
Ashish SHUKLA (1):
gnu: git: Update to 2.46.0
Simon Tournier (2):
gnu: git: Fix perl search-paths of wrapped programs.
gnu: git: Move git-manpages origin from phases to native-inputs.
gnu/packages/version-control.scm | 77 +++++++++++++++++++-------------
1 file changed, 47 insertions(+), 30 deletions(-)
base-commit: 7d2ced8d6d9c38327592d312376d59a8c37fc160
--
2.45.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 15:56:03 GMT)
Full text and
rfc822 format available.
Message #20 received at 73034 <at> debbugs.gnu.org (full text, mbox):
The move from native-inputs to the install-man-pages phase had been done by
f288604428e9c8f096ec9e0eccf207e079806271.
* gnu/packages/version-control.scm (git)[arguments]<phases>: Move git-manpages
origin from here...
[native-inputs]: ...to here.
Change-Id: I9fa543f7410bce6eb8a82d275eab81a1ea86ecc0
---
gnu/packages/version-control.scm | 44 ++++++++++++++++++--------------
1 file changed, 25 insertions(+), 19 deletions(-)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index 9a4c2fdbdc..3e8f042d18 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -695,26 +695,32 @@ (define-public git
(with-directory-excursion man
(invoke
"tar" "xvf"
- #$(origin
- (method url-fetch)
- (uri (string-append
- "mirror://kernel.org/software/scm/git/"
- "git-manpages-" (package-version this-package)
- ".tar.xz"))
- (sha256
- (base32
- "1lvvhzypllbyd8j6m0p9qgd3gqg10gch9s7lqif8vr9n80fqn4fw"))))))))))))
+ #$(this-package-native-input "git-manpages"))))))))))
(native-inputs
- (modify-inputs (package-native-inputs git-minimal)
- ;; For subtree documentation.
- (append asciidoc
- docbook2x
- docbook-xml-4.5
- docbook-xsl
- libxslt
- pkg-config
- texinfo
- xmlto)))
+ (cons
+ ;; To build the man pages from the git sources, we would need a dependency
+ ;; on a full XML tool chain, and building it actually takes ages. So we
+ ;; use this lazy approach and use released tarball.
+ `("git-manpages"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://kernel.org/software/scm/git/git-manpages-"
+ (package-version this-package) ".tar.xz"))
+ (sha256
+ (base32
+ "1lvvhzypllbyd8j6m0p9qgd3gqg10gch9s7lqif8vr9n80fqn4fw"))))
+
+ (modify-inputs (package-native-inputs git-minimal)
+ ;; For subtree documentation.
+ (append asciidoc
+ docbook2x
+ docbook-xml-4.5
+ docbook-xsl
+ libxslt
+ pkg-config
+ texinfo
+ xmlto))))
(inputs
(modify-inputs (package-inputs git-minimal)
(append bash-minimal ;for wrap-program
--
2.45.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Thu, 05 Sep 2024 17:29:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 73034 <at> debbugs.gnu.org (full text, mbox):
From: Ashish SHUKLA <ashish.is <at> lostca.se>
* gnu/packages/version-control.scm (git-minimal): Update to 2.46.0.
(git)[arguments]<phases>{install-man-pages} Update hash for the
git-manpages.
Change-Id: I686825ffba828e88e37ff156fab23fd43155d210
---
gnu/packages/version-control.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index b8192035c2..9a4c2fdbdc 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -249,14 +249,14 @@ (define git-cross-configure-flags
(define-public git-minimal
(package
(name "git-minimal")
- (version "2.45.2")
+ (version "2.46.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/software/scm/git/git-"
version ".tar.xz"))
(sha256
(base32
- "1nws1vjgj54sv32wxl1h3n1jkcpabqv7a605hhafsby0n5zfigsi"))))
+ "15bzq9m6c033qiz5q5gw1nqw4m452vvqax30wbms6z4bl9i384kz"))))
(build-system gnu-build-system)
(arguments
(list
@@ -703,7 +703,7 @@ (define-public git
".tar.xz"))
(sha256
(base32
- "1pqrp46kwbxycqld39027ph1cvkq9am156y3sswn6w2khsg30f09"))))))))))))
+ "1lvvhzypllbyd8j6m0p9qgd3gqg10gch9s7lqif8vr9n80fqn4fw"))))))))))))
(native-inputs
(modify-inputs (package-native-inputs git-minimal)
;; For subtree documentation.
--
2.45.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Fri, 06 Sep 2024 04:21:02 GMT)
Full text and
rfc822 format available.
Message #26 received at 73034 <at> debbugs.gnu.org (full text, mbox):
Hi,
Simon Tournier <zimon.toutoune <at> gmail.com> writes:
> Hi,
>
> Since changes to the package Git imply large rebuilds, this series integrates
> submission #72413.
>
> Change since v2: Restore the ’origin’ of git-manpages under native-inputs.
>
> Commit f288604428e9c8f096ec9e0eccf207e079806271 moved the origin inside the phase.
>
> + (add-after 'split 'install-man-pages
> + (lambda _
> + (let ((man (string-append #$output "/share/man")))
> + (mkdir-p man)
> + (with-directory-excursion man
> + (invoke
> + "tar" "xvf"
> + #$(origin
> + (method url-fetch)
> + (uri (string-append
> + "mirror://kernel.org/software/scm/git/"
> + "git-manpages-" version ".tar.xz"))
> + (sha256
> + (base32
> + "0xsqakgy0s60zpa13ilj6zj420kdh8pf4v3nrp1nziwj8ja4qymw"))))))))
>
> And this appears to me a bad idea, because 1. it makes harder to know what are
> the inputs and more importantly 2. it is hidden from procedure
> ’package-direct-sources’, which means it will not be archived.
I believe your argument 1. is going to affect any label-free package
definitions needing additional origins copied in, so the issue is bigger
than just this commit, in my opinion.
About 2; perhaps it'd be preferable to build the doc from source, if
that doesn't introduce cycles or too large of a native inputs graph.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Fri, 06 Sep 2024 11:30:02 GMT)
Full text and
rfc822 format available.
Message #29 received at 73034 <at> debbugs.gnu.org (full text, mbox):
Hi Maxim,
On Fri, 06 Sep 2024 at 13:17, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> wrote:
>> And this appears to me a bad idea, because 1. it makes harder to know what are
>> the inputs and more importantly 2. it is hidden from procedure
>> ’package-direct-sources’, which means it will not be archived.
>
> I believe your argument 1. is going to affect any label-free package
> definitions needing additional origins copied in, so the issue is bigger
> than just this commit, in my opinion.
Well, is it not changing the scope of the work being reviewed?
If not, sorry, I do not understand what you mean. Could you explain more?
In my views, what comes from the outside should be listed under inputs,
native-inputs or propagated-inputs. I mean, that’s somehow the
principle from functional paradigm. Putting an ’origin’ inside an
arguments is somehow a way to get around that principle, IMHO.
For instance, packages farstream, gnulib-checkout, smithforth,
gnome-recipes and dmd-bootstrap should also be fixed.
If you mean that it’s not easy to fix, from my understanding, it changes
the scope of the work being reviewed but let take the opportunity to
discuss. :-)
Currently it’s not possible to write something like:
--8<---------------cut here---------------start------------->8---
(native-inputs (append
(list
`("foo"
,(origin
(method git-fetch)
(uri (git-reference
(url "https://somewhere.org/plop")
(commit (string-append "v" version))))
(file-name (git-file-name "plip" version))
(sha256
(base32
"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx")))))
(list bar baz and other)))
--8<---------------cut here---------------end--------------->8---
It appears to me that something is lacking: inputs-append. ;-) We could
have a macro or a procedure that does the dance, allowing to mix both
“styles”.
> About 2; perhaps it'd be preferable to build the doc from source, if
> that doesn't introduce cycles or too large of a native inputs graph.
This is out of the scope, IMHO. Yes, I agree: it might be preferable
but while waiting, it appears to me even more preferable to not have a
package that hides all its sources. ;-)
Cheers,
simon
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Fri, 06 Sep 2024 15:56:01 GMT)
Full text and
rfc822 format available.
Message #32 received at 73034 <at> debbugs.gnu.org (full text, mbox):
Re,
On Fri, 06 Sep 2024 at 12:31, Simon Tournier <zimon.toutoune <at> gmail.com> wrote:
>> I believe your argument 1. is going to affect any label-free package
>> definitions needing additional origins copied in, so the issue is bigger
>> than just this commit, in my opinion.
[...]
> from my understanding, it changes
> the scope of the work being reviewed but let take the opportunity to
> discuss. :-)
See submission #73073 <https://issues.guix.gnu.org/73073>.
Cheers,
simon
Reply sent
to
Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
:
You have taken responsibility.
(Sun, 08 Sep 2024 12:13:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Simon Tournier <zimon.toutoune <at> gmail.com>
:
bug acknowledged by developer.
(Sun, 08 Sep 2024 12:13:02 GMT)
Full text and
rfc822 format available.
Message #37 received at 73034-done <at> debbugs.gnu.org (full text, mbox):
Hi Simon,
Simon Tournier <zimon.toutoune <at> gmail.com> writes:
> Re,
>
> On Fri, 06 Sep 2024 at 12:31, Simon Tournier <zimon.toutoune <at> gmail.com> wrote:
>
>>> I believe your argument 1. is going to affect any label-free package
>>> definitions needing additional origins copied in, so the issue is bigger
>>> than just this commit, in my opinion.
>
> [...]
>
>> from my understanding, it changes
>> the scope of the work being reviewed but let take the opportunity to
>> discuss. :-)
>
> See submission #73073 <https://issues.guix.gnu.org/73073>.
Thanks for following up with concrete ideas. It seems the discussion
still has some ways to go before we reach consensus there, but at least
it seems clear we do not want to go back to reintroducing labels, so
I've applied 1/3 and 3/3 but left out 2/3.
Thank you for fixing my botched wrapped-program phase translation :-).
We can now use 'git send-email' and friends easily again.
--
Thanks,
Maxim
Information forwarded
to
guix-patches <at> gnu.org
:
bug#73034
; Package
guix-patches
.
(Mon, 09 Sep 2024 19:07:02 GMT)
Full text and
rfc822 format available.
Message #40 received at 73034-done <at> debbugs.gnu.org (full text, mbox):
Hi Maxim,
On Sun, 08 Sep 2024 at 21:10, Maxim Cournoyer <maxim.cournoyer <at> gmail.com> wrote:
> We can now use 'git send-email' and friends easily again.
Cool! Thank you.
Cheers,
simon
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 08 Oct 2024 11:24:10 GMT)
Full text and
rfc822 format available.
This bug report was last modified 306 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.