aboutsummaryrefslogtreecommitdiff
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
guix-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