summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/check.scm9
-rw-r--r--gnu/packages/compression.scm2
-rw-r--r--gnu/packages/cups.scm36
-rw-r--r--gnu/packages/freedesktop.scm14
-rw-r--r--gnu/packages/gl.scm16
-rw-r--r--gnu/packages/glib.scm8
-rw-r--r--gnu/packages/gnome.scm4
-rw-r--r--gnu/packages/graphviz.scm70
-rw-r--r--gnu/packages/gtk.scm21
-rw-r--r--gnu/packages/linux.scm12
-rw-r--r--gnu/packages/patches/gdk-pixbuf-list-dir.patch35
-rw-r--r--gnu/packages/pulseaudio.scm4
-rw-r--r--gnu/packages/video.scm14
-rw-r--r--gnu/packages/xdisorg.scm29
15 files changed, 147 insertions, 128 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 0b84a72fa6..3bdab4f886 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -638,7 +638,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/gcc-6-cross-environment-variables.patch	\
   %D%/packages/patches/gcr-disable-failing-tests.patch		\
   %D%/packages/patches/gcr-fix-collection-tests-to-work-with-gpg-21.patch	\
-  %D%/packages/patches/gdk-pixbuf-list-dir.patch		\
   %D%/packages/patches/gd-fix-gd2-read-test.patch		\
   %D%/packages/patches/gd-fix-tests-on-i686.patch		\
   %D%/packages/patches/gd-freetype-test-failure.patch		\
diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm
index fcfedb99aa..4d9090397f 100644
--- a/gnu/packages/check.scm
+++ b/gnu/packages/check.scm
@@ -77,11 +77,10 @@ source code editors and IDEs.")
          "057j82da9vv4li4z5ri3227ybd18nzyq81f6gsvhifs5z0vr3cpm"))))
     (build-system gnu-build-system)
     (arguments '(#:phases
-                 (alist-cons-before
-                  'configure 'autoconf
-                  (lambda _
-                    (zero? (system* "autoreconf" "-vfi")))
-                  %standard-phases)))
+                 (modify-phases %standard-phases
+                   (add-before 'configure 'autoconf
+                     (lambda _
+                       (zero? (system* "autoreconf" "-vfi")))))))
     (native-inputs
      `(("automake" ,automake)
        ("autoconf" ,autoconf)
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 7eeeaf362d..c96c51a346 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -470,7 +470,7 @@ some compression ratio).")
     (description
      "Lzip is a lossless data compressor with a user interface similar to the
 one of gzip or bzip2.  Lzip decompresses almost as fast as gzip and compresses
-more than bzip2, which makes it well suited for software distribution and data
+more than bzip2, which makes it well-suited for software distribution and data
 archiving.  Lzip is a clean implementation of the LZMA algorithm.")
     (license license:gpl3+)))
 
diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm
index cef586f763..452f670090 100644
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@ -93,6 +93,13 @@
        #:configure-flags
        `("--disable-driverless" ; TODO: enable this
          "--disable-mutool"     ; depends on yet another PDF library (mupdf)
+
+         ;; Look for the "domain socket of CUPS" in /var/run/cups.
+         "--localstatedir=/var"
+
+         ;; Free software for the win.
+         "--with-acroread-path=evince"
+
          ,(string-append "--with-test-font-path="
                          (assoc-ref %build-inputs "font-dejavu")
                          "/share/fonts/truetype/DejaVuSans.ttf")
@@ -103,7 +110,34 @@
                          (assoc-ref %build-inputs "bash")
                          "/bin/bash")
          ,(string-append "--with-rcdir="
-                         (assoc-ref %outputs "out") "/etc/rc.d"))))
+                         (assoc-ref %outputs "out") "/etc/rc.d"))
+
+       #:phases (modify-phases %standard-phases
+                  (add-after 'unpack 'patch-foomatic-hardcoded-file-names
+                    (lambda* (#:key inputs outputs #:allow-other-keys)
+                      ;; Foomatic has hardcoded file names we need to fix.
+                      (let ((out (assoc-ref outputs "out"))
+                            (gs  (assoc-ref inputs "ghostscript")))
+                        (substitute* "filter/foomatic-rip/foomaticrip.c"
+                          (("/usr/local/lib/cups/filter")
+                           (string-append out "/lib/cups/filter")))
+                        #t)))
+                  (add-after 'install 'wrap-filters
+                    (lambda* (#:key inputs outputs #:allow-other-keys)
+                      ;; Some filters expect to find 'gs' in $PATH.  We cannot
+                      ;; just hard-code its absolute file name in the source
+                      ;; because foomatic-rip, for example, has tests like
+                      ;; 'startswith(cmd, "gs")'.
+                      (let ((out         (assoc-ref outputs "out"))
+                            (ghostscript (assoc-ref inputs "ghostscript")))
+                        (for-each (lambda (file)
+                                    (wrap-program file
+                                      `("PATH" ":" prefix
+                                        (,(string-append ghostscript
+                                                         "/bin")))))
+                                  (find-files (string-append
+                                               out "/lib/cups/filter")))
+                        #t))))))
     (native-inputs
      `(("glib" ,glib "bin") ; for gdbus-codegen
        ("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 606859771a..84fa104038 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -400,7 +400,19 @@ Python.")
                (base32
                 "0lgywr1m0d79vr4s8aimj8a307nss29hhy68gjpqj7m667055c39"))))
     (build-system gnu-build-system)
-    (arguments `(#:parallel-tests? #f))
+    (arguments
+     `(#:parallel-tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         ;; Remove record shapes to workaround graphviz 2.40.1 problems.
+         ;; http://www.graphviz.org/content/i-havent-been-able-render-these-files-graphviz-226
+         ;; This will likely be fixed upstream in the next release.
+         ;; https://lists.freedesktop.org/archives/wayland-devel/2017-June/034218.html
+         (add-before 'build 'fix-graphviz
+           (lambda _
+             (substitute* "doc/doxygen/dot/x-architecture.gv"
+               (("Mrecord") "none"))
+             #t)))))
     (native-inputs
      `(("doxygen" ,doxygen)
        ("graphviz" ,graphviz)
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index d017e375c9..fa9b501077 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -217,17 +217,19 @@ also known as DXTn or DXTC) for Mesa.")
 (define-public mesa
   (package
     (name "mesa")
-    (version "17.1.4")
+    (version "17.1.8")
     (source
       (origin
         (method url-fetch)
-        (uri (list (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
+        (uri (list (string-append "https://mesa.freedesktop.org/archive/"
+                                  "mesa-" version ".tar.xz")
+                   (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
                                   "mesa-" version ".tar.xz")
                    (string-append "ftp://ftp.freedesktop.org/pub/mesa/"
                                   version "/mesa-" version ".tar.xz")))
         (sha256
          (base32
-          "1bcwxin7nmbnv92xav381b6qxscsx1zzc71ryfvj03cglbkb1wq6"))
+          "1nv9aaz7ay2bs4fc8j3rf6ky3qla8s346a8g2lvdbp96msp2xvbm"))
         (patches
          (search-patches "mesa-wayland-egl-symbols-check-mips.patch"
                          "mesa-skip-disk-cache-test.patch"))))
@@ -253,7 +255,7 @@ also known as DXTn or DXTC) for Mesa.")
         ("libxvmc" ,libxvmc)
         ,@(match (%current-system)
             ((or "x86_64-linux" "i686-linux")
-             `(("llvm" ,llvm)))
+             `(("llvm" ,llvm-3.9.1))) ; exactly 3.9.0 or 3.9.1 for swrast
             (_
              `()))
         ("makedepend" ,makedepend)
@@ -267,13 +269,15 @@ also known as DXTn or DXTC) for Mesa.")
     (arguments
      `(#:configure-flags
        '(,@(match (%current-system)
-             ((or "armhf-linux" "aarch64-linux")
+             ("armhf-linux"
+              '("--with-gallium-drivers=etnaviv,freedreno,imx,nouveau,r300,r600,svga,swrast,vc4,virgl"))
+             ("aarch64-linux"
               '("--with-gallium-drivers=freedreno,nouveau,r300,r600,svga,swrast,vc4,virgl"))
              (_
               '("--with-gallium-drivers=i915,nouveau,r300,r600,svga,swrast,virgl")))
          ;; Enable various optional features.  TODO: opencl requires libclc,
          ;; omx requires libomxil-bellagio
-         "--with-egl-platforms=x11,drm,wayland"
+         "--with-platforms=x11,drm,wayland,surfaceless"
          "--enable-glx-tls"        ;Thread Local Storage, improves performance
          ;; "--enable-opencl"
          ;; "--enable-omx"
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index c5c48731fe..8408b54ea2 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -67,7 +67,7 @@
 (define dbus
   (package
     (name "dbus")
-    (version "1.10.18")
+    (version "1.10.22")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -75,7 +75,7 @@
                     version ".tar.gz"))
               (sha256
                (base32
-                "0jjirhw6xwz2ffmbg5kr79108l8i1bdaw7szc67n3qpkygaxsjb0"))
+                "15vv9gz5i4f5l7h0d045qz5iyvl89hjk2k83lb4vbizd7qg41cg2"))
               (patches (search-patches "dbus-helper-search-path.patch"))))
     (build-system gnu-build-system)
     (arguments
@@ -137,7 +137,7 @@ shared NFS home directories.")
 (define glib
   (package
    (name "glib")
-   (version "2.52.2")
+   (version "2.52.3")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/"
@@ -145,7 +145,7 @@ shared NFS home directories.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1l65kab6jr9zlllgbjcbvrbgah3sdd577fpw4pdb2j195ag5s3ph"))
+              "0a71wkkhkvad84gm30w13micxxgqqw3sxhybj7nd9z60lwspdvi5"))
             (patches (search-patches "glib-tests-timer.patch"))))
    (build-system gnu-build-system)
    (outputs '("out"           ; everything
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 88b10435cb..252cf670d2 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -1162,7 +1162,7 @@ dealing with different structured file formats.")
 (define-public librsvg
   (package
     (name "librsvg")
-    (version "2.40.17")
+    (version "2.40.18")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -1170,7 +1170,7 @@ dealing with different structured file formats.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1k39gyf7f5m9x0jvpcxvfcqswdb04xhm1lbwbjabn1f4xk5wbxp6"))))
+                "0k2nbd4g31qinkdfd8r5c5ih2ixl85fbkgkqqh9747lwr24c9j5z"))))
     (build-system gnu-build-system)
     (arguments
      `(#:phases
diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm
index d47d45e527..6724ba6d7d 100644
--- a/gnu/packages/graphviz.scm
+++ b/gnu/packages/graphviz.scm
@@ -44,51 +44,41 @@
 (define-public graphviz
   (package
     (name "graphviz")
-    (version "2.38.0")
+    (version "2.40.1")
     (source (origin
-             (method url-fetch)
-             (uri (string-append
-                   "http://www.graphviz.org/pub/graphviz/ARCHIVE/graphviz-"
-                   version ".tar.gz"))
-             (sha256
-              (base32
-               "17l5czpvv5ilmg17frg0w4qwf89jzh2aglm9fgx0l0aakn6j7al1"))))
+              (method url-fetch)
+              (uri (string-append
+                    "http://www.graphviz.org/pub/graphviz/ARCHIVE/graphviz-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "08d4ygkxz2f553bxj6087da56a23kx1khv0j8ycxa102vvx1hlna"))))
     (build-system gnu-build-system)
     (arguments
      ;; FIXME: rtest/rtest.sh is a ksh script (!).  Add ksh as an input.
      '(#:tests? #f
-
-       #:phases (alist-cons-before
-                 'build 'pre-build
-                 (lambda _
-                   ;; Work around bogus makefile when using an external
-                   ;; libltdl.  Failing to do so, one hits this error:
-                   ;; "No rule to make target `-lltdl', needed by `libgvc.la'."
-                   (substitute* "lib/gvc/Makefile"
-                     (("am__append_5 *=.*")
-                      "am_append_5 =\n")))
-                 (alist-cons-after
-                  'install 'move-docs
-                  (lambda* (#:key outputs #:allow-other-keys)
-                           (let ((out (assoc-ref outputs "out"))
-                                 (doc (assoc-ref outputs "doc")))
-                             (mkdir-p (string-append doc "/share/graphviz"))
-                             (rename-file (string-append out "/share/graphviz/doc")
-                                          (string-append doc "/share/graphviz/doc"))
-                             #t))
-                  (alist-cons-after
-                   'move-docs 'move-guile-bindings
-                   (lambda* (#:key outputs #:allow-other-keys)
-                     (let* ((out (assoc-ref outputs "out"))
-                            (lib (string-append out "/lib"))
-                            (extdir (string-append lib
-                                                   "/guile/2.0/extensions")))
-                       (mkdir-p extdir)
-                       (rename-file (string-append
-                                     lib "/graphviz/guile/libgv_guile.so")
-                                    (string-append extdir
-                                                   "/libgv_guile.so"))))
-                   %standard-phases)))))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'install 'move-docs
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out"))
+                   (doc (assoc-ref outputs "doc")))
+               (mkdir-p (string-append doc "/share/graphviz"))
+               (rename-file (string-append out "/share/graphviz/doc")
+                            (string-append doc "/share/graphviz/doc"))
+               #t)))
+         (add-after 'move-docs 'move-guile-bindings
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (lib (string-append out "/lib"))
+                    (extdir (string-append lib
+                                           "/guile/2.0/extensions")))
+               (mkdir-p extdir)
+               (rename-file (string-append
+                             lib "/graphviz/guile/libgv_guile.so")
+                            (string-append extdir
+                                           "/libgv_guile.so"))
+               #t))))))
     (inputs
      `(("libXrender" ,libxrender)
        ("libX11" ,libx11)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index d7c18f90e1..0d3da63ca6 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -105,14 +105,14 @@ tools have full access to view and control running applications.")
 (define-public cairo
   (package
    (name "cairo")
-   (version "1.14.8")
+   (version "1.14.10")
    (source (origin
             (method url-fetch)
             (uri (string-append "https://cairographics.org/releases/cairo-"
                                 version ".tar.xz"))
             (sha256
              (base32
-              "082ypjlh03ss5616amgjp9ap3xwwccyh2knyyrj1a4d4x65dkwni"))
+              "02banr0wxckq62nbhc3mqidfdh2q956i2r7w2hd9bjgjb238g1vy"))
             (patches (search-patches "cairo-CVE-2016-9082.patch"))))
    (build-system gnu-build-system)
    (propagated-inputs
@@ -171,7 +171,7 @@ affine transformation (scale, rotation, shear, etc.).")
 (define-public harfbuzz
   (package
    (name "harfbuzz")
-   (version "1.4.6")
+   (version "1.5.0")
    (source (origin
              (method url-fetch)
              (uri (string-append "https://www.freedesktop.org/software/"
@@ -179,7 +179,7 @@ affine transformation (scale, rotation, shear, etc.).")
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "14yj514yfy373np3gxk930a443j1zgnwg6mm0kdzzjr0rn0qp9r1"))))
+               "1haansza0v2908xycv3xwrw2c42z5p96vdzy11vkzl787cvfr260"))))
    (build-system gnu-build-system)
    (outputs '("out"
               "bin")) ; 160K, only hb-view depend on cairo
@@ -209,7 +209,7 @@ affine transformation (scale, rotation, shear, etc.).")
 (define-public pango
   (package
    (name "pango")
-   (version "1.40.6")
+   (version "1.40.12")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/pango/"
@@ -217,7 +217,7 @@ affine transformation (scale, rotation, shear, etc.).")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "0wz5b5knpw4gfvz3ny8l6h2ca3bpqqyh55mffkyzgsd1hdrjn5fa"))))
+              "1z0w2vrx3qh3aryfkbfijkcxxr3yjbxc2l4b0yy8rcp2wjlakwbm"))))
    (build-system gnu-build-system)
    (propagated-inputs
     `(("cairo" ,cairo)
@@ -427,8 +427,8 @@ highlighting and other features typical of a source code editor.")
 (define-public gdk-pixbuf
   (package
    (name "gdk-pixbuf")
+   (version "2.36.9")
    (replacement gdk-pixbuf-2.36.10)
-   (version "2.36.6")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -436,8 +436,7 @@ highlighting and other features typical of a source code editor.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "034279k49ydawnagqd7b1rz741n20k4y3grybzwp26zd146bjpj5"))
-            (patches (search-patches "gdk-pixbuf-list-dir.patch"))))
+              "02klisz3ly0bvflj39x49lnl4mnldsgvkjdvnla1as8szxqv44w0"))))
    (build-system gnu-build-system)
    (arguments
     '(#:configure-flags '("--with-x11")
@@ -676,7 +675,7 @@ application suites.")
    (name "gtk+")
    ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in
    ;;       mate.scm will also need to be updated.
-   (version "3.22.15")
+   (version "3.22.20")
    (source (origin
             (method url-fetch)
             (uri (string-append "mirror://gnome/sources/" name "/"
@@ -684,7 +683,7 @@ application suites.")
                                 name "-" version ".tar.xz"))
             (sha256
              (base32
-              "1nqgb71vx222g9fd2p017948hqybnyi69xs3n2d64clim7115868"))
+              "1n82ki9sbdnaz6k5f5k3vgd7g4756j6acfbl1bf617w0lyc0kjbh"))
             (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch"
                                      "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch"))))
    (outputs '("out" "bin" "doc"))
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 8a69f0d9c7..4be6f5ed08 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -511,7 +511,7 @@ providing the system administrator with some help in common tasks.")
 (define-public util-linux
   (package
     (name "util-linux")
-    (version "2.30")
+    (version "2.30.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://kernel.org/linux/utils/"
@@ -519,7 +519,7 @@ providing the system administrator with some help in common tasks.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "13d0ax8bcapga8phj2nclx86w57ddqxbr98ajibpzjq6d7zs8262"))
+                "0hdq2fz405a89fyha4bgwg0rx8b65inxq17w8fg8qhmcj4x3dr0v"))
               (patches (search-patches "util-linux-tests.patch"))
               (modules '((guix build utils)))
               (snippet
@@ -3022,7 +3022,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
 (define-public bluez
   (package
     (name "bluez")
-    (version "5.45")
+    (version "5.46")
     (replacement bluez/fixed)
     (source (origin
               (method url-fetch)
@@ -3031,7 +3031,7 @@ Bluetooth audio output devices like headphones or loudspeakers.")
                     version ".tar.xz"))
               (sha256
                (base32
-                "1sb4aflgyrl7apricjipa8wx95qm69yja0lmn2f19g560c3v1b2c"))))
+                "0a4fj343bdqsfyv12hmj9nym0ilsf0bvm54a4apbiby16ww3vayx"))))
     (build-system gnu-build-system)
     (arguments
      `(#:configure-flags
@@ -3088,7 +3088,7 @@ is flexible, efficient and uses a modular implementation.")
 (define bluez/fixed
   (package
     (inherit bluez)
-    (version "5.45")
+    (version "5.46")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -3096,7 +3096,7 @@ is flexible, efficient and uses a modular implementation.")
                     version ".tar.xz"))
               (sha256
                (base32
-                "1sb4aflgyrl7apricjipa8wx95qm69yja0lmn2f19g560c3v1b2c"))
+                "0a4fj343bdqsfyv12hmj9nym0ilsf0bvm54a4apbiby16ww3vayx"))
               (patches (search-patches "bluez-CVE-2017-1000250.patch"))))))
 
 (define-public fuse-exfat
diff --git a/gnu/packages/patches/gdk-pixbuf-list-dir.patch b/gnu/packages/patches/gdk-pixbuf-list-dir.patch
deleted file mode 100644
index 137914a19c..0000000000
--- a/gnu/packages/patches/gdk-pixbuf-list-dir.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-Sort directory entries so that the output of
-‘gdk-pixbuf-query-loaders’ is deterministic.
-
-See: https://bugzilla.gnome.org/show_bug.cgi?id=777332
---- gdk-pixbuf-2.34.0/gdk-pixbuf/queryloaders.c.orig	2017-01-11 00:17:32.865843062 +0100
-+++ gdk-pixbuf-2.34.0/gdk-pixbuf/queryloaders.c	2017-01-16 16:12:03.420667874 +0100
-@@ -354,16 +354,27 @@
- 
-                 dir = g_dir_open (path, 0, NULL);
-                 if (dir) {
-+                        GList *entries = NULL;
-                         const char *dent;
- 
-                         while ((dent = g_dir_read_name (dir))) {
-                                 gint len = strlen (dent);
-                                 if (len > SOEXT_LEN &&
-                                     strcmp (dent + len - SOEXT_LEN, SOEXT) == 0) {
--                                        query_module (contents, path, dent);
-+                                        entries = g_list_append (entries, g_strdup (dent));
-                                 }
-                         }
-                         g_dir_close (dir);
-+                        /* Sort directory entries so that the output of
-+                           ‘gdk-pixbuf-query-loaders’ is deterministic. */
-+                        entries = g_list_sort (entries, (GCompareFunc) strcmp);
-+                        GList *xentries;
-+                        for (xentries = entries; xentries; xentries = g_list_next (xentries)) {
-+                                dent = xentries->data;
-+                                query_module (contents, path, dent);
-+                                g_free (xentries->data);
-+                        }
-+                        g_list_free (entries);
-                 }
- #else
-                 g_string_append_printf (contents, "# dynamic loading of modules not supported\n");
diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm
index 846c174fa7..c280c58e1a 100644
--- a/gnu/packages/pulseaudio.scm
+++ b/gnu/packages/pulseaudio.scm
@@ -119,7 +119,7 @@ rates.")
 (define-public pulseaudio
   (package
     (name "pulseaudio")
-    (version "10.0")
+    (version "11.0")
     (source (origin
              (method url-fetch)
              (uri (string-append
@@ -127,7 +127,7 @@ rates.")
                    name "-" version ".tar.xz"))
              (sha256
               (base32
-               "0mrg8qvpwm4ifarzphl3749p7p050kdx1l6mvsaj03czvqj6h653"))
+               "0sf92knqkvqmfhrbz4vlsagzqlps72wycpmln5dygicg07a0a8q7"))
              (modules '((guix build utils)))
              (snippet
               ;; Disable console-kit support by default since it's deprecated
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 199f4142be..f58d9b9eca 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -530,15 +530,19 @@ libebml is a C++ library to read and write EBML files.")
 (define-public libva
   (package
     (name "libva")
-    (version "1.8.2")
+    (version "1.8.3")
     (source
      (origin
        (method url-fetch)
-       (uri (string-append
-             "https://www.freedesktop.org/software/vaapi/releases/libva/libva-"
-             version".tar.bz2"))
+       (uri (list
+             ;; Newer releases are only available on GitHub.
+             (string-append "https://github.com/01org/libva/releases/download/"
+                            version "/libva-" version ".tar.bz2")
+             ;; Keep the old URL around for compatibility.
+             (string-append "https://www.freedesktop.org/software/vaapi/releases/"
+                            "libva/libva-" version "/libva-" version ".tar.bz2")))
        (sha256
-        (base32 "1pnfl3q7dzxs26l3jk9xi97gr0qwnaz6dhvf9ifp2yplr3fy7lwy"))))
+        (base32 "16xbk0awl7wp0vy0nyjvxk11spbw25mp8kwd9bmhd6x9xffi5vjn"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index edb70a37a8..ce3e7c81eb 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2015 Florian Paul Schmidt <mista.tapas@gmx.net>
 ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
 ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com>
@@ -68,7 +68,8 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages xorg)
-  #:use-module (gnu packages bison))
+  #:use-module (gnu packages bison)
+  #:use-module (ice-9 match))
 
 ;; packages outside the x.org system proper
 
@@ -287,7 +288,7 @@ rasterisation.")
 (define-public libdrm
   (package
     (name "libdrm")
-    (version "2.4.81")
+    (version "2.4.83")
     (source
       (origin
         (method url-fetch)
@@ -297,15 +298,27 @@ rasterisation.")
                ".tar.bz2"))
         (sha256
          (base32
-          "1bhimr6za2ddisrvrv1qqd7c2a59s7jc954sjycq2w68b8cmrh4c"))
+          "1minzvsyz5hgm6ixpj8ysa6jsv7vm8qc8nx390jxdsk0v9ljd983"))
         (patches (search-patches "libdrm-symbol-check.patch"))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       '(,@(match (%current-system)
+             ("armhf-linux"
+              '("--enable-exynos-experimental-api"
+                "--enable-omap-experimental-api"
+                "--enable-etnaviv-experimental-api"
+                "--enable-tegra-experimental-api"
+                "--enable-freedreno-kgsl"))
+             ("aarch64-linux"
+              '("--enable-tegra-experimental-api"
+                "--enable-freedreno-kgsl"))
+             (_ '())))))
     (inputs
-      `(("libpciaccess" ,libpciaccess)
-        ("libpthread-stubs" ,libpthread-stubs)))
+     `(("libpciaccess" ,libpciaccess)))
     (native-inputs
-       `(("pkg-config" ,pkg-config)))
-    (home-page "http://dri.freedesktop.org/wiki/")
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://dri.freedesktop.org/wiki/")
     (synopsis "Direct rendering userspace library")
     (description "The Direct Rendering Infrastructure, also known as the DRI,
 is a framework for allowing direct access to graphics hardware under the