Subject: [bug#31999] [PATCH 7/7] gnu: Update udisk to 2.7.6.

From: Pierre Neidhardt <[email-masked]>
Date: Thu, 28 Jun 2018 23:35:27 +0200

* gnu/package/freedesktop.scm (udisks): Update to 2.7.6.
---
 gnu/packages/freedesktop.scm | 36 +++++++++++++++++++++++++++++-------
 1 file changed, 29 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 7df44dfb0..ff3720109 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -12,6 +12,7 @@
 ;;; Copyright © 2017, 2018 Rutger Helling <[email-masked]>
 ;;; Copyright © 2017 Brendan Tildesley <[email-masked]>
 ;;; Copyright © 2018 Tobias Geerinckx-Rice <[email-masked]>
+;;; Copyright © 2018 Pierre Neidhardt <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -77,6 +78,9 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages xorg)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages gnupg)
+  #:use-module (gnu packages swig)
   #:use-module (srfi srfi-1))
 
 (define-public xdg-utils
@@ -622,20 +626,29 @@ Analysis and Reporting Technology) functionality.")
 (define-public udisks
   (package
     (name "udisks")
-    (version "2.1.8")
+    (version "2.7.6")
     (source (origin
-              (method url-fetch)
-              (uri (string-append "https://udisks.freedesktop.org/releases/"
-                                  name "-" version ".tar.bz2"))
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/storaged-project/udisks")
+                    (commit (string-append name "-" version))))
+              (file-name (string-append name "-" version "-checkout"))
               (sha256
                (base32
-                "1nkxhnqh39c9pzvm4zfj50rgv6apqawdx09bv3sfaxrah4a6jhfs"))))
+                "16kf104vv2xbk8cdgaqygszcl69d7lz9gf3vmi7ggywn7nfbp2ks"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("docbook-xml" ,docbook-xml-4.3) ; to build the manpages
        ("docbook-xsl" ,docbook-xsl)
        ("glib:bin" ,glib "bin") ; for glib-mkenums
        ("gobject-introspection" ,gobject-introspection)
+       ("gnome-common" ,gnome-common)
+       ("which" ,which)                 ; for autogen.sh
+       ("automake" ,automake)
+       ("autocont" ,autoconf)
+       ("libtool" ,libtool)
+       ("glib" ,glib "bin")             ; for glib-gettextize
+       ("gtk-doc" ,gtk-doc)
        ("intltool" ,intltool)
        ("pkg-config" ,pkg-config)
        ("xsltproc" ,libxslt)))
@@ -647,13 +660,15 @@ Analysis and Reporting Technology) functionality.")
        ("libgudev" ,libgudev)
        ("polkit" ,polkit)
        ("util-linux" ,util-linux)
-       ("cryptsetup" ,cryptsetup)
-       ("parted" ,parted)))
+       ("cryptsetup" ,cryptsetup)       ; TODO: Not needed on https://www.archlinux.org/packages/extra/x86_64/udisks2/.
+       ("parted" ,parted) ;  TODO: Use as native-input?  Arch Linux does it.
+       ))
     (outputs '("out"
                "doc"))                            ;5 MiB of gtk-doc HTML
     (arguments
      `(#:tests? #f ; requiring system message dbus
        #:disallowed-references ("doc")            ;enforce separation of "doc"
+       ;; TODO: No need for configure?
        #:configure-flags
        (list "--enable-man"
              "--localstatedir=/var"
@@ -679,6 +694,13 @@ Analysis and Reporting Technology) functionality.")
                               docbook-xml-catalog-file)))
        #:phases
        (modify-phases %standard-phases
+         (add-after 'unpack 'autogen
+           (lambda _
+             ;; The autogen.sh script in gnome-common will run ./configure
+             ;; by default, which is problematic because source shebangs
+             ;; have not yet been patched.
+             (setenv "NOCONFIGURE" "t")
+             (invoke "sh" "autogen.sh")))
          (add-before
           'configure 'fix-girdir
           (lambda _
-- 
2.17.1