summaryrefslogtreecommitdiff
path: root/guix/download.scm
diff options
context:
space:
mode:
authorTobias Geerinckx-Rice <me@tobias.gr>2017-01-27 20:48:37 +0100
committerTobias Geerinckx-Rice <me@tobias.gr>2017-02-01 15:53:32 +0100
commit58f91e4d03e102058fc0f8a859cb144c40c6a1d0 (patch)
tree5fb56be8fcd7128c499bd7be82a526727d4acfc9 /guix/download.scm
parent61ac75445320890e9be38dc04492cae3caf657a2 (diff)
downloadgnu-guix-58f91e4d03e102058fc0f8a859cb144c40c6a1d0.tar
gnu-guix-58f91e4d03e102058fc0f8a859cb144c40c6a1d0.tar.gz
download: url-fetch/tarball: Make ‘name’ truly optional.
* guix/download.scm (url-fetch/tarbomb): Fall back to ‘file-name’ if ‘name’ is #f, like the regular ‘url-fetch’ does. * gnu/packages/bioinformatics.scm (muscle)[source]: Remove ‘file-name’. * gnu/packages/engineering.scm (fastcap)[source]: Likewise. * gnu/packages/scheme.scm (scmutils)[source]: Likewise.
Diffstat (limited to 'guix/download.scm')
-rw-r--r--guix/download.scm12
1 files changed, 10 insertions, 2 deletions
diff --git a/guix/download.scm b/guix/download.scm
index e2e5cee777..e218c2e264 100644
--- a/guix/download.scm
+++ b/guix/download.scm
@@ -4,6 +4,7 @@
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 David Craven <david@craven.ch>
+;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -485,17 +486,24 @@ in the store."
(guile (default-guile)))
"Similar to 'url-fetch' but unpack the file from URL in a directory of its
own. This helper makes it easier to deal with \"tar bombs\"."
+ (define file-name
+ (match url
+ ((head _ ...)
+ (basename head))
+ (_
+ (basename url))))
(define gzip
(module-ref (resolve-interface '(gnu packages compression)) 'gzip))
(define tar
(module-ref (resolve-interface '(gnu packages base)) 'tar))
(mlet %store-monad ((drv (url-fetch url hash-algo hash
- (string-append "tarbomb-" name)
+ (string-append "tarbomb-"
+ (or name file-name))
#:system system
#:guile guile)))
;; Take the tar bomb, and simply unpack it as a directory.
- (gexp->derivation name
+ (gexp->derivation (or name file-name)
#~(begin
(mkdir #$output)
(setenv "PATH" (string-append #$gzip "/bin"))