Commit Graph

2577 Commits

Author SHA1 Message Date
Ludovic Courtès f326fef8a8 offload: Serialize file transfers to build machines.
* guix/scripts/offload.scm (machine-lock-file, lock-machine,
  unlock-machine): New procedures.
  (with-machine-lock): New macro.
  (process-request): Wrap 'send-files' and 'retrieve-files' calls in
  'with-machine-lock'.
2014-03-06 21:42:24 +01:00
Ludovic Courtès 827d556311 tests: Rewrite 'fcntl-lock' test.
* tests/utils.scm (temp-file): New variable.
  ("fcntl-flock"): Rewrite to actually test whether the child process
  waits for the lock to be released.  The previous test was wrong
  because (1) it expected F_SETLK semantics, not F_SETLKW, and (2) it
  got EBADF because of a mismatch between the open mode and the lock
  style.
2014-03-06 21:42:24 +01:00
Ludovic Courtès 56c72822a8 download: Perform derivations locally.
* guix/download.scm (url-fetch): Pass #:local-build? #t to
  'build-expression->derivation'.
* guix/git-download.scm (git-fetch): Likewise.
2014-03-06 21:42:24 +01:00
Mark H Weaver 8b3099cf03 gnu: Add bitlbee.
* gnu/packages/messaging.scm (bitlbee): New variable.
* gnu/packages/patches/bitlbee-fix-tests.patch: New file.
* gnu/packages/patches/bitlbee-memset-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add patches.
2014-03-06 10:23:45 -05:00
Mark H Weaver 7c706558f5 gnu: Add libotr.
* gnu/packages/messaging.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-03-06 10:23:37 -05:00
Mark H Weaver 5249045cd4 gnu: gnupg: Add support for version 1.4.16.
* gnu/packages/gnupg.scm (gnupg-1): New variable.
2014-03-06 10:23:21 -05:00
Mark H Weaver ece2624616 gnu: Add lynx.
* gnu/packages/lynx.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-03-05 13:55:06 -05:00
Mark H Weaver 9b521a678b gnu: gnutls: Upgrade to 3.2.12.
* gnu/packages/gnutls.scm (gnutls): Upgrade to 3.2.12.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2014-03-05 00:09:42 +01:00
Ludovic Courtès 8deeda0c35 gnu: Add ElementTree and pybugz.
* gnu/packages/python.scm (python2-element-tree, python2-pybugz): New
  variables.
2014-03-03 00:22:46 +01:00
Ludovic Courtès 70ee564299 doc: Factorize documentation of common build options.
* doc/guix.texi (Invoking guix package): Remove documentation for
  --dry-run, --fallback, --no-substitutes, and --max-silent-time.  Add a
  cross-ref to "Invoking guix build".
  (Invoking guix archive): Add "common build options" as the cross-ref
  topic for "Invoking guix build".
  (Invoking guix build): Move common build options separately.  Add a
  paragraph to explain.
2014-03-03 00:22:46 +01:00
Andreas Enge ebb7aeff80 gnu: subversion: Update to 1.7.14.
* gnu/packages/version-control.scm (subversion): Update to 1.7.14.
2014-03-02 15:09:59 +01:00
Andreas Enge 98b79d361c gnu: subversion: Enable http checkouts.
* gnu/packages/version-control.scm (subversion): Add input neon-0.29.6 to
    enable http and https checkouts.
2014-03-02 14:12:40 +01:00
Andreas Enge d56052bd80 gnu: Add neon-0.29.6.
* gnu/packages/version-control.scm (neon-0.29.6): New variable.
2014-03-02 14:03:00 +01:00
Andreas Enge fc1e45160e gnu: Add neon.
* gnu/packages/version-control.scm (neon): New variable.
2014-03-02 13:48:28 +01:00
Manolis Ragkousis dc91c10f2b gnu: hurd: Add Hurd headers.
* gnu/packages/hurd.scm (hurd-headers): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-03-01 18:59:34 +01:00
Ludovic Courtès dd67b429e1 guix package: Use the common build options from (guix scripts build).
* guix/scripts/build.scm (%standard-build-options): Change option
  handlers to support multiple seeds.
* guix/scripts/package.scm (show-help): Remove --dry-run, --fallback,
  --no-substitutes, and --max-silent-time.
  (%options): Likewise, and add %STANDARD-BUILD-OPTIONS.
  (%default-options): Add 'verbosity'.
  (guix-package): Call 'set-build-options-from-command-line' instead of
  'set-build-options'.
2014-03-01 18:29:29 +01:00
Ludovic Courtès 00ee3a712f gnu: guile-ssh: Upgrade to 0.5.0.
* gnu/packages/ssh.scm (guile-ssh): Upgrade to 0.5.0.
  [arguments]: Adjust 'autoreconf' phase.  Add #:parallel-tests? #f and
  #:tests? #f.
  [native-inputs]: Add TEXINFO.
2014-03-01 15:41:18 +01:00
Ludovic Courtès 706e9e575d substitute-binary: Gracefully handle HTTP GET errors.
* guix/http-client.scm (&http-get-error): New condition type.
  (http-fetch): Raise it instead of using 'error'.
* guix/scripts/substitute-binary.scm (fetch) <http>: Wrap body into
  'guard' form; gracefully handle 'http-get-error?' conditions.
2014-03-01 15:38:11 +01:00
Ludovic Courtès 1f7fd80032 offload: Comment out attempt to set up an lsh gateway.
* guix/scripts/offload.scm (open-ssh-gateway): Comment out.
  (process-request): Remove call to 'open-ssh-gateway' and to 'kill'.
2014-03-01 12:24:39 +01:00
Ludovic Courtès aedbf9b873 offload: 'remote-pipe' uses the right SSH key.
* guix/scripts/offload.scm (remote-pipe): Pass -i when invoking
  %LSHG-COMMAND.
2014-03-01 12:15:47 +01:00
Ludovic Courtès 165f4b2add offload: Take the target machine load into account.
* guix/scripts/offload.scm (machine-load, machine-less-loaded?,
  machine-less-loaded-or-faster?): New procedures.
  (choose-build-machine): Use 'machine-less-loaded-or-faster?' when
  sorting.  Return the head of MACHINES unless it's loaded is >= 2.
2014-03-01 01:31:18 +01:00
Ludovic Courtès 36b56f081b guix archive: Change '--help' to show '--authorize'.
* guix/scripts/archive.scm (show-help): Add '--authorize'.
2014-02-28 22:31:16 +01:00
Ludovic Courtès 62b76320b4 gnu: libgc: Change URLs to point to hboehm.info.
* gnu/packages/bdw-gc.scm (libgc)[source, home-page, license]: Update
  URL.
  (libatomic-ops)[source, home-page]: Likewise.
  (libgc-7.4)[source]: Likewise.
2014-02-28 18:14:49 +01:00
Ludovic Courtès a74da6b015 gnu-maintenance: Adjust 'latest-release' to filter Bash's patch directories.
* guix/gnu-maintenance.scm (latest-release)[patch-directory-name?]: New
  procedure.
  <subdirs>: Use it to filter out Bash-like patch directories.
2014-02-28 00:01:53 +01:00
Ludovic Courtès 65f7c35d02 hydra: Set the default absolute build timeout to 20h.
* build-aux/hydra/gnu-system.scm (package->alist): Add 'timeout' item.
2014-02-27 22:24:02 +01:00
Ludovic Courtès 833efa0d3e gnu: Move libwebsockets to (gnu packages web).
* gnu/packages/libwebsockets.scm: Remove.  Move libwebsockets package
  definition to...
* gnu/packages/web.scm (libwebsockets): ... here.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove libwebsockets.scm.
2014-02-27 22:24:02 +01:00
Ludovic Courtès 371e87d286 store: Use 'when' instead of 'if' in effectful context.
* guix/store.scm (set-build-options): Use 'when' instead of 'if'.
2014-02-27 22:24:02 +01:00
David Thompson 7dc68701da gnu: Add mpd.
* gnu/packages/mpd.scm (mpd): New variable.
2014-02-25 17:27:43 -05:00
David Thompson 892d8a818b gnu: Add libmpdclient.
* gnu/packages/mpd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-02-25 17:27:28 -05:00
Eric Bavier d79ffe0ece gnu: zile: Upgrade to 2.4.10
* gnu/packages/zile.scm (zile): Upgrade to 2.4.10
2014-02-25 13:59:50 -06:00
Eric Bavier 87e398bdc5 gnu: parallel: Upgrade to 20140222
* gnu/packages/parallel.scm (parallel): Upgrade to 20140222
2014-02-25 12:02:53 -06:00
Mark H Weaver 41109e60b7 gnu: ffmpeg: Upgrade to 2.1.4
* gnu/packages/video.scm (ffmpeg): Upgrade to 2.1.4.
2014-02-25 06:02:51 -05:00
Sree Harsha Totakura 6a6b8ffc97 gnu: libmicrohttpd: Update to 0.9.34.
* gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.34.
2014-02-24 23:10:31 -05:00
Mark H Weaver 8fade76f5d Update SRFI-64 to the latest upstream version.
* srfi/srfi-64.scm: Export 'test-group'.  Call 'cond-expand-provide'.
* srfi/srfi-64.upstream.scm: Update to the latest upstream version.
2014-02-24 16:30:08 -05:00
Sree Harsha Totakura c4dc4466d6 gnu: Add miniupnpc.
* gnu/packages/upnp.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2014-02-24 22:06:58 +01:00
Ludovic Courtès 2096ef47aa derivations: Remove unused 'derivation' parameter.
* guix/derivations.scm (derivation): Remove unused #:hash-mode parameter.
* doc/guix.texi (Derivations): Adjust accordingly.
2014-02-21 23:49:53 +01:00
Ludovic Courtès 93cc13aabb gnu: Add libwebsockets.
* gnu/packages/libwebsockets.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-02-21 23:49:53 +01:00
Ludovic Courtès 9b5b5c1740 Add (guix git-download).
* guix/git-download.scm, guix/build/git.scm: New files.
* Makefile.am (MODULES): Add them.
* guix/packages.scm (<origin>): Fix comment for 'method' field.
2014-02-21 23:49:53 +01:00
Ludovic Courtès 0dbd88db39 doc: More on what's special about the archive format.
* doc/guix.texi (Invoking guix archive): Expound on what sets the Nar
  format apart.
2014-02-21 23:49:53 +01:00
Ludovic Courtès 96c7448f37 nar: Produce archives with files sorted in C collation order.
* guix/nar.scm (write-file) <directory>: Pass 'string<?' as the second
  argument to 'scandir'.
* tests/nar.scm ("write-file puts file in C locale collation order"):
  New test.
2014-02-21 23:49:53 +01:00
Ludovic Courtès 36bbbbd150 derivations: Add support for recursive fixed-output derivations.
* guix/derivations.scm (<derivation-output>): Add 'recursive?' field.
  Adjust 'make-derivation-output' callers.
  (%read-derivation) <fixed-output>: When HASH-ALGO starts with 'r:',
  set the 'recursive?' field and drop 'r:' from the hash algo name.
  (write-derivation)[write-output]: Write the algo as 'r:HASH-ALGO' when
  the RECURSIVE? field is set.
  (derivation-hash) <fixed-output>: Prepend "r:" when RECURSIVE? is set.
  (fixed-output-path): New procedure.
  (derivation): Add #:recursive? parameter.  Use 'fixed-output-path' to
  compute the output file name of a fixed output derivation.
  (build-expression->derivation): Add #:recursive? parameter.  Pass it
  to 'derivation'.
* tests/derivations.scm ("fixed-output derivation, recursive",
  "build-expression->derivation produces recursive fixed-output",
  "build-expression->derivation uses recursive fixed-output"): New
  tests.
* doc/guix.texi (Derivations): Document #:recursive? for 'derivation'.
  Add #:recursive? for 'build-expression->derivation'.
2014-02-21 23:49:52 +01:00
Ludovic Courtès 3140f2df42 guix hash: Add '--recursive'.
* guix/scripts/hash.scm (show-help): Add --recursive.
  (%options): Likewise.
  (guix-hash)[file-hash]: New procedure.  Honor --recursive.
  Use it.
* guix/nar.scm (write-file): Add missing field to the &nar-error
  condition raised upon unsupported file type; change its message to be
  more descriptive.
* tests/guix-hash.sh: Add tests with -r.
* doc/guix.texi (Invoking guix hash): Document --recursive.
2014-02-21 23:49:52 +01:00
Ludovic Courtès c1d52c71aa ui: Handle SRFI-35 '&message' conditions.
* guix/ui.scm (call-with-error-handling): Add case for
  'message-condition?'.
* po/Makevars: Fix typo in comment.
2014-02-21 23:49:52 +01:00
Ludovic Courtès a93e91ff48 nar: 'write-file' can write to non-file ports.
* guix/nar.scm (write-contents): Use 'sendfile' only when P is a file
  port.
* tests/nar.scm ("write-file supports non-file output ports"): New test.
2014-02-21 23:49:52 +01:00
Ludovic Courtès 86d07a5514 gnu: mpc123: Add patch that fixes a segfault.
* gnu/packages/patches/mpc123-initialize-ao.patch: New file.
* gnu/packages/mp3.scm (mpc123): Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2014-02-21 23:49:52 +01:00
Mark H Weaver 504a83af42 gnu: emacs: Add more inputs: giflib, libice, libsm, alsa-lib.
* gnu/packages/emacs.scm (emacs): Add 'giflib', 'libice', 'libsm', and
  'alsa-lib' inputs.  Remove "--with-gif=no" from configure arguments.
2014-02-21 10:49:55 -05:00
Mark H Weaver 8ec773a8b8 gnu: Add giflib.
* gnu/packages/giflib.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2014-02-21 10:49:46 -05:00
Andreas Enge 7563004301 gnu: gmime: Use gnome mirror for download.
* gnu/packages/mail.scm (gmime): Use gnome mirror, fixes download problems
    with automatic https redirection.
2014-02-21 12:04:48 +01:00
Manolis Ragkousis 396b3c8b55 gnu: hurd: Add MiG.
* gnu/packages/hurd.scm (mig): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-02-20 23:18:08 +01:00
Ludovic Courtès c6d37be951 guix hash: Don't load the whole file in memory.
* guix/scripts/hash.scm (guix-hash)[eof->null]: Remove.
  (guix-hash): Use 'port-sha256' to compute the hash instead of
  'get-bytevector-all' and co.
2014-02-20 23:18:08 +01:00