Ludovic Courtès
7f3673f21d
guix build: Add '--with-source'.
...
* guix/scripts/build.scm (package-with-source): New procedure.
(show-help): Add '--with-source'.
(%options): Likewise.
(options->derivations): Call 'options/with-source' and
'options/resolve-packages'.
(options/resolve-packages, options/with-source): New procedures.
* doc/guix.texi (Invoking guix build): Document '--with-source'.
2014-03-12 00:22:41 +01:00
Ludovic Courtès
d91a879121
download: 'download-to-store' accepts plain file names.
...
* guix/download.scm (download-to-store): When URI is #f, assume that URL
is a file name, and handle it.
2014-03-11 22:09:42 +01:00
Ludovic Courtès
6f58d58243
More /gnu/store replacements.
...
* gnu/packages/gcc.scm (gcc-4.7): Change /nix/store in comment.
* gnu/system/vm.scm (operating-system-default-contents):
Use (%store-prefix) instead of "/nix/store".
* guix/derivations.scm (derivation-path->output-path,
derivation-path->output-paths): Change to /gnu/store in docstring.
2014-03-10 23:58:40 +01:00
Ludovic Courtès
c9c88118a1
gnu: linux-initrd: Make the pseudo-tty device nodes.
...
* guix/build/linux-initrd.scm (make-essential-device-nodes): Create
/dev/ptmx and /dev/pts.
* gnu/system/vm.scm (qemu-image): Umount /fs/dev/pts before /fs.
2014-03-10 23:43:31 +01:00
Ludovic Courtès
58cbbe4b55
tests: 'topologically-sorted' test handles different references orders.
...
* tests/store.scm ("topologically-sorted, more difficult"): Arrange to
handle a different ordering of (references %store y).
2014-03-10 23:43:31 +01:00
Ludovic Courtès
220193ad03
gnu: Add UnionFS-FUSE.
...
* gnu/packages/linux.scm (unionfs-fuse): New variable.
2014-03-10 23:43:31 +01:00
Pierre-Antoine Rault
5ff3c4b820
doc: Update packaging guidelines.
...
* HACKING (Submitting Patches): Mention 'git send-mail'.
* doc/guix.texi (Packaging Guidelines): More details on how to prepare a
package module.
(Contributing): Add reference to #guix channel on Freenode.
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2014-03-10 23:43:31 +01:00
Eric Bavier
8a1f6a7e02
gnu: pretty-print: Fix boost reference
...
* gnu/packages/pretty-print.scm (source-highlight): Change "boost-1.54" input
to "boost"
2014-03-10 13:41:40 -05:00
Ludovic Courtès
714084e6c0
offload: Honor absolute build timeouts.
...
* guix/scripts/offload.scm (offload): Remove default value for
'build-timeout'. Pass '--timeout' to the remote 'guix build'
process.
(transfer-and-offload, process-request): Remove default value for
'build-timeout'.
2014-03-09 23:15:09 +01:00
Ludovic Courtès
002622b65b
guix build: Add '--timeout' to the common build options.
...
* guix/scripts/build.scm (show-build-options-help): Document
'--timeout'.
(set-build-options-from-command-line): Pass #:timeout to
'set-build-options'.
(%standard-build-options): Add '--timeout'.
* doc/guix.texi (Invoking guix build): Document it.
2014-03-09 23:09:18 +01:00
Ludovic Courtès
6c20d1d0c3
store: Add #:timeout build option.
...
* guix/serialization.scm (write-string-pairs): New procedure.
* guix/store.scm (write-arg): Add 'string-pairs' case.
(set-build-options): Add 'timeout' keyword parameter. Honor it.
* tests/derivations.scm ("build-expression->derivation and timeout"):
New test.
2014-03-09 23:01:18 +01:00
Ludovic Courtès
02c86a5e36
gnu: Add libpcap and jnettop.
...
* gnu/packages/admin.scm (libpcap, jnettop): New variables.
2014-03-09 22:36:48 +01:00
Ludovic Courtès
f5768afa33
build: Change state and log directories to $localstatedir/.../guix.
...
* daemon.am (libstore_a_CPPFLAGS): Change /nix to /guix.
* guix/config.scm.in (%state-directory): Likewise.
* guix/store.scm (log-file): Likewise.
2014-03-09 22:10:01 +01:00
Ludovic Courtès
834129e0e2
Change the default store file name to /gnu/store.
...
* configure.ac: Change the default 'storedir' to /gnu/store. Print
$storedir.
* doc/guix.texi: Replace "/nix/store" by "/gnu/store", except where
describing Nix compatibility.
* Makefile.am: Likewise.
2014-03-09 22:09:58 +01:00
Ludovic Courtès
59f704dff6
offload: Move macro definitions before use.
...
* guix/scripts/offload.scm (lock-file, unlock-file, with-file-lock,
with-machine-lock, machine-slot-file, acquire-build-slot,
release-build-slot): Move definitions above their first use.
2014-03-09 18:08:38 +01:00
Andreas Enge
2a51db7d8d
gnu: soprano: Add input raptor2.
...
* gnu/packages/rdf.scm (soprano): Add input raptor2.
2014-03-09 15:02:46 +01:00
Ludovic Courtès
88da0b6888
offload: Distinguish between 'decline' and 'postpone'.
...
* guix/scripts/offload.scm (transfer-and-offload): New procedure, with
core formerly in 'process-request'.
(choose-build-machine): Remove 'requirements' parameter.
(process-request): Reply 'decline' when none of MACHINES matches the
requirements, and 'postpone' when MACHINES are busy.
2014-03-09 14:06:35 +01:00
Andreas Enge
0e6260a493
gnu: raptor2: Disable parallel tests.
...
* gnu/packages/rdf.scm (raptor2): Disable parallel tests since it makes
tests fail.
2014-03-09 11:42:37 +01:00
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
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