aboutsummaryrefslogtreecommitdiff
path: root/guix/gnu-maintenance.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guix/gnu-maintenance.scm')
-rw-r--r--guix/gnu-maintenance.scm15
1 files changed, 9 insertions, 6 deletions
diff --git a/guix/gnu-maintenance.scm b/guix/gnu-maintenance.scm
index be739e34a3..96b0a57a5c 100644
--- a/guix/gnu-maintenance.scm
+++ b/guix/gnu-maintenance.scm
@@ -291,8 +291,12 @@ pairs. Example: (\"mit-scheme-9.0.1\" . \"/gnu/mit-scheme/stable.pkg/9.0.1\").
(let loop ((directory directory))
(let* ((entries (ftp-list conn directory))
+
+ ;; Filter out sub-directories that do not contain digits---e.g.,
+ ;; /gnuzilla/lang and /gnupg/patches.
(subdirs (filter-map (match-lambda
- ((dir 'directory . _) dir)
+ (((? contains-digit? dir) 'directory . _)
+ dir)
(_ #f))
entries)))
(match subdirs
@@ -307,10 +311,8 @@ pairs. Example: (\"mit-scheme-9.0.1\" . \"/gnu/mit-scheme/stable.pkg/9.0.1\").
(cut cons <> directory))))
((subdirs ...)
;; Assume that SUBDIRS correspond to versions, and jump into the
- ;; one with the highest version number. Filter out sub-directories
- ;; that do not contain digits---e.g., /gnuzilla/lang.
- (let* ((subdirs (filter contains-digit? subdirs))
- (target (reduce latest #f subdirs)))
+ ;; one with the highest version number.
+ (let ((target (reduce latest #f subdirs)))
(and target
(loop (string-append directory "/" target))))))))))
@@ -436,6 +438,7 @@ if an update was made, and #f otherwise."
(begin
(format (current-error-port)
(_ "~a: ~a: no `version' field in source; skipping~%")
- name (package-location package))))))
+ (location->string (package-location package))
+ name)))))
;;; gnu-maintenance.scm ends here