GNU bug report logs -
#78437
[PATCH] gnu: git-minimal: Fix ugly output of git submodule -h.
Previous Next
Reported by: Nicolas Graves <ngraves <at> ngraves.fr>
Date: Thu, 15 May 2025 07:38:02 UTC
Severity: normal
Tags: patch
Done: Maxim Cournoyer <maxim <at> guixotic.coop>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your message dated Wed, 25 Jun 2025 23:04:06 +0900
with message-id <871pr75355.fsf <at> guixotic.coop>
and subject line Re: [bug#78437] [PATCH] gnu: git-minimal: Fix ugly output of git submodule -h.
has caused the debbugs.gnu.org bug report #78437,
regarding [PATCH] gnu: git-minimal: Fix ugly output of git submodule -h.
to be marked as done.
(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)
--
78437: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=78437
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
* gnu/packages/version-control.scm (git-minimal)[arguments]<phases>:
Adjust the snippet patching git-submodule.sh to avoid the ugly
".git submodule-real" from git submodule -h.
---
gnu/packages/version-control.scm | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index ed96b524f83..f4bae91906d 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -437,13 +437,11 @@ (define PATH-variable-definition
"GNU"))) ;matched against '*'
;; git-submodule sources 'git-sh-setup.sh', but not before
- ;; invoking the basename and sed commands... patch them to their
- ;; absolute location.
+ ;; invoking the basename and sed commands... Using those
+ ;; leads to some ugly .git submodule-real, hardcode instead.
(substitute* "git-submodule.sh"
- (("\\$\\(basename")
- (string-append "$(" (search-input-file inputs "bin/basename")))
- (("sed -e")
- (string-append (search-input-file inputs "bin/sed") " -e")))))
+ (("^dashless=.*")
+ "dashless=\"git submodule\"\n"))))
(add-after 'configure 'patch-makefiles
(lambda _
(substitute* "Makefile"
--
2.49.0
--
Best regards,
Nicolas Graves
[Message part 3 (message/rfc822, inline)]
Hi,
Ian Eure <ian <at> retrospec.tv> writes:
> Hi Nicolas,
>
> Nicolas Graves <ngraves <at> ngraves.fr> writes:
>
>> * gnu/packages/version-control.scm (git-minimal)[arguments]<phases>:
>> Adjust the snippet patching git-submodule.sh to avoid the ugly
>> ".git submodule-real" from git submodule -h.
>> ---
>> gnu/packages/version-control.scm | 10 ++++------
>> 1 file changed, 4 insertions(+), 6 deletions(-)
>>
>> diff --git a/gnu/packages/version-control.scm
>> b/gnu/packages/version-control.scm
>> index ed96b524f83..f4bae91906d 100644
>> --- a/gnu/packages/version-control.scm
>> +++ b/gnu/packages/version-control.scm
>> @@ -437,13 +437,11 @@ (define PATH-variable-definition
>> "GNU"))) ;matched against '*'
>> ;; git-submodule sources 'git-sh-setup.sh', but
>> not before
>> - ;; invoking the basename and sed commands... patch
>> them to their
>> - ;; absolute location.
>> + ;; invoking the basename and sed commands... Using
>> those
>> + ;; leads to some ugly .git submodule-real, hardcode
>> instead.
>
> The ".real" in the output is caused by the git package (which inherits
> from git-minimal) using `wrap-program' (which is what creates the
> ".real" files):
>
> ;; Tell 'git-submodule' where Perl is.
> (wrap-program git-sm
> `("PATH" ":" prefix
> (,(dirname (search-input-file inputs "bin/perl")))))
>
> The git-minimal package has normal output:
>
> meson!ieure:~$ guix shell --pure git-minimal -- git submodule
> -h
> usage: git submodule [--quiet] [--cached]
>
> Since the problem is created by the git package, I think that’s were
> the fix should go. WDYT?
>
> Adding, the git-submodule script doesn’t call perl directly, so this
> must be due to it calling another git plumbing command which does --
> `git-filter-branch' seems a likely suspect. Though if that’s the
> case, git-minimal’s `git-filter-branch' is broken. I’m not sure what
> the rationale is for doing it this way, but it might be worth checking
> if the wrapper can be eliminated altogether.
I investigated a bit, and git submodules seems to work fine without this
2014 perl wrapping thing, even in a container. So, I've pushed
45ec6e0e0a gnu: git: Remove extraneous git-submodule wrapper.
which should fix that, along a git update and related commits.
--
Thanks,
Maxim
This bug report was last modified 15 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.