gnu: linux-libre: Update to 4.6.
* gnu/packages/linux.scm (linux-libre): Update to 4.6.
* gnu/packages/linux-libre-4.6-x86_64.conf,
gnu/packages/linux-libre-4.6-i686.conf: New files.
* gnu/packages/linux-libre-4.5-x86_64.conf,
gnu/packages/linux-libre-4.5-i686.conf: Delete files.
* Makefile.am (KCONFIGS): Update accordingly.
build: Fix 'AM_V_at' typo.
* Makefile.am (hydra-jobs.scm): Fix 'AM_V_at' typo.
Merge branch 'master' into gnome-updates
build: Add 'run-system-tests.scm'.
This file was meant to be added as part of
commit e9f693d06f94bd96488c3910dba6504f94a6b6f9.
* build-aux/run-system-tests.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
tests: Add whole-system test.
* gnu/system/vm.scm (virtualized-operating-system): Export.
* gnu/tests/base.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* Makefile.am (check-system): New target.
build: Preserve stderr for shell tests.
Fixes a regression introduced in
a9edb211e733b8b34e67ec3b4450567e9376986f where the .log files of the .sh
tests would not contain stderr.
* build-aux/test-env.in: Redirect stderr only when --quiet-stderr is
passed.
* Makefile.am (SCM_LOG_DRIVER): Add --quiet-stderr.
utils: Move combinators to (guix combinators).
* guix/utils.scm (compile-time-value, memoize, fold2)
(fold-tree, fold-tree-leaves): Move to...
* guix/combinators: ... here. New file.
* tests/utils.scm ("fold2, 1 list", "fold2, 2 lists")
(fold-tree tests): Move to...
* tests/combinators.scm: ... here. New file.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* gnu/packages.scm, gnu/packages/bootstrap.scm,
gnu/services/herd.scm, guix/build-system/gnu.scm,
guix/build-system/python.scm, guix/derivations.scm,
guix/gnu-maintenance.scm, guix/import/elpa.scm,
guix/scripts/archive.scm, guix/scripts/build.scm,
guix/scripts/graph.scm, guix/scripts/lint.scm,
guix/scripts/size.scm, guix/scripts/substitute.scm,
guix/serialization.scm, guix/store.scm, guix/ui.scm: Adjust imports
accordingly.
build: 'assert-' targets now depend on the .go files.
* Makefile.am (assert-binaries-available)
(assert-final-inputs-self-contained): Add dependency on $(GOBJECTS).
build: Move 'Makefile' fragments to subdirectories.
This follows a convention used by some other GNU packages like Autoconf,
Bison, Coreutils, and Gnulib.
* doc.am: Rename to ...
* doc/local.mk: ... this.
* emacs.am: Rename to ...
* emacs/local.mk: ... this.
* gnu-system.am: Rename to ...
* gnu/local.mk: ... this.
* daemon.am: Rename to ...
* nix/local.mk: ... this.
* Makefile.am: Adapt to them.
* doc/guix.texi (Porting to a New Platform): Adapt documentation.
* guix/config.scm.in (%state-directory, %config-directory): Adapt comments.
* emacs/guix-config.el.in (guix-config-state-directory): Likewise.
hydra: Add 'hydra-jobs.scm' target to compute the Hydra jobs.
* build-aux/hydra/evaluate.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
build: Distribute 'build-aux/test-driver.scm'.
* Makefile.am (EXTRA_DIST): Add 'build-aux/test-driver.scm'.
build: Add a Guile custom test driver using SRFI-64.
Before that '.log' files for scheme tests were fragmented and not
included in test-suite.log. This unifies the semantics of SRFI-64 API
with Automake test suite.
* build-aux/test-driver.scm: New file.
* Makefile.am (SCM_LOG_DRIVER, AM_SCM_LOG_DRIVER_FLAGS): New variables.
(SCM_LOG_COMPILER, AM_SCM_LOG_FLAGS): Delete variables.
(AM_TESTS_ENVIRONMENT): Set GUILE_AUTO_COMPILE to 0.
* test-env.in: Silence guix-daemon.
* doc/guix.texi (Running the Test Suite): Describe how to display the
detailed results. Bug reports require only 'test-suite.log' file.
* tests/base32.scm, tests/build-utils.scm, tests/builders.scm,
tests/challenge.scm, tests/cpan.scm, tests/cpio.scm, tests/cran.scm,
tests/cve.scm, tests/derivations.scm, tests/elpa.scm,
tests/file-systems.scm, tests/gem.scm, tests/gexp.scm,
tests/gnu-maintenance.scm, tests/grafts.scm, tests/graph.scm,
tests/gremlin.scm, tests/hackage.scm, tests/hash.scm,
tests/import-utils.scm, tests/lint.scm, tests/monads.scm, tests/nar.scm,
tests/packages.scm, tests/pk-crypto.scm, tests/pki.scm,
tests/profiles.scm, tests/publish.scm, tests/pypi.scm,
tests/records.scm, tests/scripts-build.scm, tests/scripts.scm,
tests/services.scm, tests/sets.scm, tests/size.scm, tests/snix.scm,
tests/store.scm, tests/substitute.scm, tests/syscalls.scm,
tests/system.scm, tests/ui.scm, tests/union.scm, tests/upstream.scm,
tests/utils.scm: Don't exit at the end of test groups.
* tests/containers.scm: Likewise. Use 'test-skip' instead of exiting
with error code 77.
doc: Add "lightweight desktop" OS config example.
* gnu/system/examples/desktop.tmpl (packages): Remove XFCE and
RATPOISON.
(services): Add 'gnome-desktop-service' and 'xfce-desktop-service'.
* gnu/system/examples/lightweight-desktop.tmpl: New file.
* Makefile.am (EXAMPLES): Add it.
* doc.am (OS_CONFIG_EXAMPLES_TEXI): Add
doc/os-config-lightweight-desktop.texi.
* gnu/system/install.scm (/etc/configuration-files)[directory]: Add
lightweight-desktop.tmpl.
build: Protect against misconfiguration of localstatedir.
Suggested by Jookia <166291@gmail.com>.
* m4/guix.m4 (GUIX_CURRENT_LOCALSTATEDIR, GUIX_CHECK_LOCALSTATEDIR): New
macros.
* config-daemon.ac: Use 'GUIX_CHECK_LOCALSTATEDIR'.
* Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Add --localstatedir.
* doc/guix.texi (Requirements): Mention --localstatedir.
(The Store): Mention LOCALSTATEDIR as such.
Merge branch 'master' into security-updates
gnu: linux-libre: Update to 4.5, while preserving linux-libre-4.4.
* gnu/packages/linux-libre-x86_64.conf: Rename to ...
* gnu/packages/linux-libre-4.4-x86_64.conf: ... this.
* gnu/packages/linux-libre-i686.conf: Rename to ...
* gnu/packages/linux-libre-4.4-i686.conf: ... this.
* gnu/packages/linux-libre-4.5-i686.conf,
gnu/packages/linux-libre-4.5-x86_64.conf: New files.
* Makefile.am (KCONFIGS): Update accordingly.
* gnu/packages/linux.scm (linux-libre): Update to 4.5.
(linux-libre-4.4): New variable.
build: Add Ant build system.
* guix/build-system/ant.scm: New file.
* guix/build/ant-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document ant-build-system.
upstream: Fix 'signature-urls' coalescing.
Previously, the resulting 'signature-urls' would contain N times the
same URL.
* guix/upstream.scm (coalesce-sources): Fix TWO in 'signature-urls'.
* tests/upstream.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
build: Build (guix import github) only when Guile-JSON is available.
Reported by Justus Winter <justus@gnupg.org>.
* Makefile.am (MODULES): Add guix/import/github.scm only when
HAVE_GUILE_JSON.
import: Add github-updater.
* guix/import/github.scm: New file.
* guix/scripts/refresh.scm (%updaters): Add %GITHUB-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention it.
* Makefile.am (MODULES): Add gnu/import/github.scm.