Commit Graph

45414 Commits

Author SHA1 Message Date
Ludovic Courtès c30d117822
tests: Avoid TCP port collision between lint.scm and guix-daemon.sh.
This could lead to random deadlocks in one of these two tests when
running "make check -j5".

* tests/guix-daemon.sh (tcp_socket): Change port to 9998 to avoid
collision with tests/lint.scm.
2019-06-27 11:14:42 +02:00
Ludovic Courtès 08c95ba28d
ui: 'show-derivation-outputs' accepts <derivation-input> records.
* guix/ui.scm (show-derivation-outputs): Handle <derivation-input>
records.
2019-06-27 11:14:42 +02:00
Ludovic Courtès d38d4ffa10
ui: 'show-what-to-build' accepts derivation inputs.
This is a followup to f8a9f99cd6.

* guix/ui.scm (show-what-to-build)[inputs]: New variables.
[substitutable-info]: Build the derivation list from INPUTS.
Pass INPUTS to 'derivation-build-plan'.
2019-06-27 11:14:42 +02:00
Ludovic Courtès 066eeae1a1
packages: 'specification->package+output' distinguishes "no output specified".
Until now the caller couldn't tell the different between a spec like
"foo:out" and one like "foo".  This change allows users to distinguish
between these two cases.

* gnu/packages.scm (specification->package+output): Disable output
membership test when OUTPUT = #f and SUB-DRV = #f.
* tests/packages.scm ("specification->package+output")
("specification->package+output invalid output")
("specification->package+output no default output")
("specification->package+output invalid output, no default"): New tests.
2019-06-27 11:14:41 +02:00
Ludovic Courtès 7c690a4738
derivations: 'build-derivations' can be passed derivation inputs.
* guix/derivations.scm (build-derivations): Accept <derivation-input>
records among DERIVATIONS.
* tests/derivations.scm ("build-derivations with specific output"): Test
it.
2019-06-27 11:14:41 +02:00
Ludovic Courtès fd951cd543
derivations: 'derivation' preserves pointer equality.
* guix/derivations.scm (derivation): Check if FILE is already in
%DERIVATION-CACHE and return it if it is.
2019-06-27 11:14:41 +02:00
Ludovic Courtès 5cf4b26d52
derivations: <derivation-input> now aggregates a <derivation>.
Consequently, the whole graph of <derivation> object is readily
available without having to go through 'read-derivation-from-file',
which could have cache misses if the requested <derivation> object had
been GC'd in the meantime.  This is an important property for the
performance of things like 'derivation-build-plan' that traverse the
derivation graph.

* guix/derivations.scm (<derivation-input>): Replace 'path' field by
'derivation'.
(derivation-input-path): Adjust accordingly.
(derivation-input-key): New procedure.
(derivation-input-output-paths): Adjust accordingly.
(coalesce-duplicate-inputs): Likewise.
(derivation-prerequisites): Use 'derivation-input-key' to compute keys
for INPUT-SET.
(derivation-build-plan): Likewise.
(read-derivation): Add optional 'read-derivation-from-file' parameter.
[make-input-drvs]: Call it.
(write-derivation)[write-input]: Adjust to new <derivation-input>.
(derivation/masked-inputs): Likewise, and remove redundant
'coalesce-duplicate-inputs' call.
(derivation)[input->derivation-input]: Change to consider only the
derivation case.  Update call to 'make-derivation-input'.
[input->source]: New procedure.
Separate sources from inputs.
(map-derivation): Adjust to new <derivation-input>.
* tests/derivations.scm ("parse & export"): Pass a second argument to
'read-derivation'.
("build-expression->derivation and derivation-prerequisites")
("derivation-prerequisites and valid-derivation-input?"): Adjust to new
<derivation-input>.
2019-06-27 11:14:41 +02:00
Ludovic Courtès a250061986
graph: Use 'derivation-input-derivation'.
* guix/scripts/graph.scm (derivation-dependencies): Use
'derivation-input-derivation'.
2019-06-27 11:14:41 +02:00
Ludovic Courtès 9844d0091e
ui: 'show-what-to-build' uses 'derivation-build-plan'.
* guix/ui.scm (show-what-to-build)[build-or-substitutable?]: Remove.
Use 'derivation-build-plan' instead of
'derivation-prerequisites-to-build', passing it all of DRV at once, and
remove 'fold2' shenanigans and postprocessing of BUILD.
2019-06-27 11:14:41 +02:00
Ludovic Courtès ba04f80e2e
derivations: Rewrite and replace 'derivations-prerequisites-to-build'.
The new 'derivation-build-plan' procedure has a more appropriate
signature: it takes a list of <derivation-inputs> instead of taking one
<derivation>.  Its body is also much simpler.

