summary refs log tree commit diff
path: root/gnu/packages/gnome.scm
diff options
context:
space:
mode:
authorMarius Bakke <mbakke@fastmail.com>2020-05-04 14:23:58 +0200
committerMarius Bakke <mbakke@fastmail.com>2020-05-04 16:36:34 +0200
commit2b68ba721c153b4a4d2f886142985983dcf92429 (patch)
tree46407a4ff7f09e1f3d3bfeb91d4547a440e1c6e7 /gnu/packages/gnome.scm
parent97a77eab09999e8f98fd4ba46982ab517d30b527 (diff)
downloadguix-2b68ba721c153b4a4d2f886142985983dcf92429.tar.gz
gnu: gnome-weather: Add wrapper to fix runtime failure.
Fixes <https://bugs.gnu.org/41057>.  Reported by sirgazil <sirgazil@zoho.com>.

* gnu/packages/gnome.scm (gnome-weather)[arguments]: Add #:glib-or-gtk?.  Add
phase to wrap the executable with GTK+ variables.
Diffstat (limited to 'gnu/packages/gnome.scm')
-rw-r--r--gnu/packages/gnome.scm14
1 files changed, 12 insertions, 2 deletions
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index cd986af643..2c0a862c93 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -7768,7 +7768,8 @@ associations for GNOME.")
       ("gnome-desktop" ,gnome-desktop)
       ("libgweather" ,libgweather)))
    (arguments
-    `(#:phases
+    `(#:glib-or-gtk? #t
+      #:phases
       (modify-phases %standard-phases
         (add-after 'install 'fix-desktop-file
           ;; FIXME: "gapplication launch org.gnome.Weather" fails for some reason.
@@ -7777,7 +7778,16 @@ associations for GNOME.")
             (let* ((out (assoc-ref outputs "out"))
                    (applications (string-append out "/share/applications")))
               (substitute* (string-append applications "/org.gnome.Weather.desktop")
-                (("Exec=.*") "Exec=gnome-weather\n"))))))))
+                (("Exec=.*") "Exec=gnome-weather\n"))
+              #t)))
+        (add-after 'install 'wrap
+          (lambda* (#:key inputs outputs #:allow-other-keys)
+            (let ((out               (assoc-ref outputs "out"))
+                  (gi-typelib-path   (getenv "GI_TYPELIB_PATH")))
+              ;; GNOME Weather needs the typelib files of GTK+, Pango etc at runtime.
+              (wrap-program (string-append out "/bin/gnome-weather")
+                `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
+              #t))))))
    (synopsis "Weather monitoring for GNOME desktop")
    (description "GNOME Weather is a small application that allows you to
 monitor the current weather conditions for your city, or anywhere in the