~ruther/guix-local

58f91e4d03e102058fc0f8a859cb144c40c6a1d0 — Tobias Geerinckx-Rice 9 years ago 61ac754
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.
M gnu/packages/bioinformatics.scm => gnu/packages/bioinformatics.scm +0 -1
@@ 3501,7 3501,6 @@ that a read originated from a particular isoform.")
    (version "3.8.1551")
    (source (origin
              (method url-fetch/tarbomb)
              (file-name (string-append name "-" version))
              (uri (string-append
                    "http://www.drive5.com/muscle/muscle_src_"
                    version ".tar.gz"))

M gnu/packages/engineering.scm => gnu/packages/engineering.scm +0 -1
@@ 259,7 259,6 @@ featuring various improvements and bug fixes.")))
    (version "2.0-18Sep92")
    (source (origin
              (method url-fetch/tarbomb)
              (file-name (string-append name "-" version ".tar.gz"))
              (uri (string-append "http://www.rle.mit.edu/cpg/codes/"
                                  name "-" version ".tgz"))
              (sha256

M gnu/packages/scheme.scm => gnu/packages/scheme.scm +0 -1
@@ 604,7 604,6 @@ threads.")
         (snippet
          ;; Remove binary code
          '(delete-file-recursively "scmutils/mit-scheme"))
         (file-name (string-append name "-" version ".tar.gz"))
         (uri (string-append "http://groups.csail.mit.edu/mac/users/gjs/6946"
                             "/scmutils-tarballs/" name "-" version
                             "-x86-64-gnu-linux.tar.gz"))

M guix/download.scm => guix/download.scm +10 -2
@@ 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"))