summary refs log tree commit diff
path: root/gnu/packages
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2016-09-02 15:39:50 +0200
committerLudovic Courtès <ludo@gnu.org>2016-09-02 15:39:50 +0200
commit072e10615fc786db02dc44f3cd5f25aed2969111 (patch)
treedbae10eaf8cf13a28c0151a418971fb770243eda /gnu/packages
parent3964e358ab65dfd157427560bfb44de8a150068b (diff)
parent135ba811c6f55c22bfa8969143d83e7fdf166763 (diff)
downloadguix-072e10615fc786db02dc44f3cd5f25aed2969111.tar.gz
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/admin.scm2
-rw-r--r--gnu/packages/apl.scm4
-rw-r--r--gnu/packages/aspell.scm8
-rw-r--r--gnu/packages/astronomy.scm106
-rw-r--r--gnu/packages/bioinformatics.scm8
-rw-r--r--gnu/packages/display-managers.scm (renamed from gnu/packages/slim.scm)2
-rw-r--r--gnu/packages/emacs.scm73
-rw-r--r--gnu/packages/entr.scm4
-rw-r--r--gnu/packages/freedesktop.scm60
-rw-r--r--gnu/packages/games.scm47
-rw-r--r--gnu/packages/gl.scm3
-rw-r--r--gnu/packages/gnome.scm4
-rw-r--r--gnu/packages/gnunet.scm2
-rw-r--r--gnu/packages/grub.scm2
-rw-r--r--gnu/packages/java.scm24
-rw-r--r--gnu/packages/kde-frameworks.scm1304
-rw-r--r--gnu/packages/linux.scm46
-rw-r--r--gnu/packages/networking.scm2
-rw-r--r--gnu/packages/onc-rpc.scm50
-rw-r--r--gnu/packages/openstack.scm29
-rw-r--r--gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch59
-rw-r--r--gnu/packages/patches/fossil-test-fixes.patch189
-rw-r--r--gnu/packages/patches/icedtea-remove-overrides.patch291
-rw-r--r--gnu/packages/python.scm57
-rw-r--r--gnu/packages/qt.scm28
-rw-r--r--gnu/packages/smalltalk.scm87
-rw-r--r--gnu/packages/u-boot.scm139
-rw-r--r--gnu/packages/version-control.scm112
-rw-r--r--gnu/packages/xdisorg.scm49
29 files changed, 2144 insertions, 647 deletions
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 05c2895792..474c0d7556 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1415,7 +1415,7 @@ limits.")
                   (replace 'check
                     (lambda _
                       (zero?
-                       (system* "python" "tests/autojump_utils_test.py"))))
+                       (system* "python" "tests/unit/autojump_utils_test.py"))))
                   (replace 'install
                     ;; The install.py script doesn't allow system installation
                     ;; into an arbitrary prefix, so do our own install.
diff --git a/gnu/packages/apl.scm b/gnu/packages/apl.scm
index 7573870a4c..5b55c9cef3 100644
--- a/gnu/packages/apl.scm
+++ b/gnu/packages/apl.scm
@@ -30,14 +30,14 @@
 (define-public apl
   (package
     (name "apl")
-    (version "1.5")
+    (version "1.6")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "mirror://gnu/apl/apl-" version ".tar.gz"))
       (sha256
        (base32
-        "0h4diq3wfbdwxp5nm0z4b0p1zq13lwip0y7v28r9v0mbbk8xsfh1"))))
+        "057zwzvvgcrrwsl52a27w86hgy31jqq6avqq629xj7yq90qah3ay"))))
     (build-system gnu-build-system)
     (home-page "http://www.gnu.org/software/apl/")
     (inputs
diff --git a/gnu/packages/aspell.scm b/gnu/packages/aspell.scm
index 117cd33081..b7024124bd 100644
--- a/gnu/packages/aspell.scm
+++ b/gnu/packages/aspell.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
+;;; Copyright ©2016 John Darrington <jmd@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -97,6 +98,13 @@ dictionaries, including personal ones.")
     (home-page "http://aspell.net/")))
 
 
+(define-public aspell-dict-de
+  (aspell-dictionary "de" "German"
+                     #:version "20030222-1"
+                     #:sha256
+                     (base32
+                      "01p92qj66cqb346gk7hjfynaap5sbcn85xz07kjfdq623ghr8v5s")))
+
 (define-public aspell-dict-en
   (aspell-dictionary "en" "English"
                      #:version "2016.01.19-0"
diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm
new file mode 100644
index 0000000000..eaf1598096
--- /dev/null
+++ b/gnu/packages/astronomy.scm
@@ -0,0 +1,106 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 John Darrington <jmd@gnu.org>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages astronomy)
+  #:use-module (guix packages)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix download)
+  #:use-module (gnu packages image)
+  #:use-module (gnu packages maths)
+  #:use-module (guix build-system gnu))
+
+(define-public cfitsio
+  (package
+    (name "cfitsio")
+    (version "3390")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/" name version
+             ".tar.gz"))
+       (sha256
+        (base32 "02gllydm63irwbqqisa3mrskw1fphm5rlplglz3mq9whi3rxilv2"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-paths
+           (lambda _
+             (substitute* "Makefile.in" (("/bin/") "")))))))
+    (home-page "http://heasarc.gsfc.nasa.gov/fitsio/fitsio.html")
+    (synopsis "Library for reading and writing FITS files")
+    (description "CFITSIO provides simple high-level routines for reading and
+writing FITS (Flexible Image Transport System) files that insulate the
+programmer from the internal complexities of the FITS format. CFITSIO also
+provides many advanced features for manipulating and filtering the information
+in FITS files.")
+    (license (license:non-copyleft "file://License.txt"
+                          "See License.txt in the distribution."))))
+
+(define-public wcslib
+  (package
+    (name "wcslib")
+    (version "5.15")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append
+             "ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version ".tar.bz2"))
+       (sha256
+        (base32 "1s2nig327g4bimd9xshlk11ww09a7mrjmsbpdcd8smsmn2kl1glb"))))
+    (inputs
+     `(("cfitsio" ,cfitsio)))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-before 'configure 'patch-/bin/sh
+                    (lambda _
+                      (substitute* "makedefs.in"
+                        (("/bin/sh") "sh")))))))
+    (home-page "http://www.atnf.csiro.au/people/mcalabre/WCS")
+    (synopsis "Library which implements the FITS WCS standard")
+    (description "The FITS \"World Coordinate System\" (WCS) standard defines
+keywords and usage that provide for the description of astronomical coordinate
+systems in a FITS image header.")
+    (license license:lgpl3+)))
+
+(define-public gnuastro
+  (package
+    (name "gnuastro")
+    (version "0.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://gnu/gnuastro/gnuastro-"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "105s007kw8l3jwwhvh8k9lgbpfbf7sqh2wpxmvpv3qdr6nh9lnjg"))))
+    (inputs
+     `(("cfitsio" ,cfitsio)
+       ("gsl" ,gsl)
+       ("libjpeg" ,libjpeg-8)
+       ("wcslib" ,wcslib)))
+    (build-system gnu-build-system)
+    (home-page "http://www.gnu.org/software/gnuastro")
+    (synopsis "Astronomical data manipulation programs")
+    (description "The GNU Astronomy Utilities (Gnuastro) is a suite of
+programs for the manipulation and analysis of astronomical data.")
+    (license license:gpl3+)))
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index ed20b562e5..08c25459c0 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -93,7 +93,7 @@
 (define-public aragorn
   (package
     (name "aragorn")
-    (version "1.2.36")
+    (version "1.2.37")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -101,7 +101,7 @@
                     version ".tgz"))
               (sha256
                (base32
-                "1dg7jlz1qpqy88igjxd6ncs11ccsirb36qv1z01a0np4i4jh61mb"))))
+                "1c7zxk0h8wsjbix82fmmfyywcq6zn3q9h5y67kcl5y3qal2bv2xr"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f ; there are no tests
@@ -4692,14 +4692,14 @@ sequences.")
 (define-public subread
   (package
     (name "subread")
-    (version "1.4.6-p2")
+    (version "1.5.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://sourceforge/subread/subread-"
                                   version "/subread-" version "-source.tar.gz"))
               (sha256
                (base32
-                "06sv9mpcsdj6p68y15d6gi70lca3lxmzk0dn61hg0kfsa7rxmsr3"))))
+                "0gn5zhbvllks0mmdg3qlmsbg91p2mpdc2wixwfqpi85yzfrh8hcy"))))
     (build-system gnu-build-system)
     (arguments
      `(#:tests? #f ;no "check" target
diff --git a/gnu/packages/slim.scm b/gnu/packages/display-managers.scm
index 2328a1aacf..579b149a0c 100644
--- a/gnu/packages/slim.scm
+++ b/gnu/packages/display-managers.scm
@@ -18,7 +18,7 @@
 ;;; You should have received a copy of the GNU General Public License
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
-(define-module (gnu packages slim)
+(define-module (gnu packages display-managers)
   #:use-module ((guix licenses) #:prefix l:)
   #:use-module (guix packages)
   #:use-module (guix download)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index 4fe9a8aae6..ad51634f0c 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -2977,7 +2977,7 @@ passive voice.")
               (sha256
                (base32
                 "0cr37pdkwjgfijfws5bjskfh1rq9rfngxblcj6v5383vpmn83q7s"))
-              (file-name (string-append name "-" version))))
+              (file-name (string-append name "-" version ".tar.gz"))))
     (build-system emacs-build-system)
     (synopsis "Folder tree view for Emacs")
     (description "This Emacs package provides a folder tree view.")
@@ -3002,3 +3002,74 @@ lists, and project planning with a fast and effective plain-text system.  It
 also is an authoring system with unique support for literate programming and
 reproducible research.")
     (license license:gpl3+)))
+
+(define-public emacs-flx
+  (package
+    (name "emacs-flx")
+    (version "0.6.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/lewang/"
+                           "flx/archive/v" version ".tar.gz"))
+       (sha256
+        (base32
+         "0bkcpnf1j4i2fcc2rllwbz62l00sw2mcia6rm5amgwvlkqavmkv6"))
+       (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/lewang/flx")
+    (synopsis "Fuzzy matching for Emacs")
+    (description
+     "Flx provides fuzzy matching for emacs a la sublime text.
+The sorting algorithm is a balance between word beginnings (abbreviation)
+and contiguous matches (substring).  The longer the substring match,
+the higher it scores. This maps well to how we think about matching.
+Flx has support for ido (interactively do things) through flx-ido.")
+    (license license:gpl3+)))
+
+(define-public emacs-cyberpunk-theme
+  (package
+    (name "emacs-cyberpunk-theme")
+    (version "1.17")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/n3mo/cyberpunk-theme.el/"
+                           "archive/" version ".tar.gz"))
+       (sha256
+        (base32
+         "068jcn4g1bvwgpcvyfqygzw6ahill51c1sqzyyvj2paxckbd7h51"))
+       (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system emacs-build-system)
+    (home-page "https://github.com/n3mo/cyberpunk-theme.el")
+    (synopsis "Cyberpunk theme for emacs built-in color theme support")
+    (description
+     "Cyberpunk color theme for the emacs 24+ built-in color theme support
+known loosely as deftheme.  Many mode-specific customizations are included.")
+    (license license:gpl3+)))
+
+(define-public emacs-auto-complete
+  (package
+    (name "emacs-auto-complete")
+    (version "1.5.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/auto-complete/"
+                           "auto-complete/archive/v" version ".tar.gz"))
+       (sha256
+        (base32
+         "1jvq4lj00hwml75lpmlciazy8f3bbg13gffsfnl835p4qd8l7yqv"))
+       (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system emacs-build-system)
+    (propagated-inputs
+     `(("emacs-popup" ,emacs-popup)))
+    (home-page "https://github.com/auto-complete/auto-complete")
+    (synopsis "Intelligent auto-completion extension for Emacs")
+    (description
+     "Auto-Complete is an intelligent auto-completion extension for Emacs.
+It extends the standard Emacs completion interface and provides an environment
+that allows users to concentrate more on their own work.  Its features are:
+a visual interface, reduce overhead of completion by using statistic method,
+extensibility.")
+    (license license:gpl3+)))
diff --git a/gnu/packages/entr.scm b/gnu/packages/entr.scm
index 0e0f875267..dfa9274bea 100644
--- a/gnu/packages/entr.scm
+++ b/gnu/packages/entr.scm
@@ -26,14 +26,14 @@
 (define-public entr
   (package
     (name "entr")
-    (version "3.5")
+    (version "3.6")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://entrproject.org/code/entr-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "05k4jyjna0pr2dalwc1l1dhrcyk6pw7hbss7jl4ykwfadcs5br73"))))
+                "1sy81np6kgmq04kfn2ckf4fp7jcf5d1963shgmapx3al3kc4c9x4"))))
     (build-system gnu-build-system)
     (arguments
      `(#:test-target "test"
diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm
index 67f1e1a2c0..2032dce66a 100644
--- a/gnu/packages/freedesktop.scm
+++ b/gnu/packages/freedesktop.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -618,6 +619,65 @@ received by the Telepathy framework.  It features pluggable backends to log
 different sorts of messages in different formats.")
     (license license:lgpl2.1+)))
 
+(define-public telepathy-idle
+  (package
+    (name "telepathy-idle")
+    (version "0.2.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://telepathy.freedesktop.org/releases/"
+                                  name "/" name "-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "1argdzbif1vdmwp5vqbgkadq9ancjmgdm2ncp0qfckni715ss4rh"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("xsltproc" ,libxslt)
+       ("python" ,python-2)
+       ("python-dbus" ,python2-dbus)))
+    (propagated-inputs
+     `(("telepathy-glib" ,telepathy-glib)))
+    (home-page "http://telepathy.freedesktop.org/")
+    (synopsis "Telepathy IRC connection manager")
+    (description
+     "Idle is an IRC connection manager for the Telepathy framework.  This
+package enables usage of IRC channels and private messages in Telepathy instant
+messaging clients such as Empathy, GNOME Shell or KDE Telepathy.")
+    (license (list license:lgpl2.1 license:lgpl2.1+))))
+
+(define-public telepathy-mission-control
+  (package
+    (name "telepathy-mission-control")
+    (version "5.16.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://telepathy.freedesktop.org/releases/"
+                                  name "/" name "-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0zcbx69k0d3p2pjh3g7sa3q2zkd5xchxkqsmlfn3fwxaz0pmsmvi"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("dconf" ,dconf)
+       ("gtk-doc" ,gtk-doc)
+       ("libgnome-keyring" ,libgnome-keyring)
+       ("python" ,python-2)
+       ("xsltproc" ,libxslt)))
+    (propagated-inputs
+     `(("telepathy-glib" ,telepathy-glib)))
+    (home-page "https://telepathy.freedesktop.org/wiki/Components/Mission_Control/")
+    (synopsis "Telepathy real-time communication framework management daemon")
+    (description
+     "Telepathy Mission Control 5 is an account manager and channel dispatcher
+for the Telepathy framework, allowing user interfaces and other clients to
+share connections to real-time communication services without conflicting.")
+    (license license:lgpl2.1)))
+
 (define-public colord-gtk
   (package
     (name "colord-gtk")
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index ed5d7fd52e..88330c7293 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -21,7 +21,7 @@
 ;;; Copyright © 2016 Albin Söderqvist <albin@fripost.org>
 ;;; Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
-;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il"
+;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -103,6 +103,7 @@
   #:use-module (gnu packages xdisorg)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system haskell)
+  #:use-module (guix build-system python)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system trivial))
 
@@ -2773,3 +2774,47 @@ Your robot ant can be programmed in many languages: OCaml, Python, C, C++,
 Java, Ruby, Lua, JavaScript, Pascal, Perl, Scheme, Vala, Prolog.  Experienced
 programmers may also add their own favorite language.")
     (license license:gpl3+)))
+
+(define-public bambam
+  (package
+    (name "bambam")
+    (version "0.5")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "https://github.com/porridge/bambam/archive/"
+                            version ".tar.gz"))
+        (file-name (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32
+          "10w110mjdwbvddzihh9rganvvjr5jfiz8cs9n7w12zndwwcc3ria"))))
+    (build-system python-build-system)
+    (arguments
+     `(#:python ,python-2
+       #:tests? #f ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'build)
+         (add-before 'install 'patch-data-dir-location
+           (lambda _
+             (substitute* "bambam.py"
+               (("'data'") "'../share/bambam/data'"))
+             #t))
+         (replace 'install
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out   (assoc-ref outputs "out"))
+                    (bin   (string-append out "/bin"))
+                    (share (string-append out "/share")))
+               (mkdir-p bin)
+               (copy-file "bambam.py" (string-append bin "/bambam"))
+               (install-file "bambam.6" (string-append share "/man/man6"))
+               (copy-recursively "data" (string-append share "/bambam/data")))
+             #t)))))
+    (inputs
+     `(("python-pygame" ,python-pygame)))
+    (home-page "https://github.com/porridge/bambam")
+    (synopsis "Keyboard mashing and doodling game for babies")
+    (description "Bambam is a simple baby keyboard (and gamepad) masher
+application that locks the keyboard and mouse and instead displays bright
+colors, pictures, and sounds.")
+    (license license:gpl3+)))
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 077a6ef2a5..7014081eb2 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2013 Joshua Grant <tadni@riseup.net>
 ;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
 ;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -443,7 +444,7 @@ extension functionality is exposed in a single header file.")
                      (dynamic-link-substitute "glu/runtime.scm" "GLU" "glu")
                      (dynamic-link-substitute "glut/runtime.scm" "glut"
                                               "freeglut"))))))
-    (home-page "http://gnu.org/s/guile-opengl")
+    (home-page "https://gnu.org/s/guile-opengl")
     (synopsis "Guile binding for the OpenGL graphics API")
     (description
      "Guile-OpenGL is a library for Guile that provides bindings to the
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 36c753d79c..90ca4bd1c0 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -3732,7 +3732,7 @@ to format Docbook and Mallard documents.")
 (define-public yelp
   (package
     (name "yelp")
-    (version "3.20.1")
+    (version "3.21.3")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnome/sources/" name "/"
@@ -3740,7 +3740,7 @@ to format Docbook and Mallard documents.")
                                   name "-" version ".tar.xz"))
               (sha256
                (base32
-                "1hh8yqbv0scn9nksk9mq94cb4sdczlzxplclv2wqr41jmm8v186x"))))
+                "1x8la7qn0l796p4nhprvkwb6sk6yc39xhq3gabvzrhdlb6mjgmrs"))))
     (build-system glib-or-gtk-build-system)
     (native-inputs
      `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc.
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 525cddc701..cdc9872fef 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -306,7 +306,7 @@ kinds of basic applications for the foundation of a GNU internet.")
        "This package provides Guile bindings to the client libraries of various
 GNUnet services, including the @dfn{identity} and @dfn{file sharing}
 services.")
-      (home-page "http://gnu.org/software/guix")
+      (home-page "https://gnu.org/software/guix")
       (license license:gpl3+))))
 
 ;; FIXME: "gnunet-setup" segfaults under certain conditions and "gnunet-gtk"
diff --git a/gnu/packages/grub.scm b/gnu/packages/grub.scm
index 01f2a8454d..3229b868c5 100644
--- a/gnu/packages/grub.scm
+++ b/gnu/packages/grub.scm
@@ -129,7 +129,7 @@
        ("parted" ,parted)
        ("qemu" ,qemu-for-tests)
        ("xorriso" ,xorriso)))
