gnu-maintenance: Replace 'find-packages' with 'find-package' (singular).

Fixes <http://bugs.gnu.org/23718>.
Reported by Efraim Flashner <efraim@flashner.co.il>.

* guix/gnu-maintenance.scm (find-packages): Remove.
(find-package): New procedure.
* guix/import/gnu.scm (gnu->guix-package): Use 'find-package' instead of
'find-packages' and adjust accordingly.
This commit is contained in:
Ludovic Courtès 2016-06-08 17:59:45 +02:00
parent ae76830857
commit dc794a7238
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5
2 changed files with 12 additions and 13 deletions

View file

@ -48,7 +48,7 @@ (define-module (guix gnu-maintenance)
gnu-package-download-url
official-gnu-packages
find-packages
find-package
gnu-package?
release-file?
@ -155,13 +155,12 @@ (define official-description
(close-port port)
lst)))
(define (find-packages regexp)
"Find GNU packages which satisfy REGEXP."
(let ((name-rx (make-regexp regexp)))
(filter (lambda (package)
(false-if-exception
(regexp-exec name-rx (gnu-package-name package))))
(official-gnu-packages))))
(define (find-package name)
"Find GNU package called NAME and return it. Return #f if it was not
found."
(find (lambda (package)
(string=? name (gnu-package-name package)))
(official-gnu-packages)))
(define gnu-package?
(memoize

View file

@ -111,13 +111,13 @@ (define* (gnu->guix-package name
(match (latest-release name)
((? upstream-source? release)
(let ((version (upstream-source-version release)))
(match (find-packages (regexp-quote name))
((info . _)
(gnu-package->sexp info release #:key-download key-download))
(()
(match (find-package name)
(#f
(raise (condition
(&message
(message "couldn't find meta-data for GNU package"))))))))
(message "couldn't find meta-data for GNU package")))))
(info
(gnu-package->sexp info release #:key-download key-download)))))
(_
(raise (condition
(&message