summaryrefslogtreecommitdiff
path: root/guix/git.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2017-11-19 15:01:00 +0100
committerMarius Bakke <mbakke@fastmail.com>2017-11-19 15:01:00 +0100
commit2dd12924cf4a30a96262b6d392fcde58c9f10d4b (patch)
tree3f74f5426ff214a02b8f6652f6516979657a7f98 /guix/git.scm
parent259b4f34ba2eaefeafdb7c9f9eb56ee77f16010c (diff)
parenta93447b89a5b132221072e729d13a3f17391b8c2 (diff)
Merge branch 'master' into core-updates
Diffstat (limited to 'guix/git.scm')
-rw-r--r--guix/git.scm10
1 files changed, 8 insertions, 2 deletions
diff --git a/guix/git.scm b/guix/git.scm
index 406c817341..7a83b56216 100644
--- a/guix/git.scm
+++ b/guix/git.scm
@@ -21,7 +21,7 @@
#:use-module (git object)
#:use-module (guix base32)
#:use-module (guix hash)
- #:use-module (guix build utils)
+ #:use-module ((guix build utils) #:select (mkdir-p))
#:use-module (guix store)
#:use-module (guix utils)
#:use-module (rnrs bytevectors)
@@ -55,7 +55,13 @@ make sure no empty directory is left behind."
(with-throw-handler #t
(lambda ()
(mkdir-p directory)
- (clone url directory))
+
+ ;; Note: Explicitly pass options to work around the invalid default
+ ;; value in Guile-Git: <https://bugs.gnu.org/29238>.
+ (if (module-defined? (resolve-interface '(git))
+ 'clone-init-options)
+ (clone url directory (clone-init-options))
+ (clone url directory)))
(lambda _
(false-if-exception (rmdir directory)))))