-    (home-page "http://www.gnu.org/software/grub/")
+    (home-page "https://www.gnu.org/software/grub/")
     (synopsis "GRand Unified Boot loader")
     (description
      "GRUB is a multiboot bootloader.  It is used for initially loading the
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 3e0b034950..7387235c5b 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -337,16 +337,15 @@ build process and its dependencies, whereas Make uses Makefile format.")
 (define-public icedtea-6
   (package
     (name "icedtea")
-    (version "1.13.11")
+    (version "1.13.12")
     (source (origin
               (method url-fetch)
               (uri (string-append
                     "http://icedtea.wildebeest.org/download/source/icedtea6-"
                     version ".tar.xz"))
-              (patches (search-patches "icedtea-remove-overrides.patch"))
               (sha256
                (base32
-                "1grki39a4rf8n74zc0iglcggxxbpniyfh1gk1lb10p63zvvcsvjj"))
+                "1q5iqm3dzqj8w3dwj6qqhczkkrslrfhmn3110klfwq9kyi2nimj8"))
               (modules '((guix build utils)))
               (snippet
                '(substitute* "Makefile.in"
@@ -441,13 +440,7 @@ build process and its dependencies, whereas Make uses Makefile format.")
              (substitute* '("patches/jtreg-jrunscript.patch"
                             "patches/hotspot/hs23/drop_unlicensed_test.patch")
                (("#!/bin/sh") (string-append "#!" (which "sh"))))
-
-             ;; fix path to alsa header in patch
-             (substitute* "patches/openjdk/6799141-split_out_versions.patch"
-               (("ALSA_INCLUDE=/usr/include/alsa/version.h")
-                (string-append "ALSA_INCLUDE="
-                               (assoc-ref %build-inputs "alsa-lib")
-                               "/include/alsa/version.h")))))
+             #t))
          (add-after 'unpack 'patch-paths
            (lambda _
              ;; buildtree.make generates shell scripts, so we need to replace
@@ -475,6 +468,13 @@ build process and its dependencies, whereas Make uses Makefile format.")
                  (("DEF_OBJCOPY *=.*objcopy")
                   (string-append "DEF_OBJCOPY = " (which "objcopy"))))
 
+               ;; fix path to alsa header
+               (substitute* "openjdk.src/jdk/make/common/shared/Sanity.gmk"
+                 (("ALSA_INCLUDE=/usr/include/alsa/version.h")
+                  (string-append "ALSA_INCLUDE="
+                                 (assoc-ref %build-inputs "alsa-lib")
+                                 "/include/alsa/version.h")))
+
                ;; fix hard-coded utility paths
                (substitute* '("openjdk.src/jdk/make/common/shared/Defs-utils.gmk"
                               "openjdk.src/corba/make/common/shared/Defs-utils.gmk")
@@ -764,10 +764,10 @@ build process and its dependencies, whereas Make uses Makefile format.")
        ("openjdk6-src"
         ,(origin
            (method url-fetch)
-           (uri "https://java.net/downloads/openjdk6/openjdk-6-src-b39-03_may_2016.tar.gz")
+           (uri "https://java.net/downloads/openjdk6/openjdk-6-src-b40-22_aug_2016.tar.gz")
            (sha256
             (base32
-             "1brxbsgwcj4js26y5lk6capc3pvghgjidvv9cavw6z8n7c7aw8af"))))
+             "01v4q7g9pa6w7m6yxply5yrin08jgv12fck665xnmp09bpxy8sa5"))))
        ("lcms" ,lcms)
        ("zlib" ,zlib)
        ("gtk" ,gtk+-2)
diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 6ba454d0ed..011f9e0deb 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -25,11 +25,15 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils)
+  #:use-module (gnu packages acl)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages attr)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages databases)
+  #:use-module (gnu packages disk)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
@@ -42,6 +46,7 @@
   #:use-module (gnu packages polkit)
   #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
+  #:use-module (gnu packages version-control)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages xorg))
@@ -138,6 +143,38 @@ common build settings used in software produced by the KDE community.")
     (description "C++ bindings/wrapper for gpgme.")
     (license license:lgpl2.1+)))
 
+(define-public kpmcore
+  (package
+    (name "kpmcore")
+    (version "2.2.1")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append "mirror://kde/stable/kpmcore"
+                            "/" version "/src/"
+                            name "-" version ".tar.xz"))
+        (sha256
+         (base32
+          "1blila6ncqbmzhycx3szrbkxc000pzh62956mw5ihxvhrqpncg2p"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("kconfigwidgets" ,kconfigwidgets)
+       ("kiconthemes" ,kiconthemes)
+       ("kio" ,kio)
+       ("ki18n" ,ki18n)
+       ("kservice" ,kservice)
+       ("libatasmart" ,libatasmart)
+       ("parted" ,parted)
+       ("qtbase" ,qtbase)
+       ("util-linux" ,util-linux)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Library for managing partitions")
+    (description "Library for managing partitions.")
+    (license license:gpl3+)))
+
 
 ;; Tier 1
 ;;
@@ -1461,3 +1498,1270 @@ different physical units.  It supports converting different prefixes (e.g. kilo,
 mega, giga) as well as converting between different unit systems (e.g. liters,
 gallons).")
     (license license:lgpl2.1+)))