* guix/derivations.scm (derivation-build-plan): New procedure.
(derivation-prerequisites-to-build): Express in terms of
'derivation-build-plan' and mark as deprecated.
* tests/derivations.scm: Change 'derivation-prerequisites-to-build'
tests to 'derivation-build-plan' and adjust accordingly.
2019-06-27 11:14:41 +02:00
Ludovic Courtès c89985d91d
derivations: Add 'derivation-input'.
* guix/derivations.scm (derivation-input): New procedure.
* tests/grafts.scm (make-derivation-input): Remove.
("graft-derivation, unused outputs not depended on"): Use
'derivation-input'.
2019-06-27 11:14:41 +02:00
Ludovic Courtès 4311cf965c
ui: Add 'display-search-results' and use it.
* guix/ui.scm (display-search-results): New procedure.
* guix/scripts/package.scm (find-packages-by-description): Remove
'unzip2' call and return a list of pairs.
(process-query): Change to use 'display-search-results'.
* guix/scripts/system/search.scm (find-service-types): Remove 'unzip2'
call and return a list of pairs.
(guix-system-search): Use 'display-search-results'.
2019-06-27 11:14:41 +02:00
Ludovic Courtès 4593f5a654
syscalls: Add 'terminal-rows'.
* guix/build/syscalls.scm (terminal-dimension): New procedure.
(terminal-columns): Rewrite in terms of 'terminal-dimension'.
(terminal-rows): New procedure.
* tests/syscalls.scm ("terminal-rows"): New test.
2019-06-27 11:14:40 +02:00
Ludovic Courtès 8874faaaac
ui: 'relevance' considers regexps connected with a logical and.
* guix/ui.scm (relevance)[score]: Change to return 0 when one of REGEXPS
doesn't match.
* tests/ui.scm ("package-relevance"): New test.
2019-06-27 11:14:40 +02:00
Ludovic Courtès c25b44d640
accounts: Use 'fsync' instead of 'fdatasync'.
* gnu/build/accounts.scm (catch-ENOSYS): Remove.
(database-writer): Use 'fsync' instead of 'fdatasync'.
2019-06-27 11:14:40 +02:00
Rutger Helling b09e4960be
gnu: dosbox: Update to 0.74-3.
* gnu/packages/emulators.scm (dosbox): Update to 0.74-3.
2019-06-27 10:24:11 +02:00
Arun Isaac 4ffed73419
gnu: rep-gtk: Update to 0.90.8.3.
* gnu/packages/sawfish.scm (rep-gtk): Update to 0.90.8.3.
[source]: Use HTTPS URI.
[arguments]: Add remove-autogen phase.
[native-inputs]: Add autoconf, automake and libtool.
[home-page]: Update URI.
2019-06-27 12:22:04 +05:30
Benjamin Slade edccf761e3
gnu: sawfish: Update to 1.12.0.
* gnu/packages/sawfish.scm (sawfish): Update to 1.12.0.
[source]: Use HTTPS URI.
[home-page]: Update URI.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2019-06-27 12:21:09 +05:30
Vagrant Cascadian 7a70e7ca04
gnu: electron-cash: Update to 4.0.7.
* gnu/packages/finance (electron-cash): Update to 4.0.7.
2019-06-26 20:14:45 -07:00
Tobias Geerinckx-Rice ba912479e8
Revert "gnu: openssh: Don't create the PRIVSEP_PATH directory."
This reverts commit 46475f72ab.
2019-06-27 00:21:16 +02:00
Tobias Geerinckx-Rice 1ebb908d44
Revert "gnu: openssh: Clean-up custom install phase."
This reverts commit 7754136e46.
2019-06-27 00:21:16 +02:00
Nicolas Goaziou cac6c3bad5
gnu: supertux: Fix homepage.
* gnu/packages/games.scm (supertux)[homepage]: Fix URL.
2019-06-26 19:45:34 +02:00
Andreas Enge 75a137da76
gnu: Add texmacs.
* gnu/packages/text-editors.scm (texmacs): New variable.
2019-06-26 18:23:02 +02:00
Ricardo Wurmus 49ad11e958
gnu: python-pathpy: Update to 11.5.0.
* gnu/packages/python-xyz.scm (python-pathpy): Update to 11.5.0.
[outputs]: Add separate "doc" output.
[native-inputs]: Add python-jaraco-packaging.
[arguments]: Enable tests; uncomment "build-doc" and "install-doc" phases;
replace "check" phase to skip flaky test.
2019-06-26 16:24:59 +02:00
Ricardo Wurmus 37c173d162
gnu: Add python-jaraco-packaging.
* gnu/packages/python-xyz.scm (python-jaraco-packaging): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 05b3dcbe32
gnu: Add python-pytest-virtualenv.
* gnu/packages/python-check.scm (python-pytest-virtualenv): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 7d5ffecba5
gnu: Add python-pytest-fixture-config.
* gnu/packages/python-check.scm (python-pytest-fixture-config): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 21e2c55945
gnu: Add python-pytest-shutil.
* gnu/packages/python-check.scm (python-pytest-shutil): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 3b89476b70
gnu: Add python-pytest-flake8.
* gnu/packages/python-check.scm (python-pytest-flake8): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 85bf6798e6
gnu: Add python-pytest-checkdocs.
* gnu/packages/python-check.scm (python-pytest-checkdocs): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 15b6561769
gnu: Add python-importlib-metadata.
* gnu/packages/python-xyz.scm (python-importlib-metadata): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 94f960ffed
gnu: Add python-zipp.
* gnu/packages/python-compression.scm (python-zipp): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 724a350c87
gnu: Add python-setuptools-git.
* gnu/packages/python-xyz.scm (python-setuptools-git): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 3e8f76d801
gnu: Add python-contextlib2.
* gnu/packages/python-xyz.scm (python-contextlib2): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus bb74ea0990
gnu: Add python-pathlib2.
* gnu/packages/python-xyz.scm (python-pathlib2): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 37cb4e5b8e
gnu: Add mesa-opencl-icd.
* gnu/packages/gl.scm (mesa-opencl-icd): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus fae4294246
gnu: Add mesa-opencl.
* gnu/packages/gl.scm (mesa-opencl): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus a2cc25ab96
gnu: Add libclc.
* gnu/packages/llvm.scm (libclc): New variable.
2019-06-26 16:24:58 +02:00
Ricardo Wurmus 4980b0b5b9
gnu: libcxx: Update hash.
This is a follow-up to commit c5296e205b, which
updated llvm.

