diff options
Diffstat (limited to 'gnu/packages.scm')
| -rw-r--r-- | gnu/packages.scm | 11 | 
1 files changed, 8 insertions, 3 deletions
| diff --git a/gnu/packages.scm b/gnu/packages.scm index 6e46a890bb..fb277389c7 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -24,6 +24,7 @@    #:use-module (guix utils)    #:use-module ((guix ftp-client) #:select (ftp-open))    #:use-module (guix gnu-maintenance) +  #:use-module (guix upstream)    #:use-module (ice-9 ftw)    #:use-module (ice-9 vlist)    #:use-module (ice-9 match) @@ -377,14 +378,18 @@ it."        (when (false-if-exception (gnu-package? package))          (let ((name      (package-name package))                (full-name (package-full-name package))) +          ;; XXX: This could work with non-GNU packages as well.  However, +          ;; GNU's FTP-based updater would be too slow if it weren't memoized, +          ;; and the generic interface in (guix upstream) doesn't support +          ;; that.            (match (waiting (latest-release name                                            #:ftp-open ftp-open*                                            #:ftp-close (const #f))                            (_ "looking for the latest release of GNU ~a...") name) -            ((? gnu-release? release) +            ((? upstream-source? source)               (let ((latest-version -                    (string-append (gnu-release-package release) "-" -                                   (gnu-release-version release)))) +                    (string-append (upstream-source-package source) "-" +                                   (upstream-source-version source))))                (when (version>? latest-version full-name)                  (format (current-error-port)                          (_ "~a: note: using ~a \ | 