+
+
+;; Tier 3
+;;
+;; Tier 3 frameworks are generally more powerful, comprehensive packages, and
+;; consequently have more complex dependencies.
+
+(define-public baloo
+  (package
+    (name "baloo")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1ayfdg6j9lvas17ryjdv4a0kaj6vw3bxfy2x9nadl0gkc9pak4nh"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kcoreaddons" ,kcoreaddons)
+       ("kfilemetadata" ,kfilemetadata)))
+    (native-inputs
+     `(("dbus" ,dbus)
+       ("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kbookmarks" ,kbookmarks)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kcrash" ,kcrash)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kidletime" ,kidletime)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kxmlgui" ,kxmlgui)
+       ("lmdb" ,lmdb)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("solid" ,solid)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t))
+         (replace 'check
+           (lambda _
+             (setenv "DBUS_FATAL_WARNINGS" "0")
+             (zero? (system* "dbus-launch" "ctest" ".")))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "File searching and indexing")
+    (description "Baloo provides file searching and indexing.  It does so by
+maintaining an index of the contents of your files.")
+    ;; dual licensed
+    (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public kactivities
+  (package
+    (name "kactivities")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0s8g43zk6h35bq1am1nnhj0qvmhd6kz42gs8l7ybga0367jghzhf"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("boost" ,boost)
+       ("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("solid" ,solid)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Core components for the KDE Activity concept")
+    (description "KActivities provides the infrastructure needed to manage a
+user's activites, allowing them to switch between tasks, and for applications
+to update their state to match the user's current activity.  This includes a
+daemon, a library for interacting with that daemon, and plugins for integration
+with other frameworks.")
+    ;; triple licensed
+    (license (list license:gpl2+ license:lgpl2.0+ license:lgpl2.1+))))
+
+;; NOTE: This package is listed as a tier 2 package even though it requires
+;;       kactivities - a tier 3 package.
+(define-public kactivities-stats
+  (package
+    (name "kactivities-stats")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1z3xvpifxbd05b2xaxxyiypcpid7jgjb1qpwiyjj1gnfp4rjmzpc"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("boost" ,boost)
+       ("kactivities" ,kactivities)
+       ("kconfig" ,kconfig)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Access usage statistics collected by the activity manager")
+    (description "The KActivitiesStats library provides a querying mechanism for
+the data that the activitiy manager collects - which documents have been opened
+by which applications, and what documents have been linked to which activity.")
+    ;; triple licensed
+    (license (list license:lgpl2.0+ license:lgpl2.1+ license:lgpl3+))))
+
+(define-public kbookmarks
+  (package
+    (name "kbookmarks")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "10d8dnhvbrwp0dbmz93cqfdff6ir8iy3yiwaf9ihj6ma124qlyjn"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kwidgetsaddons" ,kwidgetsaddons)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("qttools" ,qttools)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kiconthemes" ,kiconthemes)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Bookmarks management library")
+    (description "KBookmarks lets you access and manipulate bookmarks stored
+using the XBEL format.")
+    (license license:lgpl2.1+)))
+
+(define-public kcmutils
+  (package
+    (name "kcmutils")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0aws1c76s6wbp0xpr6qv6cfwq8dw82v00pkf9gy84sbxknwjnizk"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kconfigwidgets" ,kconfigwidgets)
+       ("kservice" ,kservice)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kdeclarative" ,kdeclarative)
+       ("kiconthemes" ,kiconthemes)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kpackage" ,kpackage)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Utilities for KDE System Settings modules")
+    (description "KCMUtils provides various classes to work with KCModules.
+KCModules can be created with the KConfigWidgets framework.")
+    (license license:lgpl2.1+)))
+
+(define-public kconfigwidgets
+  (package
+    (name "kconfigwidgets")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0v25r50gh5i984lzlv0rradghglcfqf0gsfmnkn23h87b86fm9l2"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kconfig" ,kconfig)
+       ("kwidgetsaddons" ,kwidgetsaddons)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kcoreaddons" ,kcoreaddons)
+       ("kguiaddons" ,kguiaddons)
+       ("ki18n" ,ki18n)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Widgets for configuration dialogs")
+    (description "KConfigWidgets provides easy-to-use classes to create
+configuration dialogs, as well as a set of widgets which uses KConfig to store
+their settings.")
+    ;; dual licensed
+    (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public kdeclarative
+  (package
+    (name "kdeclarative")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "00ik9q1r6y6g5rkdq96yczgrxmcg85x00lipyljvc3x6xw6bixbz"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kconfig" ,kconfig)
+       ("kpackage" ,kpackage)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("xorg-server" ,xorg-server)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kglobalaccel" ,kglobalaccel)
+       ("kguiaddons" ,kguiaddons)
+       ("kiconthemes" ,kiconthemes)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("solid" ,solid)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'start-xorg-server
+           (lambda* (#:key inputs #:allow-other-keys)
+             ;; The test suite requires a running X server.
+             (system (string-append (assoc-ref inputs "xorg-server")
+                                    "/bin/Xvfb :1 -screen 0 640x480x24 &"))
+             (setenv "DISPLAY" ":1")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Integration of QML and KDE work spaces")
+    (description "KDeclarative provides integration of QML and KDE work spaces.
+It's comprises two parts: a library used by the C++ part of your application to
+intergrate QML with KDE Frameworks specific features, and a series of QML imports
+that offer bindings to some of the Frameworks.")
+    ;; dual licensed
+    (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public kded
+  (package
+    (name "kded")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0ngpxdxb596myn5r4kjxahx195bwklq33yvgjvcbxi2clg2wccaj"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kcrash" ,kcrash)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kdoctools" ,kdoctools)
+       ("kinit" ,kinit)
+       ("kservice" ,kservice)
+       ("qtbase" ,qtbase)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Central daemon of KDE work spaces")
+    (description "KDED stands for KDE Daemon.  KDED runs in the background and
+performs a number of small tasks.  Some of these tasks are built in, others are
+started on demand.")
+    ;; dual licensed
+    (license (list license:lgpl2.0+ license:lgpl2.1+))))
+
+(define-public kdesignerplugin
+  (package
+    (name "kdesignerplugin")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0i0s8pwwhwh5hyyvkv0cnj0yyv0g5bnm5xw18knv2yagiy4bvb2j"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("qttools" ,qttools)))
+    (inputs
+     `(("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kdoctools" ,kdoctools)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Integrating KDE frameworks widgets with Qt Designer")
+    (description "This framework provides plugins for Qt Designer that allow it
+to display the widgets provided by various KDE frameworks, as well as a utility
+(kgendesignerplugin) that can be used to generate other such plugins from
+ini-style description files.")
+    (license license:lgpl2.1+)))
+
+(define-public kdesu
+  (package
+    (name "kdesu")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1ivcnhgvq75xvl0w9g7m45qzallz42ijaq0n1ap09lpdfmjbnrxk"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kpty" ,kpty)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)
+       ("ki18n" ,ki18n)
+       ("kservice" ,kservice)
+       ("qtbase" ,qtbase)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "User interface for running shell commands with root privileges")
+    (description "KDESU provides functionality for building GUI front ends for
+(password asking) console mode programs.  kdesu and kdessh use it to interface
+with su and ssh respectively.")
+    (license license:lgpl2.1+)))
+
+(define-public kemoticons
+  (package
+    (name "kemoticons")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0gmc52k5jb553jvzxwsq79v5y87kgav8i5qqv4bqc9yl7p866zhn"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kservice" ,kservice)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("karchive" ,karchive)
+       ("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:tests? #f ; FIXME: 2/2 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output
+             (setenv "QT_QPA_PLATFORM" "offscreen"))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Convert text emoticons to graphical emoticons")
+    (description "KEmoticons converts emoticons from text to a graphical
+representation with images in HTML.  It supports setting different themes for
+emoticons coming from different providers.")
+    ;; dual licensed, image files are licensed under cc-by-sa4.0
+    (license (list license:gpl2+ license:lgpl2.1+ license:cc-by-sa4.0))))
+
+(define-public kglobalaccel
+  (package
+    (name "kglobalaccel")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "123v0ld1q88hbm3d0mqgq6lcivfkqh7pbz4hb4n76ab5v43qc15c"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("qttools" ,qttools)))
+    (inputs
+     `(("kconfig" ,kconfig)
+       ("kcrash" ,kcrash)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("libxcb" ,libxcb)
+       ("qtbase" ,qtbase)
+       ("qtx11extras" ,qtx11extras)
+       ("xcb-util-keysyms" ,xcb-util-keysyms)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Global desktop keyboard shortcuts")
+    (description "KGlobalAccel allows you to have global accelerators that are
+independent of the focused window.  Unlike regular shortcuts, the application's
+window does not need focus for them to be activated.")
+    (license license:lgpl2.1+)))
+
+(define-public kiconthemes
+  (package
+    (name "kiconthemes")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1k5zig2n6wzfyv6pc8dpas2862mxjyxxza00m31myrfw5i1a1h6m"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)
+       ("shared-mime-info" ,shared-mime-info)))
+    (inputs
+     `(("karchive" ,karchive)
+       ("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("ki18n" ,ki18n)
+       ("kitemviews" ,kitemviews)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("qtbase" ,qtbase)
+       ("qtsvg" ,qtsvg)))
+    (arguments
+     `(#:tests? #f ; FIXME: Test failure
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "XDG_DATA_DIRS"
+                     (string-append (assoc-ref inputs "shared-mime-info")
+                                    "/share"))
+             (setenv "HOME" (getcwd))
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output
+             (setenv "QT_QPA_PLATFORM" "offscreen"))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Icon GUI utilities")
+    (description "This library contains classes to improve the handling of icons
+in applications using the KDE Frameworks.")
+    (license license:lgpl2.1+)))
+
+(define-public kinit
+  (package
+    (name "kinit")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1i7l6gid5hrrfglw1c461gpjg51dwz7cl4lx7ll8vz2ha8mz4d3n"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kcrash" ,kcrash)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)
+       ("solid" ,solid)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Library to speed up start of applications on KDE workspaces")
+    (description "Kdeinit is a process launcher similar to init used for booting
+UNIX.  It launches processes by forking and then loading a dynamic library which
+contains a 'kdemain(...)' function.  Using kdeinit to launch KDE applications
+makes starting KDE applications faster and reduces memory consumption.")
+    ;; dual licensed
+    (license (list license:lgpl2.0+ license:lgpl2.1+))))
+
+(define-public kio
+  (package
+    (name "kio")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0zncj9yf8zaylazlwvirylpk9vki3j889b1x2s0aav54vvj7vdi5"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kbookmarks" ,kbookmarks)
+       ("kconfig" ,kconfig)
+       ("kcompletion" ,kcompletion)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kitemviews" ,kitemviews)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kxmlgui" ,kxmlgui)
+       ("solid" ,solid)))
+    (native-inputs
+     `(("dbus" ,dbus)
+       ("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("acl" ,acl)
+       ("karchive" ,karchive)
+       ("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kdoctools" ,kdoctools)
+       ("kiconthemes" ,kiconthemes)
+       ("ki18n" ,ki18n)
+       ("knotifications" ,knotifications)
+       ("ktextwidgets" ,ktextwidgets)
+       ("kwallet" ,kwallet)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("libxml2" ,libxml2)
+       ("libxslt" ,libxslt)
+       ("qtbase" ,qtbase)
+       ("qtx11extras" ,qtx11extras)
+       ("sonnet" ,sonnet)))
+    (arguments
+     `(#:tests? #f ; FIXME: 41/50 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "XDG_RUNTIME_DIR" (getcwd))
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+             (setenv "QT_QPA_PLATFORM" "offscreen"))))))
+    ;;(replace 'check
+    ;;  (lambda _
+    ;;    (setenv "DBUS_FATAL_WARNINGS" "0")
+    ;;    (zero? (system* "dbus-launch" "ctest" ".")))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Network transparent access to files and data")
+    (description "This framework implements a lot of file management functions.
+It supports accessing files locally as well as via HTTP and FTP out of the box
+and can be extended by plugins to support other protocols as well.  There is a
+variety of plugins available, e.g. to support access via SSH.  The framework can
+also be used to bridge a native protocol to a file-based interface.  This makes
+the data accessible in all applications using the KDE file dialog or any other
+KIO enabled infrastructure.")
+    (license license:lgpl2.1+)))
+
+(define-public knewstuff
+  (package
+    (name "knewstuff")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0xdv3wh3100vzsx8p2zihy1dvh0wzfmrjkjq71v8igwz5d291zsj"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("attica" ,attica)
+       ("kservice" ,kservice)
+       ("kxmlgui" ,kxmlgui)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("karchive" ,karchive)
+       ("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kiconthemes" ,kiconthemes)
+       ("kjobwidgets" ,kjobwidgets)
+       ("ktextwidgets" ,ktextwidgets)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("qtbase" ,qtbase)
+       ("solid" ,solid)
+       ("sonnet" ,sonnet)))
+    (arguments
+     `(#:tests? #f ; FIXME: 1/3 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _ ; XDG_DATA_DIRS isn't set
+             (setenv "HOME" (getcwd))
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+             (setenv "QT_QPA_PLATFORM" "offscreen"))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Framework for downloading and sharing additional application data")
+    (description "The KNewStuff library implements collaborative data sharing
+for applications.  It uses libattica to support the Open Collaboration Services
+specification.")
+    (license license:lgpl2.1+)))
+
+(define-public knotifyconfig
+  (package
+    (name "knotifyconfig")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1dij841fnqia4p44x2wnpdvl8cn3nkj833y0fah50fmipjc8r70b"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("knotifications" ,knotifications)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kxmlgui" ,kxmlgui)
+       ("phonon" ,phonon)
+       ("qtbase" ,qtbase)
+       ("solid" ,solid)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Configuration dialog for desktop notifications")
+    (description "KNotifyConfig provides a configuration dialog for desktop
+notifications which can be embedded in your application.")
+    ;; dual licensed
+    (license (list license:lgpl2.0+ license:lgpl2.1+))))
+
+(define-public kparts
+  (package
+    (name "kparts")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0z7qr93aq02i7g7cxgypx2rzlnsvbsx9cjblb0ijmad1nb8w3mix"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kio" ,kio)
+       ("ktextwidgets" ,ktextwidgets)
+       ("kxmlgui" ,kxmlgui)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kiconthemes" ,kiconthemes)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("qtbase" ,qtbase)
+       ("solid" ,solid)
+       ("sonnet" ,sonnet)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Plugin framework for user interface components")
+    (description "This library implements the framework for KDE parts, which are
+widgets with a user-interface defined in terms of actions.")
+    (license license:lgpl2.1+)))
+
+(define-public kpeople
+  (package
+    (name "kpeople")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0iknzkj23y927xh24kw5sjxyirhy6pkmfcmmgwzd78rba8a54qp2"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)))
+    (arguments
+     `(#:tests? #f ; FIXME: 1/3 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output
+             (setenv "QT_QPA_PLATFORM" "offscreen"))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Provides access to all contacts and aggregates them by person")
+    (description "KPeople offers unified access to our contacts from different
+sources, grouping them by person while still exposing all the data.  KPeople
+also provides facilities to integrate the data provided in user interfaces by
+providing QML and Qt Widgets components.  The sources are plugin-based, allowing
+to easily extend the contacts collection.")
+    (license license:lgpl2.1+)))
+
+(define-public krunner
+  (package
+    (name "krunner")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0ff87ijjd47jxf6zw2ggqgngnbyx1rj59wdfgy5wbi3acws6bafl"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("plasma-framework" ,plasma-framework)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kpackage" ,kpackage)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("solid" ,solid)
+       ("threadweaver" ,threadweaver)))
+    (arguments
+     `(#:tests? #f ; FIXME: 1/1 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output
+             (setenv "QT_QPA_PLATFORM" "offscreen"))))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Framework for Plasma runners")
+    (description "The Plasma workspace provides an application called KRunner
+which, among other things, allows one to type into a text area which causes
+various actions and information that match the text appear as the text is being
+typed.")
+    (license license:lgpl2.1+)))
+
+(define-public kservice
+  (package
+    (name "kservice")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0w0nsg64d6xhgijr2vh0j5p544qi0q55jpqa9v9mv956zrrdssdk"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kconfig" ,kconfig)
+       ("kcoreaddons" ,kcoreaddons)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kcrash" ,kcrash)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kdoctools" ,kdoctools)
+       ("ki18n" ,ki18n)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:tests? #f ; FIXME: 8/10 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Plugin framework for desktop services")
+    (description "KService provides a plugin framework for handling desktop
+services.  Services can be applications or libraries.  They can be bound to MIME
+types or handled by application specific code.")
+    ;; triple licensed
+    (license (list license:gpl2+ license:gpl3+ license:lgpl2.1+))))
+
+(define-public ktexteditor
+  (package
+    (name "ktexteditor")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1ykj1kvm7k1vxb1w235d5hp2swwdqjyp2y4c3pxbvkn999h9x5q5"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kparts" ,kparts)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("karchive" ,karchive)
+       ("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kguiaddons" ,kguiaddons)
+       ("kiconthemes" ,kiconthemes)
+       ("kio" ,kio)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("ktextwidgets" ,ktextwidgets)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kxmlgui" ,kxmlgui)
+       ("libgit2" ,libgit2)
+       ("perl" ,perl)
+       ("qtbase" ,qtbase)
+       ("qtscript" ,qtscript)
+       ("qtxmlpatterns" ,qtxmlpatterns)
+       ("solid" ,solid)
+       ("sonnet" ,sonnet)))
+    (arguments
+     `(#:tests? #f ; FIXME: 2/54 tests fail: Cannot find fontdirectory qtbase/lib/font
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'setup
+           (lambda* (#:key inputs #:allow-other-keys)
+             (setenv "XDG_DATA_DIRS" ; FIXME build phase doesn't find parts.desktop
+                     (string-append (assoc-ref inputs "kparts") "/share"))
+             #t))
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Full text editor component")
+    (description "KTextEditor provides a powerful text editor component that you
+can embed in your application, either as a KPart or using the KF5::TextEditor
+library.")
+    ;; triple licensed
+    (license (list license:gpl2+ license:lgpl2.0+ license:lgpl2.1+))))
+
+(define-public ktextwidgets
+  (package
+    (name "ktextwidgets")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1q10xav2gkii6s3m31c9xvxf1988l7k2lpib6pyhgsidflmwjm02"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("ki18n" ,ki18n)
+       ("sonnet" ,sonnet)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kiconthemes" ,kiconthemes)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("qtbase" ,qtbase)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Text editing widgets")
+    (description "KTextWidgets provides widgets for displaying and editing text.
+It supports rich text as well as plain text.")
+    ;; dual licensed
+    (license (list license:lgpl2.0+ license:lgpl2.1+))))
+
+(define-public kwallet
+  (package
+    (name "kwallet")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0zad5h4vsvcl2xv3vxsjwh42b71xbp6x6rj8cvmw8szr2rzz9gsx"))))
+    (build-system cmake-build-system)
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("gpgmepp" ,gpgmepp)
+       ("kauth" ,kauth)
+       ("kcodecs" ,kcodecs)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kdoctools" ,kdoctools)
+       ("kiconthemes" ,kiconthemes)
+       ("ki18n" ,ki18n)
+       ("knotifications" ,knotifications)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("libgcrypt" ,libgcrypt)
+       ("phonon" ,phonon)
+       ("qtbase" ,qtbase)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Safe desktop-wide storage for passwords")
+    (description "This framework contains an interface to KWallet, a safe
+desktop-wide storage for passwords and the kwalletd daemon used to safely store
+the passwords on KDE work spaces.")
+    (license license:lgpl2.1+)))
+
+(define-public kxmlgui
+  (package
+    (name "kxmlgui")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "1qhixldhhcbklmrpjh67440h1rrzqy70h57hw6ialjdsr3pl6ihp"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("attica" ,attica)
+       ("kauth", kauth)
+       ("kcodecs" ,kcodecs)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kglobalaccel" ,kglobalaccel)
+       ("kiconthemes" ,kiconthemes)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("ktextwidgets" ,ktextwidgets)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("qtbase" ,qtbase)
+       ("sonnet" ,sonnet)))
+    (arguments
+     `(#:tests? #f ; FIXME: 1/5 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Framework for managing menu and toolbar actions")
+    (description "KXMLGUI provides a framework for managing menu and toolbar
+actions in an abstract way.  The actions are configured through a XML description
+and hooks in the application code.  The framework supports merging of multiple
+descriptions for integrating actions from plugins.")
+    ;; dual licensed
+    (license (list license:gpl2+ license:lgpl2.1+))))
+
+(define-public kxmlrpcclient
+  (package
+    (name "kxmlrpcclient")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "06ap6ipzqimz1rfrcr7z8zc7idy7sg4a97dws7h52i34ms7jqnc8"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kio" ,kio)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kitemviews" ,kitemviews)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("kservice" ,kservice)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kxmlgui" ,kxmlgui)
+       ("qtbase" ,qtbase)
+       ("solid" ,solid)))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "XML-RPC client")
+    (description "This library contains simple XML-RPC Client support.  It is a
+complete client and is easy to use.  Only one interface is exposed,
+kxmlrpcclient/client.h and from that interface, you only need to use 3 methods:
+setUrl, setUserAgent and call.")
+    ;; dual licensed
+    (license (list license:bsd-2 license:lgpl2.1+))))
+
+(define-public plasma-framework
+  (package
+    (name "plasma-framework")
+    (version "5.24.0")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://kde/stable/frameworks/"
+                           (version-major+minor version) "/"
+                           name "-" version ".tar.xz"))
+       (sha256
+        (base32
+         "0981vm00541dzihlr1fsax05biwp2ddpwjrmvnfysx5jagdc65cb"))))
+    (build-system cmake-build-system)
+    (propagated-inputs
+     `(("kpackage" ,kpackage)
+       ("kservice" ,kservice)))
+    (native-inputs
+     `(("extra-cmake-modules" ,extra-cmake-modules)))
+    (inputs
+     `(("kactivities" ,kactivities)
+       ("karchive" ,karchive)
+       ("kauth" ,kauth)
+       ("kbookmarks" ,kbookmarks)
+       ("kcodecs" ,kcodecs)
+       ("kcompletion" ,kcompletion)
+       ("kconfig" ,kconfig)
+       ("kconfigwidgets" ,kconfigwidgets)
+       ("kcoreaddons" ,kcoreaddons)
+       ("kdbusaddons" ,kdbusaddons)
+       ("kdeclarative" ,kdeclarative)
+       ("kdoctools" ,kdoctools)
+       ("kglobalaccel" ,kglobalaccel)
+       ("kguiaddons" ,kguiaddons)
+       ("kiconthemes" ,kiconthemes)
+       ("kitemviews" ,kitemviews)
+       ("kio" ,kio)
+       ("ki18n" ,ki18n)
+       ("kjobwidgets" ,kjobwidgets)
+       ("knotificantions" ,knotifications)
+       ("kwidgetsaddons" ,kwidgetsaddons)
+       ("kwindowsystem" ,kwindowsystem)
+       ("kxmlgui" ,kxmlgui)
+       ("phonon" ,phonon)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtsvg" ,qtsvg)
+       ("qtx11extras" ,qtx11extras)
+       ("solid" ,solid)))
+    (arguments
+     `(#:tests? #f ; FIXME: 13/14 tests fail.
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'check 'check-setup
+           (lambda _
+             (setenv "HOME" (getcwd))
+             (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output
+             (setenv "QT_QPA_PLATFORM" "offscreen")
+             #t)))))
+    (home-page "https://community.kde.org/Frameworks")
+    (synopsis "Libraries, components and tools of Plasma workspaces")
+    (description "The plasma framework provides QML components, libplasma and
+script engines.")
+    ;; dual licensed
+    (license (list license:gpl2+ license:lgpl2.1+))))
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 56c1aff68a..6dee46086f 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 David Craven <david@craven.ch>
+;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -198,6 +199,30 @@
 `insmod', `lsmod', and more.")
     (license license:gpl2+)))
 
+(define-public libnfsidmap
+  (package
+    (name "libnfsidmap")
+    (version "0.25")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append
+                   "http://www.citi.umich.edu/projects/nfsv4/linux/"
+                   name "/" name "-" version ".tar.gz"))
+             (sha256
+              (base32
+               "1kzgwxzh83qi97rblcm9qj80cdvnv8kml2plz0q103j0hifj8vb5"))))
+    (build-system gnu-build-system)
+    (home-page
+     "http://www.citi.umich.edu/projects/nfsv4/crossrealm/libnfsidmap_config.html")
+    (synopsis
+     "NFSv4 support library for name/ID mapping")
+    (description "Libnfsidmap is a library holding mulitiple methods of
+mapping names to ids and visa versa, mainly for NFSv4.  It provides an
+extensible array of mapping functions, currently consisting of two choices:
+the default @code{nsswitch} and the experimental @code{umich_ldap}.")
+    (license (license:non-copyleft "file://COPYING"
+                                   "See COPYING in the distribution."))))
+
 (define %boot-logo-patch
   ;; Linux-Libre boot logo featuring Freedo and a gnu.
   (origin
@@ -855,14 +880,14 @@ MIDI functionality to the Linux-based operating system.")
 (define-public alsa-utils
   (package
     (name "alsa-utils")
-    (version "1.1.0")
+    (version "1.1.2")
     (source (origin
              (method url-fetch)
              (uri (string-append "ftp://ftp.alsa-project.org/pub/utils/"
                                  name "-" version ".tar.bz2"))
              (sha256
               (base32
-               "1wa88wvqcfhak9x3y65wzzwxmmyxb5bv2gyj7lnm653fnwsk271v"))))
+               "0wcha78c2sm8qqk5r3w83cvm8fp6fb1zpd35kmcm24kxhz007xks"))))
     (build-system gnu-build-system)
     (arguments
      ;; XXX: Disable man page creation until we have DocBook.
@@ -873,14 +898,15 @@ MIDI functionality to the Linux-based operating system.")
                                (string-append "--with-udev-rules-dir="
                                               (assoc-ref %outputs "out")
                                               "/lib/udev/rules.d"))
