summary refs log tree commit diff
diff options
context:
space:
mode:
authorMark H Weaver <mhw@netris.org>2014-08-20 03:17:56 -0400
committerMark H Weaver <mhw@netris.org>2014-08-20 03:17:56 -0400
commit647cfda83b897d3134394a499e51048a1c123389 (patch)
tree90bd1d70eb0b9b6f1f45efe48c408ec839e86c08
parentcba95006a6129ffe2a29ff9f4ad10549214114a0 (diff)
parent667b2508464374a01db3588504b981ec9266a2ea (diff)
downloadguix-647cfda83b897d3134394a499e51048a1c123389.tar.gz
Merge branch 'master' into core-updates
-rw-r--r--.dir-locals.el13
-rw-r--r--AUTHORS1
-rw-r--r--Makefile.am8
-rw-r--r--THANKS2
-rw-r--r--doc/guix.texi87
-rw-r--r--gnu-system.am12
-rw-r--r--gnu/packages/admin.scm137
-rw-r--r--gnu/packages/apl.scm11
-rw-r--r--gnu/packages/apr.scm12
-rw-r--r--gnu/packages/avrdude.scm58
-rw-r--r--gnu/packages/bittorrent.scm4
-rw-r--r--gnu/packages/cryptsetup.scm1
-rw-r--r--gnu/packages/curl.scm10
-rw-r--r--gnu/packages/emacs.scm236
-rw-r--r--gnu/packages/fonts.scm45
-rw-r--r--gnu/packages/gnunet.scm6
-rw-r--r--gnu/packages/gnupg.scm9
-rw-r--r--gnu/packages/guile.scm4
-rw-r--r--gnu/packages/libftdi.scm6
-rw-r--r--gnu/packages/lightning.scm4
-rw-r--r--gnu/packages/linux-libre-i686.conf366
-rw-r--r--gnu/packages/linux-libre-x86_64.conf377
-rw-r--r--gnu/packages/linux.scm184
-rw-r--r--gnu/packages/lvm.scm62
-rw-r--r--gnu/packages/mail.scm6
-rw-r--r--gnu/packages/mysql.scm6
-rw-r--r--gnu/packages/openssl.scm4
-rw-r--r--gnu/packages/orpheus.scm96
-rw-r--r--gnu/packages/patches/avrdude-fix-libusb.patch256
-rw-r--r--gnu/packages/patches/curl-fix-test172.patch12
-rw-r--r--gnu/packages/patches/flashrom-use-libftdi1.patch70
-rw-r--r--gnu/packages/patches/lm-sensors-hwmon-attrs.patch85
-rw-r--r--gnu/packages/patches/orpheus-cast-errors-and-includes.patch51
-rw-r--r--gnu/packages/patches/texi2html-document-encoding.patch31
-rw-r--r--gnu/packages/patches/texi2html-i18n.patch50
-rw-r--r--gnu/packages/rrdtool.scm75
-rw-r--r--gnu/packages/search.scm4
-rw-r--r--gnu/packages/texinfo.scm41
-rw-r--r--gnu/packages/tor.scm4
-rw-r--r--gnu/packages/version-control.scm4
-rw-r--r--gnu/packages/video.scm66
-rw-r--r--gnu/packages/xorg.scm61
-rw-r--r--gnu/services/ssh.scm1
-rw-r--r--gnu/system.scm31
-rw-r--r--gnu/system/grub.scm2
-rw-r--r--gnu/system/linux-initrd.scm2
-rw-r--r--guix.scm1
-rw-r--r--guix/build/emacs-utils.scm92
-rw-r--r--guix/build/linux-initrd.scm8
-rw-r--r--guix/download.scm2
-rw-r--r--guix/gexp.scm184
-rw-r--r--guix/monad-repl.scm81
-rw-r--r--guix/monads.scm20
-rw-r--r--guix/profiles.scm40
-rw-r--r--guix/scripts/package.scm77
-rw-r--r--guix/ui.scm25
-rw-r--r--po/guix/LINGUAS1
-rw-r--r--po/guix/Makevars3
-rw-r--r--po/guix/cs.po1121
-rw-r--r--po/packages/Makevars3
-rw-r--r--tests/gexp.scm118
-rw-r--r--tests/monads.scm25
-rw-r--r--tests/profiles.scm21
-rw-r--r--tests/ui.scm5
64 files changed, 3815 insertions, 625 deletions
diff --git a/.dir-locals.el b/.dir-locals.el
index 64a680c59f..ce7033757d 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -29,6 +29,10 @@
    (eval . (put 'call-with-compressed-output-port 'scheme-indent-function 2))
    (eval . (put 'call-with-decompressed-port 'scheme-indent-function 2))
    (eval . (put 'signature-case 'scheme-indent-function 1))
+   (eval . (put 'emacs-batch-eval 'scheme-indent-function 0))
+   (eval . (put 'emacs-batch-edit-file 'scheme-indent-function 1))
+   (eval . (put 'emacs-substitute-sexps 'scheme-indent-function 1))
+   (eval . (put 'emacs-substitute-variables 'scheme-indent-function 1))
 
    (eval . (put 'syntax-parameterize 'scheme-indent-function 1))
    (eval . (put 'with-monad 'scheme-indent-function 1))
@@ -36,11 +40,12 @@
    (eval . (put 'mlet 'scheme-indent-function 2))
    (eval . (put 'run-with-store 'scheme-indent-function 1))
 
-   ;; Recognize '~' and '$', as used for gexps, as quotation symbols.  This
-   ;; notably allows '(' in Paredit to not insert a space when the preceding
-   ;; symbol is one of these.
+   ;; Recognize '~', '+', and '$', as used for gexps, as quotation symbols.
+   ;; This notably allows '(' in Paredit to not insert a space when the
+   ;; preceding symbol is one of these.
    (eval . (modify-syntax-entry ?~ "'"))
-   (eval . (modify-syntax-entry ?$ "'"))))
+   (eval . (modify-syntax-entry ?$ "'"))
+   (eval . (modify-syntax-entry ?+ "'"))))
  (emacs-lisp-mode . ((indent-tabs-mode . nil)))
  (texinfo-mode    . ((indent-tabs-mode . nil)
                      (fill-column . 72))))
diff --git a/AUTHORS b/AUTHORS
index 389a5bb456..1ba9798e7e 100644
--- a/AUTHORS
+++ b/AUTHORS
@@ -9,6 +9,7 @@ The fine people listed below have contributed code to GNU Guix (in
 alphabetical order):
 
            Eric Bavier <bavier@member.fsf.org>
+  Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
         Ludovic Courtès <ludo@gnu.org>
            John Darrington <jmd@gnu.org>
         Andreas Enge <andreas@enge.fr>
diff --git a/Makefile.am b/Makefile.am
index ed11bcc7ac..17a676ac54 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -37,6 +37,7 @@ MODULES =					\
   guix/download.scm				\
   guix/git-download.scm				\
   guix/monads.scm				\
+  guix/monad-repl.scm				\
   guix/gexp.scm					\
   guix/profiles.scm				\
   guix/serialization.scm			\
@@ -73,6 +74,7 @@ MODULES =					\
   guix/build/install.scm			\
   guix/build/activation.scm			\
   guix/build/syscalls.scm			\
+  guix/build/emacs-utils.scm			\
   guix/packages.scm				\
   guix/snix.scm					\
   guix/scripts/download.scm			\
@@ -107,9 +109,13 @@ KCONFIGS =					\
   gnu/packages/linux-libre-i686.conf		\
   gnu/packages/linux-libre-x86_64.conf
 
+# Templates, examples.
+EXAMPLES =					\
+  gnu/system/os-config.tmpl
+
 GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go
 
-nobase_dist_guilemodule_DATA = $(MODULES) $(KCONFIGS)
+nobase_dist_guilemodule_DATA = $(MODULES) $(KCONFIGS) $(EXAMPLES)
 nobase_nodist_guilemodule_DATA = $(GOBJECTS) guix/config.scm
 
 # Do we need to provide our own non-broken (srfi srfi-37) module?
diff --git a/THANKS b/THANKS
index 4070eea3d1..95427f9bee 100644
--- a/THANKS
+++ b/THANKS
@@ -7,7 +7,6 @@ suggestions, bug reports, patches, internationalization, or general
 infrastructure help:
 
 	    Lluís Batlle i Rossell <viric@viric.name>
-    Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
             Marek Benc <merkur32@gmail.com>
 	   Carlos Carleos <carleos@uniovi.es>
 	   Felipe Castro <fefcas@gmail.com>
@@ -26,6 +25,5 @@ infrastructure help:
              Adam Pribyl <pribyl@lowlevel.cz>
 	   Cyrill Schenkel <cyrill.schenkel@gmail.com>
 	    Benno Schulenberg <coordinator@translationproject.org>
-	    Jason Self <jself@gnu.org>
 	     Alen Skondro <askondro@gmail.com>
 	 Matthias Wachs <wachs@net.in.tum.de>
diff --git a/doc/guix.texi b/doc/guix.texi
index b0f4e1ad81..09ed39213c 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -548,7 +548,7 @@ on the kernel version number.
 
 @item --lose-logs
 Do not keep build logs.  By default they are kept under
-@code{@var{localstatedir}/nix/log}.
+@code{@var{localstatedir}/guix/log}.
 
 @item --system=@var{system}
 Assume @var{system} as the current system type.  By default it is the
@@ -1937,6 +1937,33 @@ effect, one must use @code{run-with-store}:
 @result{} /gnu/store/...-profile.sh
 @end example
 
+Note that the @code{(guix monad-repl)} module extends Guile's REPL with
+new ``meta-commands'' to make it easier to deal with monadic procedures:
+@code{run-in-store}, and @code{enter-store-monad}.  The former, is used
+to ``run'' a single monadic value through the store:
+
+@example
+scheme@@(guile-user)> ,run-in-store (package->derivation hello)
+$1 = #<derivation /gnu/store/@dots{}-hello-2.9.drv => @dots{}>
+@end example
+
+The latter enters a recursive REPL, where all the return values are
+automatically run through the store:
+
+@example
+scheme@@(guile-user)> ,enter-store-monad
+store-monad@@(guile-user) [1]> (package->derivation hello)
+$2 = #<derivation /gnu/store/@dots{}-hello-2.9.drv => @dots{}>
+store-monad@@(guile-user) [1]> (text-file "foo" "Hello!")
+$3 = "/gnu/store/@dots{}-foo"
+store-monad@@(guile-user) [1]> ,q
+scheme@@(guile-user)>
+@end example
+
+@noindent
+Note that non-monadic values cannot be returned in the
+@code{store-monad} REPL.
+
 The main syntactic forms to deal with monads in general are described
 below.
 
@@ -2038,15 +2065,19 @@ The example below adds a file to the store, under two different names:
 @end deffn
 
 @deffn {Monadic Procedure} package-file @var{package} [@var{file}] @
-       [#:system (%current-system)] [#:output "out"] Return as a monadic
+       [#:system (%current-system)] [#:target #f] @
+       [#:output "out"] Return as a monadic
 value in the absolute file name of @var{file} within the @var{output}
 directory of @var{package}.  When @var{file} is omitted, return the name
-of the @var{output} directory of @var{package}.
+of the @var{output} directory of @var{package}.  When @var{target} is
+true, use it as a cross-compilation target triplet.
 @end deffn
 
 @deffn {Monadic Procedure} package->derivation @var{package} [@var{system}]
-Monadic version of @code{package-derivation} (@pxref{Defining
-Packages}).
+@deffnx {Monadic Procedure} package->cross-derivation @var{package} @
+          @var{target} [@var{system}]
+Monadic version of @code{package-derivation} and
+@code{package-cross-derivation} (@pxref{Defining Packages}).
 @end deffn
 
 
@@ -2129,8 +2160,32 @@ substituted to the reference to the @var{coreutils} package in the
 actual build code, and @var{coreutils} is automatically made an input to
 the derivation.  Likewise, @code{#$output} (equivalent to @code{(ungexp
 output)}) is replaced by a string containing the derivation's output
-directory name.  The syntactic form to construct gexps is summarized
-below.
+directory name.
+
+@cindex cross compilation
+In a cross-compilation context, it is useful to distinguish between
+references to the @emph{native} build of a package---that can run on the
+host---versus references to cross builds of a package.  To that end, the
+@code{#+} plays the same role as @code{#$}, but is a reference to a
+native package build:
+
+@example
+(gexp->derivation "vi"
+   #~(begin
+       (mkdir #$output)
+       (system* (string-append #+coreutils "/bin/ln")
+                "-s"
+                (string-append #$emacs "/bin/emacs")
+                (string-append #$output "/bin/vi")))
+   #:target "mips64el-linux")
+@end example
+
+@noindent
+In the example above, the native build of @var{coreutils} is used, so
+that @command{ln} can actually run on the host; but then the
+cross-compiled build of @var{emacs} is referenced.
+
+The syntactic form to construct gexps is summarized below.
 
 @deffn {Scheme Syntax} #~@var{exp}
 @deffnx {Scheme Syntax} (gexp @var{exp})
@@ -2159,6 +2214,13 @@ This is like the form above, but referring explicitly to the
 @var{package-or-derivation} produces multiple outputs (@pxref{Packages
 with Multiple Outputs}).
 
+@item #+@var{obj}
+@itemx #+@var{obj}:output
+@itemx (ungexp-native @var{obj})
+@itemx (ungexp-native @var{obj} @var{output})
+Same as @code{ungexp}, but produces a reference to the @emph{native}
+build of @var{obj} when used in a cross compilation context.
+
 @item #$output[:@var{output}]
 @itemx (ungexp output [@var{output}])
 Insert a reference to derivation output @var{output}, or to the main
@@ -2171,6 +2233,11 @@ This only makes sense for gexps passed to @code{gexp->derivation}.
 Like the above, but splices the contents of @var{lst} inside the
 containing list.
 
+@item #+@@@var{lst}
+@itemx (ungexp-native-splicing @var{lst})
+Like the above, but refers to native builds of the objects listed in
+@var{lst}.
+
 @end table
 
 G-expressions created by @code{gexp} or @code{#~} are run-time objects
@@ -2187,13 +2254,15 @@ below allow you to do that (@pxref{The Store Monad}, for more
 information about monads.)
 
 @deffn {Monadic Procedure} gexp->derivation @var{name} @var{exp} @
-       [#:system (%current-system)] [#:inputs '()] @
+       [#:system (%current-system)] [#:target #f] [#:inputs '()] @
        [#:hash #f] [#:hash-algo #f] @
        [#:recursive? #f] [#:env-vars '()] [#:modules '()] @
        [#:references-graphs #f] [#:local-build? #f] @
        [#:guile-for-build #f]
 Return a derivation @var{name} that runs @var{exp} (a gexp) with
-@var{guile-for-build} (a derivation) on @var{system}.
+@var{guile-for-build} (a derivation) on @var{system}.  When @var{target}
+is true, it is used as the cross-compilation target triplet for packages
+referred to by @var{exp}.
 
 Make @var{modules} available in the evaluation context of @var{EXP};
 @var{MODULES} is a list of names of Guile modules from the current
diff --git a/gnu-system.am b/gnu-system.am
index 3da1c75b97..86937749c7 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -37,6 +37,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/autogen.scm			\
   gnu/packages/autotools.scm			\
   gnu/packages/avahi.scm			\
+  gnu/packages/avrdude.scm			\
   gnu/packages/backup.scm			\
   gnu/packages/base.scm				\
   gnu/packages/bash.scm				\
@@ -154,7 +155,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/lsh.scm				\
   gnu/packages/lsof.scm				\
   gnu/packages/lua.scm				\
-  gnu/packages/lvm.scm				\
   gnu/packages/lynx.scm				\
   gnu/packages/m4.scm				\
   gnu/packages/man.scm				\
@@ -184,6 +184,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/onc-rpc.scm			\
   gnu/packages/openldap.scm			\
   gnu/packages/openssl.scm			\
+  gnu/packages/orpheus.scm			\
   gnu/packages/package-management.scm		\
   gnu/packages/parallel.scm			\
   gnu/packages/patchutils.scm			\
@@ -207,6 +208,7 @@ GNU_SYSTEM_MODULES =				\
   gnu/packages/rdf.scm				\
   gnu/packages/readline.scm			\
   gnu/packages/recutils.scm			\
+  gnu/packages/rrdtool.scm			\
   gnu/packages/rsync.scm			\
   gnu/packages/rush.scm				\
   gnu/packages/samba.scm			\
@@ -268,7 +270,6 @@ GNU_SYSTEM_MODULES =				\
   gnu/system/file-systems.scm			\
   gnu/system/grub.scm				\
   gnu/system/install.scm			\
-  gnu/system/os-config.tmpl			\
   gnu/system/linux.scm				\
   gnu/system/linux-initrd.scm			\
   gnu/system/shadow.scm				\
@@ -280,6 +281,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/apr-skip-getservbyname-test.patch	\
   gnu/packages/patches/automake-skip-amhello-tests.patch	\
   gnu/packages/patches/avahi-localstatedir.patch		\
+  gnu/packages/patches/avrdude-fix-libusb.patch			\
   gnu/packages/patches/bigloo-gc-shebangs.patch			\
   gnu/packages/patches/binutils-ld-new-dtags.patch		\
   gnu/packages/patches/binutils-loongson-workaround.patch	\
@@ -291,7 +293,6 @@ dist_patch_DATA =						\
   gnu/packages/patches/cpio-gets-undeclared.patch		\
   gnu/packages/patches/cssc-gets-undeclared.patch               \
   gnu/packages/patches/cssc-missing-include.patch               \
-  gnu/packages/patches/curl-fix-test172.patch			\
   gnu/packages/patches/cursynth-wave-rand.patch			\
   gnu/packages/patches/dbus-localstatedir.patch			\
   gnu/packages/patches/diffutils-gets-undeclared.patch		\
@@ -299,6 +300,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/doxygen-tmake.patch			\
   gnu/packages/patches/emacs-configure-sh.patch			\
   gnu/packages/patches/findutils-absolute-paths.patch		\
+  gnu/packages/patches/flashrom-use-libftdi1.patch		\
   gnu/packages/patches/flex-bison-tests.patch			\
   gnu/packages/patches/gawk-shell.patch				\
   gnu/packages/patches/gcc-cross-environment-variables.patch	\
@@ -334,6 +336,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/libtool-skip-tests.patch			\
   gnu/packages/patches/libtool-skip-tests-for-mips.patch	\
   gnu/packages/patches/libssh-CVE-2014-0017.patch		\
+  gnu/packages/patches/lm-sensors-hwmon-attrs.patch		\
   gnu/packages/patches/luit-posix.patch				\
   gnu/packages/patches/m4-gets-undeclared.patch			\
   gnu/packages/patches/m4-readlink-EINVAL.patch			\
@@ -344,6 +347,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/mit-krb5-init-fix.patch			\
   gnu/packages/patches/mpc123-initialize-ao.patch		\
   gnu/packages/patches/module-init-tools-moduledir.patch	\
+  gnu/packages/patches/orpheus-cast-errors-and-includes.patch	\
   gnu/packages/patches/patchelf-page-size.patch			\
   gnu/packages/patches/patchutils-xfail-gendiff-tests.patch	\
   gnu/packages/patches/perl-no-sys-dirs.patch			\
@@ -371,6 +375,8 @@ dist_patch_DATA =						\
   gnu/packages/patches/superlu-dist-scotchmetis.patch		\
   gnu/packages/patches/tcsh-fix-autotest.patch			\
   gnu/packages/patches/teckit-cstdio.patch			\
+  gnu/packages/patches/texi2html-document-encoding.patch	\
+  gnu/packages/patches/texi2html-i18n.patch			\
   gnu/packages/patches/udev-gir-libtool.patch			\
   gnu/packages/patches/util-linux-perl.patch			\
   gnu/packages/patches/valgrind-glibc.patch			\
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 4a88fdd76a..c2599746d8 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -46,8 +46,12 @@
   #:use-module (gnu packages flex)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages popt)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages groff)
+  #:use-module (gnu packages pciutils)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages libftdi)
   #:use-module (gnu packages xorg))
 
 (define-public dmd
@@ -803,3 +807,136 @@ reliability depending on the manufacturer.  This will often include usage
 status for the CPU sockets, expansion slots (e.g. AGP, PCI, ISA) and memory
 module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
     (license gpl2+)))
+
+(define-public flashrom
+  (package
+    (name "flashrom")
+    (version "0.9.7")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://download.flashrom.org/releases/flashrom-"
+                    version ".tar.bz2"))
+              (sha256
+               (base32
+                "1s9pc4yls2s1gcg2ar4q75nym2z5v6lxq36bl6lq26br00nj2mas"))
+              (patches (list (search-patch "flashrom-use-libftdi1.patch")))))
+    (build-system gnu-build-system)
+    (inputs `(("dmidecode" ,dmidecode)
+              ("pciutils" ,pciutils)
+              ("libusb" ,libusb)
+              ("libftdi" ,libftdi)))
+    (native-inputs `(("pkg-config" ,pkg-config)))
+    (arguments
+     '(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output))
+       #:tests? #f   ; no 'check' target
+       #:phases
+       (alist-delete
+        'configure
+        (alist-cons-before
+         'build 'patch-exec-paths
+         (lambda* (#:key inputs #:allow-other-keys)
+           (substitute* "dmi.c"
+             (("\"dmidecode\"")
+              (format #f "~S"
+                      (string-append (assoc-ref inputs "dmidecode")
+                                     "/sbin/dmidecode")))))
+         %standard-phases))))
+    (home-page "http://flashrom.org/")
+    (synopsis "Identify, read, write, erase, and verify ROM/flash chips")
+    (description
+     "flashrom is a utility for identifying, reading, writing,
+verifying and erasing flash chips.  It is designed to flash
+BIOS/EFI/coreboot/firmware/optionROM images on mainboards,
+network/graphics/storage controller cards, and various other
+programmer devices.")
+    (license gpl2)))
+
+(define-public acpica
+  (package
+    (name "acpica")
+    (version "20140724")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://acpica.org/sites/acpica/files/acpica-unix2-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "01vdgrh7dsxrrvg5yd8sxm63cw8210pnsi5qg9g15ac53gn243ac"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("flex" ,flex)
+                     ("bison" ,bison)))
+    (arguments
+     '(#:make-flags (list (string-append "PREFIX=" %output)
+                          "HOST=_LINUX"
+                          "OPT_CFLAGS=-Wall -fno-strict-aliasing")
+       #:tests? #f  ; no 'check' target.
+       #:phases (alist-delete 'configure %standard-phases)))
+    (home-page "http://acpica.org/")
+    (synopsis "ACPICA tools for the development and debug of ACPI tables")
+    (description
+     "The ACPI Component Architecture (ACPICA) project provides an
+OS-independent reference implementation of the Advanced Configuration and
+Power Interface Specification (ACPI).  ACPICA code contains those portions of
+ACPI meant to be directly integrated into the host OS as a kernel-resident
+subsystem, and a small set of tools to assist in developing and debugging ACPI
+tables.  This package contains only the user-space tools needed for ACPI table
+development, not the kernel implementation of ACPI.")
+    (license gpl2)))  ; Dual GPLv2/ACPICA Licence
+
+(define-public stress
+  (package
+    (name "stress")
+    (version "1.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://debian/pool/main/s/stress/stress_"
+                                  version ".orig.tar.gz"))
+              (sha256
+               (base32
+                "1v9vnzlihqfjsxa93hdbrq72pqqk00dkylmlg8jpxhm7s1w9qfl1"))))
+    (build-system gnu-build-system)
+    (home-page "http://packages.debian.org/wheezy/stress")
+    (synopsis "A tool to impose load on and stress test a computer system")
+    (description
+     "'stress' is a tool that imposes a configurable amount of CPU, memory, I/O,
+or disk stress on a POSIX-compliant operating system and reports any errors it
+detects.
+
+'stress' is not a benchmark.  It is a tool used by system administrators to
+evaluate how well their systems will scale, by kernel programmers to evaluate
+perceived performance characteristics, and by systems programmers to expose
+the classes of bugs which only or more frequently manifest themselves when the
+system is under heavy load.")
+    (license gpl2+)))
+
+(define-public detox
+  (package
+    (name "detox")
+    (version "1.2.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://sourceforge/detox/detox-"
+                                  version ".tar.bz2"))
+              (sha256
+               (base32
+                "1y6vvjqsg54kl49cry73jbfhr04s7wjs779vrr9zrq6kww7dkymb"))))
+    (build-system gnu-build-system)
+    ;; Both flex and popt are used in this case for their runtime libraries
+    ;; (libfl and libpopt).
+    (inputs
+     `(("flex" ,flex)
+       ("popt" ,popt)))
+    (arguments
+     `(#:configure-flags `(,(string-append "--with-popt="
+                                           (assoc-ref %build-inputs "popt")))
+       #:tests? #f))                    ;no 'check' target
+    (home-page "http://detox.sourceforge.net")
+    (synopsis "Clean up filenames")
+    (description
+     "Detox is a program that renames files to make them easier to work with
+under Unix and related operating systems.  Spaces and various other unsafe
+characters (such as \"$\") get replaced with \"_\".  ISO 8859-1 (Latin-1)
+characters can be replaced as well, as can UTF-8 characters.")
+    (license bsd-3)))
diff --git a/gnu/packages/apl.scm b/gnu/packages/apl.scm
index c7bb656cec..a08886c252 100644
--- a/gnu/packages/apl.scm
+++ b/gnu/packages/apl.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -23,25 +24,31 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages maths)
+  #:use-module (gnu packages sqlite)
   #:use-module (gnu packages readline))
 
 (define-public apl
   (package
     (name "apl")
-    (version "1.3")
+    (version "1.4")
     (source
      (origin
       (method url-fetch)
       (uri (string-append "mirror://gnu/apl/apl-" version ".tar.gz"))
       (sha256
        (base32
-        "1pkwlm0nf5vb8sp9hf9wjmsrsyr4vdpd4kv5y3hzmsgf3wcf8y3i"))))
+        "0fl9l4jb5wpnb54kqkphavi657z1cv15h9qj2rqy2shf33dk3nk9"))))
     (build-system gnu-build-system)
     (home-page "http://www.gnu.org/software/apl/")
     (inputs
      `(("gettext" ,gnu-gettext)
        ("lapack" ,lapack)
+       ("sqlite" ,sqlite)
        ("readline" ,readline)))
+    (arguments
+     `(#:configure-flags (list (string-append
+                                "--with-sqlite3="
+                                (assoc-ref %build-inputs "sqlite")))))
     (synopsis "APL interpreter")
     (description
      "GNU APL is a free interpreter for the programming language APL.  It is
diff --git a/gnu/packages/apr.scm b/gnu/packages/apr.scm
index 26b49a5756..de068ee996 100644
--- a/gnu/packages/apr.scm
+++ b/gnu/packages/apr.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -28,14 +29,14 @@
 (define-public apr
   (package
     (name "apr")
-    (version "1.4.8")
+    (version "1.5.1")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://apache/apr/apr-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "0884csfk3f530yscak0jlr6w929s3ys0n7fpwdg3dii1sgwd5f31"))
+               "1b4qw686bwjn19iyb0lg918q23xxd6s2gnyczhjq992d3m1vwjp9"))
              (patches
               (list (search-patch "apr-skip-getservbyname-test.patch")))
              (patch-flags '("-p0"))))
@@ -44,7 +45,8 @@
      ;; Sometimes we end up with two processes concurrently trying to make
      ;; 'libmod_test.la': <http://hydra.gnu.org/build/60266/nixlog/2/raw>.
      ;; Thus, build sequentially.
-     '(#:parallel-build? #f))
+     '(#:parallel-build? #f
+       #:parallel-tests? #f))
     (inputs `(("perl" ,perl)
               ("libtool" ,libtool)))
     (home-page "http://apr.apache.org/")
@@ -62,14 +64,14 @@ around or take advantage of platform-specific deficiencies or features.")
 (define-public apr-util
   (package
     (name "apr-util")
-    (version "1.5.2")
+    (version "1.5.3")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://apache/apr/apr-util-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "19qjxpckb9p4j9pbk8kcirg6k5vqnjrqhnk9xx2c5m9964p3vkls"))))
+               "0s1rpqjy5xr03k9s4xrsm5wvhj5286vlkf6jvqayw99yy5sb3vbq"))))
     (build-system gnu-build-system)
     (inputs
       `(("apr" ,apr)))
diff --git a/gnu/packages/avrdude.scm b/gnu/packages/avrdude.scm
new file mode 100644
index 0000000000..28456045e0
--- /dev/null
+++ b/gnu/packages/avrdude.scm
@@ -0,0 +1,58 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
+;;;
+;;; 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 avrdude)
+  #:use-module (guix licenses)
+  #:use-module (guix download)
+  #:use-module (guix packages)
+  #:use-module (gnu packages)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages bison)
+  #:use-module (gnu packages flex)
+  #:use-module (gnu packages elf)
+  #:use-module (gnu packages libusb)
+  #:use-module (gnu packages libftdi))
+
+(define-public avrdude
+  (package
+    (name "avrdude")
+    (version "6.1")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://savannah/avrdude/avrdude-"
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "0frxg0q09nrm95z7ymzddx7ysl77ilfbdix1m81d9jjpiv5bm64y"))
+      (patches (list (search-patch "avrdude-fix-libusb.patch")))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("libelf" ,libelf)
+       ("libusb" ,libusb)
+       ("libftdi" ,libftdi)))
+    (native-inputs
+     `(("bison" ,bison)
+       ("flex" ,flex)))
+    (home-page "http://www.nongnu.org/avrdude/")
+    (synopsis "AVR downloader and uploader")
+    (description
+     "AVRDUDE is a utility to download/upload/manipulate the ROM and
+EEPROM contents of AVR microcontrollers using the in-system programming
+technique (ISP).")
+    (license gpl2+)))
diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm
index e21b7fbee2..496120a06d 100644
--- a/gnu/packages/bittorrent.scm
+++ b/gnu/packages/bittorrent.scm
@@ -36,7 +36,7 @@
 (define-public transmission
   (package
     (name "transmission")
-    (version "2.83")
+    (version "2.84")
     (source (origin
               (method url-fetch)
               (uri (string-append
@@ -44,7 +44,7 @@
                     version ".tar.xz"))
               (sha256
                (base32
-                "0cqlgl6jmjw1caybz6nzh3l8z0jak1dxba01isv72zvy2r8b1qdh"))))
+                "1sxr1magqb5s26yvr5yhs1f7bmir8gl09niafg64lhgfnhv1kz59"))))
     (build-system gnu-build-system)
     (outputs '("out"                      ; library and command-line interface
                "gui"))                    ; graphical user interface
diff --git a/gnu/packages/cryptsetup.scm b/gnu/packages/cryptsetup.scm
index c362a63b8b..781147cc35 100644
--- a/gnu/packages/cryptsetup.scm
+++ b/gnu/packages/cryptsetup.scm
@@ -24,7 +24,6 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages gnupg)
-  #:use-module (gnu packages lvm)
   #:use-module (gnu packages popt)
   #:use-module (gnu packages python)
   #:use-module (gnu packages linux))
diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm
index 7309da61e6..727c57d611 100644
--- a/gnu/packages/curl.scm
+++ b/gnu/packages/curl.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -37,18 +37,14 @@
 (define-public curl
   (package
    (name "curl")
-   (version "7.35.0")
+   (version "7.37.1")
    (source (origin
             (method url-fetch)
             (uri (string-append "http://curl.haxx.se/download/curl-"
                                 version ".tar.lzma"))
             (sha256
              (base32
-              "14w5cwh6b1426lxkq6kp6h4vxryr4n7wfrrwhny1r4123q7n8ab9"))
-            (patches
-             ;; This patch fixes testcase 172 which uses a hardcoded cookie
-             ;; expiration value which is expired as of Feb 1, 2014.
-             (list (search-patch "curl-fix-test172.patch")))))
+              "10yfh4hy8wbkj43la238hg6h8i9wyp1cvvk8kl0giac1020imn5d"))))
    (build-system gnu-build-system)
    (inputs `(("gnutls" ,gnutls)
              ("gss" ,gss)
diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index af8772eefd..76a8cc566f 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -1,5 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
 ;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -21,6 +23,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system trivial)
   #:use-module (gnu packages)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages ncurses)
@@ -33,10 +36,17 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages giflib)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages version-control)
+  #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages w3m)
+  #:use-module (gnu packages wget)
+  #:use-module (gnu packages autotools)
   #:use-module ((gnu packages compression)
                 #:renamer (symbol-prefix-proc 'compression:))
   #:use-module (gnu packages xml)
-  #:use-module (gnu packages glib))
+  #:use-module (gnu packages glib)
+  #:use-module (guix utils)
+  #:use-module (srfi srfi-1))
 
 (define-public emacs
   (package
@@ -102,6 +112,17 @@ large Lisp programs.  It has full Unicode support for nearly all human
 languages.")
     (license gpl3+)))
 
+(define-public emacs-no-x-toolkit
+  (package (inherit emacs)
+    (name "emacs-no-x-toolkit")
+    (synopsis "The extensible, customizable, self-documenting text
+editor (without an X toolkit)" )
+    (inputs (alist-delete "gtk+" (package-inputs emacs)))
+    (arguments
+     (substitute-keyword-arguments (package-arguments emacs)
+       ((#:configure-flags flags)
+        `(cons "--with-x-toolkit=no" ,flags))))))
+
 
 ;;;
 ;;; Emacs hacking.
@@ -110,13 +131,13 @@ languages.")
 (define-public geiser
   (package
     (name "geiser")
-    (version "0.4")
+    (version "0.6")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://savannah/geiser/" version
                                  "/geiser-" version ".tar.gz"))
              (sha256
-              (base32 "0ds7zk9b1839l9fsqfsgrby6manvy1cf5bjniiqhxl55h0cr6ijp"))))
+              (base32 "1mrk0bzqcpfhsw6635qznn47nzfy9ps7wrhkpymswdfpw5mdsry5"))))
     (build-system gnu-build-system)
     (inputs `(("guile" ,guile-2.0)
               ("emacs" ,emacs)))
@@ -138,3 +159,212 @@ of the stage in Geiser.  A bundle of Elisp shims orchestrates the dialog
 between the Scheme interpreter, Emacs and, ultimately, the schemer,
 giving her access to live metadata.")
     (license bsd-3)))
+
+(define-public paredit
+  (package
+    (name "paredit")
+    (version "23")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "http://mumble.net/~campbell/emacs/paredit-"
+                                 version ".el"))
+             (sha256
+              (base32 "1np882jzvxckljx3cjz4absyzmc5hw65cs21sjmbic82163m9lf8"))))
+    (build-system trivial-build-system)
+    (inputs `(("emacs" ,emacs)))
+    (arguments
+     `(#:modules ((guix build utils)
+                  (guix build emacs-utils))
+       #:builder
+       (begin
+         (use-modules (guix build utils))
+         (use-modules (guix build emacs-utils))
+
+         (let* ((emacs    (string-append (assoc-ref %build-inputs "emacs")
+                                         "/bin/emacs"))
+                (source   (assoc-ref %build-inputs "source"))
+                (lisp-dir (string-append %output
+                                         "/share/emacs/site-lisp"))
+                (target   (string-append lisp-dir "/paredit.el")))
+           (mkdir-p lisp-dir)
+           (copy-file source target)
+           (with-directory-excursion lisp-dir
+             (parameterize ((%emacs emacs))
+               (emacs-batch-eval '(byte-compile-file "paredit.el"))))))))
+    (home-page "http://mumble.net/~campbell/emacs/paredit/")
+    (synopsis "Emacs minor mode for editing parentheses")
+    (description
+     "ParEdit (paredit.el) is a minor mode for performing structured editing
+of S-expression data.  The typical example of this would be Lisp or Scheme
+source code.
+
+ParEdit helps **keep parentheses balanced** and adds many keys for moving
+S-expressions and moving around in S-expressions.  Its behavior can be jarring
+for those who may want transient periods of unbalanced parentheses, such as
+when typing parentheses directly or commenting out code line by line.")
+    (license gpl3+)))
+
+(define-public magit
+  (package
+    (name "magit")
+    (version "1.2.0")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "https://github.com/downloads/magit/magit/magit-"
+                                 version ".tar.gz"))
+             (sha256
+              (base32 "1a8vvilhd5y5vmlpsh194qpl4qlg0a1brylfscxcacpfp0cmhlzg"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("texinfo" ,texinfo)))
+    (inputs `(("emacs" ,emacs)
+              ("git" ,git)
+              ("git:gui" ,git "gui")))
+    (arguments
+     `(#:modules ((guix build gnu-build-system)
+                  (guix build utils)
+                  (guix build emacs-utils))
+       #:imported-modules ((guix build gnu-build-system)
+                           (guix build utils)
+                           (guix build emacs-utils))
+       #:tests? #f  ; no check target
+       #:phases
+       (alist-replace
+        'configure
+        (lambda* (#:key outputs #:allow-other-keys)
+          (let ((out (assoc-ref outputs "out")))
+            (substitute* "Makefile"
+              (("/usr/local") out)
+              (("/etc") (string-append out "/etc")))))
+        (alist-cons-before
+         'build 'patch-exec-paths
+         (lambda* (#:key inputs #:allow-other-keys)
+           (let ((git (assoc-ref inputs "git"))
+                 (git:gui (assoc-ref inputs "git:gui")))
+             (emacs-substitute-variables "magit.el"
+               ("magit-git-executable" (string-append git "/bin/git"))
+               ("magit-gitk-executable" (string-append git:gui "/bin/gitk")))))
+         %standard-phases))))
+    (home-page "http://magit.github.io/")
+    (synopsis "Emacs interface for the Git version control system")
+    (description
+     "With Magit, you can inspect and modify your Git repositories with Emacs.
+You can review and commit the changes you have made to the tracked files, for
+example, and you can browse the history of past changes.  There is support for
+cherry picking, reverting, merging, rebasing, and other common Git
+operations.")
+    (license gpl3+)))
+
+
+;;;
+;;; Web browsing.
+;;;
+
+(define-public emacs-w3m
+  (package
+    (name "emacs-w3m")
+    (version "1.4.483+0.20120614")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://debian/pool/main/w/w3m-el/w3m-el_"
+                                 version ".orig.tar.gz"))
+             (sha256
+              (base32 "0ms181gjavnfk79hhv5xl9llik4c6kj0w3c04kgyif8lcy2sxljx"))))
+    (build-system gnu-build-system)
+    (native-inputs `(("autoconf" ,autoconf)))
+    (inputs `(("w3m" ,w3m)
+              ("imagemagick" ,imagemagick)
+              ("emacs" ,emacs)))
+    (arguments
+     '(#:modules ((guix build gnu-build-system)
+                  (guix build utils)
+                  (guix build emacs-utils))
+       #:imported-modules ((guix build gnu-build-system)
+                           (guix build utils)
+                           (guix build emacs-utils))
+       #:configure-flags
+       (let ((out (assoc-ref %outputs "out")))
+         (list (string-append "--with-lispdir="
+                              out "/share/emacs/site-lisp")
+               (string-append "--with-icondir="
+                              out "/share/images/emacs-w3m")))
+       #:tests? #f  ; no check target
+       #:phases
+       (alist-cons-before
+        'configure 'pre-configure
+        (lambda _
+          (zero? (system* "autoconf")))
+        (alist-cons-before
+         'build 'patch-exec-paths
+         (lambda* (#:key inputs outputs #:allow-other-keys)
+          (let ((out (assoc-ref outputs "out"))
+                (w3m (assoc-ref inputs "w3m"))
+                (imagemagick (assoc-ref inputs "imagemagick"))
+                (coreutils (assoc-ref inputs "coreutils")))
+            (emacs-substitute-variables "w3m.el"
+              ("w3m-command" (string-append w3m "/bin/w3m"))
+              ("w3m-touch-command" (string-append coreutils "/bin/touch"))
+              ("w3m-image-viewer" (string-append imagemagick "/bin/display"))
+              ("w3m-icon-directory" (string-append out
+                                                   "/share/images/emacs-w3m")))
+            (emacs-substitute-variables "w3m-image.el"
+              ("w3m-imagick-convert-program" (string-append imagemagick
+                                                            "/bin/convert"))
+              ("w3m-imagick-identify-program" (string-append imagemagick
+                                                             "/bin/identify")))
+            #t))
+         (alist-replace
+          'install
+          (lambda* (#:key outputs #:allow-other-keys)
+            (and (zero? (system* "make" "install" "install-icons"))
+                 (with-directory-excursion
+                     (string-append (assoc-ref outputs "out")
+                                    "/share/emacs/site-lisp")
+                   (for-each delete-file '("ChangeLog" "ChangeLog.1"))
+                   #t)))
+          %standard-phases)))))
+    (home-page "http://emacs-w3m.namazu.org/")
+    (synopsis "Simple Web browser for Emacs based on w3m")
+    (description
+     "emacs-w3m is an emacs interface for the w3m web browser.")
+    (license gpl2+)))
+
+(define-public emacs-wget
+  (package
+    (name "emacs-wget")
+    (version "0.5.0")
+    (source (origin
+             (method url-fetch)
+             (uri (string-append "mirror://debian/pool/main/w/wget-el/wget-el_"
+                                 version ".orig.tar.gz"))
+             (sha256
+              (base32 "10byvyv9dk0ib55gfqm7bcpxmx2qbih1jd03gmihrppr2mn52nff"))))
+    (build-system gnu-build-system)
+    (inputs `(("wget" ,wget)
+              ("emacs" ,emacs)))
+    (arguments
+     '(#:modules ((guix build gnu-build-system)
+                  (guix build utils)
+                  (guix build emacs-utils))
+       #:imported-modules ((guix build gnu-build-system)
+                           (guix build utils)
+                           (guix build emacs-utils))
+       #:tests? #f  ; no check target
+       #:phases
+       (alist-replace
+        'configure
+        (lambda* (#:key outputs #:allow-other-keys)
+          (substitute* "Makefile"
+            (("/usr/local") (assoc-ref outputs "out"))
+            (("/site-lisp/emacs-wget") "/site-lisp")))
+        (alist-cons-before
+         'build 'patch-exec-paths
+         (lambda* (#:key inputs outputs #:allow-other-keys)
+           (let ((wget (assoc-ref inputs "wget")))
+             (emacs-substitute-variables "wget.el"
+               ("wget-command" (string-append wget "/bin/wget")))))
+         %standard-phases))))
+    (home-page "http://www.emacswiki.org/emacs/EmacsWget")
+    (synopsis "Simple file downloader for Emacs based on wget")
+    (description
+     "emacs-wget is an emacs interface for the wget file downloader.")
+    (license gpl2+)))
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 8ec59e4d0e..7802d364dd 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
+;;; Copyright © 2014 Guy Grant <tadnimi@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -22,10 +23,14 @@
                 #:renamer (symbol-prefix-proc 'license:))
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix build-system gnu)
   #:use-module (guix build-system trivial)
   #:use-module ((gnu packages base)
                 #:select (tar))
-  #:use-module (gnu packages compression))
+  #:use-module (gnu packages compression)
+  #:use-module (gnu packages perl)
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages pkg-config))
 
 (define-public ttf-dejavu
   (package
@@ -198,3 +203,41 @@ package provides the TrueType (TTF) files.")
  (PostScript Type0, TrueType, OpenType...) fonts covering the ISO
 10646/Unicode UCS (Universal Character Set).")
    (license license:gpl3+)))
+
+(define-public terminus-font
+  (package
+    (name "terminus-font")
+    (version "4.39")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "mirror://sourceforge/project/terminus-font/terminus-font-"
+               version
+               "/terminus-font-"
+               version
+               ".tar.gz"))
+        (sha256
+          (base32
+            "1gzmn7zakvy6yrvmswyjfklnsvqrjm0imhq8rjws8rdkhqwkh21i"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("perl" ,perl)
+       ("bdftopcf" ,bdftopcf)
+       ("font-util", font-util)
+       ("mkfontdir" ,mkfontdir)))
+    (arguments
+     `(#:configure-flags (list
+                          ;; install fonts into subdirectory of package output
+                          ;; instead of font-util-?.?.?/share/fonts/X11
+                          (string-append "--with-fontrootdir="
+                                         %output "/share/fonts/X11"))
+       #:tests? #f)) ;; No test target in tarball
+    (home-page "http://terminus-font.sourceforge.net/")
+    (synopsis "Simple bitmap programming font")
+    (description "Terminus Font is a clean, fixed width bitmap font, designed
+for long (8 and more hours per day) work with computers.")
+    (license
+     (license:x11-style
+      "http://scripts.sil.org/cms/scripts/page.php?item_id=OFL_web"))))
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index b047032710..e4ef3d4871 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -136,13 +136,13 @@ and support for SSL3 and TLS.")
 (define-public gnurl
   (package
    (name "gnurl")
-   (version "7.35.0")
+   (version "7.37.0")
    (source (origin
             (method url-fetch)
             (uri (string-append "https://gnunet.org/sites/default/files/gnurl-"
-                                version ".tar.bz2"))
+                                version ".tar.gz"))
             (sha256
-             (base32 "0dzj22f5z6ppjj1aq1bml64iwbzzcd8w1qy3bgpk6gnzqslsxknf"))))
+             (base32 "1l2q9ih63vkm65zn886kmhqsx906pzx3qjvsxymlmf18kiv18pfd"))))
    (build-system gnu-build-system)
    (inputs `(("gnutls" ,gnutls)
              ("libidn" ,libidn)
diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm
index 67964f4374..384ec6289e 100644
--- a/gnu/packages/gnupg.scm
+++ b/gnu/packages/gnupg.scm
@@ -168,14 +168,14 @@ specifications are building blocks of S/MIME and TLS.")
 (define-public gnupg
   (package
     (name "gnupg")
-    (version "2.0.25")
+    (version "2.0.26")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://gnupg/gnupg/gnupg-" version
                                   ".tar.bz2"))
               (sha256
                (base32
-                "08sqdkybgw4jkdkcyz1bi6y8irj87hpr5b12lkb57kwny1yykaxk"))))
+                "1q5qcl5panrvcvpwvz6nl9gayl5a6vwvfhgdcxqpmbl2qc6y6n3p"))))
     (build-system gnu-build-system)
     (inputs
      `(("bzip2" ,guix:bzip2)
@@ -234,7 +234,7 @@ libskba (working with X.509 certificates and CMS data).")
 (define-public gpgme
   (package
     (name "gpgme")
-    (version "1.4.3")
+    (version "1.5.1")
     (source
      (origin
       (method url-fetch)
@@ -242,7 +242,7 @@ libskba (working with X.509 certificates and CMS data).")
                           ".tar.bz2"))
       (sha256
        (base32
-        "15h429h6pd67iiv580bjmwbkadpxsdppw0xrqpcm4dvm24jc271d"))))
+        "1qqi9bxwxxsc4r15j7drclgp0w8jk9nj3h2fsivk4c7brvw3lbvc"))))
     (build-system gnu-build-system)
     (propagated-inputs
      ;; Needs to be propagated because gpgme.h includes gpg-error.h.
@@ -250,6 +250,7 @@ libskba (working with X.509 certificates and CMS data).")
     (inputs
      `(("gnupg" ,gnupg)
        ("libassuan" ,libassuan)))
+    (arguments '(#:make-flags '("GPG=gpg2")))
     (home-page "http://www.gnupg.org/related_software/gpgme/")
     (synopsis "library providing simplified access to GnuPG functionality")
     (description
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 8433b51263..064c859e69 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -327,14 +327,14 @@ for Guile\".")
 (define-public guile-json
   (package
     (name "guile-json")
-    (version "0.3.1")
+    (version "0.4.0")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://savannah/guile-json/guile-json-"
                                  version ".tar.gz"))
              (sha256
               (base32
-               "0nz2sx61kd6cfflwzxxq0cb9dz0asb81abbhfawv4p9ghciqdr3g"))
+               "0v06272rw4ycwzssjf3fzpk2vhpslvl55hz94q80vc6f74j0d5h6"))
              (modules '((guix build utils)))
              (snippet
               ;; Make sure everything goes under .../site/2.0, like Guile's
diff --git a/gnu/packages/libftdi.scm b/gnu/packages/libftdi.scm
index 6e8100ce29..5c2671aac7 100644
--- a/gnu/packages/libftdi.scm
+++ b/gnu/packages/libftdi.scm
@@ -37,12 +37,12 @@
                (base32
                 "088yh8pxd6q53ssqndydcw1dkq51cjqyahc03lm6iip22cdazcf0"))))
     (build-system cmake-build-system)
-    (native-inputs
+    (inputs
      `(("libusb" ,libusb)))
-    (home-page "http://www.intra2net.com")
+    (home-page "http://www.intra2net.com/en/developer/libftdi/")
     (synopsis "FTDI USB driver with bitbang mode")
     (description
      "libFTDI is a library to talk to FTDI chips: FT232BM,
 FT245BM, FT2232C, FT2232D, FT245R and FT232H including the popular
 bitbangmode.")
-    (license lgpl2.1+)))
+    (license lgpl2.1)))
diff --git a/gnu/packages/lightning.scm b/gnu/packages/lightning.scm
index 01a839ebb9..58296003cb 100644
--- a/gnu/packages/lightning.scm
+++ b/gnu/packages/lightning.scm
@@ -25,14 +25,14 @@
 (define-public lightning
   (package
     (name "lightning")
-    (version "2.0.4")
+    (version "2.0.5")
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnu/lightning/lightning-"
                                  version ".tar.gz"))
              (sha256
               (base32
-               "1lrckrx51d5hrv66bc99fd4b7g2wwn4vr304hwq3glfzhb8jqcdy"))))
+               "0jm9a8ddxc1v9hyzyv4ybg37fjac2yjqv1hkd262wxzqms36mdk5"))))
     (build-system gnu-build-system)
     (synopsis "Library for generating assembly code at runtime")
     (description
diff --git a/gnu/packages/linux-libre-i686.conf b/gnu/packages/linux-libre-i686.conf
index edef148360..10686b1bc6 100644
--- a/gnu/packages/linux-libre-i686.conf
+++ b/gnu/packages/linux-libre-i686.conf
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/x86 3.15.3-gnu Kernel Configuration
+# Linux/x86 3.16.0 Kernel Configuration
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
@@ -38,6 +38,7 @@ CONFIG_X86_32_SMP=y
 CONFIG_X86_HT=y
 CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx"
 CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_FIX_EARLYCON_MEM=y
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 CONFIG_IRQ_WORK=y
 CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -68,6 +69,7 @@ CONFIG_SYSVIPC=y
 CONFIG_SYSVIPC_SYSCTL=y
 CONFIG_POSIX_MQUEUE=y
 CONFIG_POSIX_MQUEUE_SYSCTL=y
+CONFIG_CROSS_MEMORY_ATTACH=y
 CONFIG_FHANDLE=y
 CONFIG_USELIB=y
 CONFIG_AUDIT=y
@@ -81,6 +83,7 @@ CONFIG_AUDIT_TREE=y
 #
 CONFIG_GENERIC_IRQ_PROBE=y
 CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ=y
 CONFIG_GENERIC_PENDING_IRQ=y
 CONFIG_GENERIC_IRQ_CHIP=y
 CONFIG_IRQ_DOMAIN=y
@@ -134,7 +137,6 @@ CONFIG_RCU_FAST_NO_HZ=y
 # CONFIG_IKCONFIG is not set
 CONFIG_LOG_BUF_SHIFT=17
 CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y
-CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y
 CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y
 CONFIG_CGROUPS=y
 # CONFIG_CGROUP_DEBUG is not set
@@ -153,7 +155,7 @@ CONFIG_CGROUP_PERF=y
 CONFIG_CGROUP_SCHED=y
 CONFIG_FAIR_GROUP_SCHED=y
 CONFIG_CFS_BANDWIDTH=y
-CONFIG_RT_GROUP_SCHED=y
+# CONFIG_RT_GROUP_SCHED is not set
 CONFIG_BLK_CGROUP=y
 # CONFIG_DEBUG_BLK_CGROUP is not set
 CONFIG_CHECKPOINT_RESTORE=y
@@ -164,7 +166,6 @@ CONFIG_USER_NS=y
 CONFIG_PID_NS=y
 CONFIG_NET_NS=y
 CONFIG_SCHED_AUTOGROUP=y
-CONFIG_MM_OWNER=y
 # CONFIG_SYSFS_DEPRECATED is not set
 CONFIG_RELAY=y
 CONFIG_BLK_DEV_INITRD=y
@@ -183,6 +184,7 @@ CONFIG_SYSCTL_EXCEPTION_TRACE=y
 CONFIG_HAVE_PCSPKR_PLATFORM=y
 CONFIG_EXPERT=y
 CONFIG_UID16=y
+CONFIG_SGETMASK_SYSCALL=y
 CONFIG_SYSFS_SYSCALL=y
 CONFIG_SYSCTL_SYSCALL=y
 CONFIG_KALLSYMS=y
@@ -239,6 +241,7 @@ CONFIG_HAVE_OPTPROBES=y
 CONFIG_HAVE_KPROBES_ON_FTRACE=y
 CONFIG_HAVE_ARCH_TRACEHOOK=y
 CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
 CONFIG_GENERIC_SMP_IDLE_THREAD=y
 CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
 CONFIG_HAVE_CLK=y
@@ -264,7 +267,6 @@ CONFIG_CC_STACKPROTECTOR_REGULAR=y
 # CONFIG_CC_STACKPROTECTOR_STRONG is not set
 CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y
 CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y
-CONFIG_HAVE_ARCH_SOFT_DIRTY=y
 CONFIG_MODULES_USE_ELF_REL=y
 CONFIG_CLONE_BACKWARDS=y
 CONFIG_OLD_SIGSUSPEND3=y
@@ -285,6 +287,11 @@ CONFIG_MODULE_UNLOAD=y
 CONFIG_MODVERSIONS=y
 CONFIG_MODULE_SRCVERSION_ALL=y
 # CONFIG_MODULE_SIG is not set
+# CONFIG_MODULE_SIG_SHA1 is not set
+# CONFIG_MODULE_SIG_SHA224 is not set
+# CONFIG_MODULE_SIG_SHA256 is not set
+# CONFIG_MODULE_SIG_SHA384 is not set
+# CONFIG_MODULE_SIG_SHA512 is not set
 CONFIG_STOP_MACHINE=y
 CONFIG_BLOCK=y
 CONFIG_LBDAF=y
@@ -299,11 +306,11 @@ CONFIG_BLK_CMDLINE_PARSER=y
 #
 CONFIG_PARTITION_ADVANCED=y
 CONFIG_ACORN_PARTITION=y
-# CONFIG_ACORN_PARTITION_CUMANA is not set
-# CONFIG_ACORN_PARTITION_EESOX is not set
+CONFIG_ACORN_PARTITION_CUMANA=y
+CONFIG_ACORN_PARTITION_EESOX=y
 CONFIG_ACORN_PARTITION_ICS=y
-# CONFIG_ACORN_PARTITION_ADFS is not set
-# CONFIG_ACORN_PARTITION_POWERTEC is not set
+CONFIG_ACORN_PARTITION_ADFS=y
+CONFIG_ACORN_PARTITION_POWERTEC=y
 CONFIG_ACORN_PARTITION_RISCIX=y
 CONFIG_AIX_PARTITION=y
 CONFIG_OSF_PARTITION=y
@@ -345,7 +352,11 @@ CONFIG_INLINE_READ_UNLOCK=y
 CONFIG_INLINE_READ_UNLOCK_IRQ=y
 CONFIG_INLINE_WRITE_UNLOCK=y
 CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
 CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUE_RWLOCK=y
+CONFIG_QUEUE_RWLOCK=y
 CONFIG_FREEZER=y
 
 #
@@ -431,8 +442,8 @@ CONFIG_IOMMU_HELPER=y
 CONFIG_NR_CPUS=8
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_VOLUNTARY=y
 # CONFIG_PREEMPT is not set
 CONFIG_X86_LOCAL_APIC=y
 CONFIG_X86_IO_APIC=y
@@ -445,15 +456,18 @@ CONFIG_X86_MCE_THRESHOLD=y
 CONFIG_X86_MCE_INJECT=m
 CONFIG_X86_THERMAL_VECTOR=y
 CONFIG_VM86=y
+CONFIG_X86_16BIT=y
+CONFIG_X86_ESPFIX32=y
 # CONFIG_TOSHIBA is not set
 CONFIG_I8K=m
 CONFIG_X86_REBOOTFIXUPS=y
-CONFIG_MICROCODE=m
+CONFIG_MICROCODE=y
 CONFIG_MICROCODE_INTEL=y
 CONFIG_MICROCODE_AMD=y
 CONFIG_MICROCODE_OLD_INTERFACE=y
-# CONFIG_MICROCODE_INTEL_EARLY is not set
-# CONFIG_MICROCODE_AMD_EARLY is not set
+CONFIG_MICROCODE_INTEL_EARLY=y
+CONFIG_MICROCODE_AMD_EARLY=y
+CONFIG_MICROCODE_EARLY=y
 CONFIG_X86_MSR=m
 CONFIG_X86_CPUID=m
 # CONFIG_NOHIGHMEM is not set
@@ -501,14 +515,12 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=65536
 CONFIG_TRANSPARENT_HUGEPAGE=y
 CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
 # CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
-CONFIG_CROSS_MEMORY_ATTACH=y
 CONFIG_CLEANCACHE=y
 CONFIG_FRONTSWAP=y
 CONFIG_CMA=y
 # CONFIG_CMA_DEBUG is not set
 CONFIG_ZBUD=y
 CONFIG_ZSWAP=y
-CONFIG_MEM_SOFT_DIRTY=y
 CONFIG_ZSMALLOC=y
 CONFIG_PGTABLE_MAPPING=y
 CONFIG_GENERIC_EARLY_IOREMAP=y
@@ -539,6 +551,8 @@ CONFIG_CRASH_DUMP=y
 CONFIG_KEXEC_JUMP=y
 CONFIG_PHYSICAL_START=0x1000000
 CONFIG_RELOCATABLE=y
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_RANDOMIZE_BASE_MAX_OFFSET=0x20000000
 CONFIG_X86_NEED_RELOCS=y
 CONFIG_PHYSICAL_ALIGN=0x1000000
 CONFIG_HOTPLUG_CPU=y
@@ -787,6 +801,7 @@ CONFIG_BINFMT_AOUT=m
 CONFIG_BINFMT_MISC=m
 CONFIG_COREDUMP=y
 CONFIG_HAVE_ATOMIC_IOMAP=y
+CONFIG_IOSF_MBI=m
 CONFIG_NET=y
 
 #
@@ -980,7 +995,7 @@ CONFIG_NETFILTER_XT_TARGET_MARK=m
 CONFIG_NETFILTER_XT_TARGET_NETMAP=m
 CONFIG_NETFILTER_XT_TARGET_NFLOG=m
 CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
-CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
 CONFIG_NETFILTER_XT_TARGET_RATEEST=m
 CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
 CONFIG_NETFILTER_XT_TARGET_TEE=m
@@ -1056,7 +1071,7 @@ CONFIG_IP_SET_HASH_NETPORT=m
 CONFIG_IP_SET_HASH_NETIFACE=m
 CONFIG_IP_SET_LIST_SET=m
 CONFIG_IP_VS=m
-# CONFIG_IP_VS_IPV6 is not set
+CONFIG_IP_VS_IPV6=y
 # CONFIG_IP_VS_DEBUG is not set
 CONFIG_IP_VS_TAB_BITS=12
 
@@ -1168,6 +1183,7 @@ CONFIG_IP6_NF_TARGET_NPT=m
 #
 CONFIG_DECNET_NF_GRABULATOR=m
 CONFIG_NF_TABLES_BRIDGE=m
+CONFIG_NFT_BRIDGE_META=m
 CONFIG_BRIDGE_NF_EBTABLES=m
 CONFIG_BRIDGE_EBT_BROUTE=m
 CONFIG_BRIDGE_EBT_T_FILTER=m
@@ -1404,7 +1420,6 @@ CONFIG_CAN_SLCAN=m
 CONFIG_CAN_DEV=m
 CONFIG_CAN_CALC_BITTIMING=y
 CONFIG_CAN_LEDS=y
-CONFIG_CAN_MCP251X=m
 CONFIG_CAN_JANZ_ICAN3=m
 CONFIG_PCH_CAN=m
 CONFIG_CAN_SJA1000=m
@@ -1426,10 +1441,16 @@ CONFIG_CAN_CC770_ISA=m
 CONFIG_CAN_CC770_PLATFORM=m
 
 #
+# CAN SPI interfaces
+#
+CONFIG_CAN_MCP251X=m
+
+#
 # CAN USB interfaces
 #
 CONFIG_CAN_EMS_USB=m
 CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_GS_USB=m
 CONFIG_CAN_KVASER_USB=m
 CONFIG_CAN_PEAK_USB=m
 CONFIG_CAN_8DEV_USB=m
@@ -1537,7 +1558,7 @@ CONFIG_WEXT_PROC=y
 CONFIG_WEXT_SPY=y
 CONFIG_WEXT_PRIV=y
 CONFIG_CFG80211=m
-CONFIG_NL80211_TESTMODE=y
+# CONFIG_NL80211_TESTMODE is not set
 # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
 # CONFIG_CFG80211_REG_DEBUG is not set
 # CONFIG_CFG80211_CERTIFICATION_ONUS is not set
@@ -1605,6 +1626,8 @@ CONFIG_NFC_MICROREAD_I2C=m
 CONFIG_NFC_MICROREAD_MEI=m
 CONFIG_NFC_MRVL=m
 CONFIG_NFC_MRVL_USB=m
+CONFIG_NFC_ST21NFCA=m
+CONFIG_NFC_ST21NFCA_I2C=m
 
 #
 # Device Drivers
@@ -1613,6 +1636,7 @@ CONFIG_NFC_MRVL_USB=m
 #
 # Generic Driver Options
 #
+CONFIG_UEVENT_HELPER=y
 CONFIG_UEVENT_HELPER_PATH=""
 CONFIG_DEVTMPFS=y
 CONFIG_DEVTMPFS_MOUNT=y
@@ -1633,6 +1657,18 @@ CONFIG_REGMAP_SPI=y
 CONFIG_REGMAP_MMIO=y
 CONFIG_REGMAP_IRQ=y
 CONFIG_DMA_SHARED_BUFFER=y
+CONFIG_DMA_CMA=y
+
+#
+# Default contiguous memory area size:
+#
+CONFIG_CMA_SIZE_MBYTES=64
+CONFIG_CMA_SIZE_SEL_MBYTES=y
+# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
+# CONFIG_CMA_SIZE_SEL_MIN is not set
+# CONFIG_CMA_SIZE_SEL_MAX is not set
+CONFIG_CMA_ALIGNMENT=8
+CONFIG_CMA_AREAS=7
 
 #
 # Bus devices
@@ -1695,8 +1731,6 @@ CONFIG_MTD_ABSENT=m
 CONFIG_MTD_COMPLEX_MAPPINGS=y
 CONFIG_MTD_PHYSMAP=m
 # CONFIG_MTD_PHYSMAP_COMPAT is not set
-CONFIG_MTD_SC520CDP=m
-CONFIG_MTD_NETSC520=m
 CONFIG_MTD_SBC_GXX=m
 CONFIG_MTD_SCx200_DOCFLASH=m
 CONFIG_MTD_AMD76XROM=m
@@ -1767,18 +1801,19 @@ CONFIG_MTD_ONENAND_GENERIC=m
 CONFIG_MTD_ONENAND_2X_PROGRAM=y
 
 #
-# LPDDR flash memory drivers
+# LPDDR & LPDDR2 PCM memory drivers
 #
 CONFIG_MTD_LPDDR=m
 CONFIG_MTD_QINFO_PROBE=m
+CONFIG_MTD_SPI_NOR=m
 CONFIG_MTD_UBI=m
 CONFIG_MTD_UBI_WL_THRESHOLD=4096
 CONFIG_MTD_UBI_BEB_LIMIT=20
 CONFIG_MTD_UBI_FASTMAP=y
 CONFIG_MTD_UBI_GLUEBI=m
 CONFIG_MTD_UBI_BLOCK=y
-CONFIG_PARPORT=m
 CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
+CONFIG_PARPORT=m
 CONFIG_PARPORT_PC=m
 CONFIG_PARPORT_SERIAL=m
 CONFIG_PARPORT_PC_FIFO=y
@@ -1871,7 +1906,6 @@ CONFIG_SENSORS_LIS3LV02D=m
 CONFIG_AD525X_DPOT=m
 CONFIG_AD525X_DPOT_I2C=m
 CONFIG_AD525X_DPOT_SPI=m
-CONFIG_ATMEL_PWM=m
 CONFIG_DUMMY_IRQ=m
 CONFIG_IBM_ASM=m
 CONFIG_PHANTOM=m
@@ -1880,7 +1914,6 @@ CONFIG_SGI_IOC4=m
 CONFIG_TIFM_CORE=m
 CONFIG_TIFM_7XX1=m
 CONFIG_ICS932S401=m
-CONFIG_ATMEL_SSC=m
 CONFIG_ENCLOSURE_SERVICES=m
 # CONFIG_CS5535_MFGPT is not set
 CONFIG_HP_ILO=m
@@ -1974,7 +2007,7 @@ CONFIG_SCSI_SCAN_ASYNC=y
 #
 # SCSI Transports
 #
-CONFIG_SCSI_SPI_ATTRS=y
+CONFIG_SCSI_SPI_ATTRS=m
 CONFIG_SCSI_FC_ATTRS=m
 CONFIG_SCSI_FC_TGT_ATTRS=y
 CONFIG_SCSI_ISCSI_ATTRS=m
@@ -2004,7 +2037,7 @@ CONFIG_SCSI_AHA1740=m
 CONFIG_SCSI_AACRAID=m
 CONFIG_SCSI_AIC7XXX=m
 CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
-CONFIG_AIC7XXX_RESET_DELAY_MS=15000
+CONFIG_AIC7XXX_RESET_DELAY_MS=5000
 # CONFIG_AIC7XXX_DEBUG_ENABLE is not set
 CONFIG_AIC7XXX_DEBUG_MASK=0
 CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
@@ -2075,12 +2108,13 @@ CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
 CONFIG_SCSI_SYM53C8XX_MMIO=y
 CONFIG_SCSI_IPR=m
-# CONFIG_SCSI_IPR_TRACE is not set
-# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_IPR_TRACE=y
+CONFIG_SCSI_IPR_DUMP=y
 CONFIG_SCSI_PAS16=m
 CONFIG_SCSI_QLOGIC_FAS=m
 CONFIG_SCSI_QLOGIC_1280=m
 CONFIG_SCSI_QLA_FC=m
+CONFIG_TCM_QLA2XXX=m
 CONFIG_SCSI_QLA_ISCSI=m
 CONFIG_SCSI_LPFC=m
 # CONFIG_SCSI_LPFC_DEBUG_FS is not set
@@ -2303,7 +2337,12 @@ CONFIG_DUMMY=m
 CONFIG_EQUALIZER=m
 CONFIG_NET_FC=y
 CONFIG_IFB=m
-# CONFIG_NET_TEAM is not set
+CONFIG_NET_TEAM=m
+CONFIG_NET_TEAM_MODE_BROADCAST=m
+CONFIG_NET_TEAM_MODE_ROUNDROBIN=m
+CONFIG_NET_TEAM_MODE_RANDOM=m
+CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m
+CONFIG_NET_TEAM_MODE_LOADBALANCE=m
 CONFIG_MACVLAN=m
 CONFIG_MACVTAP=m
 CONFIG_VXLAN=m
@@ -2499,7 +2538,7 @@ CONFIG_MLX4_EN=m
 CONFIG_MLX4_EN_DCB=y
 CONFIG_MLX4_EN_VXLAN=y
 CONFIG_MLX4_CORE=m
-# CONFIG_MLX4_DEBUG is not set
+CONFIG_MLX4_DEBUG=y
 CONFIG_MLX5_CORE=m
 CONFIG_NET_VENDOR_MICREL=y
 CONFIG_KS8842=m
@@ -2537,6 +2576,7 @@ CONFIG_QLCNIC=m
 CONFIG_QLCNIC_SRIOV=y
 CONFIG_QLCNIC_DCB=y
 CONFIG_QLCNIC_VXLAN=y
+CONFIG_QLCNIC_HWMON=y
 CONFIG_QLGE=m
 CONFIG_NETXEN_NIC=m
 CONFIG_NET_VENDOR_REALTEK=y
@@ -2608,27 +2648,27 @@ CONFIG_PHYLIB=y
 #
 # MII PHY device drivers
 #
-CONFIG_AT803X_PHY=y
-CONFIG_AMD_PHY=y
-CONFIG_MARVELL_PHY=y
-CONFIG_DAVICOM_PHY=y
-CONFIG_QSEMI_PHY=y
-CONFIG_LXT_PHY=y
-CONFIG_CICADA_PHY=y
-CONFIG_VITESSE_PHY=y
-CONFIG_SMSC_PHY=y
-CONFIG_BROADCOM_PHY=y
+CONFIG_AT803X_PHY=m
+CONFIG_AMD_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_LXT_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_VITESSE_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_BROADCOM_PHY=m
 CONFIG_BCM7XXX_PHY=m
-CONFIG_BCM87XX_PHY=y
-CONFIG_ICPLUS_PHY=y
-CONFIG_REALTEK_PHY=y
-CONFIG_NATIONAL_PHY=y
-CONFIG_STE10XP=y
-CONFIG_LSI_ET1011C_PHY=y
-CONFIG_MICREL_PHY=y
+CONFIG_BCM87XX_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_STE10XP=m
+CONFIG_LSI_ET1011C_PHY=m
+CONFIG_MICREL_PHY=m
 CONFIG_FIXED_PHY=y
-CONFIG_MDIO_BITBANG=y
-CONFIG_MDIO_GPIO=y
+CONFIG_MDIO_BITBANG=m
+CONFIG_MDIO_GPIO=m
 CONFIG_MICREL_KS8995MA=m
 CONFIG_PLIP=m
 CONFIG_PPP=y
@@ -2756,6 +2796,9 @@ CONFIG_WCN36XX=m
 CONFIG_B43=m
 CONFIG_B43_BCMA=y
 CONFIG_B43_SSB=y
+CONFIG_B43_BUSES_BCMA_AND_SSB=y
+# CONFIG_B43_BUSES_BCMA is not set
+# CONFIG_B43_BUSES_SSB is not set
 CONFIG_B43_PCI_AUTOSELECT=y
 CONFIG_B43_PCICORE_AUTOSELECT=y
 # CONFIG_B43_PCMCIA is not set
@@ -2804,6 +2847,7 @@ CONFIG_IPW2200_QOS=y
 CONFIG_LIBIPW=m
 # CONFIG_LIBIPW_DEBUG is not set
 CONFIG_IWLWIFI=m
+CONFIG_IWLWIFI_LEDS=y
 CONFIG_IWLDVM=m
 CONFIG_IWLMVM=m
 CONFIG_IWLWIFI_OPMODE_MODULAR=y
@@ -2910,7 +2954,7 @@ CONFIG_CW1200=m
 CONFIG_CW1200_WLAN_SDIO=m
 CONFIG_CW1200_WLAN_SPI=m
 CONFIG_RSI_91X=m
-CONFIG_RSI_DEBUGFS=y
+# CONFIG_RSI_DEBUGFS is not set
 CONFIG_RSI_SDIO=m
 CONFIG_RSI_USB=m
 
@@ -3051,11 +3095,11 @@ CONFIG_ISDN_DRV_PCBIT=m
 CONFIG_ISDN_DRV_SC=m
 CONFIG_ISDN_DRV_ACT2000=m
 CONFIG_ISDN_CAPI=m
-CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
 CONFIG_CAPI_TRACE=y
 CONFIG_ISDN_CAPI_CAPI20=m
 CONFIG_ISDN_CAPI_MIDDLEWARE=y
 CONFIG_ISDN_CAPI_CAPIDRV=m
+# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set
 
 #
 # CAPI hardware drivers
@@ -3151,8 +3195,8 @@ CONFIG_KEYBOARD_OPENCORES=m
 CONFIG_KEYBOARD_SAMSUNG=m
 CONFIG_KEYBOARD_STOWAWAY=m
 CONFIG_KEYBOARD_SUNKBD=m
-CONFIG_KEYBOARD_STMPE=m
 CONFIG_KEYBOARD_TC3589X=m
+CONFIG_KEYBOARD_TWL4030=m
 CONFIG_KEYBOARD_XTKBD=m
 CONFIG_KEYBOARD_CROS_EC=m
 CONFIG_INPUT_MOUSE=y
@@ -3287,10 +3331,8 @@ CONFIG_TOUCHSCREEN_TOUCHIT213=m
 CONFIG_TOUCHSCREEN_TSC_SERIO=m
 CONFIG_TOUCHSCREEN_TSC2005=m
 CONFIG_TOUCHSCREEN_TSC2007=m
-CONFIG_TOUCHSCREEN_W90X900=m
 CONFIG_TOUCHSCREEN_PCAP=m
 CONFIG_TOUCHSCREEN_ST1232=m
-CONFIG_TOUCHSCREEN_STMPE=m
 CONFIG_TOUCHSCREEN_SUR40=m
 CONFIG_TOUCHSCREEN_TPS6507X=m
 CONFIG_TOUCHSCREEN_ZFORCE=m
@@ -3310,6 +3352,7 @@ CONFIG_INPUT_MMA8450=m
 CONFIG_INPUT_MPU3050=m
 CONFIG_INPUT_APANEL=m
 CONFIG_INPUT_GP2A=m
+CONFIG_INPUT_GPIO_BEEPER=m
 CONFIG_INPUT_GPIO_TILT_POLLED=m
 CONFIG_INPUT_WISTRON_BTNS=m
 CONFIG_INPUT_ATLAS_BTNS=m
@@ -3321,6 +3364,8 @@ CONFIG_INPUT_POWERMATE=m
 CONFIG_INPUT_YEALINK=m
 CONFIG_INPUT_CM109=m
 CONFIG_INPUT_RETU_PWRBUTTON=m
+CONFIG_INPUT_TWL4030_PWRBUTTON=m
+CONFIG_INPUT_TWL4030_VIBRA=m
 CONFIG_INPUT_TWL6040_VIBRA=m
 CONFIG_INPUT_UINPUT=y
 CONFIG_INPUT_PCF50633_PMU=m
@@ -3397,11 +3442,11 @@ CONFIG_TRACE_SINK=m
 #
 # Serial drivers
 #
+CONFIG_SERIAL_EARLYCON=y
 CONFIG_SERIAL_8250=y
 # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_PNP=y
 CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_FIX_EARLYCON_MEM=y
 CONFIG_SERIAL_8250_DMA=y
 CONFIG_SERIAL_8250_PCI=y
 CONFIG_SERIAL_8250_CS=m
@@ -3434,6 +3479,7 @@ CONFIG_CONSOLE_POLL=y
 CONFIG_SERIAL_JSM=m
 CONFIG_SERIAL_SCCNXP=y
 CONFIG_SERIAL_SCCNXP_CONSOLE=y
+CONFIG_SERIAL_SC16IS7XX=m
 CONFIG_SERIAL_TIMBERDALE=m
 CONFIG_SERIAL_ALTERA_JTAGUART=m
 CONFIG_SERIAL_ALTERA_UART=m
@@ -3446,6 +3492,7 @@ CONFIG_SERIAL_ARC_NR_PORTS=1
 CONFIG_SERIAL_RP2=m
 CONFIG_SERIAL_RP2_NR_UARTS=32
 CONFIG_SERIAL_FSL_LPUART=m
+CONFIG_SERIAL_MEN_Z135=m
 CONFIG_TTY_PRINTK=y
 CONFIG_PRINTER=m
 # CONFIG_LP_CONSOLE is not set
@@ -3466,11 +3513,9 @@ CONFIG_HW_RANDOM=y
 CONFIG_HW_RANDOM_TIMERIOMEM=m
 CONFIG_HW_RANDOM_INTEL=m
 CONFIG_HW_RANDOM_AMD=m
-# CONFIG_HW_RANDOM_ATMEL is not set
 CONFIG_HW_RANDOM_GEODE=m
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_HW_RANDOM_VIRTIO=m
-CONFIG_HW_RANDOM_EXYNOS=m
 CONFIG_HW_RANDOM_TPM=m
 CONFIG_NVRAM=m
 CONFIG_DTLK=m
@@ -3586,6 +3631,7 @@ CONFIG_I2C_VIPERBOARD=m
 # Other I2C/SMBus bus drivers
 #
 CONFIG_I2C_PCA_ISA=m
+CONFIG_I2C_CROS_EC_TUNNEL=m
 # CONFIG_SCx200_I2C is not set
 CONFIG_SCx200_ACB=m
 CONFIG_I2C_STUB=m
@@ -3627,6 +3673,10 @@ CONFIG_HSI=m
 CONFIG_HSI_BOARDINFO=y
 
 #
+# HSI controllers
+#
+
+#
 # HSI clients
 #
 CONFIG_HSI_CHAR=m
@@ -3671,8 +3721,9 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
 CONFIG_GPIOLIB=y
 CONFIG_GPIO_DEVRES=y
 CONFIG_GPIO_ACPI=y
+CONFIG_GPIOLIB_IRQCHIP=y
 # CONFIG_DEBUG_GPIO is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
 CONFIG_GPIO_GENERIC=m
 CONFIG_GPIO_DA9052=m
 CONFIG_GPIO_DA9055=m
@@ -3701,9 +3752,9 @@ CONFIG_GPIO_PCA953X=m
 CONFIG_GPIO_PCF857X=m
 CONFIG_GPIO_RC5T583=y
 CONFIG_GPIO_SX150X=y
-CONFIG_GPIO_STMPE=y
 CONFIG_GPIO_TC3589X=y
 CONFIG_GPIO_TPS65912=m
+CONFIG_GPIO_TWL4030=m
 CONFIG_GPIO_TWL6040=m
 CONFIG_GPIO_WM831X=m
 CONFIG_GPIO_WM8350=m
@@ -3802,11 +3853,14 @@ CONFIG_BATTERY_DA9030=m
 CONFIG_BATTERY_DA9052=m
 CONFIG_BATTERY_MAX17040=m
 CONFIG_BATTERY_MAX17042=m
+CONFIG_BATTERY_TWL4030_MADC=m
 CONFIG_CHARGER_88PM860X=m
 CONFIG_CHARGER_PCF50633=m
 CONFIG_BATTERY_INTEL_MID=m
+CONFIG_BATTERY_RX51=m
 CONFIG_CHARGER_ISP1704=m
 CONFIG_CHARGER_MAX8903=m
+CONFIG_CHARGER_TWL4030=m
 CONFIG_CHARGER_LP8727=m
 CONFIG_CHARGER_LP8788=m
 CONFIG_CHARGER_GPIO=m
@@ -3914,6 +3968,7 @@ CONFIG_SENSORS_LM95245=m
 CONFIG_SENSORS_PC87360=m
 CONFIG_SENSORS_PC87427=m
 CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_NCT6683=m
 CONFIG_SENSORS_NCT6775=m
 CONFIG_SENSORS_PCF8591=m
 CONFIG_PMBUS=m
@@ -3929,6 +3984,7 @@ CONFIG_SENSORS_UCD9200=m
 CONFIG_SENSORS_ZL6100=m
 CONFIG_SENSORS_SHT15=m
 CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_SHTC1=m
 CONFIG_SENSORS_SIS5595=m
 CONFIG_SENSORS_DME1737=m
 CONFIG_SENSORS_EMC1403=m
@@ -3952,6 +4008,7 @@ CONFIG_SENSORS_THMC50=m
 CONFIG_SENSORS_TMP102=m
 CONFIG_SENSORS_TMP401=m
 CONFIG_SENSORS_TMP421=m
+CONFIG_SENSORS_TWL4030_MADC=m
 CONFIG_SENSORS_VIA_CPUTEMP=m
 CONFIG_SENSORS_VIA686A=m
 CONFIG_SENSORS_VT1211=m
@@ -3986,6 +4043,7 @@ CONFIG_THERMAL_EMULATION=y
 CONFIG_INTEL_POWERCLAMP=m
 CONFIG_X86_PKG_TEMP_THERMAL=m
 CONFIG_ACPI_INT3403_THERMAL=m
+CONFIG_INTEL_SOC_DTS_THERMAL=m
 
 #
 # Texas Instruments thermal drivers
@@ -4004,6 +4062,7 @@ CONFIG_WM831X_WATCHDOG=m
 CONFIG_WM8350_WATCHDOG=m
 CONFIG_XILINX_WATCHDOG=m
 CONFIG_DW_WATCHDOG=m
+CONFIG_TWL4030_WATCHDOG=m
 CONFIG_RETU_WATCHDOG=m
 CONFIG_ACQUIRE_WDT=m
 CONFIG_ADVANTECH_WDT=m
@@ -4019,6 +4078,7 @@ CONFIG_WAFER_WDT=m
 CONFIG_I6300ESB_WDT=m
 CONFIG_IE6XX_WDT=m
 CONFIG_INTEL_SCU_WATCHDOG=y
+CONFIG_INTEL_MID_WATCHDOG=m
 CONFIG_ITCO_WDT=m
 CONFIG_ITCO_VENDOR_SUPPORT=y
 CONFIG_IT8712F_WDT=m
@@ -4038,8 +4098,6 @@ CONFIG_SMSC_SCH311X_WDT=m
 CONFIG_SMSC37B787_WDT=m
 CONFIG_VIA_WDT=m
 CONFIG_W83627HF_WDT=m
-CONFIG_W83697HF_WDT=m
-CONFIG_W83697UG_WDT=m
 CONFIG_W83877F_WDT=m
 CONFIG_W83977F_WDT=m
 CONFIG_MACHZ_WDT=m
@@ -4107,6 +4165,7 @@ CONFIG_MFD_AS3711=y
 CONFIG_PMIC_ADP5520=y
 CONFIG_MFD_AAT2870_CORE=y
 CONFIG_MFD_BCM590XX=m
+CONFIG_MFD_AXP20X=y
 CONFIG_MFD_CROS_EC=m
 CONFIG_MFD_CROS_EC_I2C=m
 CONFIG_PMIC_DA903X=y
@@ -4149,18 +4208,11 @@ CONFIG_MFD_RC5T583=y
 CONFIG_MFD_SEC_CORE=y
 CONFIG_MFD_SI476X_CORE=m
 CONFIG_MFD_SM501=m
-# CONFIG_MFD_SM501_GPIO is not set
+CONFIG_MFD_SM501_GPIO=y
 CONFIG_MFD_SMSC=y
 CONFIG_ABX500_CORE=y
 CONFIG_AB3100_CORE=y
 CONFIG_AB3100_OTP=m
-CONFIG_MFD_STMPE=y
-
-#
-# STMicroelectronics STMPE Interface Drivers
-#
-CONFIG_STMPE_I2C=y
-CONFIG_STMPE_SPI=y
 CONFIG_MFD_SYSCON=y
 CONFIG_MFD_TI_AM335X_TSCADC=m
 CONFIG_MFD_LP3943=m
@@ -4178,7 +4230,8 @@ CONFIG_MFD_TPS65912=y
 CONFIG_MFD_TPS65912_I2C=y
 CONFIG_MFD_TPS65912_SPI=y
 CONFIG_MFD_TPS80031=y
-# CONFIG_TWL4030_CORE is not set
+CONFIG_TWL4030_CORE=y
+CONFIG_MFD_TWL4030_AUDIO=y
 CONFIG_TWL6040_CORE=y
 CONFIG_MFD_WL1273_CORE=m
 CONFIG_MFD_LM3533=m
@@ -4205,7 +4258,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=m
 CONFIG_REGULATOR_VIRTUAL_CONSUMER=m
 CONFIG_REGULATOR_USERSPACE_CONSUMER=m
 CONFIG_REGULATOR_88PM800=m
-CONFIG_REGULATOR_88PM8607=y
+CONFIG_REGULATOR_88PM8607=m
 CONFIG_REGULATOR_ACT8865=m
 CONFIG_REGULATOR_AD5398=m
 CONFIG_REGULATOR_ANATOP=m
@@ -4213,6 +4266,7 @@ CONFIG_REGULATOR_AAT2870=m
 CONFIG_REGULATOR_AB3100=m
 CONFIG_REGULATOR_ARIZONA=m
 CONFIG_REGULATOR_AS3711=m
+CONFIG_REGULATOR_AXP20X=m
 CONFIG_REGULATOR_BCM590XX=m
 CONFIG_REGULATOR_DA903X=m
 CONFIG_REGULATOR_DA9052=m
@@ -4224,9 +4278,10 @@ CONFIG_REGULATOR_GPIO=m
 CONFIG_REGULATOR_ISL6271A=m
 CONFIG_REGULATOR_LP3971=m
 CONFIG_REGULATOR_LP3972=m
-CONFIG_REGULATOR_LP872X=y
+CONFIG_REGULATOR_LP872X=m
 CONFIG_REGULATOR_LP8755=m
-CONFIG_REGULATOR_LP8788=y
+CONFIG_REGULATOR_LP8788=m
+CONFIG_REGULATOR_LTC3589=m
 CONFIG_REGULATOR_MAX14577=m
 CONFIG_REGULATOR_MAX1586=m
 CONFIG_REGULATOR_MAX8649=m
@@ -4248,7 +4303,7 @@ CONFIG_REGULATOR_PCF50633=m
 CONFIG_REGULATOR_PFUZE100=m
 CONFIG_REGULATOR_RC5T583=m
 CONFIG_REGULATOR_S2MPA01=m
-# CONFIG_REGULATOR_S2MPS11 is not set
+CONFIG_REGULATOR_S2MPS11=m
 CONFIG_REGULATOR_S5M8767=m
 CONFIG_REGULATOR_TPS51632=m
 CONFIG_REGULATOR_TPS6105X=m
@@ -4262,6 +4317,7 @@ CONFIG_REGULATOR_TPS6586X=m
 CONFIG_REGULATOR_TPS65910=m
 CONFIG_REGULATOR_TPS65912=m
 CONFIG_REGULATOR_TPS80031=m
+CONFIG_REGULATOR_TWL4030=m
 CONFIG_REGULATOR_WM831X=m
 CONFIG_REGULATOR_WM8350=m
 CONFIG_REGULATOR_WM8400=m
@@ -4276,8 +4332,9 @@ CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
 CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
 CONFIG_MEDIA_RADIO_SUPPORT=y
 CONFIG_MEDIA_RC_SUPPORT=y
-# CONFIG_MEDIA_CONTROLLER is not set
+CONFIG_MEDIA_CONTROLLER=y
 CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
 CONFIG_VIDEO_V4L2=m
 # CONFIG_VIDEO_ADV_DEBUG is not set
 # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
@@ -4293,6 +4350,7 @@ CONFIG_VIDEOBUF2_MEMOPS=m
 CONFIG_VIDEOBUF2_DMA_CONTIG=m
 CONFIG_VIDEOBUF2_VMALLOC=m
 CONFIG_VIDEOBUF2_DMA_SG=m
+CONFIG_VIDEOBUF2_DVB=m
 CONFIG_DVB_CORE=m
 CONFIG_DVB_NET=y
 CONFIG_TTPCI_EEPROM=m
@@ -4353,6 +4411,7 @@ CONFIG_USB_GL860=m
 CONFIG_USB_GSPCA_BENQ=m
 CONFIG_USB_GSPCA_CONEX=m
 CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_DTCS033=m
 CONFIG_USB_GSPCA_ETOMS=m
 CONFIG_USB_GSPCA_FINEPIX=m
 CONFIG_USB_GSPCA_JEILINJ=m
@@ -4568,6 +4627,7 @@ CONFIG_VIDEO_SH_MOBILE_CEU=m
 CONFIG_V4L_MEM2MEM_DRIVERS=y
 CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m
 CONFIG_VIDEO_SH_VEU=m
+CONFIG_VIDEO_RENESAS_VSP1=m
 CONFIG_V4L_TEST_DRIVERS=y
 CONFIG_VIDEO_VIVI=m
 CONFIG_VIDEO_MEM2MEM_TESTDEV=m
@@ -4781,6 +4841,7 @@ CONFIG_MEDIA_TUNER_E4000=m
 CONFIG_MEDIA_TUNER_FC2580=m
 CONFIG_MEDIA_TUNER_M88TS2022=m
 CONFIG_MEDIA_TUNER_TUA9001=m
+CONFIG_MEDIA_TUNER_SI2157=m
 CONFIG_MEDIA_TUNER_IT913X=m
 CONFIG_MEDIA_TUNER_R820T=m
 
@@ -4853,6 +4914,7 @@ CONFIG_DVB_STV0367=m
 CONFIG_DVB_CXD2820R=m
 CONFIG_DVB_RTL2830=m
 CONFIG_DVB_RTL2832=m
+CONFIG_DVB_SI2168=m
 
 #
 # DVB-C (cable) frontends
@@ -4949,10 +5011,11 @@ CONFIG_DRM_TTM=m
 CONFIG_DRM_I2C_CH7006=m
 CONFIG_DRM_I2C_SIL164=m
 CONFIG_DRM_I2C_NXP_TDA998X=m
+CONFIG_DRM_PTN3460=m
 CONFIG_DRM_TDFX=m
 CONFIG_DRM_R128=m
 CONFIG_DRM_RADEON=m
-CONFIG_DRM_RADEON_UMS=y
+# CONFIG_DRM_RADEON_UMS is not set
 CONFIG_DRM_NOUVEAU=m
 CONFIG_NOUVEAU_DEBUG=5
 CONFIG_NOUVEAU_DEBUG_DEFAULT=3
@@ -4962,7 +5025,6 @@ CONFIG_DRM_I915=m
 CONFIG_DRM_I915_KMS=y
 CONFIG_DRM_I915_FBDEV=y
 CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT=y
-# CONFIG_DRM_I915_UMS is not set
 CONFIG_DRM_MGA=m
 CONFIG_DRM_SIS=m
 CONFIG_DRM_VIA=m
@@ -4972,14 +5034,13 @@ CONFIG_DRM_VMWGFX_FBCON=y
 CONFIG_DRM_GMA500=m
 CONFIG_DRM_GMA600=y
 CONFIG_DRM_GMA3600=y
-# CONFIG_DRM_MEDFIELD is not set
+CONFIG_DRM_MEDFIELD=y
 CONFIG_DRM_UDL=m
 CONFIG_DRM_AST=m
 # CONFIG_DRM_MGAG200 is not set
 CONFIG_DRM_CIRRUS_QEMU=m
 CONFIG_DRM_QXL=m
 CONFIG_DRM_BOCHS=m
-CONFIG_DRM_PTN3460=m
 
 #
 # Frame buffer Devices
@@ -5036,7 +5097,7 @@ CONFIG_FB_LE80578=m
 CONFIG_FB_CARILLO_RANCH=m
 CONFIG_FB_INTEL=m
 # CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
+CONFIG_FB_INTEL_I2C=y
 CONFIG_FB_MATROX=m
 CONFIG_FB_MATROX_MILLENIUM=y
 CONFIG_FB_MATROX_MYSTIQUE=y
@@ -5057,7 +5118,7 @@ CONFIG_FB_ATY_BACKLIGHT=y
 CONFIG_FB_S3=m
 CONFIG_FB_S3_DDC=y
 CONFIG_FB_SAVAGE=m
-# CONFIG_FB_SAVAGE_I2C is not set
+CONFIG_FB_SAVAGE_I2C=y
 # CONFIG_FB_SAVAGE_ACCEL is not set
 CONFIG_FB_SIS=m
 CONFIG_FB_SIS_300=y
@@ -5082,12 +5143,9 @@ CONFIG_FB_GEODE=y
 CONFIG_FB_GEODE_LX=m
 CONFIG_FB_GEODE_GX=m
 CONFIG_FB_GEODE_GX1=m
-CONFIG_FB_TMIO=m
-CONFIG_FB_TMIO_ACCELL=y
 CONFIG_FB_SM501=m
 CONFIG_FB_SMSCUFX=m
 CONFIG_FB_UDL=m
-CONFIG_FB_GOLDFISH=m
 # CONFIG_FB_VIRTUAL is not set
 CONFIG_XEN_FBDEV_FRONTEND=m
 CONFIG_FB_METRONOME=m
@@ -5100,7 +5158,6 @@ CONFIG_FB_AUO_K1900=m
 CONFIG_FB_AUO_K1901=m
 CONFIG_FB_HYPERV=m
 CONFIG_FB_SIMPLE=y
-CONFIG_EXYNOS_VIDEO=y
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
 CONFIG_LCD_CLASS_DEVICE=m
 CONFIG_LCD_L4F00242T03=m
@@ -5117,7 +5174,6 @@ CONFIG_LCD_AMS369FG06=m
 CONFIG_LCD_LMS501KF03=m
 CONFIG_LCD_HX8357=m
 CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_ATMEL_PWM=m
 CONFIG_BACKLIGHT_GENERIC=m
 CONFIG_BACKLIGHT_LM3533=m
 CONFIG_BACKLIGHT_CARILLO_RANCH=m
@@ -5138,6 +5194,7 @@ CONFIG_BACKLIGHT_LM3630A=m
 CONFIG_BACKLIGHT_LM3639=m
 CONFIG_BACKLIGHT_LP855X=m
 CONFIG_BACKLIGHT_LP8788=m
+CONFIG_BACKLIGHT_PANDORA=m
 CONFIG_BACKLIGHT_TPS65217=m
 CONFIG_BACKLIGHT_AS3711=m
 CONFIG_BACKLIGHT_GPIO=m
@@ -5162,17 +5219,20 @@ CONFIG_LOGO=y
 # CONFIG_LOGO_LINUX_CLUT224 is not set
 CONFIG_LOGO_LIBRE_CLUT224=y
 CONFIG_SOUND=m
-# CONFIG_SOUND_OSS_CORE is not set
+CONFIG_SOUND_OSS_CORE=y
+CONFIG_SOUND_OSS_CORE_PRECLAIM=y
 CONFIG_SND=m
 CONFIG_SND_TIMER=m
 CONFIG_SND_PCM=m
+CONFIG_SND_DMAENGINE_PCM=m
 CONFIG_SND_HWDEP=m
 CONFIG_SND_RAWMIDI=m
 CONFIG_SND_COMPRESS_OFFLOAD=m
 CONFIG_SND_JACK=y
 CONFIG_SND_SEQUENCER=m
 CONFIG_SND_SEQ_DUMMY=m
-# CONFIG_SND_MIXER_OSS is not set
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
 # CONFIG_SND_PCM_OSS is not set
 # CONFIG_SND_SEQUENCER_OSS is not set
 CONFIG_SND_HRTIMER=m
@@ -5182,9 +5242,7 @@ CONFIG_SND_MAX_CARDS=32
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_VERBOSE_PRINTK is not set
-CONFIG_SND_DEBUG=y
-# CONFIG_SND_DEBUG_VERBOSE is not set
-CONFIG_SND_PCM_XRUN_DEBUG=y
+# CONFIG_SND_DEBUG is not set
 CONFIG_SND_VMASTER=y
 CONFIG_SND_KCTL_JACK=y
 CONFIG_SND_DMA_SGBUF=y
@@ -5353,8 +5411,6 @@ CONFIG_SND_HDA_CODEC_SI3054=m
 CONFIG_SND_HDA_GENERIC=m
 CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
 CONFIG_SND_SPI=y
-CONFIG_SND_AT73C213=m
-CONFIG_SND_AT73C213_TARGET_BITRATE=48000
 CONFIG_SND_USB=y
 CONFIG_SND_USB_AUDIO=m
 CONFIG_SND_USB_UA101=m
@@ -5364,18 +5420,36 @@ CONFIG_SND_USB_CAIAQ_INPUT=y
 CONFIG_SND_USB_US122L=m
 CONFIG_SND_USB_6FIRE=m
 CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
 CONFIG_SND_FIREWIRE=y
 CONFIG_SND_FIREWIRE_LIB=m
 CONFIG_SND_DICE=m
 CONFIG_SND_FIREWIRE_SPEAKERS=m
 CONFIG_SND_ISIGHT=m
 CONFIG_SND_SCS1X=m
+CONFIG_SND_FIREWORKS=m
+CONFIG_SND_BEBOB=m
 CONFIG_SND_PCMCIA=y
 CONFIG_SND_VXPOCKET=m
 CONFIG_SND_PDAUDIOCF=m
 CONFIG_SND_SOC=m
+CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
 CONFIG_SND_ATMEL_SOC=m
 CONFIG_SND_DESIGNWARE_I2S=m
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+CONFIG_SND_SOC_FSL_SAI=m
+CONFIG_SND_SOC_FSL_SSI=m
+CONFIG_SND_SOC_FSL_SPDIF=m
+CONFIG_SND_SOC_FSL_ESAI=m
+CONFIG_SND_SOC_FSL_UTILS=m
+CONFIG_SND_SOC_IMX_AUDMUX=m
 CONFIG_SND_MFLD_MACHINE=m
 CONFIG_SND_SST_MFLD_PLATFORM=m
 CONFIG_SND_SOC_INTEL_SST=m
@@ -5384,6 +5458,7 @@ CONFIG_SND_SOC_INTEL_HASWELL=m
 CONFIG_SND_SOC_INTEL_BAYTRAIL=m
 CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
 CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
+CONFIG_SND_SOC_INTEL_BYT_MAX98090_MACH=m
 CONFIG_SND_SOC_I2C_AND_SPI=m
 
 #
@@ -5394,25 +5469,31 @@ CONFIG_SND_SOC_AK4104=m
 CONFIG_SND_SOC_AK4554=m
 CONFIG_SND_SOC_AK4642=m
 CONFIG_SND_SOC_AK5386=m
+CONFIG_SND_SOC_ALC5623=m
 CONFIG_SND_SOC_CS42L52=m
+CONFIG_SND_SOC_CS42L56=m
 CONFIG_SND_SOC_CS42L73=m
 CONFIG_SND_SOC_CS4270=m
 CONFIG_SND_SOC_CS4271=m
 CONFIG_SND_SOC_CS42XX8=m
 CONFIG_SND_SOC_CS42XX8_I2C=m
 CONFIG_SND_SOC_HDMI_CODEC=m
+CONFIG_SND_SOC_MAX98090=m
 CONFIG_SND_SOC_PCM1681=m
 CONFIG_SND_SOC_PCM1792A=m
 CONFIG_SND_SOC_PCM512x=m
 CONFIG_SND_SOC_PCM512x_I2C=m
 CONFIG_SND_SOC_PCM512x_SPI=m
+CONFIG_SND_SOC_RL6231=m
 CONFIG_SND_SOC_RT5640=m
 CONFIG_SND_SOC_SGTL5000=m
 CONFIG_SND_SOC_SI476X=m
 CONFIG_SND_SOC_SIGMADSP=m
+CONFIG_SND_SOC_SIGMADSP_I2C=m
 CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m
 CONFIG_SND_SOC_SN95031=m
 CONFIG_SND_SOC_SPDIF=m
+CONFIG_SND_SOC_STA350=m
 CONFIG_SND_SOC_TAS5086=m
 CONFIG_SND_SOC_TLV320AIC3X=m
 CONFIG_SND_SOC_WM8510=m
@@ -5507,6 +5588,7 @@ CONFIG_SONY_FF=y
 CONFIG_HID_SPEEDLINK=m
 CONFIG_HID_STEELSERIES=m
 CONFIG_HID_SUNPLUS=m
+CONFIG_HID_RMI=m
 CONFIG_HID_GREENASIA=m
 CONFIG_GREENASIA_FF=y
 CONFIG_HID_HYPERV_MOUSE=m
@@ -5547,7 +5629,6 @@ CONFIG_USB_SUPPORT=y
 CONFIG_USB_COMMON=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB=y
-# CONFIG_USB_DEBUG is not set
 CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
 
 #
@@ -5558,6 +5639,7 @@ CONFIG_USB_DYNAMIC_MINORS=y
 CONFIG_USB_OTG=y
 # CONFIG_USB_OTG_WHITELIST is not set
 # CONFIG_USB_OTG_BLACKLIST_HUB is not set
+CONFIG_USB_OTG_FSM=m
 CONFIG_USB_MON=m
 CONFIG_USB_WUSB=m
 CONFIG_USB_WUSB_CBAF=m
@@ -5580,8 +5662,9 @@ CONFIG_USB_ISP1760_HCD=m
 CONFIG_USB_ISP1362_HCD=m
 CONFIG_USB_FUSBH200_HCD=m
 CONFIG_USB_FOTG210_HCD=m
+CONFIG_USB_MAX3421_HCD=m
 CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PCI=y
+CONFIG_USB_OHCI_HCD_PCI=m
 CONFIG_USB_OHCI_HCD_PLATFORM=y
 CONFIG_USB_UHCI_HCD=y
 CONFIG_USB_U132_HCD=m
@@ -5651,16 +5734,21 @@ CONFIG_USB_DWC3_DUAL_ROLE=y
 #
 # Platform Glue Driver Support
 #
-CONFIG_USB_DWC3_OMAP=m
-CONFIG_USB_DWC3_EXYNOS=m
 CONFIG_USB_DWC3_PCI=m
-CONFIG_USB_DWC3_KEYSTONE=m
 
 #
 # Debugging features
 #
 # CONFIG_USB_DWC3_DEBUG is not set
-CONFIG_USB_DWC2=m
+CONFIG_USB_DWC2=y
+CONFIG_USB_DWC2_HOST=m
+CONFIG_USB_DWC2_PLATFORM=y
+CONFIG_USB_DWC2_PCI=y
+
+#
+# Gadget mode requires USB Gadget support to be enabled
+#
+CONFIG_USB_DWC2_PERIPHERAL=m
 # CONFIG_USB_DWC2_DEBUG is not set
 # CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
 CONFIG_USB_CHIPIDEA=m
@@ -5777,7 +5865,6 @@ CONFIG_USB_XUSBATM=m
 # USB Physical Layer drivers
 #
 CONFIG_USB_PHY=y
-CONFIG_USB_OTG_FSM=m
 CONFIG_NOP_USB_XCEIV=m
 CONFIG_SAMSUNG_USBPHY=m
 CONFIG_SAMSUNG_USB2PHY=m
@@ -5786,7 +5873,6 @@ CONFIG_USB_GPIO_VBUS=m
 CONFIG_TAHVO_USB=m
 CONFIG_TAHVO_USB_HOST_BY_DEFAULT=y
 CONFIG_USB_ISP1301=m
-CONFIG_USB_RCAR_PHY=m
 CONFIG_USB_GADGET=m
 # CONFIG_USB_GADGET_DEBUG is not set
 # CONFIG_USB_GADGET_DEBUG_FILES is not set
@@ -5802,7 +5888,6 @@ CONFIG_USB_GR_UDC=m
 CONFIG_USB_R8A66597=m
 CONFIG_USB_RENESAS_USBHS_UDC=m
 CONFIG_USB_PXA27X=m
-CONFIG_USB_S3C_HSOTG=m
 CONFIG_USB_MV_UDC=m
 CONFIG_USB_MV_U3D=m
 # CONFIG_USB_M66592 is not set
@@ -5902,7 +5987,9 @@ CONFIG_MMC_CB710=m
 CONFIG_MMC_VIA_SDMMC=m
 CONFIG_MMC_VUB300=m
 CONFIG_MMC_USHC=m
+CONFIG_MMC_USDHI6ROL0=m
 CONFIG_MMC_REALTEK_PCI=m
+CONFIG_MMC_REALTEK_USB=m
 CONFIG_MEMSTICK=m
 # CONFIG_MEMSTICK_DEBUG is not set
 
@@ -5920,6 +6007,7 @@ CONFIG_MEMSTICK_TIFM_MS=m
 CONFIG_MEMSTICK_JMICRON_38X=m
 CONFIG_MEMSTICK_R592=m
 CONFIG_MEMSTICK_REALTEK_PCI=m
+CONFIG_MEMSTICK_REALTEK_USB=m
 CONFIG_NEW_LEDS=y
 CONFIG_LEDS_CLASS=y
 
@@ -5927,7 +6015,6 @@ CONFIG_LEDS_CLASS=y
 # LED drivers
 #
 CONFIG_LEDS_88PM860X=m
-CONFIG_LEDS_ATMEL_PWM=m
 CONFIG_LEDS_LM3530=m
 CONFIG_LEDS_LM3533=m
 CONFIG_LEDS_LM3642=m
@@ -5946,7 +6033,6 @@ CONFIG_LEDS_LP8788=m
 CONFIG_LEDS_CLEVO_MAIL=m
 CONFIG_LEDS_PCA955X=m
 CONFIG_LEDS_PCA963X=m
-CONFIG_LEDS_PCA9685=m
 CONFIG_LEDS_WM831X_STATUS=m
 CONFIG_LEDS_WM8350=m
 CONFIG_LEDS_DA903X=m
@@ -5964,6 +6050,10 @@ CONFIG_LEDS_TCA6507=m
 CONFIG_LEDS_MAX8997=m
 CONFIG_LEDS_LM355x=m
 CONFIG_LEDS_OT200=m
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
 CONFIG_LEDS_BLINKM=m
 
 #
@@ -6010,7 +6100,7 @@ CONFIG_INFINIBAND_SRPT=m
 CONFIG_INFINIBAND_ISER=m
 CONFIG_INFINIBAND_ISERT=m
 CONFIG_EDAC=y
-CONFIG_EDAC_LEGACY_SYSFS=y
+# CONFIG_EDAC_LEGACY_SYSFS is not set
 # CONFIG_EDAC_DEBUG is not set
 CONFIG_EDAC_DECODE_MCE=m
 CONFIG_EDAC_MCE_INJ=m
@@ -6075,6 +6165,7 @@ CONFIG_RTC_DRV_PCF8583=m
 CONFIG_RTC_DRV_M41T80=m
 CONFIG_RTC_DRV_M41T80_WDT=y
 CONFIG_RTC_DRV_BQ32K=m
+CONFIG_RTC_DRV_TWL4030=m
 CONFIG_RTC_DRV_TPS6586X=m
 CONFIG_RTC_DRV_TPS65910=m
 CONFIG_RTC_DRV_TPS80031=m
@@ -6093,6 +6184,7 @@ CONFIG_RTC_DRV_S5M=m
 CONFIG_RTC_DRV_M41T93=m
 CONFIG_RTC_DRV_M41T94=m
 CONFIG_RTC_DRV_DS1305=m
+CONFIG_RTC_DRV_DS1343=m
 CONFIG_RTC_DRV_DS1347=m
 CONFIG_RTC_DRV_DS1390=m
 CONFIG_RTC_DRV_MAX6902=m
@@ -6101,6 +6193,7 @@ CONFIG_RTC_DRV_RS5C348=m
 CONFIG_RTC_DRV_DS3234=m
 CONFIG_RTC_DRV_PCF2123=m
 CONFIG_RTC_DRV_RX4581=m
+CONFIG_RTC_DRV_MCP795=m
 
 #
 # Platform RTC drivers
@@ -6113,6 +6206,7 @@ CONFIG_RTC_DRV_DS1553=m
 CONFIG_RTC_DRV_DS1742=m
 CONFIG_RTC_DRV_DA9052=m
 CONFIG_RTC_DRV_DA9055=m
+CONFIG_RTC_DRV_DA9063=m
 CONFIG_RTC_DRV_STK17TA8=m
 CONFIG_RTC_DRV_M48T86=m
 CONFIG_RTC_DRV_M48T35=m
@@ -6133,6 +6227,7 @@ CONFIG_RTC_DRV_AB3100=m
 CONFIG_RTC_DRV_PCAP=m
 CONFIG_RTC_DRV_MC13XXX=m
 CONFIG_RTC_DRV_MOXART=m
+CONFIG_RTC_DRV_XGENE=m
 
 #
 # HID Sensor RTC drivers
@@ -6379,15 +6474,13 @@ CONFIG_R8712U=m
 CONFIG_R8188EU=m
 CONFIG_88EU_AP_MODE=y
 CONFIG_88EU_P2P=y
+CONFIG_R8192EE=m
 CONFIG_R8723AU=m
 CONFIG_8723AU_AP_MODE=y
-CONFIG_8723AU_P2P=y
 CONFIG_8723AU_BT_COEXIST=y
 CONFIG_R8821AE=m
-CONFIG_RTS5139=m
-# CONFIG_RTS5139_DEBUG is not set
 CONFIG_RTS5208=m
-CONFIG_RTS5208_DEBUG=y
+# CONFIG_RTS5208_DEBUG is not set
 CONFIG_TRANZPORT=m
 CONFIG_IDE_PHISON=m
 CONFIG_LINE6_USB=m
@@ -6420,8 +6513,6 @@ CONFIG_AD7291=m
 CONFIG_AD7606=m
 CONFIG_AD7606_IFACE_PARALLEL=m
 CONFIG_AD7606_IFACE_SPI=m
-CONFIG_AD799X=m
-CONFIG_AD799X_RING_BUFFER=y
 CONFIG_AD7780=m
 CONFIG_AD7816=m
 CONFIG_AD7192=m
@@ -6507,7 +6598,6 @@ CONFIG_CXT1E1=m
 CONFIG_SBE_PMCC4_NCOMM=y
 CONFIG_FB_XGI=m
 CONFIG_ACPI_QUICKSTART=m
-CONFIG_SBE_2T3E3=m
 CONFIG_USB_ENESTORAGE=m
 CONFIG_BCM_WIMAX=m
 CONFIG_FT1000=m
@@ -6548,8 +6638,7 @@ CONFIG_VIDEO_GO7007_LOADER=m
 CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m
 CONFIG_USB_MSI3101=m
 CONFIG_MEDIA_TUNER_MSI001=m
-CONFIG_VIDEO_V4L2_INT_DEVICE=m
-CONFIG_VIDEO_TCM825X=m
+# CONFIG_VIDEO_TCM825X is not set
 # CONFIG_USB_SN9C102 is not set
 CONFIG_SOLO6X10=m
 CONFIG_DVB_RTL2832_SDR=m
@@ -6608,6 +6697,7 @@ CONFIG_ASUS_LAPTOP=m
 CONFIG_DELL_LAPTOP=m
 CONFIG_DELL_WMI=m
 CONFIG_DELL_WMI_AIO=m
+CONFIG_DELL_SMO8800=m
 CONFIG_FUJITSU_LAPTOP=m
 # CONFIG_FUJITSU_LAPTOP_DEBUG is not set
 CONFIG_FUJITSU_TABLET=m
@@ -6648,7 +6738,6 @@ CONFIG_INTEL_MID_POWER_BUTTON=m
 CONFIG_INTEL_MFLD_THERMAL=m
 CONFIG_INTEL_IPS=m
 CONFIG_IBM_RTL=m
-CONFIG_XO15_EBOOK=m
 CONFIG_SAMSUNG_LAPTOP=m
 CONFIG_MXM_WMI=m
 CONFIG_INTEL_OAKTRAIL=m
@@ -6660,6 +6749,10 @@ CONFIG_PVPANIC=m
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CHROMEOS_LAPTOP=m
 CONFIG_CHROMEOS_PSTORE=m
+
+#
+# SOC (System On Chip) specific Drivers
+#
 CONFIG_CLKDEV_LOOKUP=y
 CONFIG_HAVE_CLK_PREPARE=y
 CONFIG_COMMON_CLK=y
@@ -6745,6 +6838,7 @@ CONFIG_IIO_ST_ACCEL_3AXIS=m
 CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m
 CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m
 CONFIG_KXSD9=m
+CONFIG_MMA8452=m
 
 #
 # Analog to digital converters
@@ -6757,6 +6851,7 @@ CONFIG_AD7791=m
 CONFIG_AD7793=m
 CONFIG_AD7887=m
 CONFIG_AD7923=m
+CONFIG_AD799X=m
 CONFIG_LP8788_ADC=m
 CONFIG_MAX1363=m
 CONFIG_MCP320X=m
@@ -6765,6 +6860,8 @@ CONFIG_MEN_Z188_ADC=m
 CONFIG_NAU7802=m
 CONFIG_TI_ADC081C=m
 CONFIG_TI_AM335X_ADC=m
+CONFIG_TWL4030_MADC=m
+CONFIG_TWL6030_GPADC=m
 CONFIG_VIPERBOARD_ADC=m
 
 #
@@ -6874,6 +6971,7 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
 # Inclinometer sensors
 #
 CONFIG_HID_SENSOR_INCLINOMETER_3D=m
+CONFIG_HID_SENSOR_DEVICE_ROTATION=m
 
 #
 # Triggers - standalone
@@ -6885,14 +6983,21 @@ CONFIG_IIO_SYSFS_TRIGGER=m
 # Pressure sensors
 #
 CONFIG_HID_SENSOR_PRESS=m
+CONFIG_MPL115=m
 CONFIG_MPL3115=m
 CONFIG_IIO_ST_PRESS=m
 CONFIG_IIO_ST_PRESS_I2C=m
 CONFIG_IIO_ST_PRESS_SPI=m
 
 #
+# Lightning sensors
+#
+CONFIG_AS3935=m
+
+#
 # Temperature sensors
 #
+CONFIG_MLX90614=m
 CONFIG_TMP006=m
 CONFIG_NTB=m
 CONFIG_VME_BUS=y
@@ -6917,6 +7022,8 @@ CONFIG_PWM=y
 CONFIG_PWM_SYSFS=y
 CONFIG_PWM_LP3943=m
 CONFIG_PWM_LPSS=m
+CONFIG_PWM_TWL=m
+CONFIG_PWM_TWL_LED=m
 CONFIG_IPACK_BUS=m
 CONFIG_BOARD_TPCI200=m
 CONFIG_SERIAL_IPOCTAL=m
@@ -7095,7 +7202,9 @@ CONFIG_JFFS2_FS_DEBUG=0
 CONFIG_JFFS2_FS_WRITEBUFFER=y
 # CONFIG_JFFS2_FS_WBUF_VERIFY is not set
 # CONFIG_JFFS2_SUMMARY is not set
-# CONFIG_JFFS2_FS_XATTR is not set
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_FS_POSIX_ACL=y
+CONFIG_JFFS2_FS_SECURITY=y
 CONFIG_JFFS2_COMPRESSION_OPTIONS=y
 CONFIG_JFFS2_ZLIB=y
 CONFIG_JFFS2_LZO=y
@@ -7220,9 +7329,9 @@ CONFIG_NCPFS_EXTRAS=y
 CONFIG_CODA_FS=m
 CONFIG_AFS_FS=m
 # CONFIG_AFS_DEBUG is not set
-# CONFIG_AFS_FSCACHE is not set
+CONFIG_AFS_FSCACHE=y
 CONFIG_9P_FS=m
-# CONFIG_9P_FSCACHE is not set
+CONFIG_9P_FSCACHE=y
 CONFIG_9P_FS_POSIX_ACL=y
 CONFIG_9P_FS_SECURITY=y
 CONFIG_NLS=y
@@ -7296,7 +7405,6 @@ CONFIG_DYNAMIC_DEBUG=y
 # Compile-time checks and compiler options
 #
 # CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_INFO_REDUCED is not set
 # CONFIG_ENABLE_WARN_DEPRECATED is not set
 # CONFIG_ENABLE_MUST_CHECK is not set
 CONFIG_FRAME_WARN=1024
@@ -7372,6 +7480,7 @@ CONFIG_STACKTRACE=y
 # CONFIG_DEBUG_KOBJECT is not set
 CONFIG_DEBUG_BUGVERBOSE=y
 # CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_PI_LIST is not set
 # CONFIG_DEBUG_SG is not set
 # CONFIG_DEBUG_NOTIFIERS is not set
 # CONFIG_DEBUG_CREDENTIALS is not set
@@ -7390,7 +7499,7 @@ CONFIG_NOTIFIER_ERROR_INJECTION=m
 CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
 CONFIG_PM_NOTIFIER_ERROR_INJECT=m
 # CONFIG_FAULT_INJECTION is not set
-CONFIG_LATENCYTOP=y
+# CONFIG_LATENCYTOP is not set
 CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y
 # CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
 CONFIG_USER_STACKTRACE_SUPPORT=y
@@ -7436,6 +7545,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y
 # CONFIG_FTRACE_STARTUP_TEST is not set
 CONFIG_MMIOTRACE=y
 # CONFIG_MMIOTRACE_TEST is not set
+# CONFIG_TRACEPOINT_BENCHMARK is not set
 # CONFIG_RING_BUFFER_BENCHMARK is not set
 # CONFIG_RING_BUFFER_STARTUP_TEST is not set
 
@@ -7457,6 +7567,7 @@ CONFIG_TEST_KSTRTOX=m
 # CONFIG_DMA_API_DEBUG is not set
 CONFIG_TEST_MODULE=m
 CONFIG_TEST_USER_COPY=m
+CONFIG_TEST_BPF=m
 # CONFIG_SAMPLES is not set
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_KGDB=y
@@ -7505,7 +7616,7 @@ CONFIG_PERSISTENT_KEYRINGS=y
 CONFIG_BIG_KEYS=y
 CONFIG_TRUSTED_KEYS=y
 CONFIG_ENCRYPTED_KEYS=y
-# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+CONFIG_KEYS_DEBUG_PROC_KEYS=y
 # CONFIG_SECURITY_DMESG_RESTRICT is not set
 CONFIG_SECURITY=y
 CONFIG_SECURITYFS=y
@@ -7552,7 +7663,12 @@ CONFIG_IMA_DEFAULT_HASH_SHA1=y
 CONFIG_IMA_DEFAULT_HASH="sha1"
 CONFIG_IMA_APPRAISE=y
 CONFIG_EVM=y
-CONFIG_EVM_HMAC_VERSION=2
+
+#
+# EVM options
+#
+CONFIG_EVM_ATTR_FSUUID=y
+CONFIG_EVM_EXTRA_SMACK_XATTRS=y
 # CONFIG_DEFAULT_SECURITY_SELINUX is not set
 # CONFIG_DEFAULT_SECURITY_SMACK is not set
 # CONFIG_DEFAULT_SECURITY_TOMOYO is not set
@@ -7783,6 +7899,8 @@ CONFIG_TEXTSEARCH=y
 CONFIG_TEXTSEARCH_KMP=m
 CONFIG_TEXTSEARCH_BM=m
 CONFIG_TEXTSEARCH_FSM=m
+CONFIG_BTREE=y
+CONFIG_INTERVAL_TREE=y
 CONFIG_ASSOCIATIVE_ARRAY=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT_MAP=y
diff --git a/gnu/packages/linux-libre-x86_64.conf b/gnu/packages/linux-libre-x86_64.conf
index 9868074691..2549c9a6ec 100644
--- a/gnu/packages/linux-libre-x86_64.conf
+++ b/gnu/packages/linux-libre-x86_64.conf
@@ -1,6 +1,6 @@
 #
 # Automatically generated file; DO NOT EDIT.
-# Linux/x86 3.15.3-gnu Kernel Configuration
+# Linux/x86 3.16.0 Kernel Configuration
 #
 CONFIG_64BIT=y
 CONFIG_X86_64=y
@@ -39,6 +39,7 @@ CONFIG_X86_64_SMP=y
 CONFIG_X86_HT=y
 CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-rdi -fcall-saved-rsi -fcall-saved-rdx -fcall-saved-rcx -fcall-saved-r8 -fcall-saved-r9 -fcall-saved-r10 -fcall-saved-r11"
 CONFIG_ARCH_SUPPORTS_UPROBES=y
+CONFIG_FIX_EARLYCON_MEM=y
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 CONFIG_IRQ_WORK=y
 CONFIG_BUILDTIME_EXTABLE_SORT=y
@@ -69,6 +70,7 @@ CONFIG_SYSVIPC=y
 CONFIG_SYSVIPC_SYSCTL=y
 CONFIG_POSIX_MQUEUE=y
 CONFIG_POSIX_MQUEUE_SYSCTL=y
+CONFIG_CROSS_MEMORY_ATTACH=y
 CONFIG_FHANDLE=y
 CONFIG_USELIB=y
 CONFIG_AUDIT=y
@@ -82,6 +84,7 @@ CONFIG_AUDIT_TREE=y
 #
 CONFIG_GENERIC_IRQ_PROBE=y
 CONFIG_GENERIC_IRQ_SHOW=y
+CONFIG_GENERIC_IRQ_LEGACY_ALLOC_HWIRQ=y
 CONFIG_GENERIC_PENDING_IRQ=y
 CONFIG_GENERIC_IRQ_CHIP=y
 CONFIG_IRQ_DOMAIN=y
@@ -131,7 +134,7 @@ CONFIG_TREE_RCU=y
 CONFIG_RCU_STALL_COMMON=y
 CONFIG_CONTEXT_TRACKING=y
 CONFIG_RCU_USER_QS=y
-CONFIG_CONTEXT_TRACKING_FORCE=y
+# CONFIG_CONTEXT_TRACKING_FORCE is not set
 CONFIG_RCU_FANOUT=64
 CONFIG_RCU_FANOUT_LEAF=16
 # CONFIG_RCU_FANOUT_EXACT is not set
@@ -165,7 +168,7 @@ CONFIG_CGROUP_PERF=y
 CONFIG_CGROUP_SCHED=y
 CONFIG_FAIR_GROUP_SCHED=y
 CONFIG_CFS_BANDWIDTH=y
-CONFIG_RT_GROUP_SCHED=y
+# CONFIG_RT_GROUP_SCHED is not set
 CONFIG_BLK_CGROUP=y
 # CONFIG_DEBUG_BLK_CGROUP is not set
 CONFIG_CHECKPOINT_RESTORE=y
@@ -176,7 +179,6 @@ CONFIG_USER_NS=y
 CONFIG_PID_NS=y
 CONFIG_NET_NS=y
 CONFIG_SCHED_AUTOGROUP=y
-CONFIG_MM_OWNER=y
 # CONFIG_SYSFS_DEPRECATED is not set
 CONFIG_RELAY=y
 CONFIG_BLK_DEV_INITRD=y
@@ -195,6 +197,7 @@ CONFIG_SYSCTL_EXCEPTION_TRACE=y
 CONFIG_HAVE_PCSPKR_PLATFORM=y
 CONFIG_EXPERT=y
 CONFIG_UID16=y
+CONFIG_SGETMASK_SYSCALL=y
 CONFIG_SYSFS_SYSCALL=y
 CONFIG_SYSCTL_SYSCALL=y
 CONFIG_KALLSYMS=y
@@ -251,6 +254,7 @@ CONFIG_HAVE_OPTPROBES=y
 CONFIG_HAVE_KPROBES_ON_FTRACE=y
 CONFIG_HAVE_ARCH_TRACEHOOK=y
 CONFIG_HAVE_DMA_ATTRS=y
+CONFIG_HAVE_DMA_CONTIGUOUS=y
 CONFIG_GENERIC_SMP_IDLE_THREAD=y
 CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y
 CONFIG_HAVE_CLK=y
@@ -313,11 +317,11 @@ CONFIG_BLK_CMDLINE_PARSER=y
 #
 CONFIG_PARTITION_ADVANCED=y
 CONFIG_ACORN_PARTITION=y
-# CONFIG_ACORN_PARTITION_CUMANA is not set
-# CONFIG_ACORN_PARTITION_EESOX is not set
+CONFIG_ACORN_PARTITION_CUMANA=y
+CONFIG_ACORN_PARTITION_EESOX=y
 CONFIG_ACORN_PARTITION_ICS=y
-# CONFIG_ACORN_PARTITION_ADFS is not set
-# CONFIG_ACORN_PARTITION_POWERTEC is not set
+CONFIG_ACORN_PARTITION_ADFS=y
+CONFIG_ACORN_PARTITION_POWERTEC=y
 CONFIG_ACORN_PARTITION_RISCIX=y
 CONFIG_AIX_PARTITION=y
 CONFIG_OSF_PARTITION=y
@@ -360,7 +364,11 @@ CONFIG_INLINE_READ_UNLOCK=y
 CONFIG_INLINE_READ_UNLOCK_IRQ=y
 CONFIG_INLINE_WRITE_UNLOCK=y
 CONFIG_INLINE_WRITE_UNLOCK_IRQ=y
+CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y
 CONFIG_MUTEX_SPIN_ON_OWNER=y
+CONFIG_RWSEM_SPIN_ON_OWNER=y
+CONFIG_ARCH_USE_QUEUE_RWLOCK=y
+CONFIG_QUEUE_RWLOCK=y
 CONFIG_FREEZER=y
 
 #
@@ -374,6 +382,7 @@ CONFIG_X86_EXTENDED_PLATFORM=y
 CONFIG_X86_NUMACHIP=y
 # CONFIG_X86_VSMP is not set
 # CONFIG_X86_UV is not set
+# CONFIG_X86_GOLDFISH is not set
 CONFIG_X86_INTEL_LPSS=y
 CONFIG_X86_SUPPORTS_MEMORY_FAILURE=y
 CONFIG_SCHED_OMIT_FRAME_POINTER=y
@@ -422,8 +431,8 @@ CONFIG_IOMMU_HELPER=y
 CONFIG_NR_CPUS=256
 CONFIG_SCHED_SMT=y
 CONFIG_SCHED_MC=y
-CONFIG_PREEMPT_NONE=y
-# CONFIG_PREEMPT_VOLUNTARY is not set
+# CONFIG_PREEMPT_NONE is not set
+CONFIG_PREEMPT_VOLUNTARY=y
 # CONFIG_PREEMPT is not set
 CONFIG_X86_LOCAL_APIC=y
 CONFIG_X86_IO_APIC=y
@@ -434,13 +443,16 @@ CONFIG_X86_MCE_AMD=y
 CONFIG_X86_MCE_THRESHOLD=y
 CONFIG_X86_MCE_INJECT=m
 CONFIG_X86_THERMAL_VECTOR=y
+CONFIG_X86_16BIT=y
+CONFIG_X86_ESPFIX64=y
 CONFIG_I8K=m
-CONFIG_MICROCODE=m
+CONFIG_MICROCODE=y
 CONFIG_MICROCODE_INTEL=y
 CONFIG_MICROCODE_AMD=y
 CONFIG_MICROCODE_OLD_INTERFACE=y
-# CONFIG_MICROCODE_INTEL_EARLY is not set
-# CONFIG_MICROCODE_AMD_EARLY is not set
+CONFIG_MICROCODE_INTEL_EARLY=y
+CONFIG_MICROCODE_AMD_EARLY=y
+CONFIG_MICROCODE_EARLY=y
 CONFIG_X86_MSR=m
 CONFIG_X86_CPUID=m
 CONFIG_ARCH_PHYS_ADDR_T_64BIT=y
@@ -496,7 +508,6 @@ CONFIG_HWPOISON_INJECT=m
 CONFIG_TRANSPARENT_HUGEPAGE=y
 CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y
 # CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set
-CONFIG_CROSS_MEMORY_ATTACH=y
 CONFIG_CLEANCACHE=y
 CONFIG_FRONTSWAP=y
 CONFIG_CMA=y
@@ -533,6 +544,9 @@ CONFIG_CRASH_DUMP=y
 CONFIG_KEXEC_JUMP=y
 CONFIG_PHYSICAL_START=0x1000000
 CONFIG_RELOCATABLE=y
+CONFIG_RANDOMIZE_BASE=y
+CONFIG_RANDOMIZE_BASE_MAX_OFFSET=0x40000000
+CONFIG_X86_NEED_RELOCS=y
 CONFIG_PHYSICAL_ALIGN=0x1000000
 CONFIG_HOTPLUG_CPU=y
 # CONFIG_BOOTPARAM_HOTPLUG_CPU0 is not set
@@ -555,7 +569,9 @@ CONFIG_PM_STD_PARTITION=""
 CONFIG_PM_SLEEP=y
 CONFIG_PM_SLEEP_SMP=y
 # CONFIG_PM_AUTOSLEEP is not set
-# CONFIG_PM_WAKELOCKS is not set
+CONFIG_PM_WAKELOCKS=y
+CONFIG_PM_WAKELOCKS_LIMIT=100
+CONFIG_PM_WAKELOCKS_GC=y
 CONFIG_PM_RUNTIME=y
 CONFIG_PM=y
 CONFIG_PM_DEBUG=y
@@ -754,6 +770,7 @@ CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
 CONFIG_SYSVIPC_COMPAT=y
 CONFIG_KEYS_COMPAT=y
 CONFIG_X86_DEV_DMA_OPS=y
+CONFIG_IOSF_MBI=m
 CONFIG_NET=y
 CONFIG_COMPAT_NETLINK_MESSAGES=y
 
@@ -948,7 +965,7 @@ CONFIG_NETFILTER_XT_TARGET_MARK=m
 CONFIG_NETFILTER_XT_TARGET_NETMAP=m
 CONFIG_NETFILTER_XT_TARGET_NFLOG=m
 CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
-CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
+# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set
 CONFIG_NETFILTER_XT_TARGET_RATEEST=m
 CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
 CONFIG_NETFILTER_XT_TARGET_TEE=m
@@ -1024,7 +1041,7 @@ CONFIG_IP_SET_HASH_NETPORT=m
 CONFIG_IP_SET_HASH_NETIFACE=m
 CONFIG_IP_SET_LIST_SET=m
 CONFIG_IP_VS=m
-# CONFIG_IP_VS_IPV6 is not set
+CONFIG_IP_VS_IPV6=y
 # CONFIG_IP_VS_DEBUG is not set
 CONFIG_IP_VS_TAB_BITS=12
 
@@ -1136,6 +1153,7 @@ CONFIG_IP6_NF_TARGET_NPT=m
 #
 CONFIG_DECNET_NF_GRABULATOR=m
 CONFIG_NF_TABLES_BRIDGE=m
+CONFIG_NFT_BRIDGE_META=m
 CONFIG_BRIDGE_NF_EBTABLES=m
 CONFIG_BRIDGE_EBT_BROUTE=m
 CONFIG_BRIDGE_EBT_T_FILTER=m
@@ -1365,9 +1383,7 @@ CONFIG_CAN_SLCAN=m
 CONFIG_CAN_DEV=m
 CONFIG_CAN_CALC_BITTIMING=y
 CONFIG_CAN_LEDS=y
-CONFIG_CAN_MCP251X=m
 CONFIG_CAN_JANZ_ICAN3=m
-CONFIG_PCH_CAN=m
 CONFIG_CAN_SJA1000=m
 CONFIG_CAN_SJA1000_ISA=m
 CONFIG_CAN_SJA1000_PLATFORM=m
@@ -1386,10 +1402,16 @@ CONFIG_CAN_CC770_ISA=m
 CONFIG_CAN_CC770_PLATFORM=m
 
 #
+# CAN SPI interfaces
+#
+CONFIG_CAN_MCP251X=m
+
+#
 # CAN USB interfaces
 #
 CONFIG_CAN_EMS_USB=m
 CONFIG_CAN_ESD_USB2=m
+CONFIG_CAN_GS_USB=m
 CONFIG_CAN_KVASER_USB=m
 CONFIG_CAN_PEAK_USB=m
 CONFIG_CAN_8DEV_USB=m
@@ -1496,7 +1518,7 @@ CONFIG_WEXT_PROC=y
 CONFIG_WEXT_SPY=y
 CONFIG_WEXT_PRIV=y
 CONFIG_CFG80211=m
-CONFIG_NL80211_TESTMODE=y
+# CONFIG_NL80211_TESTMODE is not set
 # CONFIG_CFG80211_DEVELOPER_WARNINGS is not set
 # CONFIG_CFG80211_REG_DEBUG is not set
 # CONFIG_CFG80211_CERTIFICATION_ONUS is not set
@@ -1564,6 +1586,8 @@ CONFIG_NFC_MICROREAD_I2C=m
 CONFIG_NFC_MICROREAD_MEI=m
 CONFIG_NFC_MRVL=m
 CONFIG_NFC_MRVL_USB=m
+CONFIG_NFC_ST21NFCA=m
+CONFIG_NFC_ST21NFCA_I2C=m
 CONFIG_HAVE_BPF_JIT=y
 
 #
@@ -1573,6 +1597,7 @@ CONFIG_HAVE_BPF_JIT=y
 #
 # Generic Driver Options
 #
+CONFIG_UEVENT_HELPER=y
 CONFIG_UEVENT_HELPER_PATH=""
 CONFIG_DEVTMPFS=y
 CONFIG_DEVTMPFS_MOUNT=y
@@ -1593,6 +1618,18 @@ CONFIG_REGMAP_SPI=y
 CONFIG_REGMAP_MMIO=y
 CONFIG_REGMAP_IRQ=y
 CONFIG_DMA_SHARED_BUFFER=y
+CONFIG_DMA_CMA=y
+
+#
+# Default contiguous memory area size:
+#
+CONFIG_CMA_SIZE_MBYTES=64
+CONFIG_CMA_SIZE_SEL_MBYTES=y
+# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set
+# CONFIG_CMA_SIZE_SEL_MIN is not set
+# CONFIG_CMA_SIZE_SEL_MAX is not set
+CONFIG_CMA_ALIGNMENT=8
+CONFIG_CMA_AREAS=7
 
 #
 # Bus devices
@@ -1655,8 +1692,6 @@ CONFIG_MTD_ABSENT=m
 CONFIG_MTD_COMPLEX_MAPPINGS=y
 CONFIG_MTD_PHYSMAP=m
 # CONFIG_MTD_PHYSMAP_COMPAT is not set
-CONFIG_MTD_SC520CDP=m
-CONFIG_MTD_NETSC520=m
 CONFIG_MTD_SBC_GXX=m
 CONFIG_MTD_AMD76XROM=m
 CONFIG_MTD_ICHXROM=m
@@ -1725,18 +1760,19 @@ CONFIG_MTD_ONENAND_GENERIC=m
 CONFIG_MTD_ONENAND_2X_PROGRAM=y
 
 #
-# LPDDR flash memory drivers
+# LPDDR & LPDDR2 PCM memory drivers
 #
 CONFIG_MTD_LPDDR=m
 CONFIG_MTD_QINFO_PROBE=m
+CONFIG_MTD_SPI_NOR=m
 CONFIG_MTD_UBI=m
 CONFIG_MTD_UBI_WL_THRESHOLD=4096
 CONFIG_MTD_UBI_BEB_LIMIT=20
 CONFIG_MTD_UBI_FASTMAP=y
 CONFIG_MTD_UBI_GLUEBI=m
 CONFIG_MTD_UBI_BLOCK=y
-CONFIG_PARPORT=m
 CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y
+CONFIG_PARPORT=m
 CONFIG_PARPORT_PC=m
 CONFIG_PARPORT_SERIAL=m
 CONFIG_PARPORT_PC_FIFO=y
@@ -1826,7 +1862,6 @@ CONFIG_SENSORS_LIS3LV02D=m
 CONFIG_AD525X_DPOT=m
 CONFIG_AD525X_DPOT_I2C=m
 CONFIG_AD525X_DPOT_SPI=m
-CONFIG_ATMEL_PWM=m
 CONFIG_DUMMY_IRQ=m
 CONFIG_IBM_ASM=m
 CONFIG_PHANTOM=m
@@ -1834,7 +1869,6 @@ CONFIG_SGI_IOC4=m
 CONFIG_TIFM_CORE=m
 CONFIG_TIFM_7XX1=m
 CONFIG_ICS932S401=m
-CONFIG_ATMEL_SSC=m
 CONFIG_ENCLOSURE_SERVICES=m
 # CONFIG_CS5535_MFGPT is not set
 CONFIG_HP_ILO=m
@@ -1852,7 +1886,6 @@ CONFIG_VMWARE_BALLOON=m
 CONFIG_BMP085=y
 CONFIG_BMP085_I2C=m
 CONFIG_BMP085_SPI=m
-CONFIG_PCH_PHUB=m
 CONFIG_USB_SWITCH_FSA9480=m
 CONFIG_LATTICE_ECP3_CONFIG=m
 CONFIG_SRAM=y
@@ -1931,7 +1964,7 @@ CONFIG_SCSI_SCAN_ASYNC=y
 #
 # SCSI Transports
 #
-CONFIG_SCSI_SPI_ATTRS=y
+CONFIG_SCSI_SPI_ATTRS=m
 CONFIG_SCSI_FC_ATTRS=m
 CONFIG_SCSI_FC_TGT_ATTRS=y
 CONFIG_SCSI_ISCSI_ATTRS=m
@@ -1957,7 +1990,7 @@ CONFIG_SCSI_ACARD=m
 CONFIG_SCSI_AACRAID=m
 CONFIG_SCSI_AIC7XXX=m
 CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
-CONFIG_AIC7XXX_RESET_DELAY_MS=15000
+CONFIG_AIC7XXX_RESET_DELAY_MS=5000
 # CONFIG_AIC7XXX_DEBUG_ENABLE is not set
 CONFIG_AIC7XXX_DEBUG_MASK=0
 CONFIG_AIC7XXX_REG_PRETTY_PRINT=y
@@ -2022,10 +2055,11 @@ CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
 CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
 CONFIG_SCSI_SYM53C8XX_MMIO=y
 CONFIG_SCSI_IPR=m
-# CONFIG_SCSI_IPR_TRACE is not set
-# CONFIG_SCSI_IPR_DUMP is not set
+CONFIG_SCSI_IPR_TRACE=y
+CONFIG_SCSI_IPR_DUMP=y
 CONFIG_SCSI_QLOGIC_1280=m
 CONFIG_SCSI_QLA_FC=m
+CONFIG_TCM_QLA2XXX=m
 CONFIG_SCSI_QLA_ISCSI=m
 CONFIG_SCSI_LPFC=m
 # CONFIG_SCSI_LPFC_DEBUG_FS is not set
@@ -2230,7 +2264,12 @@ CONFIG_DUMMY=m
 CONFIG_EQUALIZER=m
 CONFIG_NET_FC=y
 CONFIG_IFB=m
-# CONFIG_NET_TEAM is not set
+CONFIG_NET_TEAM=m
+CONFIG_NET_TEAM_MODE_BROADCAST=m
+CONFIG_NET_TEAM_MODE_ROUNDROBIN=m
+CONFIG_NET_TEAM_MODE_RANDOM=m
+CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m
+CONFIG_NET_TEAM_MODE_LOADBALANCE=m
 CONFIG_MACVLAN=m
 CONFIG_MACVTAP=m
 CONFIG_VXLAN=m
@@ -2418,7 +2457,7 @@ CONFIG_MLX4_EN=m
 CONFIG_MLX4_EN_DCB=y
 CONFIG_MLX4_EN_VXLAN=y
 CONFIG_MLX4_CORE=m
-# CONFIG_MLX4_DEBUG is not set
+CONFIG_MLX4_DEBUG=y
 CONFIG_MLX5_CORE=m
 CONFIG_NET_VENDOR_MICREL=y
 CONFIG_KS8842=m
@@ -2442,7 +2481,6 @@ CONFIG_PCMCIA_PCNET=m
 CONFIG_NET_VENDOR_NVIDIA=y
 CONFIG_FORCEDETH=m
 CONFIG_NET_VENDOR_OKI=y
-CONFIG_PCH_GBE=m
 CONFIG_ETHOC=m
 CONFIG_NET_PACKET_ENGINE=y
 CONFIG_HAMACHI=m
@@ -2453,6 +2491,7 @@ CONFIG_QLCNIC=m
 CONFIG_QLCNIC_SRIOV=y
 CONFIG_QLCNIC_DCB=y
 CONFIG_QLCNIC_VXLAN=y
+CONFIG_QLCNIC_HWMON=y
 CONFIG_QLGE=m
 CONFIG_NETXEN_NIC=m
 CONFIG_NET_VENDOR_REALTEK=y
@@ -2523,27 +2562,27 @@ CONFIG_PHYLIB=y
 #
 # MII PHY device drivers
 #
-CONFIG_AT803X_PHY=y
-CONFIG_AMD_PHY=y
-CONFIG_MARVELL_PHY=y
-CONFIG_DAVICOM_PHY=y
-CONFIG_QSEMI_PHY=y
-CONFIG_LXT_PHY=y
-CONFIG_CICADA_PHY=y
-CONFIG_VITESSE_PHY=y
-CONFIG_SMSC_PHY=y
-CONFIG_BROADCOM_PHY=y
+CONFIG_AT803X_PHY=m
+CONFIG_AMD_PHY=m
+CONFIG_MARVELL_PHY=m
+CONFIG_DAVICOM_PHY=m
+CONFIG_QSEMI_PHY=m
+CONFIG_LXT_PHY=m
+CONFIG_CICADA_PHY=m
+CONFIG_VITESSE_PHY=m
+CONFIG_SMSC_PHY=m
+CONFIG_BROADCOM_PHY=m
 CONFIG_BCM7XXX_PHY=m
-CONFIG_BCM87XX_PHY=y
-CONFIG_ICPLUS_PHY=y
-CONFIG_REALTEK_PHY=y
-CONFIG_NATIONAL_PHY=y
-CONFIG_STE10XP=y
-CONFIG_LSI_ET1011C_PHY=y
-CONFIG_MICREL_PHY=y
+CONFIG_BCM87XX_PHY=m
+CONFIG_ICPLUS_PHY=m
+CONFIG_REALTEK_PHY=m
+CONFIG_NATIONAL_PHY=m
+CONFIG_STE10XP=m
+CONFIG_LSI_ET1011C_PHY=m
+CONFIG_MICREL_PHY=m
 CONFIG_FIXED_PHY=y
-CONFIG_MDIO_BITBANG=y
-CONFIG_MDIO_GPIO=y
+CONFIG_MDIO_BITBANG=m
+CONFIG_MDIO_GPIO=m
 CONFIG_MICREL_KS8995MA=m
 CONFIG_PLIP=m
 CONFIG_PPP=y
@@ -2671,6 +2710,9 @@ CONFIG_WCN36XX=m
 CONFIG_B43=m
 CONFIG_B43_BCMA=y
 CONFIG_B43_SSB=y
+CONFIG_B43_BUSES_BCMA_AND_SSB=y
+# CONFIG_B43_BUSES_BCMA is not set
+# CONFIG_B43_BUSES_SSB is not set
 CONFIG_B43_PCI_AUTOSELECT=y
 CONFIG_B43_PCICORE_AUTOSELECT=y
 # CONFIG_B43_PCMCIA is not set
@@ -2719,6 +2761,7 @@ CONFIG_IPW2200_QOS=y
 CONFIG_LIBIPW=m
 # CONFIG_LIBIPW_DEBUG is not set
 CONFIG_IWLWIFI=m
+CONFIG_IWLWIFI_LEDS=y
 CONFIG_IWLDVM=m
 CONFIG_IWLMVM=m
 CONFIG_IWLWIFI_OPMODE_MODULAR=y
@@ -2825,7 +2868,7 @@ CONFIG_CW1200=m
 CONFIG_CW1200_WLAN_SDIO=m
 CONFIG_CW1200_WLAN_SPI=m
 CONFIG_RSI_91X=m
-CONFIG_RSI_DEBUGFS=y
+# CONFIG_RSI_DEBUGFS is not set
 CONFIG_RSI_SDIO=m
 CONFIG_RSI_USB=m
 
@@ -2946,11 +2989,11 @@ CONFIG_HISAX_FRITZ_PCIPNP=m
 # Active cards
 #
 CONFIG_ISDN_CAPI=m
-CONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=y
 CONFIG_CAPI_TRACE=y
 CONFIG_ISDN_CAPI_CAPI20=m
 CONFIG_ISDN_CAPI_MIDDLEWARE=y
 CONFIG_ISDN_CAPI_CAPIDRV=m
+# CONFIG_ISDN_CAPI_CAPIDRV_VERBOSE is not set
 
 #
 # CAPI hardware drivers
@@ -3044,8 +3087,8 @@ CONFIG_KEYBOARD_OPENCORES=m
 CONFIG_KEYBOARD_SAMSUNG=m
 CONFIG_KEYBOARD_STOWAWAY=m
 CONFIG_KEYBOARD_SUNKBD=m
-CONFIG_KEYBOARD_STMPE=m
 CONFIG_KEYBOARD_TC3589X=m
+CONFIG_KEYBOARD_TWL4030=m
 CONFIG_KEYBOARD_XTKBD=m
 CONFIG_KEYBOARD_CROS_EC=m
 CONFIG_INPUT_MOUSE=y
@@ -3175,10 +3218,8 @@ CONFIG_TOUCHSCREEN_TOUCHIT213=m
 CONFIG_TOUCHSCREEN_TSC_SERIO=m
 CONFIG_TOUCHSCREEN_TSC2005=m
 CONFIG_TOUCHSCREEN_TSC2007=m
-CONFIG_TOUCHSCREEN_W90X900=m
 CONFIG_TOUCHSCREEN_PCAP=m
 CONFIG_TOUCHSCREEN_ST1232=m
-CONFIG_TOUCHSCREEN_STMPE=m
 CONFIG_TOUCHSCREEN_SUR40=m
 CONFIG_TOUCHSCREEN_TPS6507X=m
 CONFIG_TOUCHSCREEN_ZFORCE=m
@@ -3198,6 +3239,7 @@ CONFIG_INPUT_MMA8450=m
 CONFIG_INPUT_MPU3050=m
 CONFIG_INPUT_APANEL=m
 CONFIG_INPUT_GP2A=m
+CONFIG_INPUT_GPIO_BEEPER=m
 CONFIG_INPUT_GPIO_TILT_POLLED=m
 CONFIG_INPUT_ATLAS_BTNS=m
 CONFIG_INPUT_ATI_REMOTE2=m
@@ -3208,6 +3250,8 @@ CONFIG_INPUT_POWERMATE=m
 CONFIG_INPUT_YEALINK=m
 CONFIG_INPUT_CM109=m
 CONFIG_INPUT_RETU_PWRBUTTON=m
+CONFIG_INPUT_TWL4030_PWRBUTTON=m
+CONFIG_INPUT_TWL4030_VIBRA=m
 CONFIG_INPUT_TWL6040_VIBRA=m
 CONFIG_INPUT_UINPUT=y
 CONFIG_INPUT_PCF50633_PMU=m
@@ -3284,11 +3328,11 @@ CONFIG_TRACE_SINK=m
 #
 # Serial drivers
 #
+CONFIG_SERIAL_EARLYCON=y
 CONFIG_SERIAL_8250=y
 # CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set
 CONFIG_SERIAL_8250_PNP=y
 CONFIG_SERIAL_8250_CONSOLE=y
-CONFIG_FIX_EARLYCON_MEM=y
 CONFIG_SERIAL_8250_DMA=y
 CONFIG_SERIAL_8250_PCI=y
 CONFIG_SERIAL_8250_CS=m
@@ -3316,17 +3360,18 @@ CONFIG_CONSOLE_POLL=y
 CONFIG_SERIAL_JSM=m
 CONFIG_SERIAL_SCCNXP=y
 CONFIG_SERIAL_SCCNXP_CONSOLE=y
+CONFIG_SERIAL_SC16IS7XX=m
 CONFIG_SERIAL_ALTERA_JTAGUART=m
 CONFIG_SERIAL_ALTERA_UART=m
 CONFIG_SERIAL_ALTERA_UART_MAXPORTS=4
 CONFIG_SERIAL_ALTERA_UART_BAUDRATE=115200
 # CONFIG_SERIAL_IFX6X60 is not set
-CONFIG_SERIAL_PCH_UART=m
 CONFIG_SERIAL_ARC=m
 CONFIG_SERIAL_ARC_NR_PORTS=1
 CONFIG_SERIAL_RP2=m
 CONFIG_SERIAL_RP2_NR_UARTS=32
 CONFIG_SERIAL_FSL_LPUART=m
+CONFIG_SERIAL_MEN_Z135=m
 CONFIG_TTY_PRINTK=y
 CONFIG_PRINTER=m
 # CONFIG_LP_CONSOLE is not set
@@ -3347,10 +3392,8 @@ CONFIG_HW_RANDOM=y
 CONFIG_HW_RANDOM_TIMERIOMEM=m
 CONFIG_HW_RANDOM_INTEL=m
 CONFIG_HW_RANDOM_AMD=m
-# CONFIG_HW_RANDOM_ATMEL is not set
 CONFIG_HW_RANDOM_VIA=m
 CONFIG_HW_RANDOM_VIRTIO=m
-CONFIG_HW_RANDOM_EXYNOS=m
 CONFIG_HW_RANDOM_TPM=m
 CONFIG_NVRAM=m
 CONFIG_R3964=m
@@ -3437,7 +3480,6 @@ CONFIG_I2C_CBUS_GPIO=m
 CONFIG_I2C_DESIGNWARE_CORE=m
 CONFIG_I2C_DESIGNWARE_PLATFORM=m
 CONFIG_I2C_DESIGNWARE_PCI=m
-CONFIG_I2C_EG20T=m
 CONFIG_I2C_GPIO=m
 CONFIG_I2C_KEMPLD=m
 CONFIG_I2C_OCORES=m
@@ -3460,6 +3502,7 @@ CONFIG_I2C_VIPERBOARD=m
 #
 # Other I2C/SMBus bus drivers
 #
+CONFIG_I2C_CROS_EC_TUNNEL=m
 CONFIG_I2C_STUB=m
 # CONFIG_I2C_DEBUG_CORE is not set
 # CONFIG_I2C_DEBUG_ALGO is not set
@@ -3481,7 +3524,6 @@ CONFIG_SPI_PXA2XX_DMA=y
 CONFIG_SPI_PXA2XX=m
 CONFIG_SPI_PXA2XX_PCI=m
 CONFIG_SPI_SC18IS602=m
-CONFIG_SPI_TOPCLIFF_PCH=m
 CONFIG_SPI_XCOMM=m
 # CONFIG_SPI_XILINX is not set
 CONFIG_SPI_DESIGNWARE=m
@@ -3499,6 +3541,10 @@ CONFIG_HSI=m
 CONFIG_HSI_BOARDINFO=y
 
 #
+# HSI controllers
+#
+
+#
 # HSI clients
 #
 CONFIG_HSI_CHAR=m
@@ -3529,7 +3575,6 @@ CONFIG_PTP_1588_CLOCK=m
 #
 # Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks.
 #
-CONFIG_PTP_1588_CLOCK_PCH=m
 CONFIG_PINCTRL=y
 
 #
@@ -3543,8 +3588,9 @@ CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y
 CONFIG_GPIOLIB=y
 CONFIG_GPIO_DEVRES=y
 CONFIG_GPIO_ACPI=y
+CONFIG_GPIOLIB_IRQCHIP=y
 # CONFIG_DEBUG_GPIO is not set
-# CONFIG_GPIO_SYSFS is not set
+CONFIG_GPIO_SYSFS=y
 CONFIG_GPIO_GENERIC=m
 CONFIG_GPIO_DA9052=m
 CONFIG_GPIO_DA9055=m
@@ -3573,9 +3619,9 @@ CONFIG_GPIO_PCA953X=m
 CONFIG_GPIO_PCF857X=m
 CONFIG_GPIO_RC5T583=y
 CONFIG_GPIO_SX150X=y
-CONFIG_GPIO_STMPE=y
 CONFIG_GPIO_TC3589X=y
 CONFIG_GPIO_TPS65912=m
+CONFIG_GPIO_TWL4030=m
 CONFIG_GPIO_TWL6040=m
 CONFIG_GPIO_WM831X=m
 CONFIG_GPIO_WM8350=m
@@ -3589,7 +3635,6 @@ CONFIG_GPIO_ADP5588=m
 CONFIG_GPIO_CS5535=m
 CONFIG_GPIO_AMD8111=m
 CONFIG_GPIO_INTEL_MID=y
-CONFIG_GPIO_PCH=m
 CONFIG_GPIO_ML_IOH=m
 CONFIG_GPIO_TIMBERDALE=y
 CONFIG_GPIO_RDC321X=m
@@ -3673,10 +3718,13 @@ CONFIG_BATTERY_DA9030=m
 CONFIG_BATTERY_DA9052=m
 CONFIG_BATTERY_MAX17040=m
 CONFIG_BATTERY_MAX17042=m
+CONFIG_BATTERY_TWL4030_MADC=m
 CONFIG_CHARGER_88PM860X=m
 CONFIG_CHARGER_PCF50633=m
+CONFIG_BATTERY_RX51=m
 CONFIG_CHARGER_ISP1704=m
 CONFIG_CHARGER_MAX8903=m
+CONFIG_CHARGER_TWL4030=m
 CONFIG_CHARGER_LP8727=m
 CONFIG_CHARGER_LP8788=m
 CONFIG_CHARGER_GPIO=m
@@ -3784,6 +3832,7 @@ CONFIG_SENSORS_LM95245=m
 CONFIG_SENSORS_PC87360=m
 CONFIG_SENSORS_PC87427=m
 CONFIG_SENSORS_NTC_THERMISTOR=m
+CONFIG_SENSORS_NCT6683=m
 CONFIG_SENSORS_NCT6775=m
 CONFIG_SENSORS_PCF8591=m
 CONFIG_PMBUS=m
@@ -3799,6 +3848,7 @@ CONFIG_SENSORS_UCD9200=m
 CONFIG_SENSORS_ZL6100=m
 CONFIG_SENSORS_SHT15=m
 CONFIG_SENSORS_SHT21=m
+CONFIG_SENSORS_SHTC1=m
 CONFIG_SENSORS_SIS5595=m
 CONFIG_SENSORS_DME1737=m
 CONFIG_SENSORS_EMC1403=m
@@ -3822,6 +3872,7 @@ CONFIG_SENSORS_THMC50=m
 CONFIG_SENSORS_TMP102=m
 CONFIG_SENSORS_TMP401=m
 CONFIG_SENSORS_TMP421=m
+CONFIG_SENSORS_TWL4030_MADC=m
 CONFIG_SENSORS_VIA_CPUTEMP=m
 CONFIG_SENSORS_VIA686A=m
 CONFIG_SENSORS_VT1211=m
@@ -3856,6 +3907,7 @@ CONFIG_THERMAL_EMULATION=y
 CONFIG_INTEL_POWERCLAMP=m
 CONFIG_X86_PKG_TEMP_THERMAL=m
 CONFIG_ACPI_INT3403_THERMAL=m
+CONFIG_INTEL_SOC_DTS_THERMAL=m
 
 #
 # Texas Instruments thermal drivers
@@ -3874,6 +3926,7 @@ CONFIG_WM831X_WATCHDOG=m
 CONFIG_WM8350_WATCHDOG=m
 CONFIG_XILINX_WATCHDOG=m
 CONFIG_DW_WATCHDOG=m
+CONFIG_TWL4030_WATCHDOG=m
 CONFIG_RETU_WATCHDOG=m
 CONFIG_ACQUIRE_WDT=m
 CONFIG_ADVANTECH_WDT=m
@@ -3899,14 +3952,11 @@ CONFIG_SC1200_WDT=m
 CONFIG_PC87413_WDT=m
 CONFIG_NV_TCO=m
 CONFIG_60XX_WDT=m
-CONFIG_SBC8360_WDT=m
 CONFIG_CPU5_WDT=m
 CONFIG_SMSC_SCH311X_WDT=m
 CONFIG_SMSC37B787_WDT=m
 CONFIG_VIA_WDT=m
 CONFIG_W83627HF_WDT=m
-CONFIG_W83697HF_WDT=m
-CONFIG_W83697UG_WDT=m
 CONFIG_W83877F_WDT=m
 CONFIG_W83977F_WDT=m
 CONFIG_MACHZ_WDT=m
@@ -3967,6 +4017,7 @@ CONFIG_MFD_AS3711=y
 CONFIG_PMIC_ADP5520=y
 CONFIG_MFD_AAT2870_CORE=y
 CONFIG_MFD_BCM590XX=m
+CONFIG_MFD_AXP20X=y
 CONFIG_MFD_CROS_EC=m
 CONFIG_MFD_CROS_EC_I2C=m
 CONFIG_PMIC_DA903X=y
@@ -4008,18 +4059,11 @@ CONFIG_MFD_RC5T583=y
 CONFIG_MFD_SEC_CORE=y
 CONFIG_MFD_SI476X_CORE=m
 CONFIG_MFD_SM501=m
-# CONFIG_MFD_SM501_GPIO is not set
+CONFIG_MFD_SM501_GPIO=y
 CONFIG_MFD_SMSC=y
 CONFIG_ABX500_CORE=y
 CONFIG_AB3100_CORE=y
 CONFIG_AB3100_OTP=m
-CONFIG_MFD_STMPE=y
-
-#
-# STMicroelectronics STMPE Interface Drivers
-#
-CONFIG_STMPE_I2C=y
-CONFIG_STMPE_SPI=y
 CONFIG_MFD_SYSCON=y
 CONFIG_MFD_TI_AM335X_TSCADC=m
 CONFIG_MFD_LP3943=m
@@ -4037,7 +4081,8 @@ CONFIG_MFD_TPS65912=y
 CONFIG_MFD_TPS65912_I2C=y
 CONFIG_MFD_TPS65912_SPI=y
 CONFIG_MFD_TPS80031=y
-# CONFIG_TWL4030_CORE is not set
+CONFIG_TWL4030_CORE=y
+CONFIG_MFD_TWL4030_AUDIO=y
 CONFIG_TWL6040_CORE=y
 CONFIG_MFD_WL1273_CORE=m
 CONFIG_MFD_LM3533=m
@@ -4064,7 +4109,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=m
 CONFIG_REGULATOR_VIRTUAL_CONSUMER=m
 CONFIG_REGULATOR_USERSPACE_CONSUMER=m
 CONFIG_REGULATOR_88PM800=m
-CONFIG_REGULATOR_88PM8607=y
+CONFIG_REGULATOR_88PM8607=m
 CONFIG_REGULATOR_ACT8865=m
 CONFIG_REGULATOR_AD5398=m
 CONFIG_REGULATOR_ANATOP=m
@@ -4072,6 +4117,7 @@ CONFIG_REGULATOR_AAT2870=m
 CONFIG_REGULATOR_AB3100=m
 CONFIG_REGULATOR_ARIZONA=m
 CONFIG_REGULATOR_AS3711=m
+CONFIG_REGULATOR_AXP20X=m
 CONFIG_REGULATOR_BCM590XX=m
 CONFIG_REGULATOR_DA903X=m
 CONFIG_REGULATOR_DA9052=m
@@ -4083,9 +4129,10 @@ CONFIG_REGULATOR_GPIO=m
 CONFIG_REGULATOR_ISL6271A=m
 CONFIG_REGULATOR_LP3971=m
 CONFIG_REGULATOR_LP3972=m
-CONFIG_REGULATOR_LP872X=y
+CONFIG_REGULATOR_LP872X=m
 CONFIG_REGULATOR_LP8755=m
-CONFIG_REGULATOR_LP8788=y
+CONFIG_REGULATOR_LP8788=m
+CONFIG_REGULATOR_LTC3589=m
 CONFIG_REGULATOR_MAX14577=m
 CONFIG_REGULATOR_MAX1586=m
 CONFIG_REGULATOR_MAX8649=m
@@ -4107,7 +4154,7 @@ CONFIG_REGULATOR_PCF50633=m
 CONFIG_REGULATOR_PFUZE100=m
 CONFIG_REGULATOR_RC5T583=m
 CONFIG_REGULATOR_S2MPA01=m
-# CONFIG_REGULATOR_S2MPS11 is not set
+CONFIG_REGULATOR_S2MPS11=m
 CONFIG_REGULATOR_S5M8767=m
 CONFIG_REGULATOR_TPS51632=m
 CONFIG_REGULATOR_TPS6105X=m
@@ -4121,6 +4168,7 @@ CONFIG_REGULATOR_TPS6586X=m
 CONFIG_REGULATOR_TPS65910=m
 CONFIG_REGULATOR_TPS65912=m
 CONFIG_REGULATOR_TPS80031=m
+CONFIG_REGULATOR_TWL4030=m
 CONFIG_REGULATOR_WM831X=m
 CONFIG_REGULATOR_WM8350=m
 CONFIG_REGULATOR_WM8400=m
@@ -4135,8 +4183,9 @@ CONFIG_MEDIA_ANALOG_TV_SUPPORT=y
 CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y
 CONFIG_MEDIA_RADIO_SUPPORT=y
 CONFIG_MEDIA_RC_SUPPORT=y
-# CONFIG_MEDIA_CONTROLLER is not set
+CONFIG_MEDIA_CONTROLLER=y
 CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L2_SUBDEV_API=y
 CONFIG_VIDEO_V4L2=m
 # CONFIG_VIDEO_ADV_DEBUG is not set
 # CONFIG_VIDEO_FIXED_MINOR_RANGES is not set
@@ -4152,6 +4201,7 @@ CONFIG_VIDEOBUF2_MEMOPS=m
 CONFIG_VIDEOBUF2_DMA_CONTIG=m
 CONFIG_VIDEOBUF2_VMALLOC=m
 CONFIG_VIDEOBUF2_DMA_SG=m
+CONFIG_VIDEOBUF2_DVB=m
 CONFIG_DVB_CORE=m
 CONFIG_DVB_NET=y
 CONFIG_TTPCI_EEPROM=m
@@ -4212,6 +4262,7 @@ CONFIG_USB_GL860=m
 CONFIG_USB_GSPCA_BENQ=m
 CONFIG_USB_GSPCA_CONEX=m
 CONFIG_USB_GSPCA_CPIA1=m
+CONFIG_USB_GSPCA_DTCS033=m
 CONFIG_USB_GSPCA_ETOMS=m
 CONFIG_USB_GSPCA_FINEPIX=m
 CONFIG_USB_GSPCA_JEILINJ=m
@@ -4427,6 +4478,7 @@ CONFIG_VIDEO_SH_MOBILE_CEU=m
 CONFIG_V4L_MEM2MEM_DRIVERS=y
 CONFIG_VIDEO_MEM2MEM_DEINTERLACE=m
 CONFIG_VIDEO_SH_VEU=m
+CONFIG_VIDEO_RENESAS_VSP1=m
 CONFIG_V4L_TEST_DRIVERS=y
 CONFIG_VIDEO_VIVI=m
 CONFIG_VIDEO_MEM2MEM_TESTDEV=m
@@ -4625,6 +4677,7 @@ CONFIG_MEDIA_TUNER_E4000=m
 CONFIG_MEDIA_TUNER_FC2580=m
 CONFIG_MEDIA_TUNER_M88TS2022=m
 CONFIG_MEDIA_TUNER_TUA9001=m
+CONFIG_MEDIA_TUNER_SI2157=m
 CONFIG_MEDIA_TUNER_IT913X=m
 CONFIG_MEDIA_TUNER_R820T=m
 
@@ -4697,6 +4750,7 @@ CONFIG_DVB_STV0367=m
 CONFIG_DVB_CXD2820R=m
 CONFIG_DVB_RTL2830=m
 CONFIG_DVB_RTL2832=m
+CONFIG_DVB_SI2168=m
 
 #
 # DVB-C (cable) frontends
@@ -4787,10 +4841,11 @@ CONFIG_DRM_TTM=m
 CONFIG_DRM_I2C_CH7006=m
 CONFIG_DRM_I2C_SIL164=m
 CONFIG_DRM_I2C_NXP_TDA998X=m
+CONFIG_DRM_PTN3460=m
 CONFIG_DRM_TDFX=m
 CONFIG_DRM_R128=m
 CONFIG_DRM_RADEON=m
-CONFIG_DRM_RADEON_UMS=y
+# CONFIG_DRM_RADEON_UMS is not set
 CONFIG_DRM_NOUVEAU=m
 CONFIG_NOUVEAU_DEBUG=5
 CONFIG_NOUVEAU_DEBUG_DEFAULT=3
@@ -4800,7 +4855,6 @@ CONFIG_DRM_I915=m
 CONFIG_DRM_I915_KMS=y
 CONFIG_DRM_I915_FBDEV=y
 CONFIG_DRM_I915_PRELIMINARY_HW_SUPPORT=y
-# CONFIG_DRM_I915_UMS is not set
 CONFIG_DRM_MGA=m
 CONFIG_DRM_SIS=m
 CONFIG_DRM_VIA=m
@@ -4816,7 +4870,6 @@ CONFIG_DRM_AST=m
 CONFIG_DRM_CIRRUS_QEMU=m
 CONFIG_DRM_QXL=m
 CONFIG_DRM_BOCHS=m
-CONFIG_DRM_PTN3460=m
 
 #
 # Frame buffer Devices
@@ -4871,7 +4924,7 @@ CONFIG_FB_LE80578=m
 CONFIG_FB_CARILLO_RANCH=m
 CONFIG_FB_INTEL=m
 # CONFIG_FB_INTEL_DEBUG is not set
-# CONFIG_FB_INTEL_I2C is not set
+CONFIG_FB_INTEL_I2C=y
 CONFIG_FB_MATROX=m
 CONFIG_FB_MATROX_MILLENIUM=y
 CONFIG_FB_MATROX_MYSTIQUE=y
@@ -4892,7 +4945,7 @@ CONFIG_FB_ATY_BACKLIGHT=y
 CONFIG_FB_S3=m
 CONFIG_FB_S3_DDC=y
 CONFIG_FB_SAVAGE=m
-# CONFIG_FB_SAVAGE_I2C is not set
+CONFIG_FB_SAVAGE_I2C=y
 # CONFIG_FB_SAVAGE_ACCEL is not set
 CONFIG_FB_SIS=m
 CONFIG_FB_SIS_300=y
@@ -4913,12 +4966,9 @@ CONFIG_FB_PM3=m
 CONFIG_FB_CARMINE=m
 CONFIG_FB_CARMINE_DRAM_EVAL=y
 # CONFIG_CARMINE_DRAM_CUSTOM is not set
-CONFIG_FB_TMIO=m
-CONFIG_FB_TMIO_ACCELL=y
 CONFIG_FB_SM501=m
 CONFIG_FB_SMSCUFX=m
 CONFIG_FB_UDL=m
-CONFIG_FB_GOLDFISH=m
 # CONFIG_FB_VIRTUAL is not set
 CONFIG_XEN_FBDEV_FRONTEND=m
 CONFIG_FB_METRONOME=m
@@ -4931,7 +4981,6 @@ CONFIG_FB_AUO_K1900=m
 CONFIG_FB_AUO_K1901=m
 CONFIG_FB_HYPERV=m
 CONFIG_FB_SIMPLE=y
-CONFIG_EXYNOS_VIDEO=y
 CONFIG_BACKLIGHT_LCD_SUPPORT=y
 CONFIG_LCD_CLASS_DEVICE=m
 CONFIG_LCD_L4F00242T03=m
@@ -4948,7 +4997,6 @@ CONFIG_LCD_AMS369FG06=m
 CONFIG_LCD_LMS501KF03=m
 CONFIG_LCD_HX8357=m
 CONFIG_BACKLIGHT_CLASS_DEVICE=y
-CONFIG_BACKLIGHT_ATMEL_PWM=m
 CONFIG_BACKLIGHT_GENERIC=m
 CONFIG_BACKLIGHT_LM3533=m
 CONFIG_BACKLIGHT_CARILLO_RANCH=m
@@ -4969,6 +5017,7 @@ CONFIG_BACKLIGHT_LM3630A=m
 CONFIG_BACKLIGHT_LM3639=m
 CONFIG_BACKLIGHT_LP855X=m
 CONFIG_BACKLIGHT_LP8788=m
+CONFIG_BACKLIGHT_PANDORA=m
 CONFIG_BACKLIGHT_TPS65217=m
 CONFIG_BACKLIGHT_AS3711=m
 CONFIG_BACKLIGHT_GPIO=m
@@ -4992,17 +5041,20 @@ CONFIG_LOGO=y
 # CONFIG_LOGO_LINUX_CLUT224 is not set
 CONFIG_LOGO_LIBRE_CLUT224=y
 CONFIG_SOUND=m
-# CONFIG_SOUND_OSS_CORE is not set
+CONFIG_SOUND_OSS_CORE=y
+CONFIG_SOUND_OSS_CORE_PRECLAIM=y
 CONFIG_SND=m
 CONFIG_SND_TIMER=m
 CONFIG_SND_PCM=m
+CONFIG_SND_DMAENGINE_PCM=m
 CONFIG_SND_HWDEP=m
 CONFIG_SND_RAWMIDI=m
 CONFIG_SND_COMPRESS_OFFLOAD=m
 CONFIG_SND_JACK=y
 CONFIG_SND_SEQUENCER=m
 CONFIG_SND_SEQ_DUMMY=m
-# CONFIG_SND_MIXER_OSS is not set
+CONFIG_SND_OSSEMUL=y
+CONFIG_SND_MIXER_OSS=m
 # CONFIG_SND_PCM_OSS is not set
 # CONFIG_SND_SEQUENCER_OSS is not set
 CONFIG_SND_HRTIMER=m
@@ -5012,9 +5064,7 @@ CONFIG_SND_MAX_CARDS=32
 CONFIG_SND_SUPPORT_OLD_API=y
 CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_VERBOSE_PRINTK is not set
-CONFIG_SND_DEBUG=y
-# CONFIG_SND_DEBUG_VERBOSE is not set
-CONFIG_SND_PCM_XRUN_DEBUG=y
+# CONFIG_SND_DEBUG is not set
 CONFIG_SND_VMASTER=y
 CONFIG_SND_KCTL_JACK=y
 CONFIG_SND_DMA_SGBUF=y
@@ -5142,8 +5192,6 @@ CONFIG_SND_HDA_CODEC_SI3054=m
 CONFIG_SND_HDA_GENERIC=m
 CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
 CONFIG_SND_SPI=y
-CONFIG_SND_AT73C213=m
-CONFIG_SND_AT73C213_TARGET_BITRATE=48000
 CONFIG_SND_USB=y
 CONFIG_SND_USB_AUDIO=m
 CONFIG_SND_USB_UA101=m
@@ -5153,24 +5201,43 @@ CONFIG_SND_USB_CAIAQ_INPUT=y
 CONFIG_SND_USB_US122L=m
 CONFIG_SND_USB_6FIRE=m
 CONFIG_SND_USB_HIFACE=m
+CONFIG_SND_BCD2000=m
 CONFIG_SND_FIREWIRE=y
 CONFIG_SND_FIREWIRE_LIB=m
 CONFIG_SND_DICE=m
 CONFIG_SND_FIREWIRE_SPEAKERS=m
 CONFIG_SND_ISIGHT=m
 CONFIG_SND_SCS1X=m
+CONFIG_SND_FIREWORKS=m
+CONFIG_SND_BEBOB=m
 CONFIG_SND_PCMCIA=y
 CONFIG_SND_VXPOCKET=m
 CONFIG_SND_PDAUDIOCF=m
 CONFIG_SND_SOC=m
+CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y
 CONFIG_SND_ATMEL_SOC=m
 CONFIG_SND_DESIGNWARE_I2S=m
+
+#
+# SoC Audio for Freescale CPUs
+#
+
+#
+# Common SoC Audio options for Freescale CPUs:
+#
+CONFIG_SND_SOC_FSL_SAI=m
+CONFIG_SND_SOC_FSL_SSI=m
+CONFIG_SND_SOC_FSL_SPDIF=m
+CONFIG_SND_SOC_FSL_ESAI=m
+CONFIG_SND_SOC_FSL_UTILS=m
+CONFIG_SND_SOC_IMX_AUDMUX=m
 CONFIG_SND_SOC_INTEL_SST=m
 CONFIG_SND_SOC_INTEL_SST_ACPI=m
 CONFIG_SND_SOC_INTEL_HASWELL=m
 CONFIG_SND_SOC_INTEL_BAYTRAIL=m
 CONFIG_SND_SOC_INTEL_HASWELL_MACH=m
 CONFIG_SND_SOC_INTEL_BYT_RT5640_MACH=m
+CONFIG_SND_SOC_INTEL_BYT_MAX98090_MACH=m
 CONFIG_SND_SOC_I2C_AND_SPI=m
 
 #
@@ -5181,24 +5248,30 @@ CONFIG_SND_SOC_AK4104=m
 CONFIG_SND_SOC_AK4554=m
 CONFIG_SND_SOC_AK4642=m
 CONFIG_SND_SOC_AK5386=m
+CONFIG_SND_SOC_ALC5623=m
 CONFIG_SND_SOC_CS42L52=m
+CONFIG_SND_SOC_CS42L56=m
 CONFIG_SND_SOC_CS42L73=m
 CONFIG_SND_SOC_CS4270=m
 CONFIG_SND_SOC_CS4271=m
 CONFIG_SND_SOC_CS42XX8=m
 CONFIG_SND_SOC_CS42XX8_I2C=m
 CONFIG_SND_SOC_HDMI_CODEC=m
+CONFIG_SND_SOC_MAX98090=m
 CONFIG_SND_SOC_PCM1681=m
 CONFIG_SND_SOC_PCM1792A=m
 CONFIG_SND_SOC_PCM512x=m
 CONFIG_SND_SOC_PCM512x_I2C=m
 CONFIG_SND_SOC_PCM512x_SPI=m
+CONFIG_SND_SOC_RL6231=m
 CONFIG_SND_SOC_RT5640=m
 CONFIG_SND_SOC_SGTL5000=m
 CONFIG_SND_SOC_SI476X=m
 CONFIG_SND_SOC_SIGMADSP=m
+CONFIG_SND_SOC_SIGMADSP_I2C=m
 CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m
 CONFIG_SND_SOC_SPDIF=m
+CONFIG_SND_SOC_STA350=m
 CONFIG_SND_SOC_TAS5086=m
 CONFIG_SND_SOC_TLV320AIC3X=m
 CONFIG_SND_SOC_WM8510=m
@@ -5293,6 +5366,7 @@ CONFIG_SONY_FF=y
 CONFIG_HID_SPEEDLINK=m
 CONFIG_HID_STEELSERIES=m
 CONFIG_HID_SUNPLUS=m
+CONFIG_HID_RMI=m
 CONFIG_HID_GREENASIA=m
 CONFIG_GREENASIA_FF=y
 CONFIG_HID_HYPERV_MOUSE=m
@@ -5333,7 +5407,6 @@ CONFIG_USB_SUPPORT=y
 CONFIG_USB_COMMON=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB=y
-# CONFIG_USB_DEBUG is not set
 CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
 
 #
@@ -5344,6 +5417,7 @@ CONFIG_USB_DYNAMIC_MINORS=y
 CONFIG_USB_OTG=y
 # CONFIG_USB_OTG_WHITELIST is not set
 # CONFIG_USB_OTG_BLACKLIST_HUB is not set
+CONFIG_USB_OTG_FSM=m
 CONFIG_USB_MON=m
 CONFIG_USB_WUSB=m
 CONFIG_USB_WUSB_CBAF=m
@@ -5366,8 +5440,9 @@ CONFIG_USB_ISP1760_HCD=m
 CONFIG_USB_ISP1362_HCD=m
 CONFIG_USB_FUSBH200_HCD=m
 CONFIG_USB_FOTG210_HCD=m
+CONFIG_USB_MAX3421_HCD=m
 CONFIG_USB_OHCI_HCD=y
-CONFIG_USB_OHCI_HCD_PCI=y
+CONFIG_USB_OHCI_HCD_PCI=m
 CONFIG_USB_OHCI_HCD_PLATFORM=y
 CONFIG_USB_UHCI_HCD=y
 CONFIG_USB_U132_HCD=m
@@ -5437,16 +5512,21 @@ CONFIG_USB_DWC3_DUAL_ROLE=y
 #
 # Platform Glue Driver Support
 #
-CONFIG_USB_DWC3_OMAP=m
-CONFIG_USB_DWC3_EXYNOS=m
 CONFIG_USB_DWC3_PCI=m
-CONFIG_USB_DWC3_KEYSTONE=m
 
 #
 # Debugging features
 #
 # CONFIG_USB_DWC3_DEBUG is not set
-CONFIG_USB_DWC2=m
+CONFIG_USB_DWC2=y
+CONFIG_USB_DWC2_HOST=m
+CONFIG_USB_DWC2_PLATFORM=y
+CONFIG_USB_DWC2_PCI=y
+
+#
+# Gadget mode requires USB Gadget support to be enabled
+#
+CONFIG_USB_DWC2_PERIPHERAL=m
 # CONFIG_USB_DWC2_DEBUG is not set
 # CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set
 CONFIG_USB_CHIPIDEA=m
@@ -5563,7 +5643,6 @@ CONFIG_USB_XUSBATM=m
 # USB Physical Layer drivers
 #
 CONFIG_USB_PHY=y
-CONFIG_USB_OTG_FSM=m
 CONFIG_NOP_USB_XCEIV=m
 CONFIG_SAMSUNG_USBPHY=m
 CONFIG_SAMSUNG_USB2PHY=m
@@ -5572,7 +5651,6 @@ CONFIG_USB_GPIO_VBUS=m
 CONFIG_TAHVO_USB=m
 CONFIG_TAHVO_USB_HOST_BY_DEFAULT=y
 CONFIG_USB_ISP1301=m
-CONFIG_USB_RCAR_PHY=m
 CONFIG_USB_GADGET=m
 # CONFIG_USB_GADGET_DEBUG is not set
 # CONFIG_USB_GADGET_DEBUG_FILES is not set
@@ -5588,7 +5666,6 @@ CONFIG_USB_GR_UDC=m
 CONFIG_USB_R8A66597=m
 CONFIG_USB_RENESAS_USBHS_UDC=m
 CONFIG_USB_PXA27X=m
-CONFIG_USB_S3C_HSOTG=m
 CONFIG_USB_MV_UDC=m
 CONFIG_USB_MV_U3D=m
 # CONFIG_USB_M66592 is not set
@@ -5689,7 +5766,9 @@ CONFIG_MMC_CB710=m
 CONFIG_MMC_VIA_SDMMC=m
 CONFIG_MMC_VUB300=m
 CONFIG_MMC_USHC=m
+CONFIG_MMC_USDHI6ROL0=m
 CONFIG_MMC_REALTEK_PCI=m
+CONFIG_MMC_REALTEK_USB=m
 CONFIG_MEMSTICK=m
 # CONFIG_MEMSTICK_DEBUG is not set
 
@@ -5707,6 +5786,7 @@ CONFIG_MEMSTICK_TIFM_MS=m
 CONFIG_MEMSTICK_JMICRON_38X=m
 CONFIG_MEMSTICK_R592=m
 CONFIG_MEMSTICK_REALTEK_PCI=m
+CONFIG_MEMSTICK_REALTEK_USB=m
 CONFIG_NEW_LEDS=y
 CONFIG_LEDS_CLASS=y
 
@@ -5714,7 +5794,6 @@ CONFIG_LEDS_CLASS=y
 # LED drivers
 #
 CONFIG_LEDS_88PM860X=m
-CONFIG_LEDS_ATMEL_PWM=m
 CONFIG_LEDS_LM3530=m
 CONFIG_LEDS_LM3533=m
 CONFIG_LEDS_LM3642=m
@@ -5731,7 +5810,6 @@ CONFIG_LEDS_LP8788=m
 CONFIG_LEDS_CLEVO_MAIL=m
 CONFIG_LEDS_PCA955X=m
 CONFIG_LEDS_PCA963X=m
-CONFIG_LEDS_PCA9685=m
 CONFIG_LEDS_WM831X_STATUS=m
 CONFIG_LEDS_WM8350=m
 CONFIG_LEDS_DA903X=m
@@ -5748,6 +5826,10 @@ CONFIG_LEDS_MC13783=m
 CONFIG_LEDS_TCA6507=m
 CONFIG_LEDS_MAX8997=m
 CONFIG_LEDS_LM355x=m
+
+#
+# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM)
+#
 CONFIG_LEDS_BLINKM=m
 
 #
@@ -5797,7 +5879,7 @@ CONFIG_INFINIBAND_SRPT=m
 CONFIG_INFINIBAND_ISER=m
 CONFIG_INFINIBAND_ISERT=m
 CONFIG_EDAC=y
-CONFIG_EDAC_LEGACY_SYSFS=y
+# CONFIG_EDAC_LEGACY_SYSFS is not set
 # CONFIG_EDAC_DEBUG is not set
 CONFIG_EDAC_DECODE_MCE=m
 CONFIG_EDAC_MCE_INJ=m
@@ -5860,6 +5942,7 @@ CONFIG_RTC_DRV_PCF8583=m
 CONFIG_RTC_DRV_M41T80=m
 CONFIG_RTC_DRV_M41T80_WDT=y
 CONFIG_RTC_DRV_BQ32K=m
+CONFIG_RTC_DRV_TWL4030=m
 CONFIG_RTC_DRV_TPS6586X=m
 CONFIG_RTC_DRV_TPS65910=m
 CONFIG_RTC_DRV_TPS80031=m
@@ -5878,6 +5961,7 @@ CONFIG_RTC_DRV_S5M=m
 CONFIG_RTC_DRV_M41T93=m
 CONFIG_RTC_DRV_M41T94=m
 CONFIG_RTC_DRV_DS1305=m
+CONFIG_RTC_DRV_DS1343=m
 CONFIG_RTC_DRV_DS1347=m
 CONFIG_RTC_DRV_DS1390=m
 CONFIG_RTC_DRV_MAX6902=m
@@ -5886,6 +5970,7 @@ CONFIG_RTC_DRV_RS5C348=m
 CONFIG_RTC_DRV_DS3234=m
 CONFIG_RTC_DRV_PCF2123=m
 CONFIG_RTC_DRV_RX4581=m
+CONFIG_RTC_DRV_MCP795=m
 
 #
 # Platform RTC drivers
@@ -5897,6 +5982,7 @@ CONFIG_RTC_DRV_DS1553=m
 CONFIG_RTC_DRV_DS1742=m
 CONFIG_RTC_DRV_DA9052=m
 CONFIG_RTC_DRV_DA9055=m
+CONFIG_RTC_DRV_DA9063=m
 CONFIG_RTC_DRV_STK17TA8=m
 CONFIG_RTC_DRV_M48T86=m
 CONFIG_RTC_DRV_M48T35=m
@@ -5917,6 +6003,7 @@ CONFIG_RTC_DRV_AB3100=m
 CONFIG_RTC_DRV_PCAP=m
 CONFIG_RTC_DRV_MC13XXX=m
 CONFIG_RTC_DRV_MOXART=m
+CONFIG_RTC_DRV_XGENE=y
 
 #
 # HID Sensor RTC drivers
@@ -5934,14 +6021,13 @@ CONFIG_DW_DMAC_CORE=m
 CONFIG_DW_DMAC=m
 CONFIG_DW_DMAC_PCI=m
 CONFIG_TIMB_DMA=m
-CONFIG_PCH_DMA=m
 CONFIG_DMA_ENGINE=y
 CONFIG_DMA_ACPI=y
 
 #
 # DMA Clients
 #
-# CONFIG_ASYNC_TX_DMA is not set
+CONFIG_ASYNC_TX_DMA=y
 # CONFIG_DMATEST is not set
 CONFIG_DMA_ENGINE_RAID=y
 CONFIG_DCA=m
@@ -6163,15 +6249,13 @@ CONFIG_R8712U=m
 CONFIG_R8188EU=m
 CONFIG_88EU_AP_MODE=y
 CONFIG_88EU_P2P=y
+CONFIG_R8192EE=m
 CONFIG_R8723AU=m
 CONFIG_8723AU_AP_MODE=y
-CONFIG_8723AU_P2P=y
 CONFIG_8723AU_BT_COEXIST=y
 CONFIG_R8821AE=m
-CONFIG_RTS5139=m
-# CONFIG_RTS5139_DEBUG is not set
 CONFIG_RTS5208=m
-CONFIG_RTS5208_DEBUG=y
+# CONFIG_RTS5208_DEBUG is not set
 CONFIG_TRANZPORT=m
 CONFIG_IDE_PHISON=m
 CONFIG_LINE6_USB=m
@@ -6204,8 +6288,6 @@ CONFIG_AD7291=m
 CONFIG_AD7606=m
 CONFIG_AD7606_IFACE_PARALLEL=m
 CONFIG_AD7606_IFACE_SPI=m
-CONFIG_AD799X=m
-CONFIG_AD799X_RING_BUFFER=y
 CONFIG_AD7780=m
 CONFIG_AD7816=m
 CONFIG_AD7192=m
@@ -6291,7 +6373,6 @@ CONFIG_CXT1E1=m
 CONFIG_SBE_PMCC4_NCOMM=y
 CONFIG_FB_XGI=m
 CONFIG_ACPI_QUICKSTART=m
-CONFIG_SBE_2T3E3=m
 CONFIG_USB_ENESTORAGE=m
 CONFIG_BCM_WIMAX=m
 CONFIG_FT1000=m
@@ -6328,8 +6409,7 @@ CONFIG_VIDEO_GO7007_LOADER=m
 CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m
 CONFIG_USB_MSI3101=m
 CONFIG_MEDIA_TUNER_MSI001=m
-CONFIG_VIDEO_V4L2_INT_DEVICE=m
-CONFIG_VIDEO_TCM825X=m
+# CONFIG_VIDEO_TCM825X is not set
 # CONFIG_USB_SN9C102 is not set
 CONFIG_SOLO6X10=m
 CONFIG_DVB_RTL2832_SDR=m
@@ -6380,6 +6460,8 @@ CONFIG_XILLYBUS_PCIE=m
 CONFIG_DGNC=m
 CONFIG_DGAP=m
 CONFIG_GS_FPGABOOT=m
+CONFIG_CRYPTO_SKEIN=y
+CONFIG_CRYPTO_THREEFISH=y
 CONFIG_X86_PLATFORM_DEVICES=y
 CONFIG_ACER_WMI=m
 CONFIG_ACERHDF=m
@@ -6388,6 +6470,7 @@ CONFIG_ASUS_LAPTOP=m
 CONFIG_DELL_LAPTOP=m
 CONFIG_DELL_WMI=m
 CONFIG_DELL_WMI_AIO=m
+CONFIG_DELL_SMO8800=m
 CONFIG_FUJITSU_LAPTOP=m
 # CONFIG_FUJITSU_LAPTOP_DEBUG is not set
 CONFIG_FUJITSU_TABLET=m
@@ -6422,7 +6505,6 @@ CONFIG_TOSHIBA_BT_RFKILL=m
 CONFIG_ACPI_CMPC=m
 CONFIG_INTEL_IPS=m
 CONFIG_IBM_RTL=m
-CONFIG_XO15_EBOOK=m
 CONFIG_SAMSUNG_LAPTOP=m
 CONFIG_MXM_WMI=m
 CONFIG_INTEL_OAKTRAIL=m
@@ -6434,6 +6516,10 @@ CONFIG_PVPANIC=m
 CONFIG_CHROME_PLATFORMS=y
 CONFIG_CHROMEOS_LAPTOP=m
 CONFIG_CHROMEOS_PSTORE=m
+
+#
+# SOC (System On Chip) specific Drivers
+#
 CONFIG_CLKDEV_LOOKUP=y
 CONFIG_HAVE_CLK_PREPARE=y
 CONFIG_COMMON_CLK=y
@@ -6521,6 +6607,7 @@ CONFIG_IIO_ST_ACCEL_3AXIS=m
 CONFIG_IIO_ST_ACCEL_I2C_3AXIS=m
 CONFIG_IIO_ST_ACCEL_SPI_3AXIS=m
 CONFIG_KXSD9=m
+CONFIG_MMA8452=m
 
 #
 # Analog to digital converters
@@ -6533,6 +6620,7 @@ CONFIG_AD7791=m
 CONFIG_AD7793=m
 CONFIG_AD7887=m
 CONFIG_AD7923=m
+CONFIG_AD799X=m
 CONFIG_LP8788_ADC=m
 CONFIG_MAX1363=m
 CONFIG_MCP320X=m
@@ -6541,6 +6629,8 @@ CONFIG_MEN_Z188_ADC=m
 CONFIG_NAU7802=m
 CONFIG_TI_ADC081C=m
 CONFIG_TI_AM335X_ADC=m
+CONFIG_TWL4030_MADC=m
+CONFIG_TWL6030_GPADC=m
 CONFIG_VIPERBOARD_ADC=m
 
 #
@@ -6650,6 +6740,7 @@ CONFIG_IIO_ST_MAGN_SPI_3AXIS=m
 # Inclinometer sensors
 #
 CONFIG_HID_SENSOR_INCLINOMETER_3D=m
+CONFIG_HID_SENSOR_DEVICE_ROTATION=m
 
 #
 # Triggers - standalone
@@ -6661,14 +6752,21 @@ CONFIG_IIO_SYSFS_TRIGGER=m
 # Pressure sensors
 #
 CONFIG_HID_SENSOR_PRESS=m
+CONFIG_MPL115=m
 CONFIG_MPL3115=m
 CONFIG_IIO_ST_PRESS=m
 CONFIG_IIO_ST_PRESS_I2C=m
 CONFIG_IIO_ST_PRESS_SPI=m
 
 #
+# Lightning sensors
+#
+CONFIG_AS3935=m
+
+#
 # Temperature sensors
 #
+CONFIG_MLX90614=m
 CONFIG_TMP006=m
 CONFIG_NTB=m
 CONFIG_VME_BUS=y
@@ -6693,6 +6791,8 @@ CONFIG_PWM=y
 CONFIG_PWM_SYSFS=y
 CONFIG_PWM_LP3943=m
 CONFIG_PWM_LPSS=m
+CONFIG_PWM_TWL=m
+CONFIG_PWM_TWL_LED=m
 CONFIG_IPACK_BUS=m
 CONFIG_BOARD_TPCI200=m
 CONFIG_SERIAL_IPOCTAL=m
@@ -6872,7 +6972,9 @@ CONFIG_JFFS2_FS_DEBUG=0
 CONFIG_JFFS2_FS_WRITEBUFFER=y
 # CONFIG_JFFS2_FS_WBUF_VERIFY is not set
 # CONFIG_JFFS2_SUMMARY is not set
-# CONFIG_JFFS2_FS_XATTR is not set
+CONFIG_JFFS2_FS_XATTR=y
+CONFIG_JFFS2_FS_POSIX_ACL=y
+CONFIG_JFFS2_FS_SECURITY=y
 CONFIG_JFFS2_COMPRESSION_OPTIONS=y
 CONFIG_JFFS2_ZLIB=y
 CONFIG_JFFS2_LZO=y
@@ -6997,9 +7099,9 @@ CONFIG_NCPFS_EXTRAS=y
 CONFIG_CODA_FS=m
 CONFIG_AFS_FS=m
 # CONFIG_AFS_DEBUG is not set
-# CONFIG_AFS_FSCACHE is not set
+CONFIG_AFS_FSCACHE=y
 CONFIG_9P_FS=m
-# CONFIG_9P_FSCACHE is not set
+CONFIG_9P_FSCACHE=y
 CONFIG_9P_FS_POSIX_ACL=y
 CONFIG_9P_FS_SECURITY=y
 CONFIG_NLS=y
@@ -7073,7 +7175,6 @@ CONFIG_DYNAMIC_DEBUG=y
 # Compile-time checks and compiler options
 #
 # CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_INFO_REDUCED is not set
 # CONFIG_ENABLE_WARN_DEPRECATED is not set
 # CONFIG_ENABLE_MUST_CHECK is not set
 CONFIG_FRAME_WARN=1024
@@ -7148,6 +7249,7 @@ CONFIG_STACKTRACE=y
 # CONFIG_DEBUG_KOBJECT is not set
 CONFIG_DEBUG_BUGVERBOSE=y
 # CONFIG_DEBUG_LIST is not set
+# CONFIG_DEBUG_PI_LIST is not set
 # CONFIG_DEBUG_SG is not set
 # CONFIG_DEBUG_NOTIFIERS is not set
 # CONFIG_DEBUG_CREDENTIALS is not set
@@ -7166,7 +7268,7 @@ CONFIG_NOTIFIER_ERROR_INJECTION=m
 CONFIG_CPU_NOTIFIER_ERROR_INJECT=m
 CONFIG_PM_NOTIFIER_ERROR_INJECT=m
 # CONFIG_FAULT_INJECTION is not set
-CONFIG_LATENCYTOP=y
+# CONFIG_LATENCYTOP is not set
 CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y
 # CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set
 CONFIG_USER_STACKTRACE_SUPPORT=y
@@ -7213,6 +7315,7 @@ CONFIG_FTRACE_MCOUNT_RECORD=y
 # CONFIG_FTRACE_STARTUP_TEST is not set
 CONFIG_MMIOTRACE=y
 # CONFIG_MMIOTRACE_TEST is not set
+# CONFIG_TRACEPOINT_BENCHMARK is not set
 # CONFIG_RING_BUFFER_BENCHMARK is not set
 # CONFIG_RING_BUFFER_STARTUP_TEST is not set
 
@@ -7234,6 +7337,7 @@ CONFIG_TEST_KSTRTOX=m
 # CONFIG_DMA_API_DEBUG is not set
 CONFIG_TEST_MODULE=m
 CONFIG_TEST_USER_COPY=m
+CONFIG_TEST_BPF=m
 # CONFIG_SAMPLES is not set
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_KGDB=y
@@ -7282,7 +7386,7 @@ CONFIG_PERSISTENT_KEYRINGS=y
 CONFIG_BIG_KEYS=y
 CONFIG_TRUSTED_KEYS=y
 CONFIG_ENCRYPTED_KEYS=y
-# CONFIG_KEYS_DEBUG_PROC_KEYS is not set
+CONFIG_KEYS_DEBUG_PROC_KEYS=y
 # CONFIG_SECURITY_DMESG_RESTRICT is not set
 CONFIG_SECURITY=y
 CONFIG_SECURITYFS=y
@@ -7329,7 +7433,12 @@ CONFIG_IMA_DEFAULT_HASH_SHA1=y
 CONFIG_IMA_DEFAULT_HASH="sha1"
 CONFIG_IMA_APPRAISE=y
 CONFIG_EVM=y
-CONFIG_EVM_HMAC_VERSION=2
+
+#
+# EVM options
+#
+CONFIG_EVM_ATTR_FSUUID=y
+CONFIG_EVM_EXTRA_SMACK_XATTRS=y
 # CONFIG_DEFAULT_SECURITY_SELINUX is not set
 # CONFIG_DEFAULT_SECURITY_SMACK is not set
 # CONFIG_DEFAULT_SECURITY_TOMOYO is not set
@@ -7573,6 +7682,8 @@ CONFIG_TEXTSEARCH=y
 CONFIG_TEXTSEARCH_KMP=m
 CONFIG_TEXTSEARCH_BM=m
 CONFIG_TEXTSEARCH_FSM=m
+CONFIG_BTREE=y
+CONFIG_INTERVAL_TREE=y
 CONFIG_ASSOCIATIVE_ARRAY=y
 CONFIG_HAS_IOMEM=y
 CONFIG_HAS_IOPORT_MAP=y
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 105a8cb5c6..02a0ae36b5 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
+;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
 ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;;
@@ -23,8 +23,7 @@
   #:use-module ((guix licenses)
                 #:hide (zlib))
   #:use-module (gnu packages)
-  #:use-module ((gnu packages compression)
-                #:renamer (symbol-prefix-proc 'guix:))
+  #:use-module ((gnu packages compression) #:prefix guix:)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages gperf)
@@ -44,6 +43,10 @@
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages maths)
+  #:use-module (gnu packages which)
+  #:use-module (gnu packages rrdtool)
+  #:use-module (gnu packages gtk)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
@@ -165,7 +168,7 @@
   (origin
     (method url-fetch)
     (uri (string-append "http://www.fsfla.org/svn/fsfla/software/linux-libre/"
-                        "lemote/gnewsense/branches/3.15/100gnu+freedo.patch"))
+                        "lemote/gnewsense/branches/3.16/100gnu+freedo.patch"))
     (sha256
      (base32
       "1hk9swxxc80bmn2zd2qr5ccrjrk28xkypwhl4z0qx4hbivj7qm06"))))
@@ -186,7 +189,7 @@ for SYSTEM, or #f if there is no configuration for SYSTEM."
      #f)))
 
 (define-public linux-libre
-  (let* ((version "3.15.8")
+  (let* ((version "3.16.1")
          (build-phase
           '(lambda* (#:key system inputs #:allow-other-keys #:rest args)
              ;; Apply the neat patch.
@@ -259,7 +262,7 @@ for SYSTEM, or #f if there is no configuration for SYSTEM."
              (uri (linux-libre-urls version))
              (sha256
               (base32
-               "1ichq7b08rrfq61i8kpan9vxw9mxcfpcl8cw0a6lbc1ycwzvm7xw"))))
+               "1x4y0017l4ndcab4smky2wx0n86r3wyks2r8yyp19ia9ccnl98mf"))))
     (build-system gnu-build-system)
     (native-inputs `(("perl" ,perl)
                      ("bc" ,bc)
@@ -1341,6 +1344,65 @@ device nodes from /dev/, handles hotplug events and loads drivers at boot
 time.")
     (license gpl2+))) ; libudev is under lgpl2.1+
 
+(define-public lvm2
+  (package
+    (name "lvm2")
+    (version "2.02.109")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "ftp://sources.redhat.com/pub/lvm2/releases/LVM2."
+                                  version ".tgz"))
+              (sha256
+               (base32
+                "1rv5ivg0l1w3nwzwdkqixm96h5bzg7ib4rr196ysb2lw42jmpjbv"))
+              (modules '((guix build utils)))
+              (snippet
+               '(begin
+                  (use-modules (guix build utils))
+
+                  ;; Honor sysconfdir.
+                  (substitute* "make.tmpl.in"
+                    (("confdir = .*$")
+                     "confdir = @sysconfdir@\n")
+                    (("DEFAULT_SYS_DIR = @DEFAULT_SYS_DIR@")
+                     "DEFAULT_SYS_DIR = @sysconfdir@"))))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("procps" ,procps)))                       ;tests use 'pgrep'
+    (inputs
+     `(("udev" ,udev)))
+    (arguments
+     '(#:phases (alist-cons-after
+                 'configure 'set-makefile-shell
+                 (lambda _
+                   ;; Use 'sh', not 'bash', so that '. lib/utils.sh' works as
+                   ;; expected.
+                   (setenv "SHELL" (which "sh"))
+
+                   ;; Replace /bin/sh with the right file name.
+                   (patch-makefile-SHELL "make.tmpl"))
+                 %standard-phases)
+
+       #:configure-flags (list (string-append "--sysconfdir="
+                                              (assoc-ref %outputs "out")
+                                              "/etc/lvm")
+                               "--enable-udev_sync"
+                               "--enable-udev_rules")
+
+       ;; The tests use 'mknod', which requires root access.
+       #:tests? #f))
+    (home-page "http://sourceware.org/lvm2/")
+    (synopsis "Logical volume management for Linux")
+    (description
+     "LVM2 is the logical volume management tool set for Linux-based systems.
+This package includes the user-space libraries and tools, including the device
+mapper.  Kernel components are part of Linux-libre.")
+
+    ;; Libraries (liblvm2, libdevmapper) are LGPLv2.1.
+    ;; Command-line tools are GPLv2.
+    (license (list gpl2 lgpl2.1))))
+
 (define-public wireless-tools
   (package
     (name "wireless-tools")
@@ -1366,3 +1428,113 @@ Extensions.  The Wireless Extension is an interface allowing you to set
 Wireless LAN specific parameters and get the specific stats.")
     (home-page "http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html")
     (license gpl2+)))
+
+(define-public lm-sensors
+  (package
+    (name "lm-sensors")
+    (version "3.3.5")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://dl.lm-sensors.org/lm-sensors/releases/lm_sensors-"
+                    version ".tar.bz2"))
+              (sha256
+               (base32
+                "1ksgrynxgrq590nb2fwxrl1gwzisjkqlyg3ljfd1al0ibrk6mbjx"))
+              (patches (list (search-patch "lm-sensors-hwmon-attrs.patch")))))
+    (build-system gnu-build-system)
+    (inputs `(("rrdtool" ,rrdtool)
+              ("perl" ,perl)
+              ("kmod" ,kmod)
+              ("gnuplot" ,gnuplot)))
+    (native-inputs `(("pkg-config" ,pkg-config)
+                     ("flex" ,flex)
+                     ("bison" ,bison)
+                     ("which" ,which)))
+    (arguments
+     `(#:tests? #f  ; no 'check' target
+       #:make-flags (list (string-append "PREFIX=" %output)
+                          (string-append "ETCDIR=" %output "/etc")
+                          (string-append "MANDIR=" %output "/share/man"))
+       #:phases
+       (alist-delete
+        'configure
+        (alist-cons-before
+         'build 'patch-exec-paths
+         (lambda* (#:key inputs outputs #:allow-other-keys)
+           (substitute* "prog/detect/sensors-detect"
+             (("`uname")
+              (string-append "`" (assoc-ref inputs "coreutils")
+                             "/bin/uname"))
+             (("(`|\")modprobe" all open-quote)
+              (string-append open-quote
+                             (assoc-ref inputs "kmod")
+                             "/bin/modprobe")))
+           (substitute* '("prog/pwm/pwmconfig"
+                          "prog/pwm/fancontrol")
+             (("gnuplot")
+              (string-append (assoc-ref inputs "gnuplot")
+                             "/bin/gnuplot"))
+             (("cat ")
+              (string-append (assoc-ref inputs "coreutils")
+                             "/bin/cat "))
+             (("egrep ")
+              (string-append (assoc-ref inputs "grep")
+                             "/bin/egrep "))
+             (("sed -e")
+              (string-append (assoc-ref inputs "sed")
+                             "/bin/sed -e"))
+             (("cut -d")
+              (string-append (assoc-ref inputs "coreutils")
+                             "/bin/cut -d"))
+             (("sleep ")
+              (string-append (assoc-ref inputs "coreutils")
+                             "/bin/sleep "))
+             (("readlink -f")
+              (string-append (assoc-ref inputs "coreutils")
+                             "/bin/readlink -f"))))
+         %standard-phases))))
+    (home-page "http://www.lm-sensors.org/")
+    (synopsis "Utilities to read temperature/voltage/fan sensors")
+    (description
+     "lm-sensors is a hardware health monitoring package for Linux.  It allows
+you to access information from temperature, voltage, and fan speed sensors.
+It works with most newer systems.")
+    (license gpl2+)))
+
+(define-public xsensors
+  (package
+    (name "xsensors")
+    (version "0.70")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://www.linuxhardware.org/xsensors/xsensors-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "1siplsfgvcxamyqf44h71jx6jdfmvhfm7mh0y1q8ps4zs6pj2zwh"))))
+    (build-system gnu-build-system)
+    (inputs `(("lm-sensors" ,lm-sensors)
+              ("gtk" ,gtk+-2)))
+    (native-inputs `(("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:phases (alist-cons-before
+                 'configure 'enable-deprecated
+                 (lambda _
+                   (substitute* "src/Makefile.in"
+                     (("-DGDK_DISABLE_DEPRECATED") "")
+                     (("-DGTK_DISABLE_DEPRECATED") "")))
+                 (alist-cons-before
+                  'configure 'remove-Werror
+                  (lambda _
+                    (substitute* '("configure" "src/Makefile.in")
+                      (("-Werror") "")))
+                  %standard-phases))))
+    (home-page "http://www.linuxhardware.org/xsensors/")
+    (synopsis "Hardware health information viewer")
+    (description
+     "xsensors reads data from the libsensors library regarding hardware
+health such as temperature, voltage and fan speed and displays the information
+in a digital read-out.")
+    (license gpl2+)))
diff --git a/gnu/packages/lvm.scm b/gnu/packages/lvm.scm
deleted file mode 100644
index 82e93dcc66..0000000000
--- a/gnu/packages/lvm.scm
+++ /dev/null
@@ -1,62 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
-;;;
-;;; 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 lvm)
-  #:use-module ((guix licenses)
-                #:renamer (symbol-prefix-proc 'license:))
-  #:use-module (guix packages)
-  #:use-module (guix download)
-  #:use-module (guix build-system gnu)
-  #:use-module (gnu packages)
-  #:use-module (gnu packages linux)
-  #:use-module (gnu packages pkg-config))
-
-(define-public lvm2
-  (package
-   (name "lvm2")
-   (version "2.02.98")
-   (source (origin
-            (method url-fetch)
-            (uri (string-append "ftp://sources.redhat.com/pub/lvm2/LVM2."
-                                version ".tgz"))
-            (sha256
-             (base32
-              "0r6q6z8ip6q5qgkzng0saljassp4912k6i21ra10vq7pzrc0l0vi"))))
-   (build-system gnu-build-system)
-   (native-inputs
-     `(("pkg-config" ,pkg-config)
-       ("procps" ,procps)))
-   (arguments
-    `(#:tests? #f ; require to be root
-      #:configure-flags
-       `(,(string-append "--with-confdir=" (assoc-ref %outputs "out") "/etc"))
-      #:phases
-       (alist-cons-before
-        'configure 'patch-make-tmpl
-        (lambda _
-          (substitute* "make.tmpl.in"
-            (("/bin/sh") (which "sh"))
-            (("CC \\?=") "CC ="))) ; force CC argument to be set from configure
-         %standard-phases)))
-   (synopsis "logical volume management")
-   (description
-    "LVM2 refers to the userspace toolset that provides logical volume
-management facilities on linux. It is reasonably backwards-compatible with
-the original LVM toolset.")
-   (license license:gpl2)
-   (home-page "http://www.sourceware.org/lvm2/")))
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 7bdd81b4c8..a9e862ac88 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -132,7 +132,7 @@ software.")
      `(#:configure-flags (list (string-append "--with-ssl="
                                               (assoc-ref %build-inputs "openssl")))))
     (home-page "http://fetchmail.berlios.de/")
-    (synopsis "Remote-mailr etrieval and forwarding utility")
+    (synopsis "Remote-mail retrieval and forwarding utility")
     (description
      "Fetchmail is a full-featured, robust, well-documented remote-mail
 retrieval and forwarding utility intended to be used over on-demand
@@ -332,14 +332,14 @@ attachments, create new maildirs, and so on.")
 (define-public notmuch
   (package
     (name "notmuch")
-    (version "0.18")
+    (version "0.18.1")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://notmuchmail.org/releases/notmuch-"
                                   version ".tar.gz"))
               (sha256
                (base32
-                "1ia65iazz2hlp3ja57yn0chs27rzsky9kayw74njwmgi9faw3vh9"))))
+                "1pdp9l7yv71d3fjb30qyccva8h03hvg88q4a00yi50v2j70kvmgj"))))
     (build-system gnu-build-system)
     (arguments
      '(#:tests? #f ;; FIXME: Test suite hangs and times out.
diff --git a/gnu/packages/mysql.scm b/gnu/packages/mysql.scm
index 4258bf6fe5..e89770e907 100644
--- a/gnu/packages/mysql.scm
+++ b/gnu/packages/mysql.scm
@@ -31,15 +31,15 @@
 (define-public mysql
   (package
     (name "mysql")
-    (version "5.1.54")
+    (version "5.1.73")
     (source (origin
              (method url-fetch)
              (uri (string-append
-                   "http://downloads.mysql.com/archives/mysql-5.1/mysql-"
+                   "http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-"
                    version ".tar.gz"))
              (sha256
               (base32
-               "07xbnwk7h1xya8s6dw34nrv7ampzag8l0l1szd2pc9zyqkzhydw4"))))
+               "1dfwi4ck0vq6sdci6gz0031s7zz5lc3pddqlgm0292s00l9y5sq5"))))
     (build-system gnu-build-system)
     (inputs
      `(("procps" ,procps)
diff --git a/gnu/packages/openssl.scm b/gnu/packages/openssl.scm
index 51caa00e68..77e2860826 100644
--- a/gnu/packages/openssl.scm
+++ b/gnu/packages/openssl.scm
@@ -28,14 +28,14 @@
 (define-public openssl
   (package
    (name "openssl")
-   (version "1.0.1h")
+   (version "1.0.1i")
    (source (origin
             (method url-fetch)
             (uri (string-append "ftp://ftp.openssl.org/source/openssl-" version
                                 ".tar.gz"))
             (sha256
              (base32
-              "14yhsgag5as7nhxnw7f0vklwjwa3pmn1i15nmp3f4qxa6sc8l74x"))))
+              "1izwv1wzqdw8aqnvb70jcqpqp0rvkcm22w5c1dm9l1kpr939y5rw"))))
    (build-system gnu-build-system)
    (native-inputs `(("perl" ,perl)))
    (arguments
diff --git a/gnu/packages/orpheus.scm b/gnu/packages/orpheus.scm
new file mode 100644
index 0000000000..2bc6a6af14
--- /dev/null
+++ b/gnu/packages/orpheus.scm
@@ -0,0 +1,96 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.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 orpheus)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages mp3)
+  #:use-module (gnu packages which)
+  #:use-module (gnu packages xiph)
+  #:use-module (gnu packages xml))
+
+(define-public orpheus
+  (package
+    (name "orpheus")
+    (version "1.6")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "http://thekonst.net/download/orpheus-"
+                          version ".tar.gz"))
+      (sha256
+       (base32
+        "1xbgxq8fybwhm51nw9hvvrgi873qzkc2qvmy15d2m2hw2yqa99hq"))
+      (patches (list (search-patch "orpheus-cast-errors-and-includes.patch")))))
+    (build-system gnu-build-system)
+    (inputs
+     `(("ncurses" ,ncurses)
+       ("libvorbis" ,libvorbis)
+       ("vorbis-tools" ,vorbis-tools)
+       ("mpg321" ,mpg321)
+       ;; TODO: add ghttp
+       ("libxml2" ,libxml2)
+       ("which" ,which)))
+    (arguments
+     `(#:phases
+       (alist-replace
+        'configure
+        (lambda* (#:key outputs #:allow-other-keys)
+          ;; This old `configure' script does not support variables passed as
+          ;; arguments.
+          (let ((out (assoc-ref outputs "out")))
+            (setenv "CONFIG_SHELL" (which "bash"))
+            (setenv "SHELL" (which "bash"))
+            (setenv "LIBS" "-logg")     ;doesn't declare its use of libogg
+            (zero?
+             (system* "./configure" (string-append "--prefix=" out)))))
+        (alist-cons-after
+         'configure 'configure-players
+         (lambda* (#:key inputs #:allow-other-keys)
+           ;; To avoid propagating the mpg321 and vorbis-tools inputs, we can
+           ;; make the orpheus application execute the needed players from the
+           ;; store.
+           (let ((ogg123 (string-append (assoc-ref inputs "vorbis-tools")
+                                        "/bin/ogg123"))
+                 (mpg321 (string-append (assoc-ref inputs "mpg321")
+                                        "/bin/mpg321"))
+                 (which  (string-append (assoc-ref inputs "which")
+                                        "/bin/which")))
+             (substitute* "src/orpheusconf.cc"
+               (("ogg123") ogg123)
+               (("which")  which)
+               (("mpg321") mpg321))))
+         (alist-cons-before
+          'build 'patch-shells
+          (lambda _
+            (substitute* '("src/mp3track.cc"
+                           "src/streamtrack.cc"
+                           "src/oggtrack.cc")
+              (("/bin/sh") (which "bash"))))
+          %standard-phases)))))
+    (home-page "http://thekonst.net/en/orpheus")
+    (synopsis "Text-mode audio player")
+    (description
+     "Orpheus is a light-weight text mode menu- and window-driven audio player
+application for CDs, internet stream broadcasts, and files in MP3 and Vorbis
+OGG format.")
+    (license gpl2+)))
diff --git a/gnu/packages/patches/avrdude-fix-libusb.patch b/gnu/packages/patches/avrdude-fix-libusb.patch
new file mode 100644
index 0000000000..13d0eca91c
--- /dev/null
+++ b/gnu/packages/patches/avrdude-fix-libusb.patch
@@ -0,0 +1,256 @@
+Avrdude cannot build with our version of libusb. This patch fixes that.
+See http://savannah.nongnu.org/bugs/?41854
+
+diff --git a/dfu.c b/dfu.c
+index 7d349bc..0f80440 100644
+--- a/dfu.c
++++ b/dfu.c
+@@ -36,13 +36,14 @@
+ 
+ #ifndef HAVE_LIBUSB
+ 
+-int dfu_open(struct dfu_dev *dfu, char *port_name) {
++struct dfu_dev * dfu_open(char *port_spec) {
+   fprintf(stderr, "%s: Error: No USB support in this compile of avrdude\n",
+     progname);
+-  return -1;
++  return NULL;
+ }
+ 
+-int dfu_init(struct dfu_dev *dfu, unsigned short usb_pid) {
++int dfu_init(struct dfu_dev *dfu,
++  unsigned short vid, unsigned short pid) {
+   return -1;
+ }
+ 
+diff --git a/flip1.c b/flip1.c
+index b891d80..0959996 100644
+--- a/flip1.c
++++ b/flip1.c
+@@ -164,6 +164,8 @@ static void flip1_setup(PROGRAMMER * pgm);
+ static void flip1_teardown(PROGRAMMER * pgm);
+ 
+ /* INTERNAL PROGRAMMER FUNCTION PROTOTYPES */
++#ifdef HAVE_LIBUSB
++// The internal ones are made conditional, as they're not defined further down #ifndef HAVE_LIBUSB
+ 
+ static void flip1_show_info(struct flip1 *flip1);
+ 
+@@ -177,6 +179,8 @@ static const char * flip1_mem_unit_str(enum flip1_mem_unit mem_unit);
+ static int flip1_set_mem_page(struct dfu_dev *dfu, unsigned short page_addr);
+ static enum flip1_mem_unit flip1_mem_unit(const char *name);
+ 
++#endif /* HAVE_LIBUSB */
++
+ /* THE INITPGM FUNCTION DEFINITIONS */
+ 
+ void flip1_initpgm(PROGRAMMER *pgm)
+@@ -201,6 +205,7 @@ void flip1_initpgm(PROGRAMMER *pgm)
+   pgm->teardown         = flip1_teardown;
+ }
+ 
++#ifdef HAVE_LIBUSB
+ /* EXPORTED PROGRAMMER FUNCTION DEFINITIONS */
+ 
+ int flip1_open(PROGRAMMER *pgm, char *port_spec)
+@@ -876,3 +881,82 @@ enum flip1_mem_unit flip1_mem_unit(const char *name) {
+     return FLIP1_MEM_UNIT_EEPROM;
+   return FLIP1_MEM_UNIT_UNKNOWN;
+ }
++#else /* HAVE_LIBUSB */
++// Dummy functions
++int flip1_open(PROGRAMMER *pgm, char *port_spec)
++{
++  fprintf(stderr, "%s: Error: No USB support in this compile of avrdude\n",
++    progname);
++  return NULL;
++}
++
++int flip1_initialize(PROGRAMMER* pgm, AVRPART *part)
++{
++  return -1;
++}
++
++void flip1_close(PROGRAMMER* pgm)
++{
++}
++
++void flip1_enable(PROGRAMMER* pgm)
++{
++}
++
++void flip1_disable(PROGRAMMER* pgm)
++{
++}
++
++void flip1_display(PROGRAMMER* pgm, const char *prefix)
++{
++}
++
++int flip1_program_enable(PROGRAMMER* pgm, AVRPART *part)
++{
++  return -1;
++}
++
++int flip1_chip_erase(PROGRAMMER* pgm, AVRPART *part)
++{
++  return -1;
++}
++
++int flip1_read_byte(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned long addr, unsigned char *value)
++{
++  return -1;
++}
++
++int flip1_write_byte(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned long addr, unsigned char value)
++{
++  return -1;
++}
++
++int flip1_paged_load(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned int page_size, unsigned int addr, unsigned int n_bytes)
++{
++  return -1;
++}
++
++int flip1_paged_write(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned int page_size, unsigned int addr, unsigned int n_bytes)
++{
++  return -1;
++}
++
++int flip1_read_sig_bytes(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem)
++{
++  return -1;
++}
++
++void flip1_setup(PROGRAMMER * pgm)
++{
++}
++
++void flip1_teardown(PROGRAMMER * pgm)
++{
++}
++
++
++#endif /* HAVE_LIBUSB */
+\ No newline at end of file
+
+diff --git a/flip2.c b/flip2.c
+index ed8e996..16c4bf8 100644
+--- a/flip2.c
++++ b/flip2.c
+@@ -151,6 +151,8 @@ static void flip2_setup(PROGRAMMER * pgm);
+ static void flip2_teardown(PROGRAMMER * pgm);
+ 
+ /* INTERNAL PROGRAMMER FUNCTION PROTOTYPES */
++#ifdef HAVE_LIBUSB
++// The internal ones are made conditional, as they're not defined further down #ifndef HAVE_LIBUSB
+ 
+ static void flip2_show_info(struct flip2 *flip2);
+ 
+@@ -171,6 +173,8 @@ static const char * flip2_status_str(const struct dfu_status *status);
+ static const char * flip2_mem_unit_str(enum flip2_mem_unit mem_unit);
+ static enum flip2_mem_unit flip2_mem_unit(const char *name);
+ 
++#endif /* HAVE_LIBUSB */
++
+ /* THE INITPGM FUNCTION DEFINITIONS */
+ 
+ void flip2_initpgm(PROGRAMMER *pgm)
+@@ -195,6 +199,7 @@ void flip2_initpgm(PROGRAMMER *pgm)
+   pgm->teardown         = flip2_teardown;
+ }
+ 
++#ifdef HAVE_LIBUSB
+ /* EXPORTED PROGRAMMER FUNCTION DEFINITIONS */
+ 
+ int flip2_open(PROGRAMMER *pgm, char *port_spec)
+@@ -922,3 +927,85 @@ enum flip2_mem_unit flip2_mem_unit(const char *name) {
+     return FLIP2_MEM_UNIT_SIGNATURE;
+   return FLIP2_MEM_UNIT_UNKNOWN;
+ }
++
++#else /* HAVE_LIBUSB */
++
++/* EXPORTED PROGRAMMER FUNCTION DEFINITIONS */
++
++int flip2_open(PROGRAMMER *pgm, char *port_spec)
++{
++  fprintf(stderr, "%s: Error: No USB support in this compile of avrdude\n",
++    progname);
++  return NULL;
++}
++
++int flip2_initialize(PROGRAMMER* pgm, AVRPART *part)
++{
++  return -1;
++}
++
++void flip2_close(PROGRAMMER* pgm)
++{
++}
++
++void flip2_enable(PROGRAMMER* pgm)
++{
++}
++
++void flip2_disable(PROGRAMMER* pgm)
++{
++}
++
++void flip2_display(PROGRAMMER* pgm, const char *prefix)
++{
++}
++
++int flip2_program_enable(PROGRAMMER* pgm, AVRPART *part)
++{
++  return -1;
++}
++
++int flip2_chip_erase(PROGRAMMER* pgm, AVRPART *part)
++{
++  return -1;
++}
++
++int flip2_read_byte(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned long addr, unsigned char *value)
++{
++  return -1;
++}
++
++int flip2_write_byte(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned long addr, unsigned char value)
++{
++  return -1;
++}
++
++int flip2_paged_load(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned int page_size, unsigned int addr, unsigned int n_bytes)
++{
++  return -1;
++}
++
++int flip2_paged_write(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem,
++  unsigned int page_size, unsigned int addr, unsigned int n_bytes)
++{
++  return -1;
++}
++
++int flip2_read_sig_bytes(PROGRAMMER* pgm, AVRPART *part, AVRMEM *mem)
++{
++  return -1;
++}
++
++void flip2_setup(PROGRAMMER * pgm)
++{
++}
++
++void flip2_teardown(PROGRAMMER * pgm)
++{
++}
++
++
++#endif /* HAVE_LIBUSB */
diff --git a/gnu/packages/patches/curl-fix-test172.patch b/gnu/packages/patches/curl-fix-test172.patch
deleted file mode 100644
index cc2c2705e7..0000000000
--- a/gnu/packages/patches/curl-fix-test172.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/tests/data/test172 b/tests/data/test172
-index b3efae9..3d53418 100644
---- a/tests/data/test172
-+++ b/tests/data/test172
-@@ -36,7 +36,7 @@ http://%HOSTIP:%HTTPPORT/we/want/172 -b log/jar172.txt -b "tool=curl; name=fool"
- 
- .%HOSTIP	TRUE	/silly/	FALSE	0	ismatch	this
- .%HOSTIP	TRUE	/	FALSE	0	partmatch	present
--%HOSTIP	FALSE	/we/want/	FALSE	1391252187	nodomain	value
-+%HOSTIP	FALSE	/we/want/	FALSE	2139150993	nodomain	value
- </file>
- </client>
diff --git a/gnu/packages/patches/flashrom-use-libftdi1.patch b/gnu/packages/patches/flashrom-use-libftdi1.patch
new file mode 100644
index 0000000000..a6051df30a
--- /dev/null
+++ b/gnu/packages/patches/flashrom-use-libftdi1.patch
@@ -0,0 +1,70 @@
+Update to libftdi-1.0 is advertised as a drop-in replacement for libftdi,
+running on top of libusb-1.0. This also removes indirect dependency to
+libusb-0.1.
+
+Patch by Kyösti Mälkki <kyosti.malkki@gmail.com>.
+See <http://patchwork.coreboot.org/patch/3904/>.
+
+--- flashrom/Makefile.orig	2013-08-13 18:00:00.000000000 -0400
++++ flashrom/Makefile	2014-08-05 03:10:40.217145375 -0400
+@@ -492,19 +492,21 @@
+ ifeq ($(CONFIG_FT2232_SPI), yes)
+ # This is a totally ugly hack.
+ FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_FT2232_SPI=1'")
+-NEED_FTDI := yes
++NEED_FTDI1 := yes
+ PROGRAMMER_OBJS += ft2232_spi.o
+ endif
+ 
+ ifeq ($(CONFIG_USBBLASTER_SPI), yes)
+ # This is a totally ugly hack.
+ FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_USBBLASTER_SPI=1'")
+-NEED_FTDI := yes
++NEED_LIBUSB1 := yes
++NEED_FTDI1 := yes
+ PROGRAMMER_OBJS += usbblaster_spi.o
+ endif
+ 
+-ifeq ($(NEED_FTDI), yes)
+-FTDILIBS := $(shell pkg-config --libs libftdi 2>/dev/null || printf "%s" "-lftdi -lusb")
++ifeq ($(NEED_FTDI1), yes)
++FTDILIBS := $(shell pkg-config --libs libftdi1 2>/dev/null || printf "%s" "-lftdi1 -lusb-1.0")
++FEATURE_CFLAGS += $(shell pkg-config --cflags libftdi1 2>/dev/null)
+ FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FT232H := yes" .features && printf "%s" "-D'HAVE_FT232H=1'")
+ FEATURE_LIBS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "$(FTDILIBS)")
+ # We can't set NEED_USB here because that would transform libftdi auto-enabling
+@@ -781,6 +783,7 @@
+ endif
+ 
+ define FTDI_TEST
++#include <stddef.h>
+ #include <ftdi.h>
+ struct ftdi_context *ftdic = NULL;
+ int main(int argc, char **argv)
+@@ -793,6 +796,7 @@
+ export FTDI_TEST
+ 
+ define FTDI_232H_TEST
++#include <stddef.h>
+ #include <ftdi.h>
+ enum ftdi_chip_type type = TYPE_232H;
+ endef
+@@ -826,15 +830,15 @@
+ 
+ features: compiler
+ 	@echo "FEATURES := yes" > .features.tmp
+-ifeq ($(NEED_FTDI), yes)
++ifeq ($(NEED_FTDI1), yes)
+ 	@printf "Checking for FTDI support... "
+ 	@echo "$$FTDI_TEST" > .featuretest.c
+-	@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
++	@$(CC) $(CPPFLAGS) $(CFLAGS) $(FEATURE_CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
+ 		( echo "found."; echo "FTDISUPPORT := yes" >> .features.tmp ) ||	\
+ 		( echo "not found."; echo "FTDISUPPORT := no" >> .features.tmp )
+ 	@printf "Checking for FT232H support in libftdi... "
+ 	@echo "$$FTDI_232H_TEST" >> .featuretest.c
+-	@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
++	@$(CC) $(CPPFLAGS) $(CFLAGS) $(FEATURE_CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
+ 		( echo "found."; echo "FT232H := yes" >> .features.tmp ) ||	\
+ 		( echo "not found."; echo "FT232H := no" >> .features.tmp )
+ endif
diff --git a/gnu/packages/patches/lm-sensors-hwmon-attrs.patch b/gnu/packages/patches/lm-sensors-hwmon-attrs.patch
new file mode 100644
index 0000000000..12979e7bd1
--- /dev/null
+++ b/gnu/packages/patches/lm-sensors-hwmon-attrs.patch
@@ -0,0 +1,85 @@
+fancontrol: Deal with moving hwmon attributes
+
+Several kernel drivers have already moved their attributes from the
+hardware device to the hwmon class device, and others will follow.
+Teach fancontrol about this possibility and let it adjust the attribute
+paths transparently.
+
+Patch by Jean Delvare <khali@linux-fr.org>.
+See <http://www.lm-sensors.org/changeset/6216>.
+
+--- lm-sensors/prog/pwm/fancontrol	(revision 6172)
++++ lm-sensors/prog/pwm/fancontrol	(revision 6216)
+@@ -207,4 +207,63 @@
+ }
+ 
++function FixupDeviceFiles
++{
++	local DEVICE="$1"
++	local fcvcount pwmo tsen fan
++
++	let fcvcount=0
++	while (( $fcvcount < ${#AFCPWM[@]} )) # go through all pwm outputs
++	do
++		pwmo=${AFCPWM[$fcvcount]}
++		AFCPWM[$fcvcount]=${pwmo//$DEVICE\/device/$DEVICE}
++		if [ "${AFCPWM[$fcvcount]}" != "$pwmo" ]
++		then
++			echo "Adjusing $pwmo -> ${AFCPWM[$fcvcount]}"
++		fi
++		let fcvcount=$fcvcount+1
++	done
++
++	let fcvcount=0
++	while (( $fcvcount < ${#AFCTEMP[@]} )) # go through all temp inputs
++	do
++		tsen=${AFCTEMP[$fcvcount]}
++		AFCTEMP[$fcvcount]=${tsen//$DEVICE\/device/$DEVICE}
++		if [ "${AFCTEMP[$fcvcount]}" != "$tsen" ]
++		then
++			echo "Adjusing $tsen -> ${AFCTEMP[$fcvcount]}"
++		fi
++		let fcvcount=$fcvcount+1
++	done
++
++	let fcvcount=0
++	while (( $fcvcount < ${#AFCFAN[@]} )) # go through all fan inputs
++	do
++		fan=${AFCFAN[$fcvcount]}
++		AFCFAN[$fcvcount]=${fan//$DEVICE\/device/$DEVICE}
++		if [ "${AFCFAN[$fcvcount]}" != "$fan" ]
++		then
++			echo "Adjusing $fan -> ${AFCFAN[$fcvcount]}"
++		fi
++		let fcvcount=$fcvcount+1
++	done
++}
++
++# Some drivers moved their attributes from hard device to class device
++function FixupFiles
++{
++	local DEVPATH="$1"
++	local entry device
++
++	for entry in $DEVPATH
++	do
++		device=`echo "$entry" | sed -e 's/=[^=]*$//'`
++
++		if [ -e "$device/name" ]
++		then
++			FixupDeviceFiles "$device"
++		fi
++	done
++}
++
+ # Check that all referenced sysfs files exist
+ function CheckFiles
+@@ -306,4 +365,8 @@
+ 	echo "Configuration appears to be outdated, please run pwmconfig again" >&2
+ 	exit 1
++fi
++if [ "$DIR" = "/sys/class/hwmon" ]
++then
++	FixupFiles "$DEVPATH"
+ fi
+ CheckFiles || exit 1
diff --git a/gnu/packages/patches/orpheus-cast-errors-and-includes.patch b/gnu/packages/patches/orpheus-cast-errors-and-includes.patch
new file mode 100644
index 0000000000..159f242f5c
--- /dev/null
+++ b/gnu/packages/patches/orpheus-cast-errors-and-includes.patch
@@ -0,0 +1,51 @@
+The 'intcompare' definition was causing a "cast from 'void*' to 'int' loses
+precision [-fpermissive]" error.  It isn't used anywhere, so simply remove it.
+Same with 'findint' in texteditor.cc.
+
+Fix other "cast from ‘void*’ to ‘int’ loses precision" errors.
+
+--- a/kkstrtext-0.1/kkstrtext.cc	2005-01-31 18:13:24.000000000 -0600
++++ b/kkstrtext-0.1/kkstrtext.cc	2014-07-24 00:25:07.149305476 -0500
+@@ -430,10 +430,6 @@
+     }
+ }
+ 
+-int intcompare(void *s1, void *s2) {
+-    return (int) s1 != (int) s2;
+-}
+-
+ string i2str(int i) {
+     char buf[64];
+     sprintf(buf, "%d", i);
+@@ -885,7 +881,7 @@
+ #ifdef HAVE_ICONV
+     iconv_t cd = iconv_open(tocs.c_str(), fromcs.c_str());
+ 
+-    if(((int) cd) != -1) {
++    if(cd != (iconv_t) -1) {
+ 	string r, text(atext);
+ 	size_t inleft, outleft, soutleft;
+ 	char *inbuf, *outbuf, *sinbuf, *soutbuf;
+--- a/kkconsui-0.1/src/texteditor.cc	2003-09-09 16:51:33.000000000 -0500
++++ b/kkconsui-0.1/src/texteditor.cc	2014-07-24 00:33:20.093279060 -0500
+@@ -1939,10 +1939,6 @@
+     if(ur) delete ur;
+ }
+ 
+-int texteditor::findint(void *p1, void *p2) {
+-    return *(int *) p1 != (int) p2;
+-}
+-
+ int texteditor::findhighline(void *p1, void *p2) {
+     return *(int *) p1 != ((highline *) p2)->line;
+ }
+--- a/src/streamtrack.cc	2006-05-11 12:45:20.000000000 -0500
++++ b/src/streamtrack.cc	2014-07-24 00:38:10.797263482 -0500
+@@ -34,6 +34,7 @@
+ #include <sys/wait.h>
+ #include <sys/stat.h>
+ #include <signal.h>
++#include <unistd.h>
+ 
+ #include <algorithm>
+ 
diff --git a/gnu/packages/patches/texi2html-document-encoding.patch b/gnu/packages/patches/texi2html-document-encoding.patch
new file mode 100644
index 0000000000..1469b67fa6
--- /dev/null
+++ b/gnu/packages/patches/texi2html-document-encoding.patch
@@ -0,0 +1,31 @@
+Patch derived from discussion at https://savannah.nongnu.org/bugs/?37503
+
+--- texi2html-5.0/texi2html.pl	2010-06-30 17:01:27.000000000 -0500
++++ texi2html-5.0/texi2html.pl	2014-07-09 01:17:57.062990582 -0500
+@@ -2589,7 +2589,12 @@
+     my $state = shift;
+ 
+     # FIXME this should be done only once, for @documentencoding
+-    my $encoding = lc(Texi2HTML::Config::get_conf('DOCUMENT_ENCODING'));
++    my $encoding;
++    my $input_encoding = Texi2HTML::Config::get_conf('documentencoding');
++    if (defined($input_encoding))
++    {
++      $encoding = lc($input_encoding);
++    }
+     if (defined($encoding) and $encoding ne '' and exists($Texi2HTML::Config::t2h_encoding_aliases{$encoding}))
+     {
+        $encoding = $Texi2HTML::Config::t2h_encoding_aliases{$encoding};
+
+Fix failures in test/encodings.
+
+--- texi2html-5.0/texi2html.pl	2014-07-09 01:22:06.000000000 -0500
++++ texi2html-5.0/texi2html.pl	2014-07-10 23:23:47.182097602 -0500
+@@ -53,6 +53,7 @@
+ # for translations
+ #use encoding 'utf8';
+ #use utf8;
++binmode STDERR, ':encoding(utf8)';
+ 
+ #
+ # According to
diff --git a/gnu/packages/patches/texi2html-i18n.patch b/gnu/packages/patches/texi2html-i18n.patch
new file mode 100644
index 0000000000..eba903d068
--- /dev/null
+++ b/gnu/packages/patches/texi2html-i18n.patch
@@ -0,0 +1,50 @@
+Do not try to regenerate po files; use the reference files that are packaged
+in the tarball.
+
+--- a/Makefile.in	2010-06-30 17:02:28.000000000 -0500
++++ b/Makefile.in	2014-08-16 00:22:38.447050269 -0500
+@@ -1022,15 +1022,7 @@
+ 
+ i18n/en.thl i18n/: $(po_document_dir)/po_document/$(PACKAGE)_document.pot
+ 	$(MKDIR_P) i18n
+-	if test '$(USE_NLS)' = 'yes'; then \
+-	  for file in "$(srcdir)/$(po_document_dir)/po_document/"*".po"; do lang=`basename "$$file" .po | sed 's/\..*//'`; \
+-		test "$$lang" = 'en' && continue; \
+-		msgexec -i "$$file" "$(srcdir)/gettext_to_separated.pl" | "$(srcdir)/separated_to_hash.pl" $$lang > i18n/$$lang.thl; \
+-	  done; \
+-	  msgexec -i $< "$(srcdir)/gettext_to_separated.pl" | "$(srcdir)/separated_to_hash.pl" en > i18n/en.thl; \
+-	else \
+-	  cp -p i18n_ref/*.thl i18n; \
+-	fi
++	cp -p i18n_ref/*.thl i18n
+ 
+ i18n_ref:
+ 	$(MKDIR_P) i18n_ref
+
+Have install-sh install .mo files locally for in-source tests, so that msgfmt
+is not needed.
+
+--- a/Makefile.in	2010-06-30 17:02:28.000000000 -0500
++++ b/Makefile.in	2014-08-16 00:22:38.447050269 -0500
+@@ -1052,19 +1044,8 @@
+ # update the po files, and install locally the .mo files for the in
+ # source tests
+ check-local: makeinfo.pl texi2any.pl
+-	if test '$(USE_NLS)' = 'yes'; then \
+-	  cd $(po_document_dir)/po_document && $(MAKE) $(AM_MAKEFLAGS) update-po; \
+-	fi
+-	rm -rf locales
+-	for file in "$(srcdir)/$(po_document_dir)/po_document/"*.po; do \
+-	  basename=`basename "$$file" .po` ; \
+-	  $(MKDIR_P) "locales/$$basename/LC_MESSAGES/" ; \
+-	  if test '$(USE_NLS)' = 'yes'; then \
+-	    $(MSGFMT) "$$file" -o "locales/$$basename/LC_MESSAGES/texi2html_document.mo" ; \
+-	  else \
+-	    cp -p "$(srcdir)/$(po_document_dir)/po_document/$$basename.mo" "locales/$$basename/LC_MESSAGES/texi2html_document.mo" ; \
+-	  fi; \
+-	done
++	$(MAKE) -C po_document localedir="$(abs_srcdir)/locales" install-data
++	$(MAKE) -C po_messages localedir="$(abs_srcdir)/locales" install-data
+ 
+ makeinfo.pl texi2any.pl:
+ 	-$(LN_S) $(srcdir)/texi2html.pl $@
diff --git a/gnu/packages/rrdtool.scm b/gnu/packages/rrdtool.scm
new file mode 100644
index 0000000000..a07d705373
--- /dev/null
+++ b/gnu/packages/rrdtool.scm
@@ -0,0 +1,75 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.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 rrdtool)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages base)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages groff)
+  #:use-module (gnu packages python)
+  #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages glib)
+  #:use-module (gnu packages gtk)
+  #:use-module (gnu packages xml))
+
+(define-public rrdtool
+  (package
+    (name "rrdtool")
+    (version "1.4.8")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://oss.oetiker.ch/rrdtool/pub/rrdtool-"
+                                  version ".tar.gz"))
+              (sha256
+               (base32
+                "1mpki7pv5ql73h5al04dps6dky0nqc3mmb8ac21hd2s8mbsvk5fy"))))
+    (build-system gnu-build-system)
+    (inputs `(("cairo" ,cairo)
+              ("glib" ,glib)
+              ("gtk" ,gtk+-2)
+              ("pango" ,pango)
+              ("freetype" ,freetype)
+              ("libxml2" ,libxml2)
+              ("python" ,python-2)))
+    (native-inputs `(("pkg-config" ,pkg-config)
+                     ("groff" ,groff)))
+    (arguments
+     '(#:phases (alist-cons-before
+                 'configure 'pre-configure
+                 (lambda _
+                   (substitute* "libtool"
+                     (("/bin/sed") (which "sed")))
+                   (substitute* "src/Makefile.in"
+                     (("^rrdcached_LDADD = librrd_th.la")
+                      "rrdcached_LDADD = librrd_th.la -lglib-2.0")))
+                 %standard-phases)))
+    (home-page "http://oss.oetiker.ch/rrdtool/")
+    (synopsis "Time-series data storage and display system")
+    (description
+     "The Round Robin Database Tool (RRDtool) is a system to store and display
+time-series data (e.g. network bandwidth, machine-room temperature, server
+load average).  It stores the data in Round Robin Databases (RRDs), a very
+compact way that will not expand over time.  RRDtool processes the extracted
+data to enforce a certain data density, allowing for useful graphical
+representation of data values.")
+    (license license:gpl2+))) ; with license exception that allows combining
+                              ; with many other licenses.
diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm
index 282893d2e6..f56a85e005 100644
--- a/gnu/packages/search.scm
+++ b/gnu/packages/search.scm
@@ -29,13 +29,13 @@
 (define-public xapian
   (package
     (name "xapian")
-    (version "1.2.17")
+    (version "1.2.18")
     (source (origin
               (method url-fetch)
               (uri (string-append "http://oligarchy.co.uk/xapian/" version
                                   "/xapian-core-" version ".tar.xz"))
               (sha256
-               (base32 "1pn65h06c23imck2pb42zhrrngch3clk39wl2bjwyqhfyfq4b7g7"))))
+               (base32 "16i063xzwxdrqy32vlr292lljb65hkg3xx0i2m0qx2v00pcn4b3n"))))
     (build-system gnu-build-system)
     (inputs `(("zlib" ,zlib)
               ("util-linux" ,util-linux)))
diff --git a/gnu/packages/texinfo.scm b/gnu/packages/texinfo.scm
index 0f21ec3211..0cce38bf8d 100644
--- a/gnu/packages/texinfo.scm
+++ b/gnu/packages/texinfo.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -21,6 +22,7 @@
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
+  #:use-module (gnu packages)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages ncurses))
@@ -64,3 +66,42 @@ is on expressing the content semantically, avoiding physical markup commands.")
                (base32
                 "1rf9ckpqwixj65bw469i634897xwlgkm5i9g2hv3avl6mv7b0a3d"))))
     (inputs `(("ncurses" ,ncurses) ("xz" ,xz)))))
+
+(define-public texi2html
+  (package
+    (name "texi2html")
+    (version "5.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "mirror://savannah/" name "/" name "-"
+                                  version ".tar.bz2"))
+              (sha256
+               (base32
+                "1yprv64vrlcbksqv25asplnjg07mbq38lfclp1m5lj8cw878pag8"))
+              (patches
+               (list (search-patch "texi2html-document-encoding.patch")
+                     (search-patch "texi2html-i18n.patch")))
+              (snippet
+               ;; This file is modified by the patch above, but reset its
+               ;; timestamp so we don't trigger the rule to update PO files,
+               ;; which would require Gettext.
+               ;; See <http://bugs.gnu.org/18247>.
+               '(utime "texi2html.pl" 0 0 0 0))))
+    (build-system gnu-build-system)
+    (inputs `(("perl" ,perl)))
+    (home-page "http://www.nongnu.org/texi2html/")
+    (synopsis "Convert Texinfo to HTML")
+    (description
+     "Texi2HTML is a Perl script which converts Texinfo source files to HTML
+output.  It now supports many advanced features, such as internationalization
+and extremely configurable output formats.
+
+Development of Texi2HTML moved to the GNU Texinfo repository in 2010, since it
+was meant to replace the makeinfo implementation in GNU Texinfo.  The route
+forward for authors is, in most cases, to alter manuals and build processes as
+necessary to use the new features of the makeinfo/texi2any implementation of
+GNU Texinfo.  The Texi2HTML maintainers (one of whom is the principal author
+of the GNU Texinfo implementation) do not intend to make further releases of
+Texi2HTML.")
+    ;; Files in /lib under lgpl2.1+ and x11
+    (license gpl2+)))
diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm
index 9a9415c626..a756ebdba3 100644
--- a/gnu/packages/tor.scm
+++ b/gnu/packages/tor.scm
@@ -32,14 +32,14 @@
 (define-public tor
   (package
     (name "tor")
-    (version "0.2.4.22")
+    (version "0.2.4.23")
     (source (origin
              (method url-fetch)
              (uri (string-append "https://www.torproject.org/dist/tor-"
                                  version ".tar.gz"))
              (sha256
               (base32
-               "0k39ppcvld6p08yaf4rpspb34z4f5863j0d605yrm4dqjcp99xvb"))))
+               "0a8l6d82hk4wbn7nlphd3c1maxhgdli8338wbg5r9dk6zcy7k8q5"))))
     (build-system gnu-build-system)
     (inputs
      `(("zlib" ,zlib)
diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm
index d58cb94ac9..83ad35fb77 100644
--- a/gnu/packages/version-control.scm
+++ b/gnu/packages/version-control.scm
@@ -294,14 +294,14 @@ property manipulation.")
 (define-public subversion
   (package
     (name "subversion")
-    (version "1.7.14")
+    (version "1.7.18")
     (source (origin
              (method url-fetch)
              (uri (string-append "http://archive.apache.org/dist/subversion/subversion-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "038jbcpwm083abp0rvk0fhnx65kp9mz1qvzs3f83ig8fxcvqzb64"))))
+               "06nrqnn3qq1hhskkcdbm0ilk2xv6ay2gyf2c7qvxp6xncb782wzn"))))
     (build-system gnu-build-system)
     (arguments
      '(#:phases (alist-cons-after
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 8850543c1d..23c63fabdb 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
 ;;; Copyright © 2014 David Thompson <davet@gnu.org>
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -18,6 +19,7 @@
 ;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (gnu packages video)
+  #:use-module (ice-9 match)
   #:use-module ((guix licenses)
                 #:select (gpl2 gpl2+ bsd-3 public-domain))
   #:use-module (guix packages)
@@ -56,14 +58,14 @@
 (define-public ffmpeg
   (package
     (name "ffmpeg")
-    (version "2.3")
+    (version "2.3.1")
     (source (origin
              (method url-fetch)
              (uri (string-append "http://www.ffmpeg.org/releases/ffmpeg-"
                                  version ".tar.bz2"))
              (sha256
               (base32
-               "17l0bx95al6cjhz3pzfcbwg07sbfbwqbxg34zl5lhl89w9jbngbb"))))
+               "10w1sw5c9qjlaqlr77r3znzm7y0y9qpkni0mfr9rhij22562yspf"))))
     (build-system gnu-build-system)
     (inputs
      `(("fontconfig" ,fontconfig)
@@ -168,31 +170,11 @@
                       "--enable-libtheora"
                       "--enable-libvorbis"
                       "--enable-libvpx"
-                      ;; drop special machine instructions not supported
-                      ;; on all instances of the target
-                      ,@(if (string-prefix? "x86_64"
-                                            (or (%current-target-system)
-                                                (%current-system)))
-                            '()
-                            '("--disable-amd3dnow"
-                              "--disable-amd3dnowext"
-                              "--disable-mmx"
-                              "--disable-mmxext"
-                              "--disable-sse"
-                              "--disable-sse2"))
-                      "--disable-altivec"
-                      "--disable-sse3"
-                      "--disable-ssse3"
-                      "--disable-sse4"
-                      "--disable-sse42"
-                      "--disable-avx"
-                      "--disable-fma4"
-                      "--disable-avx2"
-                      "--disable-armv5te"
-                      "--disable-armv6"
-                      "--disable-armv6t2"
-                      "--disable-vfp"
-                      "--disable-neon"
+
+                      "--enable-runtime-cpudetect"
+
+                      ;; Runtime cpu detection is not implemented on
+                      ;; MIPS, so we disable some features.
                       "--disable-mips32r2"
                       "--disable-mipsdspr1"
                       "--disable-mipsdspr2"
@@ -268,10 +250,6 @@ audio/video codec library.")
     (arguments
      `(#:configure-flags
        `("--disable-a52" ; FIXME: reenable once available
-         "--disable-mmx" ; FIXME: may be enabled on x86_64
-         "--disable-sse" ; 1-4, no separate options available
-         "--disable-neon"
-         "--disable-altivec"
          ,(string-append "LDFLAGS=-Wl,-rpath -Wl,"
                          (assoc-ref %build-inputs "ffmpeg")
                          "/lib")))) ; needed for the tests
@@ -342,20 +320,18 @@ treaming protocols.")
                                      libx11 "/include") ; to detect libx11
                       "--disable-tremor-internal" ; forces external libvorbis
                       (string-append "--prefix=" out)
-                      ;; drop special machine instructions not supported
-                      ;; on all instances of the target
-                      ,@(if (string-prefix? "x86_64"
-                                            (or (%current-target-system)
-                                                (%current-system)))
-                            '()
-                            '("--disable-3dnow"
-                              "--disable-3dnowext"
-                              "--disable-mmx"
-                              "--disable-mmxext"
-                              "--disable-sse"
-                              "--disable-sse2"))
-                      "--disable-ssse3"
-                      "--disable-altivec"
+                      ;; Enable runtime cpu detection where supported,
+                      ;; and choose a suitable target.
+                      ,@(match (or (%current-target-system)
+                                   (%current-system))
+                          ("x86_64-linux"
+                           '("--enable-runtime-cpudetection"
+                             "--target=x86_64-linux"))
+                          ("i686-linux"
+                           '("--enable-runtime-cpudetection"
+                             "--target=i686-linux"))
+                          ("mips64el-linux"
+                           '("--target=mips3-linux")))
                       "--disable-armv5te"
                       "--disable-armv6"
                       "--disable-armv6t2"
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index ce07d77299..ce3c4ec2e1 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -331,6 +331,29 @@ tracking.")
     (license license:x11)))
 
 
+;; not part of X11R7.7, required for newer versions of mesa
+(define-public dri3proto
+  (package
+    (name "dri3proto")
+    (version "1.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "mirror://xorg/individual/proto/dri3proto-"
+               version
+               ".tar.bz2"))
+        (sha256
+          (base32
+            "0x609xvnl8jky5m8jdklw4nymx3irkv32w99dfd8nl800bblkgh1"))))
+    (build-system gnu-build-system)
+    (home-page "http://www.x.org/wiki/")
+    (synopsis "xorg implementation of the X Window System")
+    (description "X.org provides an implementation of the X Window System")
+    (license (license:x11-style "file://dri3proto.h"
+                                "See 'dri3proto.h' in the distribution."))))
+
+
 (define-public encodings
   (package
     (name "encodings")
@@ -1521,6 +1544,28 @@ tracking.")
     (license license:x11)))
 
 
+;; not part of X11R7.7, required for newer versions of mesa
+(define-public presentproto
+  (package
+    (name "presentproto")
+    (version "1.0")
+    (source
+      (origin
+        (method url-fetch)
+        (uri (string-append
+               "mirror://xorg/individual/proto/presentproto-"
+               version
+               ".tar.bz2"))
+        (sha256
+          (base32
+            "1kir51aqg9cwazs14ivcldcn3mzadqgykc9cg87rm40zf947sb41"))))
+    (build-system gnu-build-system)
+    (home-page "http://www.x.org/wiki/")
+    (synopsis "xorg implementation of the X Window System")
+    (description "X.org provides an implementation of the X Window System")
+    (license (license:x11-style "file://presentproto.h"
+                                "See 'presentproto.h' in the distribution."))))
+
 ;; The package is missing from X11R7.7.
 (define-public printproto
   (package
@@ -1696,9 +1741,15 @@ tracking.")
     (build-system gnu-build-system)
     (inputs
       `(("libxkbfile" ,libxkbfile)
+        ("xkeyboard-config" ,xkeyboard-config)
         ("libx11" ,libx11)))
     (native-inputs
       `(("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:configure-flags
+       (list (string-append "--with-xkb-config-root="
+                            (assoc-ref %build-inputs "xkeyboard-config")
+                            "/share/X11/xkb"))))
     (home-page "http://www.x.org/wiki/")
     (synopsis "xorg implementation of the X Window System")
     (description "X.org provides an implementation of the X Window System")
@@ -2170,9 +2221,15 @@ tracking.")
           (base32
             "1ivf5n821chckrgp89mpb18zi00v1hyrkc1hr82q0x6g1kpgxq9y"))))
     (build-system gnu-build-system)
-    ;; FIXME: Add required input udev once it is available.
-    (inputs `(("xorg-server" ,xorg-server)))
+    (inputs
+      `(("udev" ,udev)
+        ("xorg-server" ,xorg-server)))
     (native-inputs `(("pkg-config" ,pkg-config)))
+    (arguments
+     `(#:configure-flags
+       (list (string-append "--with-sdkdir="
+                            (assoc-ref %outputs "out")
+                            "/include/xorg"))))
     (home-page "http://www.x.org/wiki/")
     (synopsis "xorg implementation of the X Window System")
     (description "X.org provides an implementation of the X Window System")
diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm
index fc46c345de..5fc98e988c 100644
--- a/gnu/services/ssh.scm
+++ b/gnu/services/ssh.scm
@@ -132,6 +132,7 @@ The other options should be self-descriptive."
                      "lshd"
                      #:allow-empty-passwords? allow-empty-passwords?)))
              (activate #~(begin
+                           (use-modules (guix build utils))
                            (mkdir-p "/var/spool/lsh")
                            #$(if initialize?
                                  (activation lsh host-key)
diff --git a/gnu/system.scm b/gnu/system.scm
index 68f9438693..2894df8235 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -23,6 +23,7 @@
   #:use-module (guix records)
   #:use-module (guix packages)
   #:use-module (guix derivations)
+  #:use-module (guix profiles)
   #:use-module (gnu packages base)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages which)
@@ -125,29 +126,6 @@
 ;;; Derivation.
 ;;;
 
-(define* (union inputs
-                #:key (guile (%guile-for-build))
-                (name "union"))
-  "Return a derivation that builds the union of INPUTS.  INPUTS is a list of
-input tuples."
-  (define builder
-    #~(begin
-        (use-modules (guix build union))
-
-        (define inputs '#$inputs)
-
-        (setvbuf (current-output-port) _IOLBF)
-        (setvbuf (current-error-port) _IOLBF)
-
-        (format #t "building union `~a' with ~a packages...~%"
-                #$output (length inputs))
-        (union-build #$output inputs)))
-
-  (gexp->derivation name builder
-                    #:modules '((guix build union))
-                    #:guile-for-build guile
-                    #:local-build? #t))
-
 (define* (file-union name files)
   "Return a derivation that builds a directory containing all of FILES.  Each
 item in FILES must be a list where the first element is the file name to use
@@ -294,10 +272,9 @@ alias ll='ls -l'
                   ("sudoers" ,#~#$sudoers)))))
 
 (define (operating-system-profile os)
-  "Return a derivation that builds the default profile of OS."
-  ;; TODO: Replace with a real profile with a manifest.
-  (union (operating-system-packages os)
-         #:name "default-profile"))
+  "Return a derivation that builds the system profile of OS."
+  (profile-derivation (manifest (map package->manifest-entry
+                                     (operating-system-packages os)))))
 
 (define %root-account
   ;; Default root account.
diff --git a/gnu/system/grub.scm b/gnu/system/grub.scm
index 85a9fca9ff..41f45f1558 100644
--- a/gnu/system/grub.scm
+++ b/gnu/system/grub.scm
@@ -49,7 +49,7 @@
   (menu-entries    grub-configuration-menu-entries   ; list
                    (default '()))
   (default-entry   grub-configuration-default-entry  ; integer
-                   (default 1))
+                   (default 0))
   (timeout         grub-configuration-timeout        ; integer
                    (default 5)))
 
diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm
index 62f95c5d74..e48b399a9d 100644
--- a/gnu/system/linux-initrd.scm
+++ b/gnu/system/linux-initrd.scm
@@ -241,7 +241,7 @@ exception and backtrace!)."
 
   (define virtio-9p-modules
     ;; Modules for the 9p paravirtualized file system.
-    '("9pnet.ko" "9p.ko" "9pnet_virtio.ko"))
+    '("fscache.ko" "9pnet.ko" "9p.ko" "9pnet_virtio.ko"))
 
   (define (file-system-type-predicate type)
     (lambda (fs)
diff --git a/guix.scm b/guix.scm
index 706ea29065..8753c21e42 100644
--- a/guix.scm
+++ b/guix.scm
@@ -30,6 +30,7 @@
         ftp-client
         gexp
         monads
+        monad-repl
         packages
         store
         utils))
diff --git a/guix/build/emacs-utils.scm b/guix/build/emacs-utils.scm
new file mode 100644
index 0000000000..10ef3c8d0f
--- /dev/null
+++ b/guix/build/emacs-utils.scm
@@ -0,0 +1,92 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Mark H Weaver <mhw@netris.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 (guix build emacs-utils)
+  #:export (%emacs
+            emacs-batch-eval
+            emacs-batch-edit-file
+            emacs-substitute-sexps
+            emacs-substitute-variables))
+
+;;; Commentary:
+;;;
+;;; Tools to programmatically edit files using Emacs,
+;;; e.g. to replace entire s-expressions in elisp files.
+;;;
+;;; Code:
+
+(define %emacs
+  ;; The `emacs' command.
+  (make-parameter "emacs"))
+
+(define (emacs-batch-eval expr)
+  "Run Emacs in batch mode, and execute the elisp code EXPR."
+  (unless (zero? (system* (%emacs) "--quick" "--batch"
+                          (format #f "--eval=~S" expr)))
+    (error "emacs-batch-eval failed!" expr)))
+
+(define (emacs-batch-edit-file file expr)
+  "Load FILE in Emacs using batch mode, and execute the elisp code EXPR."
+  (unless (zero? (system* (%emacs) "--quick" "--batch"
+                          (string-append "--visit=" file)
+                          (format #f "--eval=~S" expr)))
+    (error "emacs-batch-edit-file failed!" file expr)))
+
+(define-syntax emacs-substitute-sexps
+  (syntax-rules ()
+    "Substitute the S-expression immediately following the first occurrence of
+LEADING-REGEXP by the string returned by REPLACEMENT in FILE.  For example:
+
+  (emacs-substitute-sexps \"w3m.el\"
+    (\"defcustom w3m-command\"
+     (string-append w3m \"/bin/w3m\"))
+    (\"defvar w3m-image-viewer\"
+     (string-append imagemagick \"/bin/display\")))
+
+This replaces the default values of the `w3m-command' and `w3m-image-viewer'
+variables declared in `w3m.el' with the results of the `string-append' calls
+above.  Note that LEADING-REGEXP uses Emacs regexp syntax."
+    ((emacs-substitute-sexps file (leading-regexp replacement) ...)
+     (emacs-batch-edit-file file
+       `(progn (progn (goto-char (point-min))
+                      (re-search-forward ,leading-regexp)
+                      (kill-sexp)
+                      (insert " ")
+                      (insert ,(format #f "~S" replacement)))
+               ...
+               (basic-save-buffer))))))
+
+(define-syntax emacs-substitute-variables
+  (syntax-rules ()
+    "Substitute the default value of VARIABLE by the string returned by
+REPLACEMENT in FILE.  For example:
+
+  (emacs-substitute-variables \"w3m.el\"
+    (\"w3m-command\" (string-append w3m \"/bin/w3m\"))
+    (\"w3m-image-viewer\" (string-append imagemagick \"/bin/display\")))
+
+This replaces the default values of the `w3m-command' and `w3m-image-viewer'
+variables declared in `w3m.el' with the results of the `string-append' calls
+above."
+    ((emacs-substitute-variables file (variable replacement) ...)
+     (emacs-substitute-sexps file
+       ((string-append "(def[a-z]+[[:space:]\n]+" variable "\\>")
+        replacement)
+       ...))))
+
+;;; emacs-utils.scm ends here
diff --git a/guix/build/linux-initrd.scm b/guix/build/linux-initrd.scm
index 662f7967e3..bce289987b 100644
--- a/guix/build/linux-initrd.scm
+++ b/guix/build/linux-initrd.scm
@@ -384,11 +384,9 @@ networking values.)  Return #t if INTERFACE is up, #f otherwise."
     (set-network-interface-address sock interface address)
     (set-network-interface-flags sock interface (logior flags IFF_UP))
 
-    (unless (file-exists? "/etc")
-      (mkdir "/etc"))
-    (call-with-output-file "/etc/resolv.conf"
-      (lambda (p)
-        (display "nameserver 10.0.2.3\n" p)))
+    ;; Hello!  We used to create /etc/resolv.conf here, with "nameserver
+    ;; 10.0.2.3\n".  However, with Linux-libre 3.16, we're getting ENOSPC.
+    ;; And since it's actually unnecessary, it's gone.
 
     (logand (network-interface-flags sock interface) IFF_UP)))
 
diff --git a/guix/download.scm b/guix/download.scm
index 47b72f432a..22c3ba19ca 100644
--- a/guix/download.scm
+++ b/guix/download.scm
@@ -130,7 +130,6 @@
        "ftp://ftp.piotrkosoft.net/pub/mirrors/ftp.x.org/"
        "ftp://ftp.portal-to-web.de/pub/mirrors/x.org/"
        "ftp://ftp.solnet.ch/mirror/x.org/"
-       "ftp://ftp.sunet.se/pub/X11/"
        "ftp://gd.tuwien.ac.at/X11/"
        "ftp://mi.mirror.garr.it/mirrors/x.org/"
        "ftp://mirror.cict.fr/x.org/"
@@ -161,7 +160,6 @@
        ;; from http://www.imagemagick.org/script/download.php
        ;; (without mirrors that are unavailable or not up to date)
        ;; mirrors keeping old versions at the top level
-       "ftp://ftp.sunet.se/pub/multimedia/graphics/ImageMagick/"
        "ftp://sunsite.icm.edu.pl/packages/ImageMagick/"
        ;; mirrors moving old versions to "legacy"
        "http://mirrors-au.go-parts.com/mirrors/ImageMagick/"
diff --git a/guix/gexp.scm b/guix/gexp.scm
index c9f6cbe99a..6d1f328aef 100644
--- a/guix/gexp.scm
+++ b/guix/gexp.scm
@@ -41,7 +41,9 @@
 ;;; S-expressions (sexps), with two differences:
 ;;;
 ;;;   1. References (un-quotations) to derivations or packages in a gexp are
-;;;      replaced by the corresponding output file name;
+;;;      replaced by the corresponding output file name; in addition, the
+;;;      'ungexp-native' unquote-like form allows code to explicitly refer to
+;;;      the native code of a given package, in case of cross-compilation;
 ;;;
 ;;;   2. Gexps embed information about the derivations they refer to.
 ;;;
@@ -52,9 +54,10 @@
 
 ;; "G expressions".
 (define-record-type <gexp>
-  (make-gexp references proc)
+  (make-gexp references natives proc)
   gexp?
   (references gexp-references)                    ; ((DRV-OR-PKG OUTPUT) ...)
+  (natives    gexp-native-references)             ; ((DRV-OR-PKG OUTPUT) ...)
   (proc       gexp-proc))                         ; procedure
 
 (define (write-gexp gexp port)
@@ -65,7 +68,10 @@
   ;; doing things like (ungexp-splicing (gexp ())) because GEXP's procedure
   ;; tries to use 'append' on that, which fails with wrong-type-arg.
   (false-if-exception
-   (write (apply (gexp-proc gexp) (gexp-references gexp)) port))
+   (write (apply (gexp-proc gexp)
+                 (append (gexp-references gexp)
+                         (gexp-native-references gexp)))
+          port))
   (format port " ~a>"
           (number->string (object-address gexp) 16)))
 
@@ -81,14 +87,20 @@
 (define raw-derivation
   (store-lift derivation))
 
-(define (lower-inputs inputs)
-  "Turn any package from INPUTS into a derivation; return the corresponding
-input list as a monadic value."
+(define* (lower-inputs inputs
+                       #:key system target)
+  "Turn any package from INPUTS into a derivation for SYSTEM; return the
+corresponding input list as a monadic value.  When TARGET is true, use it as
+the cross-compilation target triplet."
   (with-monad %store-monad
     (sequence %store-monad
               (map (match-lambda
                     (((? package? package) sub-drv ...)
-                     (mlet %store-monad ((drv (package->derivation package)))
+                     (mlet %store-monad
+                         ((drv (if target
+                                   (package->cross-derivation package target
+                                                              system)
+                                   (package->derivation package system))))
                        (return `(,drv ,@sub-drv))))
                     (((? origin? origin) sub-drv ...)
                      (mlet %store-monad ((drv (origin->derivation origin)))
@@ -99,7 +111,7 @@ input list as a monadic value."
 
 (define* (gexp->derivation name exp
                            #:key
-                           system
+                           system (target 'current)
                            hash hash-algo recursive?
                            (env-vars '())
                            (modules '())
@@ -107,7 +119,8 @@ input list as a monadic value."
                            references-graphs
                            local-build?)
   "Return a derivation NAME that runs EXP (a gexp) with GUILE-FOR-BUILD (a
-derivation) on SYSTEM.
+derivation) on SYSTEM.  When TARGET is true, it is used as the
+cross-compilation target triplet for packages referred to by EXP.
 
 Make MODULES available in the evaluation context of EXP; MODULES is a list of
 names of Guile modules from the current search path to be copied in the store,
@@ -118,9 +131,25 @@ The other arguments are as for 'derivation'."
   (define %modules modules)
   (define outputs (gexp-outputs exp))
 
-  (mlet* %store-monad ((inputs   (lower-inputs (gexp-inputs exp)))
+  (mlet* %store-monad (;; The following binding is here to force
+                       ;; '%current-system' and '%current-target-system' to be
+                       ;; looked up at >>= time.
+                       (unused    (return #f))
+
                        (system -> (or system (%current-system)))
-                       (sexp     (gexp->sexp exp))
+                       (target -> (if (eq? target 'current)
+                                      (%current-target-system)
+                                      target))
+                       (normals  (lower-inputs (gexp-inputs exp)
+                                               #:system system
+                                               #:target target))
+                       (natives  (lower-inputs (gexp-native-inputs exp)
+                                               #:system system
+                                               #:target #f))
+                       (inputs -> (append normals natives))
+                       (sexp     (gexp->sexp exp
+                                             #:system system
+                                             #:target target))
                        (builder  (text-file (string-append name "-builder")
                                             (object->string sexp)))
                        (modules  (if (pair? %modules)
@@ -158,8 +187,9 @@ The other arguments are as for 'derivation'."
                     #:references-graphs references-graphs
                     #:local-build? local-build?)))
 
-(define (gexp-inputs exp)
-  "Return the input list for EXP."
+(define* (gexp-inputs exp #:optional (references gexp-references))
+  "Return the input list for EXP, using REFERENCES to get its list of
+references."
   (define (add-reference-inputs ref result)
     (match ref
       (((? derivation?) (? string?))
@@ -169,7 +199,7 @@ The other arguments are as for 'derivation'."
       (((? origin?) (? string?))
        (cons ref result))
       ((? gexp? exp)
-       (append (gexp-inputs exp) result))
+       (append (gexp-inputs exp references) result))
       (((? string? file))
        (if (direct-store-path? file)
            (cons ref result)
@@ -182,7 +212,10 @@ The other arguments are as for 'derivation'."
 
   (fold-right add-reference-inputs
               '()
-              (gexp-references exp)))
+              (references exp)))
+
+(define gexp-native-inputs
+  (cut gexp-inputs <> gexp-native-references))
 
 (define (gexp-outputs exp)
   "Return the outputs referred to by EXP as a list of strings."
@@ -199,16 +232,21 @@ The other arguments are as for 'derivation'."
               '()
               (gexp-references exp)))
 
-(define* (gexp->sexp exp)
+(define* (gexp->sexp exp #:key
+                     (system (%current-system))
+                     (target (%current-target-system)))
   "Return (monadically) the sexp corresponding to EXP for the given OUTPUT,
 and in the current monad setting (system type, etc.)"
-  (define (reference->sexp ref)
+  (define* (reference->sexp ref #:optional native?)
     (with-monad %store-monad
       (match ref
         (((? derivation? drv) (? string? output))
          (return (derivation->output-path drv output)))
         (((? package? p) (? string? output))
-         (package-file p #:output output))
+         (package-file p
+                       #:output output
+                       #:system system
+                       #:target (if native? #f target)))
         (((? origin? o) (? string? output))
          (mlet %store-monad ((drv (origin->derivation o)))
            (return (derivation->output-path drv output))))
@@ -218,17 +256,22 @@ and in the current monad setting (system type, etc.)"
          ;; that trick.
          (return `((@ (guile) getenv) ,output)))
         ((? gexp? exp)
-         (gexp->sexp exp))
+         (gexp->sexp exp
+                     #:system system
+                     #:target (if native? #f target)))
         (((? string? str))
          (return (if (direct-store-path? str) str ref)))
         ((refs ...)
-         (sequence %store-monad (map reference->sexp refs)))
+         (sequence %store-monad
+                   (map (cut reference->sexp <> native?) refs)))
         (x
          (return x)))))
 
   (mlet %store-monad
       ((args (sequence %store-monad
-                       (map reference->sexp (gexp-references exp)))))
+                       (append (map reference->sexp (gexp-references exp))
+                               (map (cut reference->sexp <> #t)
+                                    (gexp-native-references exp))))))
     (return (apply (gexp-proc exp) args))))
 
 (define (canonicalize-reference ref)
@@ -285,9 +328,28 @@ package/derivation references."
           (_
            result))))
 
+    (define (collect-native-escapes exp)
+      ;; Return all the 'ungexp-native' forms present in EXP.
+      (let loop ((exp    exp)
+                 (result '()))
+        (syntax-case exp (ungexp-native ungexp-native-splicing)
+          ((ungexp-native _)
+           (cons exp result))
+          ((ungexp-native _ _)
+           (cons exp result))
+          ((ungexp-native-splicing _ ...)
+           (cons exp result))
+          ((exp0 exp ...)
+           (let ((result (loop #'exp0 result)))
+             (fold loop result #'(exp ...))))
+          (_
+           result))))
+
     (define (escape->ref exp)
       ;; Turn 'ungexp' form EXP into a "reference".
-      (syntax-case exp (ungexp ungexp-splicing output)
+      (syntax-case exp (ungexp ungexp-splicing
+                        ungexp-native ungexp-native-splicing
+                        output)
         ((ungexp output)
          #'(output-ref "out"))
         ((ungexp output name)
@@ -297,30 +359,49 @@ package/derivation references."
         ((ungexp drv-or-pkg out)
          #'(list drv-or-pkg out))
         ((ungexp-splicing lst)
+         #'lst)
+        ((ungexp-native thing)
+         #'thing)
+        ((ungexp-native drv-or-pkg out)
+         #'(list drv-or-pkg out))
+        ((ungexp-native-splicing lst)
          #'lst)))
 
+    (define (substitute-ungexp exp substs)
+      ;; Given EXP, an 'ungexp' or 'ungexp-native' form, substitute it with
+      ;; the corresponding form in SUBSTS.
+      (match (assoc exp substs)
+        ((_ id)
+         id)
+        (_
+         #'(syntax-error "error: no 'ungexp' substitution"
+                         #'ref))))
+
+    (define (substitute-ungexp-splicing exp substs)
+      (syntax-case exp ()
+        ((exp rest ...)
+         (match (assoc #'exp substs)
+           ((_ id)
+            (with-syntax ((id id))
+              #`(append id
+                        #,(substitute-references #'(rest ...) substs))))
+           (_
+            #'(syntax-error "error: no 'ungexp-splicing' substitution"
+                            #'ref))))))
+
     (define (substitute-references exp substs)
       ;; Return a variant of EXP where all the cars of SUBSTS have been
       ;; replaced by the corresponding cdr.
-      (syntax-case exp (ungexp ungexp-splicing)
+      (syntax-case exp (ungexp ungexp-native
+                        ungexp-splicing ungexp-native-splicing)
         ((ungexp _ ...)
-         (match (assoc exp substs)
-           ((_ id)
-            id)
-           (_
-            #'(syntax-error "error: no 'ungexp' substitution"
-                            #'ref))))
+         (substitute-ungexp exp substs))
+        ((ungexp-native _ ...)
+         (substitute-ungexp exp substs))
         (((ungexp-splicing _ ...) rest ...)
-         (syntax-case exp ()
-           ((exp rest ...)
-            (match (assoc #'exp substs)
-              ((_ id)
-               (with-syntax ((id id))
-                 #`(append id
-                           #,(substitute-references #'(rest ...) substs))))
-              (_
-               #'(syntax-error "error: no 'ungexp-splicing' substitution"
-                               #'ref))))))
+         (substitute-ungexp-splicing exp substs))
+        (((ungexp-native-splicing _ ...) rest ...)
+         (substitute-ungexp-splicing exp substs))
         ((exp0 exp ...)
          #`(cons #,(substitute-references #'exp0 substs)
                  #,(substitute-references #'(exp ...) substs)))
@@ -328,11 +409,15 @@ package/derivation references."
 
     (syntax-case s (ungexp output)
       ((_ exp)
-       (let* ((escapes (delete-duplicates (collect-escapes #'exp)))
+       (let* ((normals (delete-duplicates (collect-escapes #'exp)))
+              (natives (delete-duplicates (collect-native-escapes #'exp)))
+              (escapes (append normals natives))
               (formals (generate-temporaries escapes))
               (sexp    (substitute-references #'exp (zip escapes formals)))
-              (refs    (map escape->ref escapes)))
+              (refs    (map escape->ref normals))
+              (nrefs   (map escape->ref natives)))
          #`(make-gexp (map canonicalize-reference (list #,@refs))
+                      (map canonicalize-reference (list #,@nrefs))
                       (lambda #,formals
                         #,sexp)))))))
 
@@ -385,22 +470,26 @@ its search path."
                          (write '(ungexp exp) port))))
                     #:local-build? #t))
 
-
 
 ;;;
 ;;; Syntactic sugar.
 ;;;
 
 (eval-when (expand load eval)
-  (define (read-ungexp chr port)
-    "Read an 'ungexp' or 'ungexp-splicing' form from PORT."
+  (define* (read-ungexp chr port #:optional native?)
+    "Read an 'ungexp' or 'ungexp-splicing' form from PORT.  When NATIVE? is
+true, use 'ungexp-native' and 'ungexp-native-splicing' instead."
     (define unquote-symbol
       (match (peek-char port)
         (#\@
          (read-char port)
-         'ungexp-splicing)
+         (if native?
+             'ungexp-native-splicing
+             'ungexp-splicing))
         (_
-         'ungexp)))
+         (if native?
+             'ungexp-native
+             'ungexp))))
 
     (match (read port)
       ((? symbol? symbol)
@@ -421,6 +510,7 @@ its search path."
 
   ;; Extend the reader
   (read-hash-extend #\~ read-gexp)
-  (read-hash-extend #\$ read-ungexp))
+  (read-hash-extend #\$ read-ungexp)
+  (read-hash-extend #\+ (cut read-ungexp <> <> #t)))
 
 ;;; gexp.scm ends here
diff --git a/guix/monad-repl.scm b/guix/monad-repl.scm
new file mode 100644
index 0000000000..5242f5448b
--- /dev/null
+++ b/guix/monad-repl.scm
@@ -0,0 +1,81 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Ludovic Courtès <ludo@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 (guix monad-repl)
+  #:use-module (guix store)
+  #:use-module (guix monads)
+  #:use-module (ice-9 pretty-print)
+  #:use-module (system repl repl)
+  #:use-module (system repl common)
+  #:use-module (system repl command)
+  #:use-module (system base language)
+  #:use-module (system base compile)
+  #:use-module (srfi srfi-26)
+  #:export (run-in-store
+            enter-store-monad))
+
+;;; Comment:
+;;;
+;;; This modules provides a couple of REPL meta-commands that make it easier
+;;; to work with monadic procedures in the store monad.
+;;;
+;;; Code:
+
+(define* (monad-language monad run #:optional (name 'monad))
+  "Return a language with a special evaluator that causes monadic values
+ to be \"run\" in MONAD using procedure RUN."
+  (let ((scheme (lookup-language 'scheme)))
+    (define (evaluate-monadic-expression exp env)
+      (let ((mvalue (compile exp #:to 'value #:env env)))
+        (run mvalue)))
+
+    (make-language #:name name
+                   #:title "Monad"
+                   #:reader (language-reader scheme)
+                   #:compilers (language-compilers scheme)
+                   #:decompilers (language-decompilers scheme)
+                   #:evaluator evaluate-monadic-expression
+                   #:printer (language-printer scheme)
+                   #:make-default-environment
+                   (language-make-default-environment scheme))))
+
+(define (store-monad-language)
+  "Return a compiler language for the store monad."
+  (let ((store (open-connection)))
+    (monad-language %store-monad
+                    (cut run-with-store store <>)
+                    'store-monad)))
+
+(define-meta-command ((run-in-store guix) repl (form))
+  "run-in-store EXP
+Run EXP through the store monad."
+  (let ((value (with-store store
+                 (run-with-store store (repl-eval repl form)))))
+    (run-hook before-print-hook value)
+    (pretty-print value)))
+
+(define-meta-command ((enter-store-monad guix) repl)
+  "enter-store-monad
+Enter a REPL for values in the store monad."
+  (let ((new (make-repl (store-monad-language))))
+    ;; Force interpretation so that our specially-crafted language evaluator
+    ;; is actually used.
+    (repl-option-set! new 'interp #t)
+    (run-repl new)))
+
+;;; monad-repl.scm ends here
diff --git a/guix/monads.scm b/guix/monads.scm
index 4af2b704ab..c714941a0c 100644
--- a/guix/monads.scm
+++ b/guix/monads.scm
@@ -59,6 +59,7 @@
             package-file
             origin->derivation
             package->derivation
+            package->cross-derivation
             built-derivations)
   #:replace (imported-modules
              compiled-modules))
@@ -377,13 +378,21 @@ permission bits are kept."
 
 (define* (package-file package
                        #:optional file
-                       #:key (system (%current-system)) (output "out"))
+                       #:key
+                       system (output "out") target)
   "Return as a monadic value the absolute file name of FILE within the
 OUTPUT directory of PACKAGE.  When FILE is omitted, return the name of the
-OUTPUT directory of PACKAGE."
+OUTPUT directory of PACKAGE.  When TARGET is true, use it as a
+cross-compilation target triplet."
   (lambda (store)
-    (let* ((drv (package-derivation store package system))
-           (out (derivation->output-path drv output)))
+    (define compute-derivation
+      (if target
+          (cut package-cross-derivation <> <> target <>)
+          package-derivation))
+
+    (let* ((system (or system (%current-system)))
+           (drv    (compute-derivation store package system))
+           (out    (derivation->output-path drv output)))
       (if file
           (string-append out "/" file)
           out))))
@@ -411,6 +420,9 @@ input list as a monadic value."
 (define package->derivation
   (store-lift package-derivation))
 
+(define package->cross-derivation
+  (store-lift package-cross-derivation))
+
 (define origin->derivation
   (store-lift package-source-derivation))
 
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 5e69e012f9..e921566e5a 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -47,6 +47,7 @@
             manifest-pattern?
 
             manifest-remove
+            manifest-add
             manifest-installed?
             manifest-matching-entries
 
@@ -157,12 +158,20 @@ omitted or #f, use the first output of PACKAGE."
                 ('packages ((name version output path deps) ...)))
      (manifest
       (map (lambda (name version output path deps)
-             (manifest-entry
-              (name name)
-              (version version)
-              (output output)
-              (item path)
-              (dependencies deps)))
+             ;; Up to Guix 0.7 included, dependencies were listed as ("gmp"
+             ;; "/gnu/store/...-gmp") for instance.  Discard the 'label' in
+             ;; such lists.
+             (let ((deps (match deps
+                           (((labels directories) ...)
+                            directories)
+                           ((directories ...)
+                            directories))))
+               (manifest-entry
+                 (name name)
+                 (version version)
+                 (output output)
+                 (item path)
+                 (dependencies deps))))
            name version output path deps)))
 
     (_
@@ -196,6 +205,25 @@ must be a manifest-pattern."
                        (manifest-entries manifest)
                        patterns)))
 
+(define (manifest-add manifest entries)
+  "Add a list of manifest ENTRIES to MANIFEST and return new manifest.
+Remove MANIFEST entries that have the same name and output as ENTRIES."
+  (define (same-entry? entry name output)
+    (match entry
+      (($ <manifest-entry> entry-name _ entry-output _ ...)
+       (and (equal? name entry-name)
+            (equal? output entry-output)))))
+
+  (make-manifest
+   (append entries
+           (fold (lambda (entry result)
+                   (match entry
+                     (($ <manifest-entry> name _ out _ ...)
+                      (filter (negate (cut same-entry? <> name out))
+                              result))))
+                 (manifest-entries manifest)
+                 entries))))
+
 (define (manifest-installed? manifest pattern)
   "Return #t if MANIFEST has an entry matching PATTERN (a manifest-pattern),
 #f otherwise."
diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm
index 31da773a53..3bfef4fc9a 100644
--- a/guix/scripts/package.scm
+++ b/guix/scripts/package.scm
@@ -104,8 +104,7 @@ return PROFILE unchanged.  The goal is to treat '-p ~/.guix-profile' as if
   "Roll back to the previous generation of PROFILE."
   (let* ((number              (generation-number profile))
          (previous-number     (previous-generation-number profile number))
-         (previous-generation (generation-file-name profile previous-number))
-         (manifest            (string-append previous-generation "/manifest")))
+         (previous-generation (generation-file-name profile previous-number)))
     (cond ((not (file-exists? profile))                 ; invalid profile
            (leave (_ "profile '~a' does not exist~%")
                   profile))
@@ -623,24 +622,6 @@ Install, remove, or upgrade PACKAGES in a single transaction.\n"))
 (define (options->installable opts manifest)
   "Given MANIFEST, the current manifest, and OPTS, the result of 'args-fold',
 return the new list of manifest entries."
-  (define (deduplicate deps)
-    ;; Remove duplicate entries from DEPS, a list of propagated inputs, where
-    ;; each input is a name/path tuple.
-    (define (same? d1 d2)
-      (match d1
-        ((_ p1)
-         (match d2
-           ((_ p2) (eq? p1 p2))
-           (_      #f)))
-        ((_ p1 out1)
-         (match d2
-           ((_ p2 out2)
-            (and (string=? out1 out2)
-                 (eq? p1 p2)))
-           (_ #f)))))
-
-    (delete-duplicates deps same?))
-
   (define (package->manifest-entry* package output)
     (check-package-freshness package)
     ;; When given a package via `-e', install the first of its
@@ -659,19 +640,18 @@ return the new list of manifest entries."
       (()
        '())
       ((_ ...)
-       (let ((newest (find-newest-available-packages)))
-         (filter-map (match-lambda
-                      (($ <manifest-entry> name version output path _)
-                       (and (any (cut regexp-exec <> name)
-                                 upgrade-regexps)
-                            (upgradeable? name version path)
-                            (let ((output (or output "out")))
-                              (call-with-values
-                                  (lambda ()
-                                    (specification->package+output name output))
-                                list))))
-                      (_ #f))
-                     (manifest-entries manifest))))))
+       (filter-map (match-lambda
+                    (($ <manifest-entry> name version output path _)
+                     (and (any (cut regexp-exec <> name)
+                               upgrade-regexps)
+                          (upgradeable? name version path)
+                          (let ((output (or output "out")))
+                            (call-with-values
+                                (lambda ()
+                                  (specification->package+output name output))
+                              list))))
+                    (_ #f))
+                   (manifest-entries manifest)))))
 
   (define to-upgrade
     (map (match-lambda
@@ -762,11 +742,6 @@ removed from MANIFEST."
                 %default-options
                 #f))
 
-  (define (guile-missing?)
-    ;; Return #t if %GUILE-FOR-BUILD is not available yet.
-    (let ((out (derivation->output-path (%guile-for-build))))
-      (not (valid-path? (%store) out))))
-
   (define (ensure-default-profile)
     ;; Ensure the default profile symlink and directory exist and are
     ;; writable.
@@ -819,15 +794,8 @@ more information.~%"))
     ;; Process any install/remove/upgrade action from OPTS.
 
     (define dry-run? (assoc-ref opts 'dry-run?))
-    (define verbose? (assoc-ref opts 'verbose?))
     (define profile  (assoc-ref opts 'profile))
 
-    (define (same-package? entry name output)
-      (match entry
-        (($ <manifest-entry> entry-name _ entry-output _ ...)
-         (and (equal? name entry-name)
-              (equal? output entry-output)))))
-
     (define current-generation-number
       (generation-number profile))
 
@@ -898,19 +866,8 @@ more information.~%"))
            (let* ((manifest (profile-manifest profile))
                   (install  (options->installable opts manifest))
                   (remove   (options->removable opts manifest))
-                  (entries
-                   (append install
-                           (fold (lambda (package result)
-                                   (match package
-                                     (($ <manifest-entry> name _ out _ ...)
-                                      (filter (negate
-                                               (cut same-package? <>
-                                                    name out))
-                                              result))))
-                                 (manifest-entries
-                                  (manifest-remove manifest remove))
-                                 install)))
-                  (new      (make-manifest entries)))
+                  (new      (manifest-add (manifest-remove manifest remove)
+                                          install)))
 
              (when (equal? profile %current-profile)
                (ensure-default-profile))
@@ -940,7 +897,8 @@ more information.~%"))
                           (name   (generation-file-name profile
                                                         (+ 1 number))))
                      (and (build-derivations (%store) (list prof-drv))
-                          (let ((count (length entries)))
+                          (let* ((entries (manifest-entries new))
+                                 (count   (length entries)))
                             (switch-symlinks name prof)
                             (switch-symlinks profile name)
                             (maybe-register-gc-root (%store) profile)
@@ -1059,7 +1017,6 @@ more information.~%"))
         (('search-paths)
          (let* ((manifest (profile-manifest profile))
                 (entries  (manifest-entries manifest))
-                (packages (map manifest-entry-name entries))
                 (settings (search-path-environment-variables entries profile
                                                              (const #f))))
            (format #t "~{~a~%~}" settings)
diff --git a/guix/ui.scm b/guix/ui.scm
index 9112d55daf..f11c2e9c92 100644
--- a/guix/ui.scm
+++ b/guix/ui.scm
@@ -393,15 +393,17 @@ converted to a space; sequences of more than one line break are preserved."
          ((#\newline)
           `(,column ,(+ 1 newlines) ,chars))
          (else
-          (let ((chars  (case newlines
-                          ((0) chars)
-                          ((1) (cons #\space chars))
-                          (else
-                           (append (make-list newlines #\newline) chars))))
-                (column (case newlines
-                          ((0) column)
-                          ((1) (+ 1 column))
-                          (else 0))))
+          (let* ((spaces (if (and (pair? chars) (eqv? (car chars) #\.)) 2 1))
+                 (chars  (case newlines
+                           ((0) chars)
+                           ((1)
+                            (append (make-list spaces #\space) chars))
+                           (else
+                            (append (make-list newlines #\newline) chars))))
+                 (column (case newlines
+                           ((0) column)
+                           ((1) (+ spaces column))
+                           (else 0))))
             (let ((chars  (cons chr chars))
                   (column (+ 1 column)))
               (if (> column width)
@@ -414,7 +416,10 @@ converted to a space; sequences of more than one line break are preserved."
                           0
                           ,(if (null? after)
                                before
-                               (append before (cons #\newline (cdr after)))))
+                               (append before
+                                       (cons #\newline
+                                             (drop-while (cut eqv? #\space <>)
+                                                         after)))))
                         `(,column 0 ,chars)))     ; unbreakable
                   `(,column 0 ,chars)))))))))
 
diff --git a/po/guix/LINGUAS b/po/guix/LINGUAS
index 6ba2fe22cc..1987e5e30c 100644
--- a/po/guix/LINGUAS
+++ b/po/guix/LINGUAS
@@ -1,5 +1,6 @@
 # Set of available languages.
 
+cs
 de
 en@boldquot
 en@quot
diff --git a/po/guix/Makevars b/po/guix/Makevars
index 691cc0b2af..87bb438418 100644
--- a/po/guix/Makevars
+++ b/po/guix/Makevars
@@ -8,13 +8,10 @@ top_builddir = ../..
 # These options get passed to xgettext.  We want to catch standard
 # gettext uses, and SRFI-35 error condition messages.
 XGETTEXT_OPTIONS =				\
-  --no-wrap					\
   --language=Scheme --from-code=UTF-8		\
   --keyword=_ --keyword=N_			\
   --keyword=message
 
-MSGMERGE_OPTIONS = --no-wrap
-
 COPYRIGHT_HOLDER = Ludovic Courtès
 
 MSGID_BUGS_ADDRESS = ludo@gnu.org
diff --git a/po/guix/cs.po b/po/guix/cs.po
new file mode 100644
index 0000000000..b744dc478b
--- /dev/null
+++ b/po/guix/cs.po
@@ -0,0 +1,1121 @@
+# German translation of guix.
+# Copyright (C) 2014 Free Software Foundation, Inc.
+# This file is distributed under the same license as the guix package.
+#
+# Pavel Fric <pavelfric@seznam.cz>, 2014.
+msgid ""
+msgstr ""
+"Project-Id-Version: guix 0.7-pre1\n"
+"Report-Msgid-Bugs-To: ludo@gnu.org\n"
+"POT-Creation-Date: 2014-07-13 17:06+0200\n"
+"PO-Revision-Date: 2014-07-26 18:06+0200\n"
+"Last-Translator: Pavel Fric <pavelfric@seznam.cz>\n"
+"Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
+"Language: cs\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Lokalize 1.5\n"
+
+#: gnu/packages.scm:95
+#, scheme-format
+msgid "cannot access `~a': ~a~%"
+msgstr "Nelze přistupovat k »~a«: ~a~%"
+
+#: guix/scripts/build.scm:54 guix/scripts/package.scm:349
+#, scheme-format
+msgid "ambiguous package specification `~a'~%"
+msgstr ""
+
+#: guix/scripts/build.scm:55 guix/scripts/package.scm:351
+#, scheme-format
+msgid "choosing ~a from ~a~%"
+msgstr ""
+
+#: guix/scripts/build.scm:61
+#, scheme-format
+msgid "~A: package not found for version ~a~%"
+msgstr "~A: Balíček nenalezen pro verzi ~a~%"
+
+#: guix/scripts/build.scm:63
+#, scheme-format
+msgid "~A: unknown package~%"
+msgstr "~A: Neznámý balíček~%"
+
+#: guix/scripts/build.scm:86
+#, scheme-format
+msgid "failed to create GC root `~a': ~a~%"
+msgstr "Nepodařilo se vytvořit GC root `~a': ~a~%"
+
+#: guix/scripts/build.scm:123
+msgid ""
+"\n"
+"  -K, --keep-failed      keep build tree of failed builds"
+msgstr ""
+"\n"
+"  -K, --keep-failed      Zachovat sestavovací strom nezdařených sestavení"
+
+#: guix/scripts/build.scm:125
+msgid ""
+"\n"
+"  -n, --dry-run          do not build the derivations"
+msgstr ""
+
+#: guix/scripts/build.scm:127
+msgid ""
+"\n"
+"      --fallback         fall back to building when the substituter fails"
+msgstr ""
+
+#: guix/scripts/build.scm:129
+msgid ""
+"\n"
+"      --no-substitutes   build instead of resorting to pre-built substitutes"
+msgstr ""
+
+#: guix/scripts/build.scm:131
+msgid ""
+"\n"
+"      --no-build-hook    do not attempt to offload builds via the build hook"
+msgstr ""
+
+#: guix/scripts/build.scm:133
+msgid ""
+"\n"
+"      --max-silent-time=SECONDS\n"
+"                         mark the build as failed after SECONDS of silence"
+msgstr ""
+
+#: guix/scripts/build.scm:136
+msgid ""
+"\n"
+"      --timeout=SECONDS  mark the build as failed after SECONDS of activity"
+msgstr ""
+
+#: guix/scripts/build.scm:138
+msgid ""
+"\n"
+"      --verbosity=LEVEL  use the given verbosity LEVEL"
+msgstr ""
+
+#: guix/scripts/build.scm:140
+msgid ""
+"\n"
+"  -c, --cores=N          allow the use of up to N CPU cores for the build"
+msgstr ""
+
+#: guix/scripts/build.scm:206
+#, scheme-format
+msgid "~a: not a number~%"
+msgstr "~a: Není číslo~%"
+
+#: guix/scripts/build.scm:223
+msgid ""
+"Usage: guix build [OPTION]... PACKAGE-OR-DERIVATION...\n"
+"Build the given PACKAGE-OR-DERIVATION and return their output paths.\n"
+msgstr ""
+
+#: guix/scripts/build.scm:225
+msgid ""
+"\n"
+"  -e, --expression=EXPR  build the package or derivation EXPR evaluates to"
+msgstr ""
+
+#: guix/scripts/build.scm:227
+msgid ""
+"\n"
+"  -S, --source           build the packages' source derivations"
+msgstr ""
+
+#: guix/scripts/build.scm:229
+msgid ""
+"\n"
+"  -s, --system=SYSTEM    attempt to build for SYSTEM--e.g., \"i686-linux\""
+msgstr ""
+
+#: guix/scripts/build.scm:231
+msgid ""
+"\n"
+"      --target=TRIPLET   cross-build for TRIPLET--e.g., \"armel-linux-gnu\""
+msgstr ""
+
+#: guix/scripts/build.scm:233
+msgid ""
+"\n"
+"      --with-source=SOURCE\n"
+"                         use SOURCE when building the corresponding package"
+msgstr ""
+
+#: guix/scripts/build.scm:236
+msgid ""
+"\n"
+"  -d, --derivations      return the derivation paths of the given packages"
+msgstr ""
+
+#: guix/scripts/build.scm:238
+msgid ""
+"\n"
+"  -r, --root=FILE        make FILE a symlink to the result, and register it\n"
+"                         as a garbage collector root"
+msgstr ""
+
+#: guix/scripts/build.scm:241
+msgid ""
+"\n"
+"      --log-file         return the log file names for the given derivations"
+msgstr ""
+
+#: guix/scripts/build.scm:246 guix/scripts/download.scm:53
+#: guix/scripts/package.scm:523 guix/scripts/gc.scm:58
+#: guix/scripts/hash.scm:55 guix/scripts/pull.scm:82
+#: guix/scripts/substitute-binary.scm:564 guix/scripts/system.scm:334
+msgid ""
+"\n"
+"  -h, --help             display this help and exit"
+msgstr ""
+"\n"
+"  -h, --help             Ukázat tuto nápovědu a ukončit"
+
+#: guix/scripts/build.scm:248 guix/scripts/download.scm:55
+#: guix/scripts/package.scm:525 guix/scripts/gc.scm:60
+#: guix/scripts/hash.scm:57 guix/scripts/pull.scm:84
+#: guix/scripts/substitute-binary.scm:566 guix/scripts/system.scm:336
+msgid ""
+"\n"
+"  -V, --version          display version information and exit"
+msgstr ""
+"\n"
+"  -V, --version         Ukázat informace o verzi a ukončit"
+
+#: guix/scripts/build.scm:368
+#, scheme-format
+msgid "sources do not match any package:~{ ~a~}~%"
+msgstr ""
+
+#: guix/scripts/build.scm:397 guix/scripts/download.scm:96
+#: guix/scripts/package.scm:756 guix/scripts/gc.scm:122
+#: guix/scripts/pull.scm:115 guix/scripts/system.scm:386
+#, scheme-format
+msgid "~A: unrecognized option~%"
+msgstr "~A: Nerozpoznaná volba~%"
+
+#: guix/scripts/build.scm:425
+#, scheme-format
+msgid "no build log for '~a'~%"
+msgstr "Žádný záznam o sestavení pro »~a«~%"
+
+#: guix/scripts/download.scm:44
+msgid ""
+"Usage: guix download [OPTION] URL\n"
+"Download the file at URL, add it to the store, and print its store path\n"
+"and the hash of its contents.\n"
+"\n"
+"Supported formats: 'nix-base32' (default), 'base32', and 'base16'\n"
+"('hex' and 'hexadecimal' can be used as well).\n"
+msgstr ""
+
+#: guix/scripts/download.scm:50 guix/scripts/hash.scm:50
+msgid ""
+"\n"
+"  -f, --format=FMT       write the hash in the given format"
+msgstr ""
+
+#: guix/scripts/download.scm:73 guix/scripts/hash.scm:75
+#, scheme-format
+msgid "unsupported hash format: ~a~%"
+msgstr "Nepodporovaný formát kontrolního součtu: ~a~%"
+
+#: guix/scripts/download.scm:106
+#, scheme-format
+msgid "~a: failed to parse URI~%"
+msgstr "~a: URI~% se nepodařilo zpracovat"
+
+#: guix/scripts/download.scm:117
+#, scheme-format
+msgid "~a: download failed~%"
+msgstr "~a: Stažení se nezdařilo~%"
+
+#: guix/scripts/package.scm:88
+#, scheme-format
+msgid "failed to build the empty profile~%"
+msgstr "Nepodařilo se vytvořit prázdný profil~%"
+
+#: guix/scripts/package.scm:97
+#, scheme-format
+msgid "switching from generation ~a to ~a~%"
+msgstr ""
+
+#: guix/scripts/package.scm:108 guix/scripts/package.scm:866
+#: guix/scripts/package.scm:978
+#, scheme-format
+msgid "profile '~a' does not exist~%"
+msgstr "Profil »~a« neexistuje~%"
+
+#: guix/scripts/package.scm:112
+#, scheme-format
+msgid "nothing to do: already at the empty profile~%"
+msgstr ""
+
+#: guix/scripts/package.scm:197
+#, scheme-format
+msgid "The following package would be removed:~%~{~a~%~}~%"
+msgstr ""
+
+#: guix/scripts/package.scm:202
+#, scheme-format
+msgid "The following package will be removed:~%~{~a~%~}~%"
+msgstr ""
+
+#: guix/scripts/package.scm:214
+#, scheme-format
+msgid "The following package would be installed:~%~{~a~%~}~%"
+msgstr ""
+
+#: guix/scripts/package.scm:219
+#, scheme-format
+msgid "The following package will be installed:~%~{~a~%~}~%"
+msgstr "Bude nainstalován následující balíček:~%~{~a~%~}~%"
+
+#: guix/scripts/package.scm:339
+#, scheme-format
+msgid "package `~a' lacks output `~a'~%"
+msgstr ""
+
+#: guix/scripts/package.scm:356
+#, scheme-format
+msgid "~a: package not found~%"
+msgstr "~a: Balíček nenalezen~%"
+
+#: guix/scripts/package.scm:391
+#, scheme-format
+msgid "looking for the latest release of GNU ~a..."
+msgstr "Hledá se poslední vydání GNU ~a …"
+
+#: guix/scripts/package.scm:395
+#, scheme-format
+msgid "~a: note: using ~a but ~a is available upstream~%"
+msgstr ""
+
+#: guix/scripts/package.scm:467
+#, scheme-format
+msgid "The following environment variable definitions may be needed:~%"
+msgstr ""
+
+#: guix/scripts/package.scm:483
+msgid ""
+"Usage: guix package [OPTION]... PACKAGES...\n"
+"Install, remove, or upgrade PACKAGES in a single transaction.\n"
+msgstr ""
+
+#: guix/scripts/package.scm:485
+msgid ""
+"\n"
+"  -i, --install=PACKAGE  install PACKAGE"
+msgstr ""
+"\n"
+"  -i, --install=PAKET    Instalovat BALÍČEK"
+
+#: guix/scripts/package.scm:487
+msgid ""
+"\n"
+"  -e, --install-from-expression=EXP\n"
+"                         install the package EXP evaluates to"
+msgstr ""
+
+#: guix/scripts/package.scm:490
+msgid ""
+"\n"
+"  -r, --remove=PACKAGE   remove PACKAGE"
+msgstr ""
+"\n"
+"  -r, --remove=PAKET     Odstranit BALÍČEK"
+
+#: guix/scripts/package.scm:492
+msgid ""
+"\n"
+"  -u, --upgrade[=REGEXP] upgrade all the installed packages matching REGEXP"
+msgstr ""
+
+#: guix/scripts/package.scm:494
+msgid ""
+"\n"
+"      --roll-back        roll back to the previous generation"
+msgstr ""
+
+#: guix/scripts/package.scm:496
+msgid ""
+"\n"
+"      --search-paths     display needed environment variable definitions"
+msgstr ""
+
+#: guix/scripts/package.scm:498
+msgid ""
+"\n"
+"  -l, --list-generations[=PATTERN]\n"
+"                         list generations matching PATTERN"
+msgstr ""
+
+#: guix/scripts/package.scm:501
+msgid ""
+"\n"
+"  -d, --delete-generations[=PATTERN]\n"
+"                         delete generations matching PATTERN"
+msgstr ""
+
+#: guix/scripts/package.scm:504
+msgid ""
+"\n"
+"  -p, --profile=PROFILE  use PROFILE instead of the user's default profile"
+msgstr ""
+
+#: guix/scripts/package.scm:507
+msgid ""
+"\n"
+"      --bootstrap        use the bootstrap Guile to build the profile"
+msgstr ""
+
+#: guix/scripts/package.scm:509 guix/scripts/pull.scm:75
+msgid ""
+"\n"
+"      --verbose          produce verbose output"
+msgstr ""
+
+#: guix/scripts/package.scm:512
+msgid ""
+"\n"
+"  -s, --search=REGEXP    search in synopsis and description using REGEXP"
+msgstr ""
+
+#: guix/scripts/package.scm:514
+msgid ""
+"\n"
+"  -I, --list-installed[=REGEXP]\n"
+"                         list installed packages matching REGEXP"
+msgstr ""
+
+#: guix/scripts/package.scm:517
+msgid ""
+"\n"
+"  -A, --list-available[=REGEXP]\n"
+"                         list available packages matching REGEXP"
+msgstr ""
+
+#: guix/scripts/package.scm:760
+#, scheme-format
+msgid "~A: extraneous argument~%"
+msgstr ""
+
+#: guix/scripts/package.scm:775
+#, scheme-format
+msgid "Try \"info '(guix) Invoking guix package'\" for more information.~%"
+msgstr ""
+
+#: guix/scripts/package.scm:797
+#, scheme-format
+msgid "error: while creating directory `~a': ~a~%"
+msgstr ""
+
+#: guix/scripts/package.scm:801
+#, scheme-format
+msgid "Please create the `~a' directory, with you as the owner.~%"
+msgstr ""
+
+#: guix/scripts/package.scm:808
+#, scheme-format
+msgid "error: directory `~a' is not owned by you~%"
+msgstr ""
+
+#: guix/scripts/package.scm:811
+#, scheme-format
+msgid "Please change the owner of `~a' to user ~s.~%"
+msgstr ""
+
+#: guix/scripts/package.scm:836
+#, scheme-format
+msgid "deleting ~a~%"
+msgstr ""
+
+#: guix/scripts/package.scm:889 guix/scripts/package.scm:994
+#, scheme-format
+msgid "invalid syntax: ~a~%"
+msgstr "Neplatná skladba: ~a~%"
+
+#: guix/scripts/package.scm:918
+#, scheme-format
+msgid "nothing to be done~%"
+msgstr "Nic k dělání~%"
+
+#: guix/scripts/package.scm:941
+#, scheme-format
+msgid "~a package in profile~%"
+msgstr "~a balíček v profilu~%"
+
+#: guix/scripts/package.scm:956
+#, scheme-format
+msgid "Generation ~a\t~a"
+msgstr ""
+
+#: guix/scripts/package.scm:963
+#, scheme-format
+msgid "~a\t(current)~%"
+msgstr "~a\t(aktuální)~%"
+
+#: guix/scripts/gc.scm:39
+msgid ""
+"Usage: guix gc [OPTION]... PATHS...\n"
+"Invoke the garbage collector.\n"
+msgstr ""
+
+#: guix/scripts/gc.scm:41
+msgid ""
+"\n"
+"  -C, --collect-garbage[=MIN]\n"
+"                         collect at least MIN bytes of garbage"
+msgstr ""
+
+#: guix/scripts/gc.scm:44
+msgid ""
+"\n"
+"  -d, --delete           attempt to delete PATHS"
+msgstr ""
+
+#: guix/scripts/gc.scm:46
+msgid ""
+"\n"
+"      --list-dead        list dead paths"
+msgstr ""
+
+#: guix/scripts/gc.scm:48
+msgid ""
+"\n"
+"      --list-live        list live paths"
+msgstr ""
+
+#: guix/scripts/gc.scm:51
+msgid ""
+"\n"
+"      --references       list the references of PATHS"
+msgstr ""
+
+#: guix/scripts/gc.scm:53
+msgid ""
+"\n"
+"  -R, --requisites       list the requisites of PATHS"
+msgstr ""
+
+#: guix/scripts/gc.scm:55
+msgid ""
+"\n"
+"      --referrers        list the referrers of PATHS"
+msgstr ""
+
+#: guix/scripts/gc.scm:84
+#, scheme-format
+msgid "invalid amount of storage: ~a~%"
+msgstr "Neplatná hodnota paměti: ~a~%"
+
+#: guix/scripts/hash.scm:45
+msgid ""
+"Usage: guix hash [OPTION] FILE\n"
+"Return the cryptographic hash of FILE.\n"
+"\n"
+"Supported formats: 'nix-base32' (default), 'base32', and 'base16' ('hex'\n"
+"and 'hexadecimal' can be used as well).\n"
+msgstr ""
+
+#: guix/scripts/hash.scm:52
+msgid ""
+"\n"
+"  -r, --recursive        compute the hash on FILE recursively"
+msgstr ""
+"\n"
+"  -r, --recursive        Spočítat kontrolní součet SOUBORU rekursivně"
+
+#: guix/scripts/hash.scm:103
+#, scheme-format
+msgid "unrecognized option: ~a~%"
+msgstr "Nerozpoznaná volba: ~a~%"
+
+#: guix/scripts/hash.scm:134 guix/ui.scm:233
+#, scheme-format
+msgid "~a~%"
+msgstr "~a~%"
+
+#: guix/scripts/hash.scm:137
+#, scheme-format
+msgid "wrong number of arguments~%"
+msgstr "Nesprávný počet argumentů~%"
+
+#: guix/scripts/pull.scm:73
+msgid ""
+"Usage: guix pull [OPTION]...\n"
+"Download and deploy the latest version of Guix.\n"
+msgstr ""
+
+#: guix/scripts/pull.scm:77
+msgid ""
+"\n"
+"      --url=URL          download the Guix tarball from URL"
+msgstr ""
+
+#: guix/scripts/pull.scm:79
+msgid ""
+"\n"
+"      --bootstrap        use the bootstrap Guile to build the new Guix"
+msgstr ""
+
+#: guix/scripts/pull.scm:117
+#, scheme-format
+msgid "~A: unexpected argument~%"
+msgstr "~A: Neočekávaný argument~%"
+
+#: guix/scripts/pull.scm:126
+msgid "failed to download up-to-date source, exiting\n"
+msgstr ""
+
+#: guix/scripts/pull.scm:145
+#, scheme-format
+msgid "updated ~a successfully deployed under `~a'~%"
+msgstr ""
+
+#: guix/scripts/pull.scm:148
+#, scheme-format
+msgid "failed to update Guix, check the build log~%"
+msgstr ""
+
+#: guix/scripts/pull.scm:150
+msgid "Guix already up to date\n"
+msgstr "Guix je již aktuální\n"
+
+#: guix/scripts/substitute-binary.scm:80
+#, scheme-format
+msgid "authentication and authorization of substitutes disabled!~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:163
+#, scheme-format
+msgid "download from '~a' failed: ~a, ~s~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:178
+#, scheme-format
+msgid "while fetching ~a: server is unresponsive~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:180
+#, scheme-format
+msgid "try `--no-substitutes' if the problem persists~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:244
+#, scheme-format
+msgid "signature version must be a number: ~a~%"
+msgstr "Verze podpisu musí být číslo: ~a~%"
+
+#: guix/scripts/substitute-binary.scm:248
+#, scheme-format
+msgid "unsupported signature version: ~a~%"
+msgstr "Verze podpisu není podporována: ~a~%"
+
+#: guix/scripts/substitute-binary.scm:256
+#, scheme-format
+msgid "signature is not a valid s-expression: ~s~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:260
+#, scheme-format
+msgid "invalid format of the signature field: ~a~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:295
+#, scheme-format
+msgid "invalid signature for '~a'~%"
+msgstr "Neplatný podpis »~a«~%"
+
+#: guix/scripts/substitute-binary.scm:297
+#, scheme-format
+msgid "hash mismatch for '~a'~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:299
+#, scheme-format
+msgid "'~a' is signed with an unauthorized key~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:301
+#, scheme-format
+msgid "signature on '~a' is corrupt~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:338
+#, scheme-format
+msgid "substitute at '~a' lacks a signature~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:526
+#, scheme-format
+msgid "Downloading, please wait...~%"
+msgstr "Stahuje se. Počkejte, prosím …~%"
+
+#: guix/scripts/substitute-binary.scm:528
+#, scheme-format
+msgid "(Please consider upgrading Guile to get proper progress report.)~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:545
+#, scheme-format
+msgid "host name lookup error: ~a~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:554
+msgid ""
+"Usage: guix substitute-binary [OPTION]...\n"
+"Internal tool to substitute a pre-built binary to a local build.\n"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:556
+msgid ""
+"\n"
+"      --query            report on the availability of substitutes for the\n"
+"                         store file names passed on the standard input"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:559
+msgid ""
+"\n"
+"      --substitute STORE-FILE DESTINATION\n"
+"                         download STORE-FILE and store it as a Nar in file\n"
+"                         DESTINATION"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:604
+msgid "ACL for archive imports seems to be uninitialized, substitutes may be unavailable\n"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:625
+#, scheme-format
+msgid "failed to look up host '~a' (~a), substituter disabled~%"
+msgstr ""
+
+#: guix/scripts/substitute-binary.scm:732
+#, scheme-format
+msgid "~a: unrecognized options~%"
+msgstr "~a: Nerozpoznané volby~%"
+
+#: guix/scripts/authenticate.scm:58
+#, scheme-format
+msgid "cannot find public key for secret key '~a'~%"
+msgstr ""
+
+#: guix/scripts/authenticate.scm:78
+#, scheme-format
+msgid "error: invalid signature: ~a~%"
+msgstr "Chyba: Neplatný podpis: ~a~%"
+
+#: guix/scripts/authenticate.scm:80
+#, scheme-format
+msgid "error: unauthorized public key: ~a~%"
+msgstr "Chyba: Neautorizovaný veřejný klíč: ~a~%"
+
+#: guix/scripts/authenticate.scm:82
+#, scheme-format
+msgid "error: corrupt signature data: ~a~%"
+msgstr "Chyba: Data podpisu poškozena: ~a~%"
+
+#: guix/scripts/authenticate.scm:126
+msgid ""
+"Usage: guix authenticate OPTION...\n"
+"Sign or verify the signature on the given file.  This tool is meant to\n"
+"be used internally by 'guix-daemon'.\n"
+msgstr ""
+
+#: guix/scripts/authenticate.scm:132
+msgid "wrong arguments"
+msgstr "Nesprávné argumenty"
+
+#: guix/scripts/system.scm:74
+#, scheme-format
+msgid "failed to open operating system file '~a': ~a~%"
+msgstr ""
+
+#: guix/scripts/system.scm:78 guix/ui.scm:238
+#, scheme-format
+msgid "~a: ~a~%"
+msgstr "~a: ~a~%"
+
+#: guix/scripts/system.scm:81
+#, scheme-format
+msgid "failed to load operating system file '~a': ~s~%"
+msgstr ""
+
+#: guix/scripts/system.scm:111
+#, scheme-format
+msgid "failed to register '~a' under '~a'~%"
+msgstr ""
+
+#: guix/scripts/system.scm:127
+#, scheme-format
+msgid "initializing the current root file system~%"
+msgstr ""
+
+#: guix/scripts/system.scm:151 guix/scripts/system.scm:291
+#, scheme-format
+msgid "failed to install GRUB on device '~a'~%"
+msgstr ""
+
+#: guix/scripts/system.scm:176
+#, scheme-format
+msgid "activating system...~%"
+msgstr "Systém se zapíná …~%"
+
+#: guix/scripts/system.scm:211
+#, scheme-format
+msgid "unrecognized boot parameters for '~a'~%"
+msgstr "Nerozpoznané spouštěcí parametry pro »~a«~%"
+
+#: guix/scripts/system.scm:295
+#, scheme-format
+msgid "initializing operating system under '~a'...~%"
+msgstr ""
+
+#: guix/scripts/system.scm:311
+msgid ""
+"Usage: guix system [OPTION] ACTION FILE\n"
+"Build the operating system declared in FILE according to ACTION.\n"
+msgstr ""
+
+#: guix/scripts/system.scm:314
+msgid "The valid values for ACTION are:\n"
+msgstr "Platné hodnoty pro ČINNOST jsou:\n"
+
+#: guix/scripts/system.scm:315
+msgid "  - 'reconfigure', switch to a new operating system configuration\n"
+msgstr ""
+
+#: guix/scripts/system.scm:317
+msgid "  - 'build', build the operating system without installing anything\n"
+msgstr ""
+
+#: guix/scripts/system.scm:319
+msgid "  - 'vm', build a virtual machine image that shares the host's store\n"
+msgstr ""
+
+#: guix/scripts/system.scm:321
+msgid "  - 'vm-image', build a freestanding virtual machine image\n"
+msgstr ""
+
+#: guix/scripts/system.scm:323
+msgid "  - 'disk-image', build a disk image, suitable for a USB stick\n"
+msgstr ""
+
+#: guix/scripts/system.scm:325
+msgid "  - 'init', initialize a root file system to run GNU.\n"
+msgstr ""
+
+#: guix/scripts/system.scm:329
+msgid ""
+"\n"
+"      --image-size=SIZE  for 'vm-image', produce an image of SIZE"
+msgstr ""
+
+#: guix/scripts/system.scm:331
+msgid ""
+"\n"
+"      --no-grub          for 'init', do not install GRUB"
+msgstr ""
+
+#: guix/scripts/system.scm:394
+#, scheme-format
+msgid "~a: unknown action~%"
+msgstr "~a: Neznámá činnost~%"
+
+#: guix/scripts/system.scm:411
+#, scheme-format
+msgid "wrong number of arguments for action '~a'~%"
+msgstr "Nesprávný počet argumentů pro činnost »~a«~%"
+
+#: guix/scripts/system.scm:431
+#, scheme-format
+msgid "no configuration file specified~%"
+msgstr "Nezadán žádný soubor s nastavením~%"
+
+#: guix/gnu-maintenance.scm:373
+#, scheme-format
+msgid "signature verification failed for `~a'~%"
+msgstr "Ověření podpisu se nezdařilo pro »~a«~%"
+
+#: guix/gnu-maintenance.scm:375
+#, scheme-format
+msgid "(could be because the public key is not in your keyring)~%"
+msgstr ""
+
+#: guix/gnu-maintenance.scm:450
+#, scheme-format
+msgid "~a: could not locate source file"
+msgstr "~a: Zdrojový soubor se nepodařilo najít"
+
+#: guix/gnu-maintenance.scm:455
+#, scheme-format
+msgid "~a: ~a: no `version' field in source; skipping~%"
+msgstr ""
+
+#: guix/ui.scm:131
+#, scheme-format
+msgid "failed to install locale: ~a~%"
+msgstr "Jazyk se nepodařilo nainstalovat: ~a~%"
+
+#: guix/ui.scm:150
+msgid ""
+"Copyright (C) 2014 the Guix authors\n"
+"License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n"
+"This is free software: you are free to change and redistribute it.\n"
+"There is NO WARRANTY, to the extent permitted by law.\n"
+msgstr ""
+"Autorské právo (C) 2014 autoři Guixu\n"
+"Povolení GPLv3+: GNU GPL verze 3 nebo pozdější <http://gnu.org/licenses/gpl.html>\n"
+"Toto je svobodný software: Můžete jej volně měnit a dál šířit.\n"
+"Není tu ŽÁDNÁ ZÁRUKA, ve výši povolené zákonem.\n"
+
+#: guix/ui.scm:158
+#, scheme-format
+msgid ""
+"\n"
+"Report bugs to: ~a."
+msgstr ""
+"\n"
+"Chyby hlašte na: ~a."
+
+#: guix/ui.scm:160
+#, scheme-format
+msgid ""
+"\n"
+"~a home page: <~a>"
+msgstr ""
+"\n"
+"~a stránky: <~a>"
+
+#: guix/ui.scm:162
+msgid ""
+"\n"
+"General help using GNU software: <http://www.gnu.org/gethelp/>"
+msgstr ""
+"\n"
+"Všeobecná nápověda k software GNU: <http://www.gnu.org/gethelp/>"
+
+#: guix/ui.scm:169
+#, scheme-format
+msgid "~a: invalid number~%"
+msgstr "~a: Neplatné číslo~%"
+
+#: guix/ui.scm:186
+#, scheme-format
+msgid "invalid number: ~a~%"
+msgstr "Neplatné číslo: ~a~%"
+
+#: guix/ui.scm:201
+#, scheme-format
+msgid "unknown unit: ~a~%"
+msgstr "Neznámá jednotka: ~a~%"
+
+#: guix/ui.scm:212
+#, scheme-format
+msgid "~a:~a:~a: package `~a' has an invalid input: ~s~%"
+msgstr "~a:~a:~a: Balíček `~a' má neplatný vstup: ~s~%"
+
+#: guix/ui.scm:219
+#, scheme-format
+msgid "~a: ~a: build system `~a' does not support cross builds~%"
+msgstr "~a: ~a: Sestavovací systém `~a' nepodporuje křížová sestavení~%"
+
+#: guix/ui.scm:224
+#, scheme-format
+msgid "failed to connect to `~a': ~a~%"
+msgstr "Nepodařilo se spojit s »~a«: ~a~%"
+
+#: guix/ui.scm:229
+#, scheme-format
+msgid "build failed: ~a~%"
+msgstr "Nepodařilo se sestavit: ~a~%"
+
+#: guix/ui.scm:257
+#, scheme-format
+msgid "failed to read expression ~s: ~s~%"
+msgstr "Výraz ~s se nepodařilo přečíst: ~s~%"
+
+#: guix/ui.scm:263
+#, scheme-format
+msgid "failed to evaluate expression `~a': ~s~%"
+msgstr ""
+
+#: guix/ui.scm:272
+#, scheme-format
+msgid "expression ~s does not evaluate to a package~%"
+msgstr ""
+
+#: guix/ui.scm:319
+#, scheme-format
+msgid "~:[The following derivation would be built:~%~{   ~a~%~}~;~]"
+msgstr ""
+
+#: guix/ui.scm:324
+#, scheme-format
+msgid "~:[The following file would be downloaded:~%~{   ~a~%~}~;~]"
+msgstr ""
+
+#: guix/ui.scm:330
+#, scheme-format
+msgid "~:[The following derivation will be built:~%~{   ~a~%~}~;~]"
+msgstr ""
+
+#: guix/ui.scm:335
+#, scheme-format
+msgid "~:[The following file will be downloaded:~%~{   ~a~%~}~;~]"
+msgstr "~:[Bude stažen následující soubor:~%~{   ~a~%~}~;~]"
+
+#: guix/ui.scm:352
+msgid "<unknown location>"
+msgstr "<neznámé místo>"
+
+#: guix/ui.scm:380
+#, scheme-format
+msgid "failed to create configuration directory `~a': ~a~%"
+msgstr "Adresář s nastavením »~a« se nepodařilo vytvořit: ~a~%"
+
+#: guix/ui.scm:461 guix/ui.scm:475
+msgid "unknown"
+msgstr "Neznámý"
+
+#: guix/ui.scm:584
+#, scheme-format
+msgid "invalid argument: ~a~%"
+msgstr "Neplatný argument: ~a~%"
+
+#: guix/ui.scm:589
+#, scheme-format
+msgid "Try `guix --help' for more information.~%"
+msgstr "vyvolejte »guix --help« pro obdržení dalších informací.~%"
+
+#: guix/ui.scm:619
+msgid ""
+"Usage: guix COMMAND ARGS...\n"
+"Run COMMAND with ARGS.\n"
+msgstr ""
+"Použití: guix PŘÍKAZ ARGUMENTY …\n"
+"Spustit PŘÍKAZ s ARGUMENTY.\n"
+
+#: guix/ui.scm:622
+msgid "COMMAND must be one of the sub-commands listed below:\n"
+msgstr "PŘÍKAZ musí být jeden z níže uvedených podpříkazů:\n"
+
+#: guix/ui.scm:642
+#, scheme-format
+msgid "guix: ~a: command not found~%"
+msgstr "guix: ~a: Příkaz nenalezen~%"
+
+#: guix/ui.scm:660
+#, scheme-format
+msgid "guix: missing command name~%"
+msgstr "guix: Chybí název příkazu~%"
+
+#: guix/ui.scm:668
+#, scheme-format
+msgid "guix: unrecognized option '~a'~%"
+msgstr "guix: Nerozpoznaná volba »~a«~%"
+
+#: guix/http-client.scm:217
+#, scheme-format
+msgid "using Guile ~a, which does not support ~s encoding~%"
+msgstr ""
+
+#: guix/http-client.scm:220
+#, scheme-format
+msgid "download failed; use a newer Guile~%"
+msgstr "Stažení se nezdařilo. Použijte novější Guile~%"
+
+#: guix/http-client.scm:232
+#, scheme-format
+msgid "following redirection to `~a'...~%"
+msgstr ""
+
+#: guix/http-client.scm:241
+msgid "download failed"
+msgstr "Stažení se nezdařilo"
+
+#: guix/nar.scm:134
+msgid "unexpected executable file marker"
+msgstr ""
+
+#: guix/nar.scm:141
+msgid "unsupported nar file type"
+msgstr ""
+
+#: guix/nar.scm:209
+msgid "unsupported file type"
+msgstr "Nepodporovaný typ souboru"
+
+#: guix/nar.scm:219
+msgid "invalid nar signature"
+msgstr ""
+
+#: guix/nar.scm:230
+msgid "invalid nar end-of-file marker"
+msgstr ""
+
+#: guix/nar.scm:244
+msgid "invalid symlink tokens"
+msgstr ""
+
+#: guix/nar.scm:263
+msgid "unexpected directory entry termination"
+msgstr ""
+
+#: guix/nar.scm:272
+msgid "unexpected directory inter-entry marker"
+msgstr ""
+
+#: guix/nar.scm:277
+msgid "unsupported nar entry type"
+msgstr ""
+
+#: guix/nar.scm:376
+msgid "signature is not a valid s-expression"
+msgstr "Podpis není platný s-výraz"
+
+#: guix/nar.scm:385
+msgid "invalid signature"
+msgstr "Neplatný podpis"
+
+#: guix/nar.scm:389
+msgid "invalid hash"
+msgstr "Neplatný kontrolní součet"
+
+#: guix/nar.scm:397
+msgid "unauthorized public key"
+msgstr "Neautorizovaný veřejný klíč"
+
+#: guix/nar.scm:402
+msgid "corrupt signature data"
+msgstr "data podpisu poškozena"
+
+#: guix/nar.scm:422
+msgid "corrupt file set archive"
+msgstr ""
+
+#: guix/nar.scm:432
+#, scheme-format
+msgid "importing file or directory '~a'...~%"
+msgstr "Zavádí se soubor nebo adresář »~a« …~%"
+
+#: guix/nar.scm:441
+#, scheme-format
+msgid "found valid signature for '~a'~%"
+msgstr "Nalezen platný podpis pro »~a« ~%"
+
+#: guix/nar.scm:448
+msgid "imported file lacks a signature"
+msgstr "Zavedenému souboru chybí podpis"
+
+#: guix/nar.scm:487
+msgid "invalid inter-file archive mark"
+msgstr ""
diff --git a/po/packages/Makevars b/po/packages/Makevars
index cf0eba5ed1..1b4689b7c3 100644
--- a/po/packages/Makevars
+++ b/po/packages/Makevars
@@ -9,12 +9,9 @@ top_builddir = ../..
 # These options get passed to xgettext.  We want to catch exclusively package
 # synopses and descriptions.
 XGETTEXT_OPTIONS =				\
-  --no-wrap					\
   --language=Scheme --from-code=UTF-8		\
   --keyword=synopsis --keyword=description
 
-MSGMERGE_OPTIONS = --no-wrap
-
 COPYRIGHT_HOLDER = Ludovic Courtès
 
 MSGID_BUGS_ADDRESS = ludo@gnu.org
diff --git a/tests/gexp.scm b/tests/gexp.scm
index bdea4b8563..694bd409bc 100644
--- a/tests/gexp.scm
+++ b/tests/gexp.scm
@@ -39,6 +39,7 @@
 
 ;; For white-box testing.
 (define gexp-inputs (@@ (guix gexp) gexp-inputs))
+(define gexp-native-inputs (@@ (guix gexp) gexp-native-inputs))
 (define gexp->sexp  (@@ (guix gexp) gexp->sexp))
 
 (define guile-for-build
@@ -47,8 +48,9 @@
 ;; Make it the default.
 (%guile-for-build guile-for-build)
 
-(define (gexp->sexp* exp)
-  (run-with-store %store (gexp->sexp exp)
+(define* (gexp->sexp* exp #:optional target)
+  (run-with-store %store (gexp->sexp exp
+                                     #:target target)
                   #:guile-for-build guile-for-build))
 
 (define-syntax-rule (test-assertm name exp)
@@ -134,6 +136,29 @@
                (e3 `(display ,txt)))
            (equal? `(begin ,e0 ,e1 ,e2 ,e3) (gexp->sexp* exp))))))
 
+(test-assert "ungexp + ungexp-native"
+  (let* ((exp    (gexp (list (ungexp-native %bootstrap-guile)
+                             (ungexp coreutils)
+                             (ungexp-native glibc)
+                             (ungexp binutils))))
+         (target "mips64el-linux")
+         (guile  (derivation->output-path
+                  (package-derivation %store %bootstrap-guile)))
+         (cu     (derivation->output-path
+                  (package-cross-derivation %store coreutils target)))
+         (libc   (derivation->output-path
+                  (package-derivation %store glibc)))
+         (bu     (derivation->output-path
+                  (package-cross-derivation %store binutils target))))
+    (and (lset= equal?
+                `((,%bootstrap-guile "out") (,glibc "out"))
+                (gexp-native-inputs exp))
+         (lset= equal?
+                `((,coreutils "out") (,binutils "out"))
+                (gexp-inputs exp))
+         (equal? `(list ,guile ,cu ,libc ,bu)
+                 (gexp->sexp* exp target)))))
+
 (test-assert "input list"
   (let ((exp   (gexp (display
                       '(ungexp (list %bootstrap-guile coreutils)))))
@@ -147,6 +172,28 @@
          (equal? `(display '(,guile ,cu))
                  (gexp->sexp* exp)))))
 
+(test-assert "input list + ungexp-native"
+  (let* ((target "mips64el-linux")
+         (exp   (gexp (display
+                       (cons '(ungexp-native (list %bootstrap-guile coreutils))
+                             '(ungexp (list glibc binutils))))))
+         (guile (derivation->output-path
+                 (package-derivation %store %bootstrap-guile)))
+         (cu    (derivation->output-path
+                 (package-derivation %store coreutils)))
+         (xlibc (derivation->output-path
+                 (package-cross-derivation %store glibc target)))
+         (xbu   (derivation->output-path
+                 (package-cross-derivation %store binutils target))))
+    (and (lset= equal?
+                `((,%bootstrap-guile "out") (,coreutils "out"))
+                (gexp-native-inputs exp))
+         (lset= equal?
+                `((,glibc "out") (,binutils "out"))
+                (gexp-inputs exp))
+         (equal? `(display (cons '(,guile ,cu) '(,xlibc ,xbu)))
+                 (gexp->sexp* exp target)))))
+
 (test-assert "input list splicing"
   (let* ((inputs  (list (list glibc "debug") %bootstrap-guile))
          (outputs (list (derivation->output-path
@@ -161,6 +208,16 @@
          (equal? (gexp->sexp* exp)
                  `(list ,@(cons 5 outputs))))))
 
+(test-assert "input list splicing + ungexp-native-splicing"
+  (let* ((inputs (list (list glibc "debug") %bootstrap-guile))
+         (exp    (gexp (list (ungexp-native-splicing (cons (+ 2 3) inputs))))))
+    (and (lset= equal?
+                `((,glibc "debug") (,%bootstrap-guile "out"))
+                (gexp-native-inputs exp))
+         (null? (gexp-inputs exp))
+         (equal? (gexp->sexp* exp)                ;native
+                 (gexp->sexp* exp "mips64el-linux")))))
+
 (test-assertm "gexp->file"
   (mlet* %store-monad ((exp -> (gexp (display (ungexp %bootstrap-guile))))
                        (guile  (package-file %bootstrap-guile))
@@ -223,6 +280,55 @@
     (mlet %store-monad ((drv mdrv))
       (return (string=? system (derivation-system drv))))))
 
+(test-assertm "gexp->derivation, cross-compilation"
+  (mlet* %store-monad ((target -> "mips64el-linux")
+                       (exp    -> (gexp (list (ungexp coreutils)
+                                              (ungexp output))))
+                       (xdrv      (gexp->derivation "foo" exp
+                                                    #:target target))
+                       (refs      ((store-lift references)
+                                   (derivation-file-name xdrv)))
+                       (xcu       (package->cross-derivation coreutils
+                                                             target))
+                       (cu        (package->derivation coreutils)))
+    (return (and (member (derivation-file-name xcu) refs)
+                 (not (member (derivation-file-name cu) refs))))))
+
+(test-assertm "gexp->derivation, ungexp-native"
+  (mlet* %store-monad ((target -> "mips64el-linux")
+                       (exp    -> (gexp (list (ungexp-native coreutils)
+                                              (ungexp output))))
+                       (xdrv      (gexp->derivation "foo" exp
+                                                    #:target target))
+                       (drv       (gexp->derivation "foo" exp)))
+    (return (string=? (derivation-file-name drv)
+                      (derivation-file-name xdrv)))))
+
+(test-assertm "gexp->derivation, ungexp + ungexp-native"
+  (mlet* %store-monad ((target -> "mips64el-linux")
+                       (exp    -> (gexp (list (ungexp-native coreutils)
+                                              (ungexp glibc)
+                                              (ungexp output))))
+                       (xdrv      (gexp->derivation "foo" exp
+                                                    #:target target))
+                       (refs      ((store-lift references)
+                                   (derivation-file-name xdrv)))
+                       (xglibc    (package->cross-derivation glibc target))
+                       (cu        (package->derivation coreutils)))
+    (return (and (member (derivation-file-name cu) refs)
+                 (member (derivation-file-name xglibc) refs)))))
+
+(test-assertm "gexp->derivation, ungexp-native + composed gexps"
+  (mlet* %store-monad ((target -> "mips64el-linux")
+                       (exp0   -> (gexp (list 1 2
+                                              (ungexp coreutils))))
+                       (exp    -> (gexp (list 0 (ungexp-native exp0))))
+                       (xdrv      (gexp->derivation "foo" exp
+                                                    #:target target))
+                       (drv       (gexp->derivation "foo" exp)))
+    (return (string=? (derivation-file-name drv)
+                      (derivation-file-name xdrv)))))
+
 (define shebang
   (string-append "#!" (derivation->output-path guile-for-build)
                  "/bin/guile --no-auto-compile"))
@@ -268,8 +374,12 @@
 (test-equal "sugar"
   '(gexp (foo (ungexp bar) (ungexp baz "out")
               (ungexp (chbouib 42))
-              (ungexp-splicing (list x y z))))
-  '#~(foo #$bar #$baz:out #$(chbouib 42) #$@(list x y z)))
+              (ungexp-splicing (list x y z))
+              (ungexp-native foo) (ungexp-native foo "out")
+              (ungexp-native (chbouib 42))
+              (ungexp-native-splicing (list x y z))))
+  '#~(foo #$bar #$baz:out #$(chbouib 42) #$@(list x y z)
+          #+foo #+foo:out #+(chbouib 42) #+@(list x y z)))
 
 (test-end "gexp")
 
diff --git a/tests/monads.scm b/tests/monads.scm
index ea3e4006ab..b814b0f7c5 100644
--- a/tests/monads.scm
+++ b/tests/monads.scm
@@ -24,6 +24,7 @@
                 #:select (package-derivation %current-system))
   #:use-module (gnu packages)
   #:use-module (gnu packages bootstrap)
+  #:use-module ((gnu packages base) #:select (coreutils))
   #:use-module (ice-9 match)
   #:use-module (rnrs io ports)
   #:use-module (srfi srfi-1)
@@ -108,6 +109,30 @@
                       guile)))
     #:guile-for-build (package-derivation %store %bootstrap-guile)))
 
+(test-assert "package-file, default system"
+  ;; The default system should be the one at '>>=' time, not the one at
+  ;; invocation time.  See <http://bugs.gnu.org/18002>.
+  (run-with-store %store
+    (mlet* %store-monad
+        ((system -> (%current-system))
+         (file   (parameterize ((%current-system "foobar64-linux"))
+                   (package-file coreutils "bin/ls")))
+         (cu     (package->derivation coreutils)))
+      (return (string=? file
+                        (string-append (derivation->output-path cu)
+                                       "/bin/ls"))))
+    #:guile-for-build (package-derivation %store %bootstrap-guile)))
+
+(test-assert "package-file + package->cross-derivation"
+  (run-with-store %store
+    (mlet* %store-monad ((file (package-file coreutils "bin/ls"
+                                             #:target "foo64-gnu"))
+                         (xcu  (package->cross-derivation coreutils
+                                                          "foo64-gnu")))
+      (let ((output (derivation->output-path xcu)))
+        (return (string=? file (string-append output "/bin/ls")))))
+    #:guile-for-build (package-derivation %store %bootstrap-guile)))
+
 (test-assert "interned-file"
   (run-with-store %store
     (mlet* %store-monad ((file -> (search-path %load-path "guix.scm"))
diff --git a/tests/profiles.scm b/tests/profiles.scm
index d405f6453e..b2919d7315 100644
--- a/tests/profiles.scm
+++ b/tests/profiles.scm
@@ -40,6 +40,13 @@
 
 ;; Example manifest entries.
 
+(define guile-1.8.8
+  (manifest-entry
+    (name "guile")
+    (version "1.8.8")
+    (item "/gnu/store/...")
+    (output "out")))
+
 (define guile-2.0.9
   (manifest-entry
     (name "guile")
@@ -101,6 +108,20 @@
             (null? (manifest-entries m3))
             (null? (manifest-entries m4)))))))
 
+(test-assert "manifest-add"
+  (let* ((m0 (manifest '()))
+         (m1 (manifest-add m0 (list guile-1.8.8)))
+         (m2 (manifest-add m1 (list guile-2.0.9)))
+         (m3 (manifest-add m2 (list guile-2.0.9:debug)))
+         (m4 (manifest-add m3 (list guile-2.0.9:debug))))
+    (and (match (manifest-entries m1)
+           ((($ <manifest-entry> "guile" "1.8.8" "out")) #t)
+           (_ #f))
+         (match (manifest-entries m2)
+           ((($ <manifest-entry> "guile" "2.0.9" "out")) #t)
+           (_ #f))
+         (equal? m3 m4))))
+
 (test-assert "profile-derivation"
   (run-with-store %store
     (mlet* %store-monad
diff --git a/tests/ui.scm b/tests/ui.scm
index 4bf7a779c5..7cc02649e1 100644
--- a/tests/ui.scm
+++ b/tests/ui.scm
@@ -67,6 +67,11 @@ interface, and powerful string processing.")
                    10)
    #\newline))
 
+(test-equal "fill-paragraph, two spaces after period"
+  "First line.  Second line"
+  (fill-paragraph "First line.
+Second line" 24))
+
 (test-equal "package-specification->name+version+output"
   '(("guile" #f "out")
     ("guile" "2.0.9" "out")