jackhill/guix/guix.git
10 years agognu: Add Bogofilter.
Ludovic Courtès [Tue, 1 Apr 2014 20:21:18 +0000 (22:21 +0200)]
gnu: Add Bogofilter.

* gnu/packages/mail.scm (bogofilter): New variable.

10 years agognu: Add guile-json.
Cyril Roelandt [Mon, 31 Mar 2014 18:18:52 +0000 (20:18 +0200)]
gnu: Add guile-json.

* gnu/packages/guile.scm (guile-json): New variable.

10 years agoUse 'signature-case' in (guix nar) and 'substitute-binary'.
Ludovic Courtès [Mon, 31 Mar 2014 21:47:02 +0000 (23:47 +0200)]
Use 'signature-case' in (guix nar) and 'substitute-binary'.

* guix/nar.scm (restore-file-set)[assert-valid-signature]: Rewrite in
  terms of 'signature-case'.
* guix/scripts/substitute-binary.scm (narinfo-signature->canonical-sexp):
  Call 'leave' instead of 'raise' when SIGNATURE is invalid.
  (&nar-signature-error, &nar-invalid-hash-error): Remove.
  (assert-valid-signature): Add 'narinfo' parameter; remove 'port'.
  Rewrite in terms of 'signature-case' and 'leave'.  Mention NARINFO's
  URI in error messages.  Adjust caller.
  (narinfo-sha256): New procedure.
  (assert-valid-narinfo): Use it.
  (valid-narinfo?): Rewrite using 'narinfo-sha256' and
  'signature-case'.
* tests/substitute-binary.scm (assert-valid-signature,
  test-error-condition): Remove.
  ("corrupt signature data", "unauthorized public key", "invalid
  signature"): Remove.

10 years agopki: Add 'signature-case' macro.
Ludovic Courtès [Mon, 31 Mar 2014 21:34:20 +0000 (23:34 +0200)]
pki: Add 'signature-case' macro.

* guix/pki.scm (%signature-status): New procedure.
  (signature-case): New macro.
* tests/pki.scm (%secret-key, %alternate-secret-key): New variables.
  ("signature-case valid-signature", "signature-case invalid-signature",
  "signature-case hash-mismatch", "signature-case unauthorized-key",
  "signature-case corrupt-signature"): New tests.

10 years agosubstitute-binary: Notify of valid signatures.
Ludovic Courtès [Mon, 31 Mar 2014 19:58:21 +0000 (21:58 +0200)]
substitute-binary: Notify of valid signatures.

* guix/scripts/substitute-binary.scm (assert-valid-narinfo): Add
  #:verbose? parameter; when true, write "found valid signature".
  (valid-narinfo?): Pass #:verbose? #f.

10 years agoguix archive: Make sure $sysconfdir/guix exists in '--authorize'.
Ludovic Courtès [Mon, 31 Mar 2014 19:53:51 +0000 (21:53 +0200)]
guix archive: Make sure $sysconfdir/guix exists in '--authorize'.

* guix/scripts/archive.scm (authorize-key): Add 'mkdir-p' call.
  Reported by Alex Sassmannshausen <alex.sassmannshausen@gmail.com>.

10 years agodoc: fix typo.
Alex Sassmannshausen [Mon, 31 Mar 2014 18:08:26 +0000 (20:08 +0200)]
doc: fix typo.

* doc/guix.texi (Substitutes): add a missing 's'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
10 years agognu: Remove unused lambda arguments and prefer separate phases over
Eric Bavier [Sun, 30 Mar 2014 23:09:10 +0000 (18:09 -0500)]
gnu: Remove unused lambda arguments and prefer separate phases over
augmented phases.

* gnu/packages/compression.scm (sharutils) [arguments]: Remove unused
  lambda args.
* gnu/packages/gl.scm (mesa) [arguments]: Same
* gnu/packages/fltk.scm [arguments]: Same.  Substitute const check
  phase with #:tests? #f.  Add pre-configure phase.
* gnu/packages/ghostscript.scm (ghostscript) [arguments]: Put makefile
  patches in separate phase.  Put so steps oinseparate phases.
* gnu/packages/glib.scm (gobject-introspection) [arguments]: Remove
  unused lambda args.  Put patches in pre-configure phase.
* gnu/packages/gnupg.scm (gnupg) [arguments]: Put patch in
  pre-configure phase.
  (pius) [arguments]: Delete const #t configure and build phases.
  (signing-party) [arguments]: Factor patches into post-unpack phase.
  (paperkey) [arguments]: Remove unused lambda args.  Factor out
  patches into pre-check phase.
* gnu/packages/icu4c.scm [arguments]: Change source dir after standard
  unpack phase.  Factor configure patches into pre-configure phase.
* gnu/packages/lsof.scm [arguments]: Remove unused lambda args.
  Remove unnecessary apply.
* gnu/packages/lvm.scm (lvm2) [arguments]: Factor out patches into
  pre-configure phase.
* gnu/packages/libtiff.scm [arguments]: Same
* gnu/packages/maths.scm (hdf5) [arguments]: Same
* gnu/packages/gtk.scm (gtk+-2) [arguments]: Same
* gnu/packages/mp3.scm (libmad) [arguments]: Same
  (id3lib) [arguments]: Same
* gnu/packages/python.scm (python-2) [arguments]: Same
* gnu/packages/texlive.scm (texlive) [arguments]: Same
* gnu/packages/pretty-print.scm (a2ps) [arguments]: Same
  (trueprint) [arguments]: Same
  (source-highlight) [arguments]: Same.  Remove unused lambda args.
* gnu/packages/netpbm.scm [arguments]: Remove unused lambda args.
  Factor out test patches into pre-check phase.  Condense calls to
  substitute*
* gnu/packages/openldap.scm [arguments]: Factor out libtool copy into
  post-configure phases. [synopsis] Remove package name.
* gnu/packages/ssh.scm (openssh) [arguments]: Factor out patches into
  separate phases.
* gnu/packages/tcsh.scm [arguments]: Factor out test patches into
  pre-check phase.
* gnu/packages/version-control.scm (git) [arguments]: Factor out
  patches into post-configure phase.
* gnu/packages/vim.scm [arguments]: Same. [synopsis] Remove package
  name.
* gnu/packages/vpn.scm (openconnect) [arguments]: Put configure flags
  in #:configure-flags

10 years agooffload: Exit with code 100 upon build failures.
Ludovic Courtès [Mon, 31 Mar 2014 08:57:28 +0000 (10:57 +0200)]
offload: Exit with code 100 upon build failures.

* guix/scripts/offload.scm (transfer-and-offload): Exit with code 100
  upon build failure.

10 years agodoc: Document substitutes.
Ludovic Courtès [Sun, 30 Mar 2014 21:37:46 +0000 (23:37 +0200)]
doc: Document substitutes.

* doc/guix.texi (Invoking guix-daemon): Add cross-reference to
  "Substitutes".
  (Features): Remove footnote about unauthenticated substitutes.  Link
  to "Substitutes".
  (Substitutes): New node.
  (Invoking guix build): Link to "Substitutes".
  (Packaging Guidelines): Likewise.

10 years agoAdd hydra.gnu.org's narinfo signing public key.
Ludovic Courtès [Sun, 30 Mar 2014 21:34:20 +0000 (23:34 +0200)]
Add hydra.gnu.org's narinfo signing public key.

* hydra.gnu.org.pub: New file.
* Makefile.am (pkgdata_DATA): New variable.

10 years agotests: Test the error output of 'substitute-binary'.
Ludovic Courtès [Sun, 30 Mar 2014 20:25:47 +0000 (22:25 +0200)]
tests: Test the error output of 'substitute-binary'.

* tests/substitute-binary.scm (test-error*): Rename to...
  (test-quit): ... this.  Add 'error-rx' parameter and honor it.
  ("not a number", "wrong version number", "substitute, no signature",
  "substitute, invalid hash", "substitute, unauthorized key"): Adjust
  accordingly.

10 years agotests: Add more signed substitute tests.
Ludovic Courtès [Sun, 30 Mar 2014 20:11:22 +0000 (22:11 +0200)]
tests: Add more signed substitute tests.

* tests/substitute-binary.scm (%narinfo): Set 'URL', 'Compression', and
  'NarHash'.
  (call-with-narinfo): Create 'example.out' and 'example.nar'.
  ("query narinfo without signature", "substitute, no signature",
  "substitute, authorized key"): New tests.

10 years agotests: Simplify 'substitute-binary' tests; reduce use of global variables.
Ludovic Courtès [Sun, 30 Mar 2014 19:35:22 +0000 (21:35 +0200)]
tests: Simplify 'substitute-binary' tests; reduce use of global variables.

* tests/substitute-binary.scm (signature-body): Change 'str' parameter
  to 'bv', and expect it to be a bytevector.
  (%signature-body, %wrong-signature, %acl): Remove.
  (signature): Rename to...
  (signature-field): ... this.  Add 'bv-or-str' parameter.  Change 'str'
  parameter to #:version.  Add #:public-key parameter.  Call
  'signature-body' directly.  Change domain part of the signature to
  'example.gnu.org'.
  ("not a number", "wrong version number", "valid
  narinfo-signature->canonical-sexp"): Use 'signature-field' instead of
  'signature' or %SIGNATURE.
  (test-error-condition): Add 'message-rx' parameter and honor it.
  ("corrupt signature data", "unauthorized public key", "invalid
  signature"): Adjust accordingly.
  (narinfo, %signed-narinfo): Remove.
  ("query narinfo with invalid hash"): Use '%narinfo' and
  'signature-field' instead of 'narinfo' and '%signature'.
  ("query narinfo signed with authorized key", "query narinfo signed
  with unauthorized key", "substitute, invalid hash", "substitute,
  unauthorized key"): Likewise.

10 years agotests: Make sure the daemon reports substitute hash mismatches.
Ludovic Courtès [Sun, 30 Mar 2014 14:01:58 +0000 (16:01 +0200)]
tests: Make sure the daemon reports substitute hash mismatches.

* tests/store.scm ("substitute, corrupt output hash"): New test.

10 years agosubstitute-binary: Defer narinfo authentication and authorization checks.
Ludovic Courtès [Sun, 30 Mar 2014 20:29:35 +0000 (22:29 +0200)]
substitute-binary: Defer narinfo authentication and authorization checks.

* guix/scripts/substitute-binary.scm (narinfo-signature->canonical-sexp):
  Catch 'gcry-error' around 'string->canonical-sexp' call, and re-raise
  as a SRFI-35 &message and &nar-signature-error.
  (narinfo-maker): Handle when SIGNATURE is #f or an invalid canonical
  sexp.
  (&nar-signature-error, &nar-invalid-hash-error): New variables.
  (assert-valid-signature): Use them.  Expect 'signature' to be a
  canonical sexp.
  (read-narinfo): Remove authentication and authorization checks.
  (%signature-line-rx): New variable.
  (assert-valid-narinfo, valid-narinfo?): New procedures.
  (guix-substitute-binary): Wrap body in 'with-error-handling'.
  [valid?]: New procedure.
  <--query>: Show only store items of narinfos that match
  'valid-narinfo?'.
  <--substitute>: Call 'assert-valid-narinfo'.
* tests/substitute-binary.scm (test-error*): Use 'test-equal'.
  (%keypair): Remove.
  (%public-key, %private-key): Load from signing-key.{pub,sec}.
  (signature-body): Add #:public-key parameter.
  (call-with-narinfo): New procedure.
  (with-narinfo): New macro.
  ("corrupt signature data", "unauthorized public key", "invalid
  signature"): Make the first argument to 'assert-valid-signature' a
  canonical sexp.
  ("invalid hash", "valid read-narinfo", "valid write-narinfo"):
  Remove.
  ("query narinfo with invalid hash", "query narinfo signed with
  authorized key", "query narinfo signed with unauthorized key",
  "substitute, invalid hash", "substitute, unauthorized key"): New
  tests.

10 years agosubstitute-binary: Store the cache's URI in the local cached narinfo.
Ludovic Courtès [Wed, 26 Mar 2014 22:31:31 +0000 (23:31 +0100)]
substitute-binary: Store the cache's URI in the local cached narinfo.

* guix/scripts/substitute-binary.scm (<narinfo>)[uri-base]: New field.
  (narinfo-maker): Pass CACHE-URL as the 'uri-base' value.
  (string->narinfo): Add 'cache-uri' parameter.
  (lookup-narinfo)[cache-entry]: Switch to version 1.  Add 'cache-uri'
  field.  Adjust body accordingly.
  (remove-expired-cached-narinfos): Switch to version 1 by default.

10 years agosubstitute-binary: Support the Signature field of a narinfo file.
Nikita Karetnikov [Fri, 28 Mar 2014 23:06:41 +0000 (00:06 +0100)]
substitute-binary: Support the Signature field of a narinfo file.

* guix/scripts/substitute-binary.scm (<narinfo>): Add the 'signature'
  and 'contents' fields.
  (narinfo-signature->canonical-sexp): New function.
  (narinfo-maker): Add the 'signature' argument and use it.
  (assert-valid-signature): New function.
  (read-narinfo): Support the Signature field.
  (write-narinfo): Use 'narinfo-contents'.
  (%allow-unauthenticated-substitutes?): New variable.
* guix/base64.scm, tests/base64.scm, tests/substitute-binary.scm: New files.
* Makefile.am (SCM_TESTS): Add tests/base64.scm and
  tests/substitute-binary.scm.
  (MODULES): Add guix/base64.scm.
* test-env.in: Set 'GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES'.

10 years agonar: Clarify that 'assert-valid-signature' accepts a string.
Nikita Karetnikov [Sat, 15 Mar 2014 11:46:16 +0000 (11:46 +0000)]
nar: Clarify that 'assert-valid-signature' accepts a string.

* guix/nar.scm (assert-valid-signature): Improve the wording.

10 years agognu: ed: Upgrade to 1.10.
Ludovic Courtès [Sat, 29 Mar 2014 22:15:27 +0000 (23:15 +0100)]
gnu: ed: Upgrade to 1.10.

* gnu/packages/ed.scm (ed): Upgrade to 1.10.  Use '.tar.lz' file, and
  add 'native-inputs' field.

10 years agognu: ocrad: Upgrade to 0.23.
Ludovic Courtès [Sat, 29 Mar 2014 22:14:37 +0000 (23:14 +0100)]
gnu: ocrad: Upgrade to 0.23.

* gnu/packages/ocrad.scm (ocrad): Upgrade to 0.23.

10 years agotests: Make sure 'guix archive --import' succeeds.
Ludovic Courtès [Sat, 29 Mar 2014 21:59:46 +0000 (22:59 +0100)]
tests: Make sure 'guix archive --import' succeeds.

* tests/guix-archive.sh: Check the exit value of 'guix archive
  --import'.

10 years agodaemon: Add tests for substitutes and --no-substitutes.
Ludovic Courtès [Thu, 27 Mar 2014 22:53:00 +0000 (23:53 +0100)]
daemon: Add tests for substitutes and --no-substitutes.

* tests/guix-daemon.sh: Add substituter tests.

10 years agodaemon: Clear $NIX_SUBSTITUTERS when passed '--no-substitutes'.
Ludovic Courtès [Thu, 27 Mar 2014 21:35:34 +0000 (22:35 +0100)]
daemon: Clear $NIX_SUBSTITUTERS when passed '--no-substitutes'.

* nix/nix-daemon/guix-daemon.cc (main): When --no-substitutes is used,
  clear NIX_SUBSTITUTERS.  Before that, and after
  89faa5c75cb3a419c6d02c51f56955275b7ae351, '--no-substitutes' would
  lead to attempts to use 'download-using-manifests.pl', which in
  practice would gracelessly fail.

10 years agodaemon: Change some options via 'settings.set'.
Ludovic Courtès [Thu, 27 Mar 2014 21:08:53 +0000 (22:08 +0100)]
daemon: Change some options via 'settings.set'.

* nix/nix-daemon/guix-daemon.cc (parse_opt): Use 'settings.set' instead
  of direct field access for 'buildCores', 'maxBuildJobs', and
  'useSubstitutes'.
  (main): Call 'settings.update' after 'argp_parse'.

10 years agognu: tcl: Install man pages in share/man.
Mark H Weaver [Wed, 26 Mar 2014 19:09:03 +0000 (15:09 -0400)]
gnu: tcl: Install man pages in share/man.

* gnu/packages/tcl.scm (tcl): Add --mandir configure flag.

10 years agoAdd (guix svn-download).
Sree Harsha Totakura [Wed, 26 Mar 2014 16:59:01 +0000 (17:59 +0100)]
Add (guix svn-download).

* guix/svn-download.scm, guix/build/svn.scm: New files.
* Makefile.am (MODULES): Add them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
10 years agognu: gnu-pw-mgr: Fix download location.
Andreas Enge [Wed, 26 Mar 2014 20:35:54 +0000 (21:35 +0100)]
gnu: gnu-pw-mgr: Fix download location.

* gnu/packages/gnu-pw-mgr.scm (gnu-pw-mgr): Fix download location.

10 years agognu: Add mc
Eric Bavier [Tue, 25 Mar 2014 20:51:32 +0000 (15:51 -0500)]
gnu: Add mc

* gnu/packages/mc.scm: New file
* gnu/packages/patches/mc-fix-ncurses-build.patch: New patch
* gnu-system.am (GNU_SYSTEM_MODULES): Add mc.scm.
(dist_patch_DATA): Add patch

10 years agognu: libssh2: Fix use with libssh2.pc
Eric Bavier [Tue, 25 Mar 2014 20:51:32 +0000 (15:51 -0500)]
gnu: libssh2: Fix use with libssh2.pc

* gnu/packages/ssh.scm (libssh2): Pass --with-libgcrypt configure flag and
  propagate inputs.

10 years agoMerge branch 'core-updates'
Ludovic Courtès [Wed, 26 Mar 2014 15:31:57 +0000 (16:31 +0100)]
Merge branch 'core-updates'

10 years agooffload: Remove erroneous 'close-pipe' call.
Ludovic Courtès [Wed, 26 Mar 2014 15:27:24 +0000 (16:27 +0100)]
offload: Remove erroneous 'close-pipe' call.

* guix/scripts/offload.scm (send-files): Remove 'close-pipe' call from
  'guard' handler ('pipe' here referred to Guile's 'pipe' procedure.)

10 years agooffload: Wait for the processes involved in 'guix archive --missing'.
Ludovic Courtès [Wed, 26 Mar 2014 15:22:41 +0000 (16:22 +0100)]
offload: Wait for the processes involved in 'guix archive --missing'.

* guix/scripts/offload.scm (send-files): Keep the second return value of
  'filtered-port'.  Call 'waitpid' on it.

10 years agognu: gp2c: Upgrade to 0.0.8pl1.
Andreas Enge [Wed, 26 Mar 2014 14:47:54 +0000 (15:47 +0100)]
gnu: gp2c: Upgrade to 0.0.8pl1.

* gnu/packages/algebra.scm (gp2c): Upgrade to 0.0.8pl1, add native input perl.

10 years agooffload: Allow one transfer in each direction simultaneously.
Ludovic Courtès [Wed, 26 Mar 2014 14:03:14 +0000 (15:03 +0100)]
offload: Allow one transfer in each direction simultaneously.

* guix/scripts/offload.scm (transfer-and-offload): Use 'upload' lock
  instead of 'bandwidth' around 'send-files' calls, and 'download' lock
  around 'retrieve-files' call.

10 years agooffload: Disable SSH-level compression.
Ludovic Courtès [Wed, 26 Mar 2014 13:58:00 +0000 (14:58 +0100)]
offload: Disable SSH-level compression.

* guix/scripts/offload.scm (remote-pipe): Remove '-z' lsh command line
  argument.  This makes transfers almost an order of magnitude slower.
  OpenSSH's ssh(1) man page notes: "Compression is desirable on modem lines
  and other slow connections, but will only slow down things on fast
  networks."  See also
  <http://www.spikelab.org/blog/transfer-largedata-scp-tarssh-tarnc-compared.html>.

10 years agognu: pari-gp: Upgrade to 2.7.0.
Andreas Enge [Wed, 26 Mar 2014 12:48:49 +0000 (13:48 +0100)]
gnu: pari-gp: Upgrade to 2.7.0.

* gnu/packages/algebra.scm (pari-gp): Upgrade to 2.7.0.

10 years agognu: gnu-pw-mgr: Upgrade to 1.2
Eric Bavier [Tue, 25 Mar 2014 22:08:17 +0000 (17:08 -0500)]
gnu: gnu-pw-mgr: Upgrade to 1.2

* gnu/packages/gnu-pw-mgr.scm: Upgrade to 1.2

10 years agocheck-available-binaries: Make sure substitutes are enabled.
Ludovic Courtès [Tue, 25 Mar 2014 19:45:13 +0000 (20:45 +0100)]
check-available-binaries: Make sure substitutes are enabled.

* build-aux/check-available-binaries.scm: Add call to
  'set-build-options'.

10 years agohydra: Hard-code target systems.
Ludovic Courtès [Tue, 25 Mar 2014 17:57:07 +0000 (18:57 +0100)]
hydra: Hard-code target systems.

* build-aux/hydra/gnu-system.scm (hydra-jobs)[systems]: Define locally,
  independently of ARGUMENTS.  This matches the new Hydra convention,
  where using a 'system' input is deprecated.

10 years agognu: guile-ssh: Upgrade to 0.6.0.
Ludovic Courtès [Tue, 25 Mar 2014 15:14:45 +0000 (16:14 +0100)]
gnu: guile-ssh: Upgrade to 0.6.0.

* gnu/packages/ssh.scm (guile-ssh): Upgrade to 0.6.0.
  [arguments]: Remove #:tests? #f; add #:parallel-build? #f.

10 years agognu: recutils: Upgrade to 1.7.
Ludovic Courtès [Tue, 25 Mar 2014 15:12:19 +0000 (16:12 +0100)]
gnu: recutils: Upgrade to 1.7.

* gnu/packages/recutils.scm (recutils): Upgrade to 1.7.
  Add 'arguments' field.

10 years agodownload: Don't use 'http-get*' on Guile 2.0.10+.
Ludovic Courtès [Tue, 25 Mar 2014 14:58:52 +0000 (15:58 +0100)]
download: Don't use 'http-get*' on Guile 2.0.10+.

* guix/build/download.scm (http-fetch)[post-2.0.7?]: Use
  'string->number' and numeric comparison.  This fixes version
  comparison with "2.0.10" and subsequent 2.0 releases.

10 years agognu: Add cursynth
Eric Bavier [Tue, 25 Mar 2014 16:40:29 +0000 (11:40 -0500)]
gnu: Add cursynth

* gnu/packages/cursynth.scm: New file
* gnu-system.am (GNU_SYSTEM_MODULES): Add it

10 years agognu: remove python-fix-dbm.patch
Cyril Roelandt [Fri, 21 Mar 2014 04:01:18 +0000 (05:01 +0100)]
gnu: remove python-fix-dbm.patch

* gnu/packages/patches/python-fix-dbm.patch: remove file. It is not needed
  anymore, and is probably a left-over of a failed merge.
* gnu-system.am: remove gnu/packages/patches/python-fix-dbm.patch

10 years agognu: Enable tests in Python 3.
Cyril Roelandt [Mon, 3 Mar 2014 00:53:11 +0000 (01:53 +0100)]
gnu: Enable tests in Python 3.

* gnu/packages/python.scm: enable tests for Python 3
* gnu/packages/python-fix-tests.patch: New file.
* gnu/packages/gnu-system.am (dist_patch_DATA): add it.

10 years agognu: Python: use /nix/.../sh instead of /bin/sh in the subprocess module
Cyril Roelandt [Fri, 14 Feb 2014 02:16:46 +0000 (03:16 +0100)]
gnu: Python: use /nix/.../sh instead of /bin/sh in the subprocess module

* gnu/packages/python.scm (python-2): patch Lib/subprocess.py to use
  /nix/.../sh.

10 years agognu: Enable the 'ctypes' module in Python.
Cyril Roelandt [Sat, 1 Feb 2014 00:39:04 +0000 (01:39 +0100)]
gnu: Enable the 'ctypes' module in Python.

* gnu/packages/python.scm (python-2): add libffi to the inputs and use it to
  build the ctypes module.

10 years agohydra: Fix typo in core package list.
Ludovic Courtès [Tue, 25 Mar 2014 12:57:51 +0000 (13:57 +0100)]
hydra: Fix typo in core package list.

* build-aux/hydra/gnu-system.scm: Use (gnu packages gcc).
  (%core-packages): Remove nonexistent 'gcc'; add GCC-4.8 and GCC-4.7.

10 years agohydra: Remove cross-builds from i686-linux to mips64el-linux-gnuabi64.
Ludovic Courtès [Tue, 25 Mar 2014 12:55:56 +0000 (13:55 +0100)]
hydra: Remove cross-builds from i686-linux to mips64el-linux-gnuabi64.

* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs]: Define
  'from-32-to-64?'.  Filter out %CROSS-TARGETS that match.

10 years agohydra: Build GCC and glibc, not their '-final' variant.
Ludovic Courtès [Tue, 25 Mar 2014 12:40:27 +0000 (13:40 +0100)]
hydra: Build GCC and glibc, not their '-final' variant.

* build-aux/hydra/gnu-system.scm (%core-packages): Replace GCC-FINAL and
  GLIBC-FINAL with GCC and GLIBC.

10 years agognu: autotools: Add Autoconf 2.68; turn 'autoconf-wrapper' into a procedure.
Manolis Ragkousis [Mon, 24 Mar 2014 22:18:09 +0000 (22:18 +0000)]
gnu: autotools: Add Autoconf 2.68; turn 'autoconf-wrapper' into a procedure.

* gnu/packages/autotools.scm (autoconf-2.68): New variable.
  (autoconf-wrapper): Turn into a procedure.  Turn comment into a
  docstring.
  (automake): Adjust accordingly.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
10 years agooffload: Compress files being sent/retrieved.
Ludovic Courtès [Mon, 24 Mar 2014 21:20:54 +0000 (22:20 +0100)]
offload: Compress files being sent/retrieved.

* guix/scripts/offload.scm (send-files): Add "xz -dc |" to the remote
  pipe command.  Pass PIPE through 'call-with-compressed-output-port'.
  Remove 'close-pipe' call.
  (retrieve-files): Add "| xz -c" to the remote pipe command.  Pass PIPE
  through 'call-with-decompressed-port'.  Remove 'close-pipe' call.

10 years agoutils: Add 'call-with-decompressed-port' and 'call-with-compressed-output-port'.
Ludovic Courtès [Mon, 24 Mar 2014 21:15:29 +0000 (22:15 +0100)]
utils: Add 'call-with-decompressed-port' and 'call-with-compressed-output-port'.

* guix/utils.scm (call-with-decompressed-port,
  call-with-compressed-output-port): New procedures.
* tests/utils.scm ("compressed-output-port + decompressed-port"):
  Rewrite to use them.

10 years agoutils: Add 'filtered-output-port' and 'compressed-output-port'.
Ludovic Courtès [Mon, 24 Mar 2014 20:09:15 +0000 (21:09 +0100)]
utils: Add 'filtered-output-port' and 'compressed-output-port'.

* guix/utils.scm (filtered-output-port, compressed-output-port): New
  procedures.
* tests/utils.scm ("compressed-output-port + decompressed-port"): New
  test.

10 years agognu: glibc: Patch mtrace.pl to avoid retaining a reference to Perl.
Ludovic Courtès [Sun, 23 Mar 2014 20:49:20 +0000 (21:49 +0100)]
gnu: glibc: Patch mtrace.pl to avoid retaining a reference to Perl.

* gnu/packages/base.scm (glibc)[argument] <pre-configure phase>: Patch
  malloc/mtrace.pl.

10 years agognu: tor: Upgrade to 0.2.4.21.
Mark H Weaver [Sun, 23 Mar 2014 08:30:53 +0000 (04:30 -0400)]
gnu: tor: Upgrade to 0.2.4.21.

* gnu/packages/tor.scm (tor): Upgrade to 0.2.4.21.

10 years agotests: Make sure substitutes are usable when we need them.
Ludovic Courtès [Sat, 22 Mar 2014 21:55:58 +0000 (22:55 +0100)]
tests: Make sure substitutes are usable when we need them.

* tests/derivations.scm ("derivation-prerequisites-to-build and
  substitutes"): Add call to 'set-build-options'.

10 years agoauthenticate: Support reading the hash or key from stdin.
Ludovic Courtès [Sat, 22 Mar 2014 21:46:11 +0000 (22:46 +0100)]
authenticate: Support reading the hash or key from stdin.

* guix/scripts/authenticate.scm (guix-authenticate): Add clauses
  for ("rsautl" "-sign" "-inkey" key) and ("rsautl" "-verify" "-inkey" _
  "-pubin").
* tests/guix-authenticate.sh (hash): Add test using -sign and -verify in
  a pipeline.

10 years agoauthenticate: Move actual work to separate procedures.
Ludovic Courtès [Sat, 22 Mar 2014 21:38:23 +0000 (22:38 +0100)]
authenticate: Move actual work to separate procedures.

* guix/scripts/authenticate.scm (read-canonical-sexp): Change to expect
  a port instead of a file name.
  (read-hash-data): Likewise.
  (sign-with-key, validate-signature): New procedures.
  (guix-authenticate): Rewrite in terms of these two procedures.

10 years agoUpdate 'nix-upstream' sub-module.
Ludovic Courtès [Sat, 22 Mar 2014 21:19:29 +0000 (22:19 +0100)]
Update 'nix-upstream' sub-module.

* nix-upstream: Update.

10 years agoutils: Add 'decompressed-port' and 'compressed-port'.
Ludovic Courtès [Sat, 22 Mar 2014 20:58:23 +0000 (21:58 +0100)]
utils: Add 'decompressed-port' and 'compressed-port'.

* guix/utils.scm (decompressed-port, compressed-port): New procedures.
* guix/scripts/substitute-binary.scm (decompressed-port): Remove.
  (guix-substitute-binary): Pass a symbol or #f as the first argument to
  'decompress-port'.
* tests/utils.scm ("compressed-port, decompressed-port, non-file"): New
  test.

10 years agoutils: 'filtered-port' doesn't leave dangling processes behind.
Ludovic Courtès [Sat, 22 Mar 2014 20:50:12 +0000 (21:50 +0100)]
utils: 'filtered-port' doesn't leave dangling processes behind.

* guix/utils.scm (filtered-port): Make sure the 'execl' child process
  always exits, and does (primitive-_exit 1) upon execution failure.
  Use 'primitive-_exit' in the 'dump-port' child process.
* tests/utils.scm ("filtered-port, does not exist"): New test.

10 years agolicenses: Fix Nixpkgs license URL.
Yakkala Yagnesh Raghava [Thu, 20 Mar 2014 15:15:26 +0000 (00:15 +0900)]
licenses: Fix Nixpkgs license URL.

* guix/licenses.scm: Fix Nixpkgs URL in comment.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
10 years agognu: Provide single-precision fftw library for pulseaudio
Eric Bavier [Sat, 22 Mar 2014 18:00:50 +0000 (13:00 -0500)]
gnu: Provide single-precision fftw library for pulseaudio

* gnu/packages/algebra.scm (fftwf): New variable
* gnu/packages/pulseaudio.scm (pulseaudio): Use it

10 years agoMerge branch 'master' into core-updates
Mark H Weaver [Sat, 22 Mar 2014 15:19:19 +0000 (11:19 -0400)]
Merge branch 'master' into core-updates

10 years agognu: guile: Upgrade to 2.0.11.
Mark H Weaver [Fri, 21 Mar 2014 02:27:43 +0000 (22:27 -0400)]
gnu: guile: Upgrade to 2.0.11.

* gnu/packages/guile.scm (guile): Upgrade to 2.0.11.

10 years agognu: cmake: Install man pages and docs in share/{man,doc}.
Mark H Weaver [Fri, 21 Mar 2014 07:44:03 +0000 (03:44 -0400)]
gnu: cmake: Install man pages and docs in share/{man,doc}.

* gnu/packages/cmake.scm (cmake): Pass --mandir and --docdir to configure.
  Rewrite the code that selects the first two components of the version.

10 years agognu: flac: Install man pages in share/man.
Mark H Weaver [Fri, 21 Mar 2014 07:14:54 +0000 (03:14 -0400)]
gnu: flac: Install man pages in share/man.

* gnu/packages/xiph.scm (flac): Add --mandir configure flag.

10 years agognu: libvorbis: disable parallel tests
Eric Bavier [Fri, 21 Mar 2014 20:12:47 +0000 (15:12 -0500)]
gnu: libvorbis: disable parallel tests

* gnu/packages/xiph.scm (libvorbis): disable parallel tests

10 years agognu: openssh: Upgrade to 6.6p1.
Mark H Weaver [Fri, 21 Mar 2014 08:04:37 +0000 (04:04 -0400)]
gnu: openssh: Upgrade to 6.6p1.

* gnu/packages/ssh.scm (openssh): Upgrade to 6.6p1.

10 years agodaemon: Really override the substituters setting.
Ludovic Courtès [Thu, 20 Mar 2014 22:05:59 +0000 (23:05 +0100)]
daemon: Really override the substituters setting.

Reported by Andreas Enge <andreas@enge.fr>:
<https://lists.gnu.org/archive/html/guix-devel/2014-03/msg00211.html>.

* nix/nix-daemon/guix-daemon.cc (main): Set the 'NIX_SUBSTITUTERS'
  env. var.  Leave 'settings.substituters' unchanged.

10 years agopk-crypto: Don't use Ed25519 when libgcrypt is older than 1.6.0.
Ludovic Courtès [Thu, 20 Mar 2014 21:33:52 +0000 (22:33 +0100)]
pk-crypto: Don't use Ed25519 when libgcrypt is older than 1.6.0.

* guix/pk-crypto.scm (gcrypt-version): New procedure.
* guix/scripts/archive.scm (%key-generation-parameters): New variable.
  (%options) <generate-key>: Use it.
* tests/pk-crypto.scm ("sign + verify, Ed25519"): Skip if using gcrypt < 1.6.0.

10 years agognu: tzdata: Upgrade to 2014a.
Mark H Weaver [Thu, 20 Mar 2014 20:29:21 +0000 (16:29 -0400)]
gnu: tzdata: Upgrade to 2014a.

10 years agognu: lynx: Upgrade to 2.8.8rel.2.
Mark H Weaver [Thu, 20 Mar 2014 20:08:49 +0000 (16:08 -0400)]
gnu: lynx: Upgrade to 2.8.8rel.2.

* gnu/packages/lynx.scm (lynx): Upgrade to 2.8.8rel.2.

10 years agognu: util-macros: Install .pc file in lib/pkgconfig; remove INSTALL file.
Mark H Weaver [Thu, 20 Mar 2014 07:52:13 +0000 (03:52 -0400)]
gnu: util-macros: Install .pc file in lib/pkgconfig; remove INSTALL file.

* gnu/packages/xorg.scm (util-macros): Substitute "$(libdir)/pkgconfig"
  for "$(datadir)/pkgconfig" in Makefile.in.  After install, remove
  share/util-macros/INSTALL and share/util-macros.

10 years agognu: bc: Install docs in share/man and share/info.
Mark H Weaver [Thu, 20 Mar 2014 07:51:09 +0000 (03:51 -0400)]
gnu: bc: Install docs in share/man and share/info.

* gnu/packages/algebra.scm (bc): Pass --mandir and --infodir to configure.

10 years agognu: unzip: Install man pages in share/man.
Mark H Weaver [Thu, 20 Mar 2014 07:49:22 +0000 (03:49 -0400)]
gnu: unzip: Install man pages in share/man.

* gnu/packages/zip.scm (unzip): Substitute /share/man/ for /man/ in Makefile.

10 years agognu: screen: Install docs in share/man and share/info.
Mark H Weaver [Thu, 20 Mar 2014 07:47:31 +0000 (03:47 -0400)]
gnu: screen: Install docs in share/man and share/info.

* gnu/packages/screen.scm (screen): Add --mandir and --infodir
  configure flags.

10 years agognu: netcat: Install docs in share/man and share/info.
Mark H Weaver [Thu, 20 Mar 2014 07:45:29 +0000 (03:45 -0400)]
gnu: netcat: Install docs in share/man and share/info.

* gnu/packages/admin.scm (netcat): Add --mandir and --infodir
  configure flags.

10 years agognu: readline: Fix cross-compilation.
Ludovic Courtès [Wed, 19 Mar 2014 22:21:26 +0000 (23:21 +0100)]
gnu: readline: Fix cross-compilation.

* gnu/packages/readline.scm (readline)[arguments]: Add
  "bash_cv_wcwidth_broken=no" to #:configure-flags
  when (%current-target-system) is true.

10 years agooffload: Send build logs to file descriptor 4.
Ludovic Courtès [Wed, 19 Mar 2014 22:12:06 +0000 (23:12 +0100)]
offload: Send build logs to file descriptor 4.

* guix/scripts/offload.scm (with-error-to-port): New macro.
  (remote-pipe): Add #:error-port parameter.  Use 'with-error-to-port'
  around 'open-pipe*' call.
  (build-log-port): New procedure.
  (offload): Change #:log-port to default to (build-log-port).  Call
  'remote-pipe' with #:error-port LOG-PORT.

10 years agosubstitute-binary: Quietly handle 404s when fetching narinfos.
Ludovic Courtès [Wed, 19 Mar 2014 21:26:08 +0000 (22:26 +0100)]
substitute-binary: Quietly handle 404s when fetching narinfos.

* guix/scripts/substitute-binary.scm (fetch): Add #:quiet-404?
  parameter.  Upon &http-get-error, re-raise C if the QUIET-404? is
  true and the code is 404.
  (fetch-narinfo): Pass #:quiet-404? #t.

10 years agognu: xterm: Upgrade to 303.
Ludovic Courtès [Wed, 19 Mar 2014 21:22:36 +0000 (22:22 +0100)]
gnu: xterm: Upgrade to 303.

* gnu/packages/xorg.scm (xterm): Upgrade to 303.

10 years agopk-crypto: Use RFC6979 when signing with an ECC or DSA key.
Ludovic Courtès [Wed, 19 Mar 2014 20:40:10 +0000 (21:40 +0100)]
pk-crypto: Use RFC6979 when signing with an ECC or DSA key.

* guix/pk-crypto.scm (bytevector->hash-data): Add #:key-type parameter.
  Use the 'pkcs1' flag when KEY-TYPE is 'rsa', and 'rfc6979' when
  KEY-TYPE is 'ecc' or 'dsa'.
  (key-type): New procedure.
* guix/scripts/authenticate.scm (read-hash-data): Add 'key-type'
  parameter.  Pass it to 'bytevector->hash-data'.  Adjust caller
  accordingly.
* tests/pk-crypto.scm (%ecc-key-pair): New variable.
  ("key-type"): New test.
  ("sign + verify"): Pass #:key-type to 'bytevector->hash-data'.
  ("sign + verify, Ed25519"): New test.

10 years agognu: imagemagick: Upgrade to 6.8.8-8.
Ludovic Courtès [Wed, 19 Mar 2014 18:12:04 +0000 (19:12 +0100)]
gnu: imagemagick: Upgrade to 6.8.8-8.

* gnu/packages/imagemagick.scm (imagemagick): Upgrade to 6.8.8-8.

10 years agognu: bzip2: Install man pages to share/man/man1, not share/man1.
Mark H Weaver [Wed, 19 Mar 2014 09:00:38 +0000 (05:00 -0400)]
gnu: bzip2: Install man pages to share/man/man1, not share/man1.

* gnu/packages/compression.scm (bzip2)[fix-man-dir]: Rename "man"
  to "share/man", not "share".

10 years agognu: ncurses: Install man pages in share/man/man*, not man/man*.
Mark H Weaver [Wed, 19 Mar 2014 09:02:25 +0000 (05:02 -0400)]
gnu: ncurses: Install man pages in share/man/man*, not man/man*.

* gnu/packages/ncurses.scm (ncurses): Add --mandir configure flag.

10 years agognu: Add Window Maker.
Ludovic Courtès [Tue, 18 Mar 2014 23:18:04 +0000 (00:18 +0100)]
gnu: Add Window Maker.

* gnu/packages/gnustep.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.

10 years agotests: Test recovery from 'valid-path?' RPCs with an invalid parameter.
Ludovic Courtès [Tue, 18 Mar 2014 22:59:57 +0000 (23:59 +0100)]
tests: Test recovery from 'valid-path?' RPCs with an invalid parameter.

* tests/store.scm ("valid-path? live", "valid-path? false", "valid-path?
  error", "valid-path? recovery"): New tests.

10 years agoUpdate 'nix-upstream' sub-module.
Ludovic Courtès [Tue, 18 Mar 2014 22:44:22 +0000 (23:44 +0100)]
Update 'nix-upstream' sub-module.

* nix-upstream: Update.

10 years agognu: libxft: Propagate Freetype and Fontconfig.
Ludovic Courtès [Tue, 18 Mar 2014 17:13:15 +0000 (18:13 +0100)]
gnu: libxft: Propagate Freetype and Fontconfig.

* gnu/packages/xorg.scm (libxft): Move Freetype and Fontconfig from
  'inputs' to 'propagated-inputs'.

10 years agognu: guile: Upgrade to 2.0.10.
Ludovic Courtès [Tue, 18 Mar 2014 14:17:50 +0000 (15:17 +0100)]
gnu: guile: Upgrade to 2.0.10.

* gnu/packages/guile.scm (guile-2.0): Upgrade to 2.0.10.

10 years agognu: Make libgc 7.4 the default.
Ludovic Courtès [Tue, 18 Mar 2014 14:14:02 +0000 (15:14 +0100)]
gnu: Make libgc 7.4 the default.

* gnu/packages/bdw-gc.scm (libgc): Rename to...
  (libgc-7.2): ... this.
  (libgc-7.4): Rename to...
  (libgc): ... this.
* gnu/packages/guile.scm (guile-2.0): Switch to LIBGC.
  (guile-2.0/fixed): Alias GUILE-2.0.

10 years agoguix archive: Generate curve Ed25519 keys by default.
Ludovic Courtès [Mon, 17 Mar 2014 22:49:35 +0000 (23:49 +0100)]
guix archive: Generate curve Ed25519 keys by default.

* guix/scripts/archive.scm (%options) <generate-key>: Default to curve
  Ed25519.  Suggested by Christian Grothoff <grothoff@in.tum.de>.

10 years agoguix archive: Improve '--generate-key' error reporting.
Ludovic Courtès [Mon, 17 Mar 2014 22:47:18 +0000 (23:47 +0100)]
guix archive: Improve '--generate-key' error reporting.

* guix/scripts/archive.scm (%options) <generate-key>: Report the error
  source and string when 'string->canonical-sexp' fails.

10 years agobuild: Fix test failures due to the nix -> guix directory name change.
Ludovic Courtès [Mon, 17 Mar 2014 22:30:21 +0000 (23:30 +0100)]
build: Fix test failures due to the nix -> guix directory name change.

Reported by Nikita Karetnikov <nikita@karetnikov.org>
and Pierre-Antoine Rault <par@rigelk.eu>.

* test-env.in: Change 'NIX_LOG_DIR' in accordance with f5768af.
* tests/guix-register.sh: Likewise for 'NIX_LOG_DIR' and 'NIX_DB_DIR'.

10 years agognu: luajit: Update to 2.0.3.
Raimon Grau [Sun, 16 Mar 2014 22:38:23 +0000 (23:38 +0100)]
gnu: luajit: Update to 2.0.3.

* gnu/packages/lua.scm (luajit): Update to 2.0.3.

10 years agoMerge branch 'master' into core-updates
Ludovic Courtès [Mon, 17 Mar 2014 17:26:46 +0000 (18:26 +0100)]
Merge branch 'master' into core-updates

10 years agognu: python: Change URL to https.
Ludovic Courtès [Mon, 17 Mar 2014 17:24:13 +0000 (18:24 +0100)]
gnu: python: Change URL to https.

* gnu/packages/python.scm (python-2, python)[source]: Change URL to
  https.  This makes sure GnuTLS is available in the derivation that
  downloads the source, which is required since http URLs get redirected
  to https anyway.  Reported by Manolis Ragkousis <manolis837@gmail.com>.