gnu-maintenance: GNOME updater honors 'upstream-name' package property.
authorLudovic Courtès <ludo@gnu.org>
Thu, 20 Oct 2016 20:17:07 +0000 (22:17 +0200)
committerLudovic Courtès <ludo@gnu.org>
Thu, 20 Oct 2016 20:18:59 +0000 (22:18 +0200)
* guix/gnu-maintenance.scm (latest-gnome-release)[upstream-name]: New
variable.  Use it as the first argument to 'latest-ftp-release' and when
constructing #:directory.
* gnu/packages/gnome.scm (gconf)[properties]: New field.
(network-manager)[properties]: New field.

gnu/packages/gnome.scm
guix/gnu-maintenance.scm

index 9e41f3a..dd83051 100644 (file)
@@ -1130,7 +1130,8 @@ use in GNOME applications, built on top of CORBA.")
     (synopsis "Store application preferences")
     (description "Gconf is a system for storing application preferences.  It
 is intended for user preferences; not arbitrary data storage.")
-    (license license:lgpl2.0+)))
+    (license license:lgpl2.0+)
+    (properties '((upstream-name . "GConf")))))
 
 
 (define-public gnome-mime-data
@@ -4481,7 +4482,8 @@ devices and connections, attempting to keep active network connectivity when
 available.  It manages ethernet, WiFi, mobile broadband (WWAN), and PPPoE
 devices, and provides VPN integration with a variety of different VPN
 services.")
-    (license license:gpl2+)))
+    (license license:gpl2+)
+    (properties '((upstream-name . "NetworkManager")))))
 
 (define-public mobile-broadband-provider-info
   (package
index 20f0802..78392c9 100644 (file)
@@ -483,13 +483,16 @@ elpa.gnu.org, and all the GNOME packages."
     (let-values (((name version) (package-name->name+version file)))
       (even-minor-version? (or version name))))
 
+  (define upstream-name
+    ;; Some packages like "NetworkManager" have camel-case names.
+    (or (assoc-ref (package-properties package) 'upstream-name)
+        (package-name package)))
+
   (false-if-ftp-error
-   (latest-ftp-release (package-name package)
+   (latest-ftp-release upstream-name
                        #:server "ftp.gnome.org"
                        #:directory (string-append "/pub/gnome/sources/"
-                                                  (match (package-name package)
-                                                    ("gconf" "GConf")
-                                                    (x       x)))
+                                                  upstream-name)
 
 
                        ;; <https://www.gnome.org/gnome-3/source/> explains