gnu: xlockmore: Update to 5.45.
* gnu/packages/xlockmore.scm (xlockmore): Update to 5.45.
[arguments]: Add #:configure-flags.
gnu: evince: Add inputs.
* gnu/packages/gnome.scm (evince): Add 'dconf' and 'libcanberra' inputs.
Remove custom phase 'set-mime-search-path which is now handled by
glib-or-gtk-build-system.
gnu: libcanberra: Add default sounds support.
* gnu/packages/libcanberra.scm (libcanberra): Add input
'sound-theme-freedesktop'. Add "libcanberra-sound-theme-freedesktop.patch"
and related phase 'patch-default-sounds-directory to patch the default
sounds directory.
gnu: dconf: Add dconf.
* gnu/packages/gnome.scm (dconf): New variable.
guix: build/glib-or-gtk-build-system: Add support for GIO and XDG theming.
* guix/build/glib-or-gtk-build-system.scm (data-directories): Rename
'schemas-directories' to 'data-directories' and add support for XDG theming
data.
* guix/build/glib-or-gtk-build-system.scm (gio-module-directories): New
function.
* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Update names to
reflect that we are dealing with more types of data and not only with
schemas. Add handling of GIO modules.
* guix/build-system/glib-or-gtk.scm (lower): Import the 'bin' output of GLib
instead of 'out'. This was an error since we need the program
'glib-compile-schemas'. Update the description.
gnu: ffmpeg: Update to 2.5.3
* gnu/packages/video.scm (ffmpeg): Update to version 2.5.3.
gnu: ffmpeg-2.2: Update to 2.2.11
* gnu/packages/video.scm (ffmpeg-2.2): Update to version 2.2.11.
gnu: gp2c: Update to 0.0.9pl2.
* gnu/packages/algebra.scm (gp2c): Update to 0.0.9pl2.
gnu: pari-gp: Update to 2.7.2.
* gnu/packages/algebra.scm (pari-gp): Update to 2.7.2.
derivations: Use a set for 'substitution-oracle'.
* guix/derivations.scm (substitution-oracle): Use sets instead of lists.
derivations: Use sets for 'derivations-prerequisites'.
This yields a 46% improvement in 'derivation-prerequisites' invocations
on the Emacs derivation.
* guix/derivations.scm (derivation-prerequisites): Add 'input-set'
variable, and use it in iterations.
Add (guix sets).
* guix/sets.scm, tests/sets.scm: New files.sets
* Makefile.am (MODULES, SCM_TESTS): Add them.
gnu: qt: Add more inputs.
* gnu/packages/qt.scm (qt): Add expat, pciutils, libxcomposite, libxcursor,
libxfixes, libxinerama, libxml2, libxrandr, libxslt, libxtst, mtdev, nss,
pcre, sqlite, eudev to 'inputs'.
Add bison, flex, gperf, ninja, python-2, ruby, which to 'native-inputs'.
gnu: qt: Update to 5.4.0.
* gnu/packages/qt.scm (qt): Update to 5.4.0.
[origin]: Add snippet.
gnu: Add ninja.
* gnu/packages/ninja.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
gnu: Add nss.
* gnu/packages/patches/nss-pkgconfig.patch: New file.
* gnu-system.scm (dist_patch_DATA): Add it.
* gnu/packages/gnuzilla.scm (nss): New variable.
gnu: Move mozjs and nspr to (gnu packages gnuzilla).
* gnu/packages/polkit.scm (mozjs, nspr): Move to...
* gnu/packages/gnuzilla.scm (mozjs, nspr): ... here. New variables.
gnu: linux-libre: Update to 3.18.2
* gnu/packages/linux.scm (linux-libre): Update to version 3.18.2.
derivations: Add 'substitution-oracle' and use it.
This makes 'guix environment PACKAGE' significantly faster when
substitutes are enabled. Before that, it would lead to many invocations
of 'guix substitute-binary', one per 'derivation-prerequisites-to-build'
call. Now, all these are replaced by a single invocation.
* guix/derivations.scm (derivation-output-paths, substitution-oracle):
New procedures.
(derivation-prerequisites-to-build): Replace #:use-substitutes? with
#:substitutable?. Remove the local 'derivation-output-paths' and
'substitutable?'.
* guix/ui.scm (show-what-to-build): Add 'substitutable?'. Pass it to
'derivation-prerequisites-to-build'.
[built-or-substitutable?]: Use it instead of 'has-substitutes?'.
* tests/derivations.scm ("derivation-prerequisites-to-build and
substitutes"): Use #:substitutable? instead of #:use-substitutes?.
derivations: Add 'derivation-output-names'.
* guix/derivations.scm (derivation-output-names): New procedure.
(derivation-prerequisites-to-build): Use it for #:outputs.
(map-derivation): Likewise.
* tests/derivations.scm ("derivation-output-names"): New test.