gnu: udisks: Find the 'mount' command.
authorLudovic Courtès <ludo@gnu.org>
Sun, 1 Nov 2015 16:43:50 +0000 (17:43 +0100)
committerLudovic Courtès <ludo@gnu.org>
Sun, 1 Nov 2015 16:56:47 +0000 (17:56 +0100)
* gnu/packages/freedesktop.scm (udisks)[inputs]: Add UTIL-LINUX.
  [arguments]: Add 'set-mount-file-name' phase.

gnu/packages/freedesktop.scm

index ee94db4..b428041 100644 (file)
@@ -343,7 +343,8 @@ Analysis and Reporting Technology) functionality.")
      `(("acl" ,acl)
        ("libatasmart" ,libatasmart)
        ("libgudev" ,libgudev)
-       ("polkit" ,polkit)))
+       ("polkit" ,polkit)
+       ("util-linux" ,util-linux)))
     (arguments
      `(#:tests? #f ; requiring system message dbus
        #:configure-flags
@@ -360,7 +361,18 @@ Analysis and Reporting Technology) functionality.")
               (("girdir = .*")
                "girdir = $(datadir)/gir-1.0\n")
               (("typelibsdir = .*")
-               "typelibsdir = $(libdir)/girepository-1.0\n")))))))
+               "typelibsdir = $(libdir)/girepository-1.0\n"))))
+         (add-after 'install 'set-mount-file-name
+           (lambda* (#:key outputs inputs #:allow-other-keys)
+             ;; Tell 'udisksd' where to find the 'mount' command.
+             (let ((out   (assoc-ref outputs "out"))
+                   (utils (assoc-ref inputs "util-linux")))
+               (wrap-program (string-append out "/libexec/udisks2/udisksd")
+                 `("PATH" ":" prefix
+                   (,(string-append utils "/bin") ;for 'mount'
+                    "/run/current-system/profile/bin"
+                    "/run/current-system/profile/sbin")))
+               #t))))))
     (home-page "http://www.freedesktop.org/wiki/Software/udisks/")
     (synopsis "Disk manager service")
     (description