gnu: gnutls: Move man3 pages to "doc" output.
* gnu/packages/gnutls.scm (gnutls)[arguments]: Add #:phases.
gnu: qt-4: Remove reference from "out" to "doc".
* gnu/packages/qt.scm (qt-4)[arguments]: Remove '-docdir' configure flag.
Add 'move-doc' phase.
gnu: qt-4: Use a more standard directory layout.
* gnu/packages/qt.scm (qt-4)[arguments]: Pass -datadir, -importdir,
-plugindir, and -translationdir.
gnu: qt-4: Use 'modify-phases'.
* gnu/packages/qt.scm (qt-4)[arguments]: Use 'modify-phases' instead of
'alist-replace'.
gnu: cups-filter: Install backends and filters under lib/cups.
This ensures that they are stripped during the 'strip' phase, thereby removing
references to GCC and linux-libre-headers that would otherwise be found in
debugging symbols.
* gnu/packages/cups.scm (cups-filters)[source]: Change pkgbackenddir and
pkgfilterdir to $(PREFIX)/lib/cups/{filter,backend}.
(cups)[arguments]: Adjust accordingly.
gnu: mysql: Remove unnecessary binaries.
This saves ~42 MiB on x86_64.
* gnu/packages/databases.scm (mysql)[arguments]: Add 'remove-extra-binaries'
phase.
gnu: mysql: Strip references and GCC and other build-time dependencies.
* gnu/packages/databases.scm (mysql)[arguments]: Add 'strip-extra-references'
phase.
gnu: mutt: Don't retain reference to GCC.
* gnu/packages/patches/mutt-store-references.patch: New file.
* gnu/packages/mail.scm (mutt)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
gnu: ghostscript: Add "doc" output.
* gnu/packages/ghostscript.scm (ghostscript)[source](snippet): New field.
[outputs]: New field.
[arguments]: Add 'remove-doc-reference' phase.
derivations: Add #:substitutable?, distinguished from #:local-build?.
Fixes <http://bugs.gnu.org/18747>.
* guix/derivations.scm (substitutable-derivation?): Rewrite to check for
"allowSubstitutes".
(derivation): Add #:substitutable? parameter.
[user+system-env-vars]: Honor it.
(build-expression->derivation): Add #:substitutable? and honor it.
* guix/gexp.scm (gexp->derivation): Likewise.
* tests/derivations.scm ("derivation-prerequisites-to-build and substitutes,
non-substitutable build"): Use #:substitutable? instead of #:local-build?.
("substitutable-derivation?", "derivation-prerequisites-to-build and
substitutes, local build"): New tests.
* guix/download.scm (url-fetch): Adjust comment.
* guix/git-download.scm (git-fetch): Likewise.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Use #:substitutable?
instead of #:local-build?.
* doc/guix.texi (Derivations, G-Expressions): Adjust accordingly.
Merge branch 'nix'.
This is a squashed commit of the following:
commit 0dccab9f417b406f5d4aedc81900fc7b2f16c9f6
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 2 00:30:16 2015 +0200
Typo
commit 2cd28517b13524c242c7758783b0b2d8250fdded
Author: Ludovic Courtès <ludo@gnu.org>
Date: Wed Jul 1 14:56:34 2015 +0200
Preserve supplementary groups of build users
The following patch is an attempt to address this bug (see
<http://bugs.gnu.org/18994>) by preserving the supplementary groups of
build users in the build environment.
In practice, I would expect that supplementary groups would contain only
one or two groups: the build users group, and possibly the “kvm” group.
[Changed &at(0) to data() and removed tabs - Eelco]
commit 6e38685ef65284093df79ebe7378bac33b0e7e5d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Tue Jun 30 21:41:26 2015 +0200
GC: Handle ENOSPC creating/moving to the trash directory
Issue #564.
commit 5e0a9ae2e25a1016389f4893a6ed6682aadcf51d
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Jun 22 15:54:55 2015 +0200
Use posix_fallocate to create /nix/var/nix/db/reserved
commit 4e5ab98d6d14f8b0e3bd1d77b2f4f2354e7a49a8
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Mon Jun 22 15:47:40 2015 +0200
Make /nix/var/nix/db/reserved bigger
Issue #564.
commit 60bda60fc06135aa97a93301b1a9e2270768f5b3
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Wed Jun 10 16:17:06 2015 +0200
Export outputPaths function
This is useful for the new hydra-queue-runner.
commit 5dfea34048aa8541f20aeb2fbcd163561b609a49
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jul 2 22:51:33 2015 +0200
Use std::vector::data()
commit 2459458bc8257734ca78cb7a2db3df20bd730ec0
Author: Eelco Dolstra <eelco.dolstra@logicblox.com>
Date: Thu Jun 4 16:04:41 2015 +0200
Allow substitutes for builds that have preferLocalBuild set
Not substituting builds with "preferLocalBuild = true" was a bad idea,
because it didn't take the cost of dependencies into account. For
instance, if we can't substitute a fetchgit call, then we have to
download/build git and all its dependencies.
Partially reverts 5558652709f27e8a887580b77b93c705659d7a4b and adds a
new derivation attribute "allowSubstitutes" to specify whether a
derivation may be substituted.
scripts: environment: Return the exit status of the command.
* guix/scripts/environment.scm (guix-environment): Return the exit
status of the command.
gnu: gnupg: Enable TLS support.
* gnu/packages/gnupg.scm (gnupg)[native-inputs]: Add pkg-config.
[inputs]: Add gnutls.
(gnupg-2.0, gnupg-1)[native-inputs]: Override inherited value to be '().
gnu: gnupg: Update to 2.1.6.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.6.
gnu: Add WarpedLMM.
* gnu/packages/bioinformatics.scm (python2-warpedlmm): New variable.
gnu: r: Set default pager.
* gnu/packages/statistics.scm (r)[arguments]: Add phase "set-default-pager" to
avoid "false" as a default pager.
environment: Define 'GUIX_ENVIRONMENT'.
* guix/scripts/environment.scm (create-environment): Define 'GUIX_ENVIRONMENT'.
* doc/guix.texi (Invoking guix environment): Document it.
* gnu/system/shadow.scm (default-skeletons): Adjust 'PS1' depending on whether
'GUIX_ENVIRONMENT' is defined.
doc: Mention .bashrc vs. .bash_profile for 'guix environment'.
* doc/guix.texi (Invoking guix environment): Add footnote about .bashrc
vs. .bash_profile.
environment: Improve error reporting for '-l'.
This fixes two problems:
1. Load errors would print an ugly backtrace.
2. When FILE was an absolute name, 'load' was passed an incorrect file
name.
* guix/scripts/environment.scm (options/resolve-packages): Use 'load*' instead
of 'load'.
environment: For --ad-hoc, allow users to specify an output.
* guix/scripts/environment.scm (package+propagated-inputs): Add 'output'
parameter. Use it in return value.
(options/resolve-packages): Use 'append-map' instead of 'map'. For 'load'
and 'expression', return all the outputs of the resulting package. For
'package', use 'specification->package+output' instead of
'specification->package'.
(guix-environment): Adjust uses of PACKAGES accordingly.
* doc/guix.texi (Invoking guix environment): Document it.
* tests/guix-environment.sh: Add test for --ad-hoc guile-bootstrap:out.