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.master
parent
ae76830857
commit
dc794a7238
|
@ -48,7 +48,7 @@
|
|||
gnu-package-download-url
|
||||
|
||||
official-gnu-packages
|
||||
find-packages
|
||||
find-package
|
||||
gnu-package?
|
||||
|
||||
release-file?
|
||||
|
@ -155,13 +155,12 @@ to fetch the list of GNU packages over HTTP."
|
|||
(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
|
||||
|
|
|
@ -111,13 +111,13 @@ details.)"
|
|||
(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
|
||||
|
|
Reference in New Issue