summary refs log tree commit diff
diff options
context:
space:
mode:
author宋文武 <iyzsong@member.fsf.org>2017-07-03 23:11:13 +0800
committer宋文武 <iyzsong@member.fsf.org>2017-07-03 23:27:04 +0800
commit85cfbd46cea30891db5585e2a8d63d3a585df5e6 (patch)
treef8d633b9da91bdfe9b4a18f870cd4a9a257985f6
parent3b6e7d8651bdcfcad41d086753296299c9b6b786 (diff)
downloadguix-85cfbd46cea30891db5585e2a8d63d3a585df5e6.tar.gz
profiles: xdg-desktop-database: Run the hook when GLib is referenced.
This will pull the latest 'desktop-file-utils' package into the profile
closure, as the 'xdg-mime-database' hook already does.

* guix/profiles.scm (xdg-desktop-database): Run the hook when 'glib' is
referenced.
-rw-r--r--guix/profiles.scm12
1 files changed, 8 insertions, 4 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 056406e303..85c1722d62 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -967,9 +967,13 @@ for both major versions of GTK+."
   "Return a derivation that builds the @file{mimeinfo.cache} database from
 desktop files.  It's used to query what applications can handle a given
 MIME type."
-  (mlet %store-monad ((desktop-file-utils
+  (define desktop-file-utils            ; lazy reference
+    (module-ref (resolve-interface '(gnu packages freedesktop))
+                'desktop-file-utils))
+
+  (mlet %store-monad ((glib
                        (manifest-lookup-package
-                        manifest "desktop-file-utils")))
+                        manifest "glib")))
     (define build
       (with-imported-modules '((guix build utils)
                                (guix build union))
@@ -990,8 +994,8 @@ MIME type."
                            #:log-port (%make-void-port "w"))
               (exit (zero? (system* update-desktop-database destdir)))))))
 
-    ;; Don't run the hook when 'desktop-file-utils' is not referenced.
-    (if desktop-file-utils
+    ;; Don't run the hook when 'glib' is not referenced.
+    (if glib
         (gexp->derivation "xdg-desktop-database" build
                           #:local-build? #t
                           #:substitutable? #f)