(guix git) doesn’t honor HTTP/HTTPS proxy settings for submodules

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Ludovic Courtès
Owner
unassigned
Submitted by
Ludovic Courtès
Severity
important
L
L
Ludovic Courtès wrote on 12 Nov 2020 15:01
(address . bug-guix@gnu.org)
87h7puk72m.fsf@inria.fr
(guix git) does not honor proxy settings when fetching submodules.

In fact, Guile-Git 0.4.0 doesn’t allow us to pass fetch options to
‘submodule-update’, which is what needs to be fixed first.
L
L
Ludovic Courtès wrote on 16 Nov 2020 16:04
control message for bug #44593
(address . control@debbugs.gnu.org)
871rgtwdff.fsf@gnu.org
severity 44593 important
quit
L
L
Ludovic Courtès wrote on 29 Jan 2021 16:06
Re: bug#44593: (guix git) doesn’t honor HTTP/HTTPS proxy settings for submodules
(address . 44593@debbugs.gnu.org)
87wnvvhjfr.fsf@gnu.org
Ludovic Courtès <ludovic.courtes@inria.fr> skribis:

Toggle quote (5 lines)
> (guix git) does not honor proxy settings when fetching submodules.
>
> In fact, Guile-Git 0.4.0 doesn’t allow us to pass fetch options to
> ‘submodule-update’, which is what needs to be fixed first.

Implemented here:


Unfortunately I couldn’t come up with a good test to ensure the fetch
options are honored by ‘submodule-update’, as noted there.

Ludo’.
L
L
Ludovic Courtès wrote on 2 Apr 2021 11:56
(address . 44593@debbugs.gnu.org)
87v9952env.fsf@gnu.org
Ludovic Courtès <ludovic.courtes@inria.fr> skribis:

Toggle quote (14 lines)
> Ludovic Courtès <ludovic.courtes@inria.fr> skribis:
>
>> (guix git) does not honor proxy settings when fetching submodules.
>>
>> In fact, Guile-Git 0.4.0 doesn’t allow us to pass fetch options to
>> ‘submodule-update’, which is what needs to be fixed first.
>
> Implemented here:
>
> https://gitlab.com/guile-git/guile-git/-/commit/6c512f7a4d14814a306b9c97b53373527d9a6c50
>
> Unfortunately I couldn’t come up with a good test to ensure the fetch
> options are honored by ‘submodule-update’, as noted there.

And here’s the (guix git) patch, to commit when the new Guile-Git
release is out.

Ludo’.
Toggle diff (40 lines)
diff --git a/guix/git.scm b/guix/git.scm
index 1820036f25..ed00a50df9 100644
--- a/guix/git.scm
+++ b/guix/git.scm
@@ -279,13 +279,15 @@ dynamic extent of EXP."
(report-git-error err))))
(define* (update-submodules repository
- #:key (log-port (current-error-port)))
+ #:key (log-port (current-error-port))
+ (fetch-options #f))
"Update the submodules of REPOSITORY, a Git repository object."
(for-each (lambda (name)
(let ((submodule (submodule-lookup repository name)))
(format log-port (G_ "updating submodule '~a'...~%")
name)
- (submodule-update submodule)
+ (submodule-update submodule
+ #:fetch-options fetch-options)
;; Recurse in SUBMODULE.
(let ((directory (string-append
@@ -293,6 +295,7 @@ dynamic extent of EXP."
"/" (submodule-path submodule))))
(with-repository directory repository
(update-submodules repository
+ #:fetch-options fetch-options
#:log-port log-port)))))
(repository-submodules repository)))
@@ -391,7 +394,8 @@ it unchanged."
(remote-fetch (remote-lookup repository "origin")
#:fetch-options (make-default-fetch-options)))
(when recursive?
- (update-submodules repository #:log-port log-port))
+ (update-submodules repository #:log-port log-port
+ #:fetch-options (make-default-fetch-options)))
;; Note: call 'commit-relation' from here because it's more efficient
;; than letting users re-open the checkout later on.
L
L
Ludovic Courtès wrote on 14 Apr 2021 22:52
(address . 44593-done@debbugs.gnu.org)
87k0p4d1wj.fsf@gnu.org
Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (3 lines)
> And here’s the (guix git) patch, to commit when the new Guile-Git
> release is out.

Pushed as fab8ab7617d4ba2eed4546e81b004ade5b739691.

Ludo’.
Closed
?