summary refs log tree commit diff
diff options
context:
space:
mode:
author宋文武 <iyzsong@gmail.com>2015-07-26 11:28:34 +0800
committer宋文武 <iyzsong@gmail.com>2015-07-26 11:28:34 +0800
commit171ae35c136bf298aa29b987d9f74766c1e37efc (patch)
treed4d26b07fd073648d1797d6bd47d5d3f6d617bef
parentcfbbff31cce0c95ae10f622959366f57b74d1b00 (diff)
downloadguix-171ae35c136bf298aa29b987d9f74766c1e37efc.tar.gz
gnu: Add udisks.
* gnu/packages/freedesktop.scm (udisks): New variable.
-rw-r--r--gnu/packages/freedesktop.scm56
1 files changed, 55 insertions, 1 deletions
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 9518ecf73c..121dc49243 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -43,7 +43,9 @@
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages doxygen)
-  #:use-module (gnu packages libffi))
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages acl)
+  #:use-module (gnu packages polkit))
 
 (define-public xdg-utils
   (package
@@ -318,3 +320,55 @@ Platform (XMP), which enables embedding metadata in PDF and image formats.")
      "This library supports a subset of the ATA S.M.A.R.T. (Self-Monitoring,
 Analysis and Reporting Technology) functionality.")
     (license license:lgpl2.1+)))
+
+(define-public udisks
+  (package
+    (name "udisks")
+    (version "2.1.6")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://udisks.freedesktop.org/releases/"
+                                  name "-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0spl155k0g2l2hvqf8xyjv08i68gfyhzpjva6cwlzxx0bz4gbify"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("glib:bin" ,glib "bin") ; for glib-mkenums
+       ("gobject-introspection" ,gobject-introspection)
+       ("intltool" ,intltool)
+       ("pkg-config" ,pkg-config)
+       ("xsltproc" ,libxslt)))
+    (propagated-inputs
+     `(("glib" ,glib))) ; required by udisks2.pc
+    (inputs
+     `(("acl" ,acl)
+       ("libatasmart" ,libatasmart)
+       ("libgudev" ,libgudev)
+       ("polkit" ,polkit)))
+    (arguments
+     `(#:tests? #f ; requiring system message dbus
+       #:configure-flags
+       (list "--disable-man"
+             "--localstatedir=/var"
+             (string-append "--with-udevdir=" %output "/lib/udev"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before
+          'configure 'fix-girdir
+          (lambda _
+            ;; Install introspection data to its own output.
+            (substitute* "udisks/Makefile.in"
+              (("girdir = .*")
+               "girdir = $(datadir)/gir-1.0\n")
+              (("typelibsdir = .*")
+               "typelibsdir = $(libdir)/girepository-1.0\n")))))))
+    (home-page "http://www.freedesktop.org/wiki/Software/udisks/")
+    (synopsis "Disk manager service")
+    (description
+     "UDisks provides interfaces to enumerate and perform operations on disks
+and storage devices.  Any application (including unprivileged ones) can access
+the udisksd(8) daemon via the name org.freedesktop.UDisks2 on the system
+message bus.")
+    ;; The dynamic library are under LGPLv2+, others are GPLv2+.
+    (license (list license:gpl2+ license:lgpl2.0+))))