emacs: Allow list functions to deal with nil values.
* emacs/guix-list.el (guix-list-get-tabulated-entry): Call functions returning
column value even for nil values.
(guix-list-get-one-line): Adjust for accepting nil argument.
guix package: Add '--switch-generation' option.
* guix/scripts/package.scm (switch-to-generation): New procedure.
(switch-to-previous-generation): Use it.
(guix-package): Adjust for '--switch-generation' option.
* tests/guix-package.sh: Test it.
* doc/guix.texi (Invoking guix package): Document it.
profiles: Add 'relative-generation'.
* guix/profiles.scm: (relative-generation): New procedure.
(previous-generation-number): Use it.
profiles: Add condition types for profiles and generations.
Suggested by Ludovic Courtès.
* guix/profiles.scm (&profile-error, &profile-not-found-error,
&missing-generation-error): New condition types.
* guix/ui.scm (call-with-error-handling): Handle new types.
* guix/scripts/package.scm (roll-back, guix-package): Raise
'&profile-not-found-error' where needed.
gnu: libarchive: Apply fixes including for CVE-2013-0211.
* gnu/packages/patches/libarchive-CVE-2013-0211.patch,
gnu/packages/patches/libarchive-fix-lzo-test-case.patch,
gnu/packages/patches/libarchive-mtree-filename-length-fix.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/backup.scm (libarchive)[source]: Add patches.
gnu: Add transfig.
* gnu/packages/xfig.scm (transfig): New variable.
gnu: Add xfig.
* gnu/packages/xfig.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
gnu: libjpeg: Upgrade to version 9a.
* gnu/packages/image.scm (libjpeg): Upgrade to version 9a.
gnu: Add imake.
* gnu/packages/xorg.scm (imake): New variable.
syscalls: Accept ENOENT in the 'swapoff' test.
Fixes <http://bugs.gnu.org/18690>.
Reported by Philip Woods <elzairthesorcerer@gmail.com>.
* tests/syscalls.scm ("swapoff, EINVAL/EPERM"): Rename to...
("swapoff, ENOENT/EINVAL/EPERM"): ... this. Add ENOENT to the list of
possible return values.
Augment '.dir-locals.el' with bug-reference-mode settings.
gnu: Add perl-zip.
* gnu/packages/zip.scm (perl-zip): New variable.
gnu: openssh: Update to 6.7p1.
* gnu/packages/ssh.scm (openssh): Update to 6.7p1.
Add copyright line to gnuzilla.scm.
* gnu/packages/gnuzilla.scm: Add copyright line for Mark H Weaver, which
should have been added in 74c7af9 (gnu: icecat: Update to 31.1.1).
scripts: Add 'environment' command.
* guix/scripts/environment.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi ("Invoking guix environment"): New node.
build: Make sure tests/guix-package.sh doesn't leave anything behind it.
Fixes a regression introduced in commit 300868ba.
* tests/guix-package.sh: Move 'module_dir' definition to the top, and
"rm -rf" it from the top-most 'trap'. Remove second use of 'trap'.
doc: Add 'operating-system' reference.
* doc/guix.texi (Using the Configuration System): Add xref to
"operating-system Reference".
(operating-system Reference): New section.
(Networking Services): Add xref to it.
doc: Use @deftp for 'build-machine'.
* doc/guix.texi (Daemon Offload Setup): Use @deftp for 'build-machine'.
gnu: icu4c: Correct error in the binaries' runpath
* gnu/packages/icu4c.scm (icu4c): Apply the RUNPATH to the binaries,
instead of the libs
ui: Move 'show-manifest-transaction' from (guix profiles).
* guix/profiles.scm: Do not use (guix ui) module.
(right-arrow, manifest-show-transaction): Move and rename to...
* guix/ui.scm (right-arrow, show-manifest-transaction): ... here.
* tests/profiles.scm ("manifest-show-transaction"): Move to...
* tests/ui.scm ("show-manifest-transaction"): ... here.
(guile-1.8.8, guile-2.0.9): New variables.
* emacs/guix-main.scm (process-package-actions): Rename
'manifest-show-transaction' to 'show-manifest-transaction'.
* guix/scripts/package.scm (guix-package): Likewise.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>