* gnu/packages/llvm.scm (libcxx): Update hash.
2019-06-26 16:24:58 +02:00
Guillaume LE VAILLANT 072e986ec8
gnu: Add gramps
* gnu/packages/genealogy.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-26 15:59:58 +02:00
Guillaume LE VAILLANT ee34be7375
gnu: Add osm-gps-map
* gnu/packages/geo.scm (osm-gps-map): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-26 15:59:58 +02:00
Guillaume LE VAILLANT f825e60590
gnu: Add python-bsddb3
* gnu/packages/python-xyz.scm (python-bsddb3): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-26 15:59:58 +02:00
Ludovic Courtès 83817158b2
gnu: python-on-guile: Wrap 'python' executable.
* gnu/packages/guile-xyz.scm (python-on-guile)[arguments]: Add 'wrap'
phase.
2019-06-26 15:59:58 +02:00
Ludovic Courtès 5d5edb88bd
gnu: python-on-guile: Update to 00a51a2.
* gnu/packages/guile-xyz.scm (python-on-guile): Update to 00a51a2.
2019-06-26 15:59:58 +02:00
Amar Singh 67d24b15ca
gnu: Add celestia-gtk.
* gnu/packages/astronomy.scm (celestia-gtk): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2019-06-26 15:59:58 +02:00
Amar Singh ca310f65c5
gnu: Add celestia.
* gnu/packages/astronomy.scm (celestia): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-26 15:59:58 +02:00
Ricardo Wurmus 2cb738a6ad
gnu: Add r-rsubread.
* gnu/packages/bioconductor.scm (r-rsubread): New variable.
2019-06-26 15:52:10 +02:00
Pierre Neidhardt 536dcafbf9
gnu: Add sbcl-cl-cookie.
* gnu/packages/lisp.scm (sbcl-cl-cookie): New variable.
2019-06-26 13:39:10 +02:00
Pierre Neidhardt 167fec29f5
gnu: Add sbcl-cl-reexport.
* gnu/packages/lisp.scm (sbcl-cl-reexport): New variable.
2019-06-26 13:39:02 +02:00
Pierre Neidhardt 63015205d8
gnu: Add sbcl-closure-common.
* gnu/packages/lisp.scm (sbcl-closure-common): New variable.
2019-06-26 13:03:58 +02:00