gnu: add RetroArch.
* gnu/packages/games.scm (retroarch): New variable.
gnu: gdb: Update to 7.8.2.
* gnu/packages/gdb.scm (gdb): Update to 7.8.2.
gnu: nix: Update to 1.8.
* gnu/packages/package-management.scm (nix): Update to 1.8.
gnu: plotutils: Do not propagate libXaw.
* gnu/packages/plotutils.scm (plotutils): Move LIBXAW from
'propagated-inputs' to 'inputs'. Add 'snippet'.
gnu: mercurial: Update to 3.2.4.
* gnu/packages/version-control.scm (mercurial): Update to 3.2.4.
gnu: teckit: Add alternate source URL.
Fixes <http://bugs.gnu.org/19600>.
* gnu/packages/fontutils.scm (teckit)[source]: Add Fedora mirror.
gnu: ninja: Disable testcase SubprocessTest.InterruptChild.
* gnu/packages/patches/ninja-tests.patch: New file.
* gnu/packages/ninja.scm (ninja): Add the patch.
* gnu-system.am (dist_patch_DATA): Add it.
packages: Convert source derivations to monadic style.
* guix/packages.scm (origin->derivation): Take body from
'package-source-derivation', and change it to monadic style. Expect
METHOD to a monadic procedure.
(package-source-derivation): Define in terms of 'origin->derivation'.
* guix/download.scm (url-fetch): Remove 'store' argument. Remove
'guile-for-build' variable. Turn into a monadic procedure.
* guix/git-download.scm (git-fetch): Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (url-fetch*): New procedure.
Change tests to call 'url-fetch*' instead of 'url-fetch'.
* tests/packages.scm ("package-source-derivation, snippet"): Remove
'store' parameter of 'fetch' and change it to use 'interned-file'
instead of 'add-to-store'.
* gnu/packages/bootstrap.scm (bootstrap-origin)[boot]: Remove 'store'
parameter.
monads: Move '%store-monad' and related procedures where they belong.
This turns (guix monads) into a generic module for monads, and moves the
store monad and related monadic procedures in their corresponding
module.
* guix/monads.scm (store-return, store-bind, %store-monad, store-lift,
text-file, interned-file, package-file, package->derivation,
package->cross-derivation, origin->derivation, imported-modules,
compiled, modules, built-derivations, run-with-store): Move to...
* guix/store.scm (store-return, store-bind, %store-monad, store-lift,
text-file, interned-file): ... here.
(%guile-for-build): New variable.
(run-with-store): Moved from monads.scm. Remove default value for
#:guile-for-build.
* guix/packages.scm (default-guile): Export.
(set-guile-for-build): New procedure.
(package-file, package->derivation, package->cross-derivation,
origin->derivation): Moved from monads.scm.
* guix/derivations.scm (%guile-for-build): Remove.
(imported-modules): Rename to...
(%imported-modules): ... this.
(compiled-modules): Rename to...
(%compiled-modules): ... this.
(built-derivations, imported-modules, compiled-modules): New
procedures.
* gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/dbus.scm,
gnu/services/dmd.scm, gnu/services/networking.scm,
gnu/services/ssh.scm, gnu/services/xorg.scm, gnu/system/install.scm,
gnu/system/linux-initrd.scm, gnu/system/shadow.scm, guix/download.scm,
guix/gexp.scm, guix/git-download.scm, guix/profiles.scm,
guix/svn-download.scm, tests/monads.scm: Adjust imports accordingly.
* guix/monad-repl.scm (default-guile-derivation): New procedure.
(store-monad-language, run-in-store): Use it.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Add explicit
'set-guile-for-build' call.
* guix/scripts/archive.scm (derivation-from-expression): Likewise.
* guix/scripts/build.scm (options/resolve-packages): Likewise.
* guix/scripts/environment.scm (guix-environment): Likewise.
* guix/scripts/system.scm (guix-system): Likewise.
* doc/guix.texi (The Store Monad): Adjust module names accordingly.
gnu: Add zerofree.
* gnu/packages/linux.scm (zerofree): New variable.
gnu: e2fsprogs: Install libext2fs.
* gnu/packages/linux.scm (e2fsprogs)[source]: Add 'snippet'.
[arguments]: Add --enable-elf-shlibs to #:configure-flags.
Add #:make-flags.
gnu: Add GLEW.
* gnu/packages/gl.scm (glew): New variable.
services: user-processes: Really honor the grace delay.
* gnu/services/base.scm (user-processes-service): Change #:grace-delay
default value to 4. Define 'sleep*' and use it.
system: Add iw to '%base-packages'.
* gnu/system.scm (%base-packages): Add IW.
gnu: wireless-tools: Describe it as deprecated.
* gnu/packages/linux.scm (wireless-tools)[description]: Explain that it
is deprecated in favor of 'iw'.
gnu: guix: Update snapshot.
* gnu/packages/package-management.scm (guix-devel): Update snapshot.
Remove now-unneeded sub-module stuff in the 'bootstrap' phase.
gnu: Add QPDF.
* gnu/packages/pdf.scm (qpdf): New variable.
gnu: Add iw.
* gnu/packages/linux.scm (iw): New variable.
gnu: libnl: Update to 3.2.25.
* gnu/packages/linux.scm (libnl): Update to 3.2.25.
services: user-processes: Write debugging messages to the output port.
* gnu/services/base.scm (user-processes-service): Write "sending all
processes..." message to the current output port, not to /dev/console.