-       #:phases (alist-cons-before
-                 'install 'pre-install
-                 (lambda _
-                   ;; Don't try to mkdir /var/lib/alsa.
-                   (substitute* "Makefile"
-                     (("\\$\\(MKDIR_P\\) .*ASOUND_STATE_DIR.*")
-                      "true\n")))
-                 %standard-phases)))
+       #:phases
+       (modify-phases %standard-phases
+         (add-before
+           'install 'pre-install
+           (lambda _
+             ;; Don't try to mkdir /var/lib/alsa.
+             (substitute* "Makefile"
+               (("\\$\\(MKDIR_P\\) .*ASOUND_STATE_DIR.*")
+                "true\n")))))))
     (inputs
      `(("libsamplerate" ,libsamplerate)
        ("ncurses" ,ncurses)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index bdccccec6f..07f0b9d957 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
 ;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
-;;; Coypright © 2016 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
diff --git a/gnu/packages/onc-rpc.scm b/gnu/packages/onc-rpc.scm
index d9b2f9dda0..549b82307b 100644
--- a/gnu/packages/onc-rpc.scm
+++ b/gnu/packages/onc-rpc.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2016 John Darrington <jmd@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,6 +21,8 @@
   #:use-module (guix licenses)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (gnu packages mit-krb5)
+  #:use-module (gnu packages pkg-config)
   #:use-module (guix build-system gnu))
 
 (define-public libtirpc
@@ -36,16 +39,14 @@
                 "18a337wa4amf0k21wnimp3yzs5l3cxqndz4x3x8bm993zhfy5hs5"))))
     (build-system gnu-build-system)
     (arguments
-     '(;; Doesn't work with GNU GSS.
-       #:configure-flags '("--disable-gssapi")
-
-       #:phases (alist-cons-after
-                 'unpack 'remote-dangling-symlink
-                 (lambda _
-                   ;; Remote the dangling symlinks since it breaks the
-                   ;; 'patch-source-shebangs' file tree traversal.
-                   (delete-file "INSTALL"))
-                 %standard-phases)))
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remote-dangling-symlink
+           (lambda _
+             ;; Remove the dangling symlinks since it breaks the
+             ;; 'patch-source-shebangs' file tree traversal.
+             (delete-file "INSTALL"))))))
+    (inputs `(("mit-krb5" ,mit-krb5)))
     (home-page "http://sourceforge.net/projects/libtirpc/")
     (synopsis "Transport-independent Sun/ONC RPC implementation")
     (description
@@ -53,3 +54,32 @@
 procedure calls) protocol in a transport-independent manner.  It supports both
 IPv4 and IPv6.  ONC RPC is notably used by the network file system (NFS).")
     (license bsd-3)))
+
+(define-public rpcbind
+  (package
+    (name "rpcbind")
+    (version "0.2.3")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://sourceforge/" name "/" name "/"
+                          version "/"
+                          name "-" version ".tar.bz2"))
+      (sha256
+       (base32
+        "0yyjzv4161rqxrgjcijkrawnk55rb96ha0pav48s03l2klx855wq"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags
+       `("--with-systemdsystemunitdir=no")))
+    (inputs
+     `(("libtirpc" ,libtirpc)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "http://rpcbind.sourceforge.net/")
+    (synopsis "Server to convert RPC program numbers into universal addresses")
+    (description
+     "@command{Rpcbind} is a server that converts RPC program numbers into
+universal addresses.")
+    (license bsd-3)))
+
diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm
index 6ae1275c96..8474904265 100644
--- a/gnu/packages/openstack.scm
+++ b/gnu/packages/openstack.scm
@@ -237,31 +237,42 @@ tested on Python version 3.2, 2.7 and 2.6.")
 (define-public python-requests-mock
   (package
     (name "python-requests-mock")
-    (version "0.7.0")
+    (version "1.0.0")
     (source
      (origin
        (method url-fetch)
        (uri (pypi-uri "requests-mock" version))
        (sha256
         (base32
-         "0s6mrpiv2w0km39qvl1pq2d56xblnm57p369qdp5j1a55ncica7f"))))
+         "0gcjjwsckhqixyffflc54i59x41jnbb37bli077vabii1bjmkin6"))))
     (build-system python-build-system)
     (propagated-inputs
-      `(("python-requests" ,python-requests)
-        ("python-six" ,python-six)))
+     `(("python-requests" ,python-requests)
+       ("python-six" ,python-six)))
     (inputs
-      `(("python-mock" ,python-mock)
-        ("python-pbr" ,python-pbr)
-        ("python-setuptools" ,python-setuptools)))
+     `(("python-pbr" ,python-pbr)))
+    (native-inputs
+     `(("python-discover" ,python-discover)
+       ("python-fixtures" ,python-fixtures)
+       ("python-mock" ,python-mock)
+       ("python-sphinx" ,python-sphinx)
+       ("python-testrepository" ,python-testrepository)
+       ("python-testtools" ,python-testtools)))
     (home-page "https://requests-mock.readthedocs.org/")
     (synopsis "Mock out responses from the requests package")
     (description
       "This module provides a building block to stub out the HTTP requests
 portions of your testing code.")
-    (license asl2.0)))
+    (license asl2.0)
+    (properties `((python2-variant . ,(delay python2-requests-mock))))))
 
 (define-public python2-requests-mock
-  (package-with-python2 python-requests-mock))
+  (let ((base (package-with-python2
+                (strip-python2-variant python-requests-mock))))
+    (package (inherit base)
+      (native-inputs
+       `(("python2-setuptools" ,python2-setuptools)
+         ,@(package-native-inputs base))))))
 
 (define-public python-stevedore
   (package
diff --git a/gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch b/gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch
new file mode 100644
index 0000000000..ccece0f466
--- /dev/null
+++ b/gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch
@@ -0,0 +1,59 @@
+From a4b093f7366fdb429ca1781144d3985fa50d0fbb Mon Sep 17 00:00:00 2001
+From: Julien Grall <julien.grall@linaro.org>
+Date: Tue, 17 Mar 2015 16:00:34 +0000
+Subject: [PATCH] libfdt: Add missing functions to shared library
+
+The commit 4e76ec7 "libfdt: Add fdt_next_subnode() to permit easy
+subnode iteration" adds new functions (fdt_{first,next}_subnode) but
+forgot to mark them as 'global' in the shared library.
+
+Signed-off-by: Julien Grall <julien.grall@linaro.org>
+---
+ libfdt/version.lds | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/libfdt/version.lds b/libfdt/version.lds
+index 80b322b..941208e 100644
+--- a/libfdt/version.lds
++++ b/libfdt/version.lds
+@@ -54,6 +54,8 @@ LIBFDT_1.2 {
+ 		fdt_get_property_by_offset;
+ 		fdt_getprop_by_offset;
+ 		fdt_next_property_offset;
++		fdt_first_subnode;
++		fdt_next_subnode;
+ 
+ 	local:
+ 		*;
+From f58799be130e27cc729cb2d45566daa0bb3b8605 Mon Sep 17 00:00:00 2001
+From: David Gibson <david@gibson.dropbear.id.au>
+Date: Tue, 1 Dec 2015 12:55:21 +1100
+Subject: [PATCH] libfdt: Add some missing symbols to version.lds
+
+Several functions in the header file were missing from the version.lds
+script, meaning that they couldn't be used from a libfdt shared library.
+
+Reported by Ken Aaker, via github issue tracker.
+
+Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
+---
+ libfdt/version.lds | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/libfdt/version.lds b/libfdt/version.lds
+index f19f157..1f4e1ea 100644
+--- a/libfdt/version.lds
++++ b/libfdt/version.lds
+@@ -57,6 +57,10 @@ LIBFDT_1.2 {
+ 		fdt_next_property_offset;
+ 		fdt_first_subnode;
+ 		fdt_next_subnode;
++		fdt_address_cells;
++		fdt_size_cells;
++		fdt_stringlist_contains;
++		fdt_resize;
+ 
+ 	local:
+ 		*;
+-- 
+2.8.1
diff --git a/gnu/packages/patches/fossil-test-fixes.patch b/gnu/packages/patches/fossil-test-fixes.patch
deleted file mode 100644
index e6c9f3dd74..0000000000
--- a/gnu/packages/patches/fossil-test-fixes.patch
+++ /dev/null
@@ -1,189 +0,0 @@
-From upstream commit https://www.fossil-scm.org/fossil/info/19c216391a0ad79e
-
---- fossil-src-1.34/test/file1.test
-+++ fossil-src-1.34/test/file1.test
-@@ -15,10 +15,12 @@
- #
- ############################################################################
- #
- # File utilities
- #
-+
-+repo_init
- 
- proc simplify-name {testname args} {
-   set i 1
-   foreach {path result} $args {
-     fossil test-simplify-name $path
-@@ -65,10 +67,13 @@
- 
- if {$::tcl_platform(os)=="Windows NT"} {
-   simplify-name 108 //?/a:/a/b a:/a/b //?/UNC/a/b //a/b //?/ {}
-   simplify-name 109 \\\\?\\a:\\a\\b a:/a/b \\\\?\\UNC\\a\\b //a/b \\\\?\\ {}
- }
-+
-+# This is needed because we are now running outside of the Fossil checkout.
-+file mkdir file1; cd file1
- 
- # Those directories are only needed for the testcase being able to "--chdir" to it.
- file mkdir test1
- file mkdir test1/test2
-
-From upstream commit https://www.fossil-scm.org/fossil/info/ad6de6383391bd4d
- 
---- fossil-src-1.34/test/utf.test
-+++ fossil-src-1.34/test/utf.test
-@@ -39,26 +39,29 @@
-     test utf-check-$testname.$i {$::RESULT eq $result}
-     incr i
-   }
- }
- 
-+unset -nocomplain enc
- array set enc [list     \
-       0 binary          \
-       1 binary          \
-       2 unicode         \
-       3 unicode-reverse \
- ]
- 
-+unset -nocomplain bom
- array set bom [list                                         \
-       0 ""                                                  \
-       1 \xEF\xBB\xBF                                        \
-       2 [expr {$tcl_platform(byteOrder) eq "littleEndian" ? \
-             "\xFF\xFE" : "\xFE\xFF"}]                       \
-       3 [expr {$tcl_platform(byteOrder) eq "littleEndian" ? \
-             "\xFE\xFF" : "\xFF\xFE"}]                       \
- ]
- 
-+unset -nocomplain data
- array set data [list                          \
-       0 ""                                    \
-       1 \r                                    \
-       2 \n                                    \
-       3 \r\n                                  \
-@@ -239,10 +242,11 @@
-     178 \xF4\x90\x80\x80\r                    \
-     179 \xF4\x90\x80\x80\n                    \
-     180 \xF4\x90\x80\x80\r\n                  \
- ]
- 
-+unset -nocomplain extraData
- array set extraData [list                     \
-       0 ""                                    \
-       1 Z                                     \
- ]
-
-Backport from upstream https://www.fossil-scm.org/fossil/info/60285f5876512817
-with additional non-zero exit in case of failures.
-
---- fossil-src-1.34/test/merge6.test
-+++ fossil-src-1.34/test/merge6.test
-@@ -62,6 +62,6 @@
- fossil ls
- 
- test merge_multi-4 {[normalize_result] eq {f1
- f2
- f3
--f4}}
-+f4}} knownBug
-
---- fossil-src-1.34/test/merge_renames.test
-+++ fossil-src-1.34/test/merge_renames.test
-@@ -156,13 +156,13 @@
- }
- 
- if {$deletes!=0} {
-     # failed
-     protOut "Error, the merge should not delete any file"
--    test merge_renames-2 0
-+    test merge_renames-3 0
- } else {
--    test merge_renames-2 1
-+    test merge_renames-3 1
- }
- 
- ######################################
- #  Test 4                            #
- #  Reported: Ticket [67176c3aa4]     #
-@@ -198,14 +198,14 @@
- 
- fossil ls
- 
- test merge_renames-5 {[normalize_result] eq {f1
- f2
--f3}}
-+f3}} knownBug
- 
- ######################################
- #
- # Tests for troubles not specifically linked with renames but that I'd like to
- # write:
- #  [c26c63eb1b] - 'merge --backout' does not handle conflicts properly
- #  [953031915f] - Lack of warning when overwriting extra files
- #  [4df5f38f1e] - Troubles merging a file delete with a file change
-
---- fossil-src-1.34/test/tester.tcl
-+++ fossil-src-1.34/test/tester.tcl
-@@ -58,10 +58,18 @@
-   set VERBOSE 1
-   set argv [lreplace $argv $i $i]
- } else {
-   set VERBOSE 0
- }
-+
-+set i [lsearch $argv -strict]
-+if {$i>=0} {
-+  set STRICT 1
-+  set argv [lreplace $argv $i $i]
-+} else {
-+  set STRICT 0
-+}
- 
- if {[llength $argv]==0} {
-   foreach f [lsort [glob $testdir/*.test]] {
-     set base [file root [file tail $f]]
-     lappend argv $base
-@@ -327,20 +335,30 @@
- }
- 
- # Perform a test
- #
- set test_count 0
--proc test {name expr} {
-+proc test {name expr {constraints ""}} {
-   global bad_test test_count
-   incr test_count
-+  set knownBug [expr {"knownBug" in $constraints}]
-   set r [uplevel 1 [list expr $expr]]
-   if {$r} {
--    protOut "test $name OK"
-+    if {$knownBug && !$::STRICT} {
-+      protOut "test $name OK (knownBug)?"
-+    } else {
-+      protOut "test $name OK"
-+    }
-   } else {
--    protOut "test $name FAILED!"
--    lappend bad_test $name
--    if {$::HALT} exit
-+    if {$knownBug && !$::STRICT} {
-+      protOut "test $name FAILED (knownBug)!"
-+    } else {
-+      protOut "test $name FAILED!"
-+      if {$::VERBOSE} {protOut "RESULT: $RESULT"}
-+      lappend bad_test $name
-+      if {$::HALT} exit
-+    }
-   }
- }
- set bad_test {}
- 
- # Return a random string N characters long.
-@@ -445,4 +455,5 @@
- protOut "***** Final result: $nErr errors out of $test_count tests"
- if {$nErr>0} {
-   protOut "***** Failures: $bad_test"
-+  exit 1
- }
diff --git a/gnu/packages/patches/icedtea-remove-overrides.patch b/gnu/packages/patches/icedtea-remove-overrides.patch
deleted file mode 100644
index e4d68a9e58..0000000000
--- a/gnu/packages/patches/icedtea-remove-overrides.patch
+++ /dev/null
@@ -1,291 +0,0 @@
-Upstream patch:
-http://icedtea.classpath.org/hg/icedtea6/rev/60be25a84f2d
-
-Fixes build failure:
-http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=2954
-
-Changes to the files 'NEWS' and 'ChangeLog' are omitted here.
-
-# HG changeset patch
-# User Andrew John Hughes <gnu.andrew@redhat.com>
-# Date 1463144538 -3600
-# Node ID 60be25a84f2dd2bce8ff277cc3854cca1b3f7931
-# Parent  c23ceebb80a19a33316f1e743eb93bdf79aac220
-PR2954: ecj/override.patch is missing new @Overrides in RMIJRMPServerImpl.java
-
-2016-05-13  Andrew John Hughes  <gnu.andrew@redhat.com>
-
-	PR2954: ecj/override.patch is missing new
-	@Overrides in RMIJRMPServerImpl.java
-	* patches/ecj/override.patch:
-	Add cases in RMIJRMPServerImpl and others
-	which show up when source/target 5 is
-	used in the rt-class-files pre-build.
-	* patches/openjdk/8014205-blank_swing_dialogs_windows.patch:
-	Remove addition of @Override.
-
-diff -r c23ceebb80a1 -r 60be25a84f2d patches/ecj/override.patch
---- a/patches/ecj/override.patch	Sun May 08 21:28:21 2016 +0100
-+++ b/patches/ecj/override.patch	Fri May 13 14:02:18 2016 +0100
-@@ -362,3 +362,240 @@
-              public Class<?> run() {
-                  try {
-                      ReflectUtil.checkPackageAccess(className);
-+diff -r 545db1dd8c2a src/share/classes/com/sun/jmx/interceptor/DefaultMBeanServerInterceptor.java
-+--- openjdk-ecj/jdk/src/share/classes/com/sun/jmx/interceptor/DefaultMBeanServerInterceptor.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/com/sun/jmx/interceptor/DefaultMBeanServerInterceptor.java	Thu May 12 01:30:54 2016 +0100
-+@@ -1870,7 +1870,6 @@
-+ 
-+     private ModifiableClassLoaderRepository getInstantiatorCLR() {
-+         return AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
-+-            @Override
-+             public ModifiableClassLoaderRepository run() {
-+                 return instantiator != null ? instantiator.getClassLoaderRepository() : null;
-+             }
-+diff -r 545db1dd8c2a src/share/classes/com/sun/media/sound/Platform.java
-+--- openjdk-ecj/jdk/src/share/classes/com/sun/media/sound/Platform.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/com/sun/media/sound/Platform.java	Thu May 12 01:30:54 2016 +0100
-+@@ -160,7 +160,6 @@
-+         try {
-+             // load the main library
-+             AccessController.doPrivileged(new PrivilegedAction<Void>() {
-+-                @Override
-+                 public Void run() {
-+                     System.loadLibrary(libNameMain);
-+                     return null;
-+@@ -182,7 +181,6 @@
-+             final String lib = st.nextToken();
-+             try {
-+                 AccessController.doPrivileged(new PrivilegedAction<Void>() {
-+-                    @Override
-+                     public Void run() {
-+                         System.loadLibrary(lib);
-+                         return null;
-+diff -r 545db1dd8c2a src/share/classes/java/awt/EventQueue.java
-+--- openjdk-ecj/jdk/src/share/classes/java/awt/EventQueue.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/java/awt/EventQueue.java	Thu May 12 01:30:54 2016 +0100
-+@@ -190,7 +190,6 @@
-+                     EventQueue.invokeAndWait(source, r);
-+                 }
-+ 
-+-                @Override
-+                 public long getMostRecentEventTime(EventQueue eventQueue) {
-+                     return eventQueue.getMostRecentEventTimeImpl();
-+                 }
-+diff -r 545db1dd8c2a src/share/classes/java/io/ObjectInputStream.java
-+--- openjdk-ecj/jdk/src/share/classes/java/io/ObjectInputStream.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/java/io/ObjectInputStream.java	Thu May 12 01:30:54 2016 +0100
-+@@ -3571,7 +3571,6 @@
-+     }
-+     static {
-+         SharedSecrets.setJavaObjectInputStreamAccess(new JavaObjectInputStreamAccess() {
-+-            @Override
-+             public void setValidator(ObjectInputStream ois, ObjectStreamClassValidator validator) {
-+                 ObjectInputStream.setValidator(ois, validator);
-+             }
-+diff -r 545db1dd8c2a src/share/classes/java/rmi/server/RemoteObjectInvocationHandler.java
-+--- openjdk-ecj/jdk/src/share/classes/java/rmi/server/RemoteObjectInvocationHandler.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/java/rmi/server/RemoteObjectInvocationHandler.java	Thu May 12 01:30:54 2016 +0100
-+@@ -64,7 +64,6 @@
-+         final String propName = "sun.rmi.server.invocationhandler.allowFinalizeInvocation";
-+         String allowProp = java.security.AccessController.doPrivileged(
-+             new PrivilegedAction<String>() {
-+-                @Override
-+                 public String run() {
-+                     return System.getProperty(propName);
-+                 }
-+diff -r 545db1dd8c2a src/share/classes/sun/awt/image/SunVolatileImage.java
-+--- openjdk-ecj/jdk/src/share/classes/sun/awt/image/SunVolatileImage.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/sun/awt/image/SunVolatileImage.java	Thu May 12 01:30:54 2016 +0100
-+@@ -262,7 +262,6 @@
-+      *
-+      * @see sun.java2d.DestSurfaceProvider#getDestSurface
-+      */
-+-    @Override
-+     public Surface getDestSurface() {
-+         return volSurfaceManager.getPrimarySurfaceData();
-+     }
-+diff -r 545db1dd8c2a src/share/classes/sun/java2d/SunGraphics2D.java
-+--- openjdk-ecj/jdk/src/share/classes/sun/java2d/SunGraphics2D.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/sun/java2d/SunGraphics2D.java	Thu May 12 01:30:54 2016 +0100
-+@@ -3294,7 +3294,6 @@
-+      *
-+      * @see sun.java2d.DestSurfaceProvider#getDestSurface
-+      */
-+-    @Override
-+     public Surface getDestSurface() {
-+         return surfaceData;
-+     }
-+diff -r 545db1dd8c2a src/share/classes/sun/rmi/server/UnicastServerRef.java
-+--- openjdk-ecj/jdk/src/share/classes/sun/rmi/server/UnicastServerRef.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/sun/rmi/server/UnicastServerRef.java	Thu May 12 01:30:54 2016 +0100
-+@@ -630,12 +630,10 @@
-+             this.callID = callID;
-+         }
-+ 
-+-        @Override
-+         public void validateDescriptor(ObjectStreamClass descriptor) {
-+             descriptorCheck.check(method, descriptor, parameterIndex, callID);
-+         }
-+ 
-+-        @Override
-+         public void checkProxyInterfaceNames(String[] ifaces) {
-+             descriptorCheck.checkProxyClass(method, ifaces, parameterIndex, callID);
-+         }
-+diff -r 545db1dd8c2a src/share/classes/sun/rmi/transport/Transport.java
-+--- openjdk-ecj/jdk/src/share/classes/sun/rmi/transport/Transport.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/sun/rmi/transport/Transport.java	Thu May 12 01:30:54 2016 +0100
-+@@ -133,7 +133,6 @@
-+      */
-+     private static void setContextClassLoader(final ClassLoader ccl) {
-+         AccessController.doPrivileged(new PrivilegedAction<Void> () {
-+-                @Override
-+                 public Void run() {
-+                     Thread.currentThread().setContextClassLoader(ccl);
-+                     return null;
-+diff -r 545db1dd8c2a src/share/classes/sun/rmi/transport/tcp/TCPTransport.java
-+--- openjdk-ecj/jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/sun/rmi/transport/tcp/TCPTransport.java	Thu May 12 01:30:54 2016 +0100
-+@@ -676,7 +676,6 @@
-+                           connectionCount.incrementAndGet() +
-+                           ")-" + remoteHost);
-+                 AccessController.doPrivileged(new PrivilegedAction<Void>() {
-+-                    @Override
-+                     public Void run() {
-+                         run0();
-+                         return null;
-+diff -r 545db1dd8c2a src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java
-+--- openjdk-ecj/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/solaris/classes/sun/java2d/opengl/GLXGraphicsConfig.java	Thu May 12 01:30:54 2016 +0100
-+@@ -92,7 +92,6 @@
-+         return this;
-+     }
-+ 
-+-    @Override
-+     public SurfaceData createManagedSurface(int w, int h, int transparency) {
-+         return GLXSurfaceData.createData(this, w, h,
-+                                          getColorModel(transparency),
-+@@ -165,12 +164,10 @@
-+      * Returns true if the provided capability bit is present for this config.
-+      * See OGLContext.java for a list of supported capabilities.
-+      */
-+-    @Override
-+     public final boolean isCapPresent(int cap) {
-+         return ((oglCaps.getCaps() & cap) != 0);
-+     }
-+ 
-+-    @Override
-+     public final long getNativeConfigInfo() {
-+         return pConfigInfo;
-+     }
-+@@ -180,7 +177,6 @@
-+      *
-+      * @see sun.java2d.pipe.hw.BufferedContextProvider#getContext
-+      */
-+-    @Override
-+     public final OGLContext getContext() {
-+         return context;
-+     }
-+@@ -394,7 +390,6 @@
-+      *
-+      * @see sun.java2d.pipe.hw.AccelGraphicsConfig#createCompatibleVolatileImage
-+      */
-+-    @Override
-+     public VolatileImage
-+         createCompatibleVolatileImage(int width, int height,
-+                                       int transparency, int type)
-+@@ -434,17 +429,14 @@
-+      *
-+      * @see sun.java2d.pipe.hw.AccelGraphicsConfig#getContextCapabilities
-+      */
-+-    @Override
-+     public ContextCapabilities getContextCapabilities() {
-+         return oglCaps;
-+     }
-+ 
-+-    @Override
-+     public void addDeviceEventListener(AccelDeviceEventListener l) {
-+         AccelDeviceEventNotifier.addListener(l, screen.getScreen());
-+     }
-+ 
-+-    @Override
-+     public void removeDeviceEventListener(AccelDeviceEventListener l) {
-+         AccelDeviceEventNotifier.removeListener(l);
-+     }
-+diff -r 545db1dd8c2a src/share/classes/com/sun/jmx/mbeanserver/JmxMBeanServer.java
-+--- openjdk-ecj/jdk/src/share/classes/com/sun/jmx/mbeanserver/JmxMBeanServer.java	Wed May 04 23:23:55 2016 +0100
-++++ openjdk-ecj/jdk/src/share/classes/com/sun/jmx/mbeanserver/JmxMBeanServer.java	Thu May 12 01:51:42 2016 +0100
-+@@ -236,7 +236,6 @@
-+         final MBeanInstantiator fInstantiator = instantiator;
-+         this.secureClr = new
-+             SecureClassLoaderRepository(AccessController.doPrivileged(new PrivilegedAction<ClassLoaderRepository>() {
-+-                @Override
-+                 public ClassLoaderRepository run() {
-+                     return fInstantiator.getClassLoaderRepository();
-+                 }
-+@@ -1257,7 +1256,6 @@
-+         ClassLoader myLoader = outerShell.getClass().getClassLoader();
-+         final ModifiableClassLoaderRepository loaders = AccessController.doPrivileged(new PrivilegedAction<ModifiableClassLoaderRepository>() {
-+ 
-+-            @Override
-+             public ModifiableClassLoaderRepository run() {
-+                 return instantiator.getClassLoaderRepository();
-+             }
-+diff -r b72e7b89dda9 src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java
-+--- openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java	Thu Sep 08 11:00:33 2011 -0700
-++++ openjdk-ecj/jdk/src/share/classes/javax/management/remote/rmi/RMIJRMPServerImpl.java	Thu May 12 16:39:37 2016 +0100
-+@@ -227,17 +227,14 @@
-+             allowedTypes = credentialsTypes;
-+         }
-+ 
-+-        @Override
-+         public String getVersion() throws RemoteException {
-+             return impl.getVersion();
-+         }
-+ 
-+-        @Override
-+         public RMIConnection newClient(Object credentials) throws IOException {
-+             return impl.newClient(credentials);
-+         }
-+ 
-+-        @Override
-+         public void check(Method method, ObjectStreamClass descriptor,
-+                 int paramIndex, int callID) {
-+ 
-+@@ -247,7 +244,6 @@
-+             }
-+         }
-+ 
-+-        @Override
-+         public void checkProxyClass(Method method, String[] ifaces,
-+                 int paramIndex, int callID) {
-+             if (ifaces != null && ifaces.length > 0) {
-+@@ -259,7 +255,6 @@
-+             }
-+         }
-+ 
-+-        @Override
-+         public void end(int callID) {
-+             /* Do nothing */
-+         }
-diff -r c23ceebb80a1 -r 60be25a84f2d patches/openjdk/8014205-blank_swing_dialogs_windows.patch
---- a/patches/openjdk/8014205-blank_swing_dialogs_windows.patch	Sun May 08 21:28:21 2016 +0100
-+++ b/patches/openjdk/8014205-blank_swing_dialogs_windows.patch	Fri May 13 14:02:18 2016 +0100
-@@ -116,7 +116,7 @@
-              {
-                  if (numBands == 3 && !ccm.hasAlpha()) {
-                      imageType = TYPE_3BYTE_BGR;
--@@ -804,6 +801,27 @@
-+@@ -804,6 +801,26 @@
-          }   // else if ((raster instanceof ByteComponentRaster) &&
-      }
-  
-@@ -129,7 +129,6 @@
- +                new PrivilegedAction<Boolean>()
- +        {
- +
--+            @Override
- +            public Boolean run() {
- +                final ClassLoader std = System.class.getClassLoader();
- +
-
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index a3df2dfdf8..f6ea28d927 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -2861,6 +2861,7 @@ and is very extensible.")
        (uri (string-append
              "https://github.com/scikit-learn/scikit-learn/archive/"
              version ".tar.gz"))
+       (file-name (string-append name "-" version ".tar.gz"))
        (sha256
         (base32
          "140skabifgc7lvvj873pnzlwx0ni6q8qkrsyad2ccjb3h8rxzkih"))))
@@ -2893,18 +2894,11 @@ and is very extensible.")
     (description
      "Scikit-learn provides simple and efficient tools for data
 mining and data analysis.")
-    (license license:bsd-3)))
+    (license license:bsd-3)
+    (properties `((python2-variant . ,(delay python2-scikit-learn))))))
 
 (define-public python2-scikit-learn
-  (let ((scikit (package-with-python2 python-scikit-learn)))
-    (package (inherit scikit)
-      (propagated-inputs
-       `(("python2-numpy" ,python2-numpy)
-         ("python2-scipy" ,python2-scipy)
-         ,@(alist-delete
-            "python-numpy"
-            (alist-delete
-             "python-scipy" (package-propagated-inputs scikit))))))))
+  (package-with-python2 (strip-python2-variant python-scikit-learn)))
 
 (define-public python-scikit-image
   (package
@@ -2933,21 +2927,19 @@ mining and data analysis.")
     (synopsis "Image processing in Python")
     (description
      "Scikit-image is a collection of algorithms for image processing.")
-    (license license:bsd-3)))
+    (license license:bsd-3)
+    (properties `((python2-variant . ,(delay python2-scikit-image))))))
 
 (define-public python2-scikit-image
-  (let ((scikit-image (package-with-python2 python-scikit-image)))
+  (let ((scikit-image (package-with-python2
+                        (strip-python2-variant python-scikit-image))))
     (package (inherit scikit-image)
       (native-inputs
        `(("python2-mock" ,python2-mock)
          ,@(package-native-inputs scikit-image)))
       (propagated-inputs
        `(("python2-pytz" ,python2-pytz)
-         ("python2-matplotlib" ,python2-matplotlib)
-         ("python2-numpy" ,python2-numpy)
-         ("python2-scipy" ,python2-scipy)
-         ,@(fold alist-delete (package-propagated-inputs scikit-image)
-                 '("python-matplotlib" "python-numpy" "python-scipy")))))))
+         ,@(package-propagated-inputs scikit-image))))))
 
 (define-public python-redis
   (package
@@ -3319,17 +3311,11 @@ doing the same calculation in Python.  In addition, its multi-threaded
 capabilities can make use of all your cores, which may accelerate
 computations, most specially if they are not memory-bounded (e.g. those using
 transcendental functions).")
-    (license license:expat)))
+    (license license:expat)
+    (properties `((python2-variant . ,(delay python2-numexpr))))))
 
 (define-public python2-numexpr
-  (let ((numexpr (package-with-python2 python-numexpr)))
-    (package (inherit numexpr)
-      ;; Make sure to use special packages for Python 2 instead
-      ;; of those automatically rewritten by package-with-python2.
-      (propagated-inputs
-       `(("python2-numpy" ,python2-numpy)
-         ,@(alist-delete "python-numpy"
-                         (package-propagated-inputs numexpr)))))))
+  (package-with-python2 (strip-python2-variant python-numexpr)))
 
 (define-public python-matplotlib
   (package
@@ -4409,29 +4395,20 @@ without using the configuration machinery.")
 Powerful interactive shells, a browser-based notebook, support for interactive
 data visualization, embeddable interpreters and tools for parallel
 computing.")
-    (license license:bsd-3)))
+    (license license:bsd-3)
+    (properties `((python2-variant . ,(delay python2-ipython))))))
 
 (define-public python2-ipython
-  (let ((ipython (package-with-python2 python-ipython)))
+  (let ((ipython (package-with-python2 (strip-python2-variant python-ipython))))
     (package
       (inherit ipython)
       ;; FIXME: some tests are failing
       (arguments
        `(#:tests? #f ,@(package-arguments ipython)))
-      ;; Make sure we use custom python2-NAME packages.
       ;; FIXME: add pyreadline once available.
-      (propagated-inputs
-       `(("python2-terminado" ,python2-terminado)
-         ,@(alist-delete "python-terminado"
-                         (package-propagated-inputs ipython))))
       (inputs
-       `(("python2-jsonschema" ,python2-jsonschema)
-         ("python2-mock" ,python2-mock)
-         ("python2-matplotlib" ,python2-matplotlib)
-         ("python2-numpy" ,python2-numpy)
-         ("python2-requests" ,python2-requests)
-         ,@(fold alist-delete (package-inputs ipython)
-                 '("python-jsonschema" "python-matplotlib" "python-numpy" "python-requests")))))))
+       `(("python2-mock" ,python2-mock)
+         ,@(package-inputs ipython))))))
 
 (define-public python-isodate
   (package
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index a7eee7c06c..95690fa962 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -20,7 +20,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages qt)
-  #:use-module ((guix licenses) #:select (bsd-3 gpl2 gpl3 lgpl2.1 lgpl2.1+ lgpl3 x11-style))
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build utils)
@@ -206,7 +206,7 @@
     (synopsis "Cross-platform GUI library")
     (description "Qt is a cross-platform application and UI framework for
 developers using C++ or QML, a CSS & JavaScript like language.")
-    (license lgpl2.1)
+    (license license:lgpl2.1)
 
     ;; Qt 4: 'QBasicAtomicPointer' leads to build failures on MIPS;
     ;; see <http://hydra.gnu.org/build/112828>.
@@ -474,12 +474,24 @@ developers using C++ or QML, a CSS & JavaScript like language.")
     (native-search-paths
      (list (search-path-specification
             (variable "QMAKEPATH")
-            (files '("")))))
+            (files '("")))
+           (search-path-specification
+            (variable "QML2_IMPORT_PATH")
+            (files '("qml")))
+           (search-path-specification
+            (variable "QT_PLUGIN_PATH")
+            (files '("plugins")))
+           (search-path-specification
+            (variable "XDG_DATA_DIRS")
+            (files '("share")))
+           (search-path-specification
+            (variable "XDG_CONFIG_DIRS")
+            (files '("etc/xdg")))))
     (home-page "https://www.qt.io/")
     (synopsis "Cross-platform GUI library")
     (description "Qt is a cross-platform application and UI framework for
 developers using C++ or QML, a CSS & JavaScript like language.")
-    (license (list lgpl2.1 lgpl3))))
+    (license (list license:lgpl2.1 license:lgpl3))))
 
 (define-public qtsvg
   (package (inherit qtbase)
@@ -908,7 +920,7 @@ is then compiled to create the bindings extension module.  The SIP Python
 module provides support functions to the automatically generated code.")
     ;; There is a choice between a python like license, gpl2 and gpl3.
     ;; For compatibility with pyqt, we need gpl3.
-    (license gpl3)))
+    (license license:gpl3)))
 
 (define-public python2-sip
   (package (inherit python-sip)
@@ -973,7 +985,7 @@ module provides support functions to the automatically generated code.")
      "PyQt is a set of Python v2 and v3 bindings for the Qt application
 framework.  The bindings are implemented as a set of Python modules and
 contain over 620 classes.")
-    (license gpl3)))
+    (license license:gpl3)))
 
 (define-public python2-pyqt
   (package (inherit python-pyqt)
@@ -1055,7 +1067,7 @@ contain over 620 classes.")
                              "--destdir" lib
                              "--sipdir" sip))))
          %standard-phases)))
-    (license (list gpl2 gpl3)))) ; choice of either license
+    (license (list license:gpl2 license:gpl3)))) ; choice of either license
 
 (define-public qtkeychain
   (package
@@ -1089,4 +1101,4 @@ contain over 620 classes.")
     (description
       "QtKeychain is a Qt library to store passwords and other secret data
 securely.  It will not store any data unencrypted unless explicitly requested.")
-    (license bsd-3)))
+    (license license:bsd-3)))
diff --git a/gnu/packages/smalltalk.scm b/gnu/packages/smalltalk.scm
index 77e033f847..675ca0ce5e 100644
--- a/gnu/packages/smalltalk.scm
+++ b/gnu/packages/smalltalk.scm
@@ -1,6 +1,8 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -18,14 +20,23 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages smalltalk)
-  #:use-module (guix licenses)
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gl)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages libffi)
   #:use-module (gnu packages libsigsegv)
+  #:use-module (gnu packages linux)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages xorg)
   #:use-module (gnu packages zip))
 
 (define-public smalltalk
@@ -63,4 +74,76 @@
      "GNU Smalltalk is a free implementation of the Smalltalk language.  It
 implements the ANSI standard for the language and also includes extra classes
 such as ones for networking and GUI programming.")
-    (license gpl2+)))
+    (license license:gpl2+)))
+
+(define-public squeak-vm
+  (package
+    (name "squeak-vm")
+    (version "4.10.2.2614")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://www.squeakvm.org/unix/release/"
+                           "Squeak-" version "-src.tar.gz"))
+       (sha256
+        (base32
+         "0bpwbnpy2sb4gylchfx50sha70z36bwgdxraym4vrr93l8pd3dix"))
+       (modules '((guix build utils)))
+       (snippet
+        ;; Make builds bit-reproducible.
+        '(begin
+           (substitute* "unix/cmake/verstamp"
+             (("vm_date=.*")
+              "vm_date = \"1970-01-01\";\n")
+             (("ux_version=.*")
+              "ux_version = \"GNU\";\n"))
+           (substitute* "unix/vm/config.cmake"
+             (("\\(VM_BUILD_STRING.*")
+              "(VM_BUILD_STRING \\\"Built with GNU Guix\\\")"))))))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("dbus" ,dbus)
+       ("freetype" ,freetype)
+       ("libffi" ,libffi)
+       ("libxrender" ,libxrender)
+       ("mesa" ,mesa)
+       ("pulseaudio" ,pulseaudio)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f                      ;no check target
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'remove-hardcoded-PATH
+           (lambda _
+             ;; Remove hard-coded FHS PATH entries.
+             (substitute* '("unix/cmake/squeak.in"
+                            "unix/cmake/squeak.sh.in")
+               (("^PATH=.*") ""))
+             #t))
+         (add-after 'unpack 'create-build-dir
+           (lambda _
+             (mkdir "bld")
+             #t))
+         (replace 'configure
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (with-directory-excursion "bld"
+                 (zero?
+                  (system* "../unix/cmake/configure"
+                           (string-append "--prefix=" out)
+                           "--without-quartz"))))))
+         (replace 'build
+           (lambda _
+             (with-directory-excursion "bld"
+               (zero? (system* "make"))))))))
+    (synopsis "Smalltalk programming language and environment")
+    (description "Squeak is a full-featured implementation of the Smalltalk
+programming language and environment based on (and largely compatible with)
+the original Smalltalk-80 system.  Squeak has very powerful 2- and 3-D
+graphics, sound, video, MIDI, animation and other multimedia capabilities.  It
+also includes a customisable framework for creating dynamic HTTP servers and
+interactively extensible Web sites.")
+    (home-page "http://www.squeakvm.org")
+    (license license:x11)))
diff --git a/gnu/packages/u-boot.scm b/gnu/packages/u-boot.scm
new file mode 100644
index 0000000000..15b24a6056
--- /dev/null
+++ b/gnu/packages/u-boot.scm
@@ -0,0 +1,139 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
+;;; Copyright © 2016 David Craven <david@craven.ch>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages u-boot)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix download)
+  #:use-module (guix packages)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (gnu packages)
+  #:use-module ((gnu packages algebra) #:select (bc))
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages cross-base)
+  #:use-module (gnu packages flex)
+  #:use-module (gnu packages python))
+
+(define-public dtc
+  (package
+    (name "dtc")
+    (version "1.4.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://www.kernel.org/pub/software/utils/dtc/"
+                    "dtc-" version ".tar.xz"))
+              (sha256
+               (base32
+                "155v52palf5fwfcnq696s41whjk0a5dqx98b7maqzdn7xbc2m6bp"))
+              (patches
+                (search-patches "dtc-add-missing-symbols-to-lds.patch"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("bison" ,bison)
+       ("flex" ,flex)))
+    (arguments
+     `(#:make-flags
+       (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out")))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-paths
+           (lambda _
+             (substitute* "Makefile"
+               (("/usr/bin/install") "install"))
+             (substitute* "Makefile"
+               (("PREFIX = \\$\\(HOME\\)") ""))))
+         (delete 'configure))))
+    (home-page "https://www.devicetree.org")
+    (synopsis "Compiles device tree source files")
+    (description "@command{dtc} compiles device tree source files to device
+tree binary files. These are board description files used by Linux and BSD.")
+    (license license:gpl2+)))
+
+(define u-boot
+  (package
+    (name "u-boot")
+    (version "2016.07")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "ftp://ftp.denx.de/pub/u-boot/"
+                    "u-boot-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "0lqj4ckmfqiap8mc6z2d5albs3g2h5mzccbn60hsgxhabhibfkwp"))))
+    (native-inputs
+     `(("bc" ,bc)
+       ("dtc" ,dtc)
+       ("python-2" ,python-2)))
+    (build-system  gnu-build-system)
+    (home-page "http://www.denx.de/wiki/U-Boot/")
+    (synopsis "ARM bootloader")
+    (description "U-Boot is a bootloader used mostly for ARM boards. It
+also initializes the boards (RAM etc).")
+    (license license:gpl2+)))
+
+(define (make-u-boot-package board triplet)
+  "Returns a u-boot package for BOARD cross-compiled for TRIPLET."
+  (package
+    (inherit u-boot)
+    (name (string-append "u-boot-" (string-downcase board)))
+    (native-inputs
+     `(("cross-gcc" ,(cross-gcc triplet))
+       ("cross-binutils" ,(cross-binutils triplet))
+       ,@(package-native-inputs u-boot)))
+    (arguments
+     `(#:test-target "test"
+       #:make-flags
+       (list "HOSTCC=gcc" (string-append "CROSS_COMPILE=" ,triplet "-"))
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           (lambda* (#:key outputs make-flags #:allow-other-keys)
+             (let ((config-name (string-append ,board "_defconfig")))
+               (if (file-exists? (string-append "configs/" config-name))
+                   (zero? (apply system* "make" `(,@make-flags ,config-name)))
+                   (begin
+                     (display "Invalid board name. Valid board names are:")
+                     (let ((dir (opendir "configs"))
+                           (suffix-length (string-length "_defconfig")))
+                       (do ((file-name (readdir dir) (readdir dir)))
+                           ((eof-object? file-name))
+                         (when (string-suffix? "_defconfig" file-name)
+                           (format #t "- ~A\n"
+                                   (string-drop-right file-name suffix-length))))
+                       (closedir dir))
+                     #f)))))
+         (replace 'install
+           (lambda* (#:key outputs make-flags #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                    (libexec (string-append out "/libexec"))
+                    (uboot-files (find-files "." ".*\\.(bin|efi|spl)$")))
+               (mkdir-p libexec)
+               (for-each
+                (lambda (file)
+                  (let ((target-file (string-append libexec "/" file)))
+                    (mkdir-p (dirname target-file))
+                    (copy-file file target-file)))
+                uboot-files)))))))))
+
+(define-public u-boot-vexpress_ca9x4
+  (make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf"))
+
+(define-public u-boot-malta
+  (make-u-boot-package "malta" "mips64el-linux-gnuabi64"))
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index c39368d9ad..34cfedf4ed 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2015 Kyle Meyer <kyle@kyleam.com>
 ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
+;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,10 +28,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages version-control)
-  #:use-module ((guix licenses)
-                #:select (asl2.0 bsd-2 bsd-3
-                          gpl1+ gpl2 gpl2+ gpl3+ lgpl2.1
-                          public-domain x11-style))
+  #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils)
   #:use-module (guix packages)
   #:use-module (guix download)
@@ -108,7 +106,7 @@
      "GNU Bazaar is a version control system that allows you to record
 changes to project files over time.  It supports both a distributed workflow
 as well as the classic centralized workflow.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public git
   (package
@@ -292,7 +290,7 @@ as well as the classic centralized workflow.")
    (description
     "Git is a free distributed version control system designed to handle
 everything from small to very large projects with speed and efficiency.")
-   (license gpl2)
+   (license license:gpl2)
    (home-page "http://git-scm.com/")))
 
 (define-public libgit2
@@ -336,7 +334,7 @@ everything from small to very large projects with speed and efficiency.")
 provided as a re-entrant linkable library with a solid API, allowing you to
 write native speed custom Git applications in any language with bindings.")
     ;; GPLv2 with linking exception
-    (license gpl2)))
+    (license license:gpl2)))
 
 (define-public cgit
   (package
@@ -397,7 +395,7 @@ write native speed custom Git applications in any language with bindings.")
     (description
      "CGit is an attempt to create a fast web interface for the Git SCM, using
 a built-in cache to decrease server I/O pressure.")
-    (license gpl2)))
+    (license license:gpl2)))
 
 (define-public shflags
   (package
@@ -441,7 +439,7 @@ different versions of getopt on various OSes make writing portable shell
 scripts difficult.  shFlags instead provides an API that doesn't change across
 shell and OS versions so the script writer can be confident that the script
 will work.")
-    (license lgpl2.1)))
+    (license license:lgpl2.1)))
 
 (define-public git-flow
   (package
@@ -484,7 +482,7 @@ management strategy that helps developers keep track of features, hotfixes,
 and releases in bigger software projects.  The git-flow library of git
 subcommands helps automate some parts of the flow to make working with it a
 lot easier.")
-    (license bsd-2)))
+    (license license:bsd-2)))
 
 (define-public git-test-sequence
   (let ((commit "48e5a2f5a13a5f30452647237e23362b459b9c76"))
@@ -519,7 +517,7 @@ lot easier.")
        "git-test-sequence is similar to an automated git bisect except it’s
 linear.  It will test every change between two points in the DAG.  It will
 also walk each side of a merge and test those changes individually.")
-      (license (x11-style "file://LICENSE")))))
+      (license (license:x11-style "file://LICENSE")))))
 
 (define-public gitolite
   (package
@@ -575,7 +573,7 @@ also walk each side of a merge and test those changes individually.")
     (description
      "Gitolite is an access control layer on top of Git, providing fine access
 control to Git repositories.")
-    (license gpl2)))
+    (license license:gpl2)))
 
 (define-public mercurial
   (package
@@ -602,7 +600,7 @@ control to Git repositories.")
      "Mercurial is a free, distributed source control management tool.
 It efficiently handles projects of any size
 and offers an easy and intuitive interface.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public neon
   (package
@@ -650,7 +648,7 @@ abstract interface to parsing XML using libxml2 or expat, and wrappers for
 simplifying handling XML HTTP response bodies;
 WebDAV metadata support, wrappers for PROPFIND and PROPPATCH to simplify
 property manipulation.")
-    (license gpl2+))) ; for documentation and tests; source under lgpl2.0+
+    (license license:gpl2+))) ; for documentation and tests; source under lgpl2.0+
 
 (define-public subversion
   (package
@@ -717,7 +715,7 @@ centralized version control system characterized by its
 reliability as a safe haven for valuable data; the simplicity of its model and
 usage; and its ability to support the needs of a wide variety of users and
 projects, from individuals to large-scale enterprise operations.")
-    (license asl2.0)))
+    (license license:asl2.0)))
 
 (define-public rcs
   (package
@@ -740,7 +738,7 @@ file-by-file basis, in contrast to subsequent version control systems such as
 CVS, Subversion, and Git.  This can make it suitable for system
 administration files, for example, which are often inherently local to one
 machine.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 (define-public cvs
   (package
@@ -768,7 +766,7 @@ machine.")
 Configuration Management (SCM).  Using it, you can record the history of
 sources files, and documents.  It fills a similar role to the free software
 RCS, PRCS, and Aegis packages.")
-    (license gpl1+)))
+    (license license:gpl1+)))
 
 (define-public cvs-fast-export
   (package
@@ -807,7 +805,7 @@ The program can also produce a visualization of the resulting commit directed
 acyclic graph (DAG) in the input format of @uref{http://www.graphviz.org,
 Graphviz}.  The package also includes @command{cvssync}, a tool for mirroring
 masters from remote CVS hosts.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public vc-dwim
   (package
@@ -833,7 +831,7 @@ using version control at the same time, for example by printing a reminder
 when a file change has been described in the ChangeLog but the file has not
 been added to the VC.  vc-chlog scans changed files and generates
 standards-compliant ChangeLog entries based on the changes that it detects.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 (define-public diffstat
   (package
@@ -854,7 +852,7 @@ standards-compliant ChangeLog entries based on the changes that it detects.")
      "Diffstat reads the output of 'diff' and displays a histogram of the
 insertions, deletions, and modifications per-file.  It is useful for reviewing
 large, complex patch files.")
-    (license (x11-style "file://COPYING"))))
+    (license (license:x11-style "file://COPYING"))))
 
 (define-public cssc
   (package
@@ -896,7 +894,7 @@ large, complex patch files.")
     (description  "GNU CSSC provides a replacement for the legacy Unix source
 code control system SCCS.  This allows old code still under that system to be
 accessed and migrated on modern systems.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 ;; This package can unfortunately work only in -TEST mode, since Aegis
 ;; requires that it is installed setuid root.
@@ -980,7 +978,7 @@ changes to a program independently, and Aegis coordinates integrating these
 changes back into the master source of the program, with as little disruption
 as possible.  Resolution of contention for source files, a major headache for
 any project with more than one developer, is one of Aegis's major functions.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 (define-public reposurgeon
   (package
@@ -1032,7 +1030,7 @@ and can thus be used to script production of very high-quality conversions
 from Subversion to any supported Distributed Version Control System (DVCS).")
     ;; Most files are distributed under bsd-2, except 'repocutter' which is
     ;; under bsd-3.
-    (license (list bsd-2 bsd-3))))
+    (license (list license:bsd-2 license:bsd-3))))
 
 (define-public tig
   (package
@@ -1058,7 +1056,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).")
      "Tig is an ncurses text user interface for Git, primarily intended as
 a history browser.  It can also stage hunks for commit, or colorize the
 output of the 'git' command.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public findnewest
   (package
@@ -1085,7 +1083,7 @@ output of the 'git' command.")
     (description
      "Recursively find the newest file in a file tree and print its
 modification time.")
-    (license bsd-2)))
+    (license license:bsd-2)))
 
 (define-public myrepos
   (package
@@ -1114,7 +1112,7 @@ modification time.")
 fetching updates) over a collection of version control repositories.  It
 supports a large number of version control systems: Git, Subversion,
 Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity.")
-    (license gpl2+)))
+    (license license:gpl2+)))
 
 (define-public git-annex-remote-hubic
   (package
@@ -1145,42 +1143,21 @@ Mercurial, Bazaar, Darcs, CVS, Fossil, and Veracity.")
     (description
      "This package allows you to use your hubic account as a \"special
 repository\" with git-annex.")
-    (license gpl3+)))
+    (license license:gpl3+)))
 
 (define-public fossil
   (package
     (name "fossil")
-    (version "1.34")
+    (version "1.35")
     (source
      (origin
        (method url-fetch)
-       ;; Upstream source affected by
-       ;; http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20962
        (uri (string-append
-             "https://web.archive.org/web/20160402202958/"
-             "https://www.fossil-scm.org/download/fossil-src-"
-             version ".tar.gz"))
+             "https://www.fossil-scm.org/index.html/uv/download/"
+             "fossil-src-" version ".tar.gz"))
        (sha256
         (base32
-         "17x4vgjcfihwmq195qg32irp50panvjqfpvhqydfvv4ghwzbi9jk"))
-       (modules '((guix build utils)))
-       (snippet
-        '(begin
-           ;; Commit 0a2ebe57 on 2015-08-03 18:35:53 changed output formatting
-           ;; for some commands, but affected tests were not updated.  Use
-           ;; substitute here, which is more concise than patching.
-           (substitute* "test/clean.test"
-             (("NEW ") "NEW    "))
-           (substitute* '("test/revert.test" "test/mv-rm.test")
-             (("REVERTED:") "REVERT  ")
-             (("DELETE:")   "DELETE  ")
-             (("UNMANAGE:") "UNMANAGE "))
-           ;; Fix use of __DATE__ and __TIME__
-           (substitute* "src/main.c"
-             (("Compiled on %s %s") "Compiled")
-             (("__DATE__, __TIME__, ") ""))
-           #t))
-       (patches (list (search-patch "fossil-test-fixes.patch")))))
+         "07ds6rhq69bhydpm9a01mgdhxf88p9b6y5hdnhn8gjc7ba92zyf1"))))
     (build-system gnu-build-system)
     (native-inputs
      `(("tcl" ,tcl)                     ;for configuration only
@@ -1219,5 +1196,32 @@ repository\" with git-annex.")
      "Fossil is a distributed source control management system which supports
 access and administration over HTTP CGI or via a built-in HTTP server.  It has
 a built-in wiki, built-in file browsing, built-in tickets system, etc.")
-    (license (list public-domain        ;src/miniz.c, src/shell.c
-                   bsd-2))))
+    (license (list license:public-domain        ;src/miniz.c, src/shell.c
+                   license:bsd-2))))
+
+(define-public stagit
+  (package
+    (name "stagit")
+    (version "0.4")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://dl.2f30.org/releases/"
+                                  name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0z5r06wqrfnsz24ci4hjqbd62svclvhkgzaq9npsyjcp6jnf7izc"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; No tests
+       #:make-flags (list "CC=gcc"
+                          (string-append "PREFIX=" %output))
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)))) ; No configure script
+    (inputs
+     `(("libgit2" ,libgit2)))
+    (home-page "http://2f30.org")
+    (synopsis "Static git page generator")
+    (description "Stagit creates static pages for git repositories, the results can
+be served with a HTTP file server of your choice.")
+    (license license:expat)))
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 865a9083fa..cb9c767aaa 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
+;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -49,6 +50,7 @@
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages m4)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages python)
@@ -938,7 +940,7 @@ connectivity of the X server running on a particular @code{DISPLAY}.")
 (define-public rofi
   (package
     (name "rofi")
-    (version "1.1.0")
+    (version "1.2.0")
     (source (origin
               (method url-fetch)
               (uri (string-append "https://github.com/DaveDavenport/rofi/"
@@ -946,17 +948,17 @@ connectivity of the X server running on a particular @code{DISPLAY}.")
                                   version "/rofi-" version ".tar.xz"))
               (sha256
                (base32
-                "1l8vl0mh7i0b1ycifqpg6392f5i4qxlv003m126skfk6fnlfq8hn"))))
+                "0xxx0xpxhrhlhi2axq9867zqrhwqavc1qrr833k1xr0pvm5m0aqc"))))
     (build-system gnu-build-system)
     (inputs
-     `(("libx11" ,libx11)
-       ("pango" ,pango)
+     `(("pango" ,pango)
        ("cairo" ,cairo)
        ("glib" ,glib)
        ("startup-notification" ,startup-notification)
        ("libxkbcommon" ,libxkbcommon)
        ("libxcb" ,libxcb)
        ("xcb-util" ,xcb-util)
+       ("xcb-util-xrm" ,xcb-util-xrm)
        ("xcb-util-wm" ,xcb-util-wm)))
     (native-inputs
      `(("pkg-config" ,pkg-config)))
@@ -1021,3 +1023,42 @@ The taskbar includes transparency and color settings for the font, icons,
 border, and background.  It also supports multihead setups, customized mouse
 actions, a built-in clock, a battery monitor and a system tray.")
     (license license:gpl2)))
+
+(define-public xcb-util-xrm
+  (package
+    (name "xcb-util-xrm")
+    (version "1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/Airblader/xcb-util-xrm/releases"
+                    "/download/v" version "/xcb-util-xrm-" version ".tar.bz2"))
+              (sha256
+               (base32
+                "1h5vxwpd37dqfw9yj1l4zd9c5dj30r3g0szgysr6kd7xrqgaq04l"))
+              (modules '((guix build utils)))
+              (snippet
+               ;; Drop bundled m4.
+               '(delete-file-recursively "m4"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("m4" ,m4)
+       ("libx11" ,libx11))) ; for tests
+    (inputs
+     `(("libxcb" ,libxcb)
+       ("xcb-util" ,xcb-util)))
+    (home-page "https://github.com/Airblader/xcb-util-xrm")
+    (synopsis "XCB utility functions for the X resource manager")
+    (description
+     "The XCB util module provides a number of libraries which sit on
+top of libxcb, the core X protocol library, and some of the extension
+libraries.  These experimental libraries provide convenience functions
+and interfaces which make the raw X protocol more usable.  Some of the
+libraries also provide client-side code which is not strictly part of
+the X protocol but which has traditionally been provided by Xlib.
+
+XCB util-xrm module provides the following libraries:
+
+- xrm: utility functions for the X resource manager.")
+    (license license:x11)))