Commit Graph

38719 Commits

Author SHA1 Message Date
Ludovic Courtès 5cc569dc73 offload: Prevent locked files from being GC'd.
* guix/scripts/offload.scm (%slots): New variable.
  (choose-build-machine): Add SLOT to '%slots'.
2014-03-08 21:23:12 +01:00
Ludovic Courtès 7df3ade112 offload: Fix thinko.
* guix/scripts/offload.scm (choose-build-machine)[machine+slots]: Use
  'filter-map', not 'filter'.
2014-03-08 12:22:49 +01:00
Ludovic Courtès d652b85137 offload: Make 'parallel-builds' a hard limit.
* guix/scripts/offload.scm (machine-choice-lock-file,
  machine-slot-file, acquire-build-slot, release-build-slot): New
  procedures.
  (choose-build-machine): Operate with (machine-choice-lock-file)
  taken.  Acquire a build slot for each of MACHINES.  Release those not
  used.
2014-03-08 12:16:06 +01:00
Ludovic Courtès 4bf1eb4f88 offload: Further generalize lock files.
* guix/scripts/offload.scm (lock-machine, unlock-machine): Remove.
  (lock-file, unlock-file): New procedures.
  (with-file-lock): New macro.
  (with-machine-lock): Rewrite in terms of 'with-file-lock'.
2014-03-08 12:07:57 +01:00
Ludovic Courtès 178f5828eb offload: Generalize the machine lock mechanism.
* guix/scripts/offload.scm (lock-machine): Add 'hint' parameter.
  (unlock-machine): Remove 'machine' parameter.
  (with-machine-lock): Add 'hint' parameter, and pass it down.
  (process-request): Adjust uses of 'with-machine-lock' to pass the
  'bandwidth hint.
2014-03-08 11:29:52 +01:00
Ludovic Courtès c7445833eb utils: Add a non-blocking option for 'fcntl-flock'.
* guix/utils.scm (F_SETLK): New variable.
  (fcntl-flock): Add 'wait?' keyword parameter; honor it.
* tests/utils.scm ("fcntl-flock non-blocking"): New test.
2014-03-08 00:18:22 +01:00
Ludovic Courtès e7f34eb0dc doc: Explain what's special about the (gnu packages ...) name space.
* doc/guix.texi (Invoking guix package): Explain where packages are
  searched for and link to "Package Modules".
  (Defining Packages) <example>: Use 'define-module' clause instead of
  'use-modules'.  Explain why and link to "Package Modules".
  (Invoking guix build): Explain where packages aer searched for and
  link to "Package Modules".
  (Package Modules): Explain that (gnu packages ...) is scanned.
2014-03-08 00:18:21 +01:00
Eric Bavier 583103416d gnu: Add a2ps, trueprint, enscript, and source-highlight
* gnu/packages/pretty-print.scm: New file
* gnu/packages/patches/source-highlight-regexrange-test.patch: New file
* gnu-system.am (dist_patch_DATA): Add patch.
(GNU_SYSTEM_MODULES): Add pretty-print.scm
2014-03-07 10:11:12 -06:00
Cyril Roelandt ff3c0c1b80 coreutils: fix test suite
* gnu/packages/patches/coreutils-skip-nohup.patch: patch taken from the git
  repository of coreutils, that makes sure tests/misc/nohup.sh does not fail
  when /dev/tty does not exist.
* gnu/packages/base.scm (coreutils): use it.
* gnu-system.am (dist_patch_DATA): add it.
2014-03-07 00:45:51 +01:00
Ludovic Courtès cafb92d853 store: 'export-paths' doesn't export references of the given files.
This fixes a regression introduced in
99fbddf9a6 ("store: Change 'export-paths'
to always export in topological order.")

* guix/store.scm (export-paths): Define 'ordered' variable.  Iterate
  over it.
* tests/store.scm ("export/import paths, ensure topological order"): Add
  'file0'.  Adjust accordingly.
2014-03-07 00:19:03 +01:00
David Thompson 4d01bd3c1c gnu: Add ncmpc.
* gnu/packages/mpd.scm (ncmpc): New variable.
2014-03-06 16:51:16 -05:00
Ludovic Courtès 9ea3ef2655 utils: 'fcntl-flock' passes an errno when throwing an exception.
* guix/utils.scm (%libc-errno-pointer, errno): New procedures.
  (fcntl-flock): Use it as the exception's argument.
2014-03-06 21:42:24 +01:00
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 1faca892a3 Partly revert "gnu: Remove now unneeded 'modules' fields from 'origin' specifications."
This partly reverts commit a3a1417dc7.

* gnu/packages/base.scm (glibc)[source]: Re-add 'modules' clause.
* gnu/packages/lsh.scm (lsh)[source]: Remove 'use-modules' form from
  'snippet'.  Add 'modules' field.
2014-02-28 12:22:14 +01:00
Ludovic Courtès 664b031031 gnu: coreutils: Patch 'Makefile.in', not 'local.mk'.
* gnu/packages/patches/coreutils-dummy-man.patch: Patch 'Makefile.in',
  not 'local.mk'; the latter otherwise requires Automake to regenerate
  the build system.
2014-02-28 10:56:45 +01:00
Ludovic Courtès a3a1417dc7 gnu: Remove now unneeded 'modules' fields from 'origin' specifications.
The previous commit has made (guix build utils) imported by default, so
no need to specify it.

* gnu/packages/base.scm (glibc)[source]: Remove 'modules' and
  'imported-modules' fields.
* gnu/packages/lsh.scm (lsh)[source]: Likewise.
2014-02-28 10:49:07 +01:00
Ludovic Courtès 3ca00bb51e packages: Support 'patches' and 'snippets' for sources that are directories.
* guix/packages.scm (patch-and-repack)[numeric-extension?, tarxz-name]:
  New procedures.
  [builder]: Adjust to deal with SOURCE when it's a directory.
  <body>: Use 'tarxz-name'.  Always add (guix build utils) to
  IMPORTED-MODULES.
2014-02-28 10:42:09 +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 284c004613 gnu: bash, readline: Upgrade.
* gnu/packages/readline.scm (readline): Upgrade to 6.3.
* gnu/packages/bash.scm (bash): Upgrade to 4.3.
2014-02-27 23:59:55 +01:00
Ludovic Courtès 829ecd002e Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/libwebsockets.scm
2014-02-27 23:49:30 +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