gnu: glibc: Use 'modify-phases'.
* gnu/packages/base.scm (glibc)[arguments]: Use 'modify-phases' instead
of 'alist-cons-before'.
build-system/gnu: Use monotic time to measure elapsed time.
* guix/build/gnu-build-system.scm (gnu-build)[elapsed-time]: New
procedure.
Use it, and use (current-time time-monotonic) instead
of (gettimeofday). Show one digit after the comma for the elapsed
time.
gnu: ncurses: Really install headers to OUT/include.
* gnu/packages/ncurses.scm (ncurses)[arguments]: Pass --enable-overwrite.
gnu: Use 'install-file' instead of 'mkdir-p' and 'copy-file' in obvious cases.
* gnu/packages/bioinformatics.scm (bedtools, bowtie, bwa, hisat, samtools,
plink, star): Use 'install-file' instead of 'mkdir-p' + 'copy-file'.
* gnu/packages/check.scm (catch-framework): Likewise.
* gnu/packages/code.scm (global): Likewise.
* gnu/packages/emacs.scm (magit-svn, haskell-mode, emacs-pdf-tools):
Likewise.
* gnu/packages/engineering.scm (fastcap, fasthenry): Likewise.
* gnu/packages/gnuzilla.scm (nss): Likewise.
* gnu/packages/guile.scm (guile-minikanren): Likewise.
* gnu/packages/java.scm (swt): Likewise.
* gnu/packages/make-bootstrap.scm (%static-binaries): Likewise.
* gnu/packages/maths.scm (lpsolve): Likewise.
* gnu/packages/mp3.scm (mpc123): Likewise.
* gnu/packages/ninja.scm (ninja): Likewise.
* gnu/packages/python.scm (python-numpy, python-pyparsing): Likewise.
* gnu/packages/screen.scm (dtach): Likewise.
* gnu/packages/synergy.scm (synergy): Likewise.
* gnu/packages/textutils.scm (utf8proc): Likewise.
* gnu/packages/version-control.scm (git-test-sequence): Likewise.
* gnu/packages/wicd.scm (wicd): Likewise.
utils: Add 'install-file'.
* guix/build/utils.scm (install-file): New procedure.
gnu: glibc: Do not copy static Bash binary to bin/.
This avoids problems when installing 'glibc' in a profile, where glibc's
limited 'bash' would take precedence over the valid 'bash'.
* gnu/packages/base.scm (glibc)[arguments]: Do not copy STATIC-BASH to
OUT/bin. Instead, simply refer to it directly.
[inputs]: Use STATIC-BASH instead of BASH-LIGHT.
* gnu/packages/commencement.scm (static-bash-for-glibc): Likewise.
(glibc-final)[arguments]: Add STATIC-BASH-FOR-GLIBC to
#:allowed-references.
(gcc-final)[arguments]: Likewise.
[native-inputs]: Add "static-bash".
gnu: ncurses: Remove obsolete hack.
* gnu/packages/ncurses.scm (ncurses)[arguments]: Remove obsolete Solaris
hack.
gnu: ncurses: Rework trick to avoid reference to the bootstrap bash.
This removes reliance on the availability of 'bin/sh' in glibc.
* gnu/packages/ncurses.scm (ncurses): Remove 'configure-phase'. Add
'remove-shebang-phase'.
[arguments]: Remove distinction between cross builds and native builds. Use
'modify-phases'. Add 'remove-unneeded-shebang' phase.
gnu: ncurses: Upgrade to 6.0.
* gnu/packages/ncurses.scm (ncurses): Upgrade to 6.0. Change library names to
'.so.6'.
gnu: binutils: Upgrade to 2.25.1.
* gnu/packages/base.scm (binutils): Upgrade to 2.25.1.
gnu: Add 'bash-static'.
* gnu/packages/bash.scm (static-bash): New variable.
download: Keep only 2 store items for all the downloads.
This significantly reduces churn in the store. It also reduces run time
of 'guix build inkscape -Sd' by ~10%.
* guix/download.scm (url-fetch)[mirror-file]: New variable.
[builder]: Get URL from the "guix download url" env. var. Get the mirrors
from MIRROR-FILE. Pass #:script-name and #:env-vars to 'gexp->derivation'.
gexp: Add #:script-name parameter to 'gexp->derivation'.
* guix/gexp.scm (gexp->derivation): Add #:script-name parameter.
* doc/guix.texi (G-Expressions): Document it.
monads: Inline the procedure returned by liftN.
* guix/monads.scm (define-lift): Turn into a macro that open-codes the result
of its lift.
gnu: shadow: Update to 4.2.1.
* gnu/packages/admin.scm (shadow): Update to 4.2.1.
[source]: Use the release tarball.
gnu: Add abduco.
* gnu/packages/abduco.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu: Add cabal-install.
* gnu/packages/haskell.scm (cabal-install): New variable.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
gnu: conky: Fix license.
* gnu/packages/conky.scm (conky)[license]: Set to LICENSE:GPL3+.
gnu: services: Add nginx-service.
* gnu/services/web.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* guix.texi ("Web Services"): New section.
import: Add Ruby gem importer.
* gnu/scripts/import.scm (importers): Add "gem".
* gnu/import/gem.scm: New file.
* gnu/scripts/import/gem.scm: New file.
* Makefile.am (MODULES): Add them.
* guix.texi ("invoking guix import"): Document it.