summary refs log tree commit diff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2021-04-04 15:40:39 +0200
committerLudovic Courtès <ludo@gnu.org>2021-04-05 12:03:08 +0200
commitb3679f2d10a3257fbbb016e01b4f553c137fd177 (patch)
tree551b00920a72e01ec0942879c63edd406ef7a2fa
parentb7aca04856ffcbacb4179b3c485c20403bd19787 (diff)
downloadguix-b3679f2d10a3257fbbb016e01b4f553c137fd177.tar.gz
gnu-maintenance: 'generic-html' updates packages with the right property.
* guix/gnu-maintenance.scm (html-updatable-package?): Return true for
packages with a 'release-monitoring-url' property.  This allows us to
cater for packages with source fetched over, say, FTP, but with an HTML
page to monitor.
-rw-r--r--guix/gnu-maintenance.scm21
1 files changed, 13 insertions, 8 deletions
diff --git a/guix/gnu-maintenance.scm b/guix/gnu-maintenance.scm
index 4078e1f922..eff26cced4 100644
--- a/guix/gnu-maintenance.scm
+++ b/guix/gnu-maintenance.scm
@@ -706,14 +706,19 @@ GNOME packages; EMMS is included though, because its releases are on gnu.org."
                          "ftp.gnu.org" "download.savannah.gnu.org"
                          "pypi.org" "crates.io" "rubygems.org"
                          "bioconductor.org")))
-    (url-predicate (lambda (url)
-                     (match (string->uri url)
-                       (#f #f)
-                       (uri
-                        (let ((scheme (uri-scheme uri))
-                              (host   (uri-host uri)))
-                          (and (memq scheme '(http https))
-                               (not (member host hosting-sites))))))))))
+    (define http-url?
+      (url-predicate (lambda (url)
+                       (match (string->uri url)
+                         (#f #f)
+                         (uri
+                          (let ((scheme (uri-scheme uri))
+                                (host   (uri-host uri)))
+                            (and (memq scheme '(http https))
+                                 (not (member host hosting-sites)))))))))
+
+    (lambda (package)
+      (or (assoc-ref (package-properties package) 'release-monitoring-url)
+          (http-url? package)))))
 
 (define (latest-html-updatable-release package)
   "Return the latest release of PACKAGE.  Do that by crawling the HTML page of