gnu: gnupg: Upgrade to 2.0.22.
* gnu/packages/gnupg.scm (gnupg): Update to 2.0.22. This release fixes
security issue CVE-2013-4402 in the OpenPGP packet parser.
gnu: Add PulseAudio and related libraries.
* gnu/packages/pulseaudio.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
gnu: Add FFTW.
* gnu/packages/algebra.scm (fftw): New variable.
gnu: Add libxkbcommon.
* gnu/packages/qt.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
gnu: xorg: Add xcb-util-renderutil.
* gnu/packages/xorg.scm (xcb-util-renderutil): New variable.
gnu: xorg: Add xcb-util-keysyms.
* gnu/packages/xorg.scm (xcb-util-keysyms): New variable.
gnu: xorg: Add xcb-util-image.
* gnu/packages/xorg.scm (xcb-util-image): New variable.
gnu: xorg: Add xcb-util.
* gnu/packages/xorg.scm (xcb-util): New variable.
* gnu/packages/xorg.scm (xcb-util-wm): Expand the description.
gnu: xorg: Add xcb-util-wm.
* gnu/packages/xorg.scm (xcb-util-wm): New variable.
gnu: Add Netcat.
* gnu/packages/system.scm (netcat): New variable.
monads: Allow resolution of a monad's bind/return at expansion time.
* guix/monads.scm (<monad>): Turn in a raw SRFI-9 record type.
(define-monad): New macro.
(with-monad): Add a case for when MONAD is a macro.
(identity-return, identity-bind, store-return, store-bind): Inline.
(%identity-monad, %store-monad): Use 'define-monad'.
* tests/monads.scm ("monad?"): New test.
gnu: vm: Rewrite helper functions as monadic functions.
* gnu/system/dmd.scm (host-name-service, nscd-service, mingetty-service,
syslog-service, guix-service, static-networking-service): Rewrite as
monadic functions.
(dmd-configuration-file): Use 'text-file' instead of
'add-text-to-store'.
* gnu/system/grub.scm (grub-configuration-file): Rewrite as a monadic
function.
* gnu/system/linux.scm (pam-services->directory): Likewise.
* gnu/system/shadow.scm (group-file, passwd-file, guix-build-accounts):
Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm, qemu-image,
union, system-qemu-image): Likewise.
Add (guix monads).
* guix/monads.scm: New file.
* tests/monads.scm: New file.
* Makefile.am (MODULES): Add guix/monads.scm.
(SCM_TESTS): Add tests/monads.scm.
* doc/guix.texi (The Store Monad): New node.
(The Store): Reference it.
gnu: libxcb: Enable xcb-xkb.
* gnu/packages/xorg.scm (libxcb): Add configure flag "--enable-xkb".
gnu: gnome: Add brasero.
* gnu/packages/gnome.scm (brasero): New variable; not totally usable due to
lacking inputs.
gnu: Add hicolor-icon-theme.
* gnu/packages/gnome.scm (hicolor-icon-theme): New variable.
gnu: gnome: Add gnome-icon-theme.
* gnu/packages/gnome.scm (gnome-icon-theme): New variable.
gnu: Add icon-naming-utils.
* gnu/packages/gnome.scm (icon-naming-utils): New variable.
gnu: Add perl-xml-simple.
* gnu/packages/xml.scm (perl-xml-simple): New variable.
gnu: gnome: Add gsettings-desktop-schemas.
* gnu/packages/gnome.scm (gsettings-desktop-schemas): New variable.