Commit Graph

11312 Commits

Author SHA1 Message Date
Ludovic Courtès dd78e90a4d store: 'references/substitutes' correctly handles the order of substitutes.
Before that, 'references/substitutes' would assume that
'substitutable-path-info' would return things in the same order as its
arguments, which is not the case.  Thus, it would sometimes provide
incorrect reference information, occasionally leading to infinite
loop (because dependency information would denote cycles.)

Fixes <http://bugs.gnu.org/22914>.
Reported by Eric Bavier <ericbavier@openmailbox.org>.

* guix/store.scm (references/substitutes): Make ITEMS the first argument
of the loop; match on it.  Use 'any' to find a matching substitute.
(substitutable-path-info): Clarify docstring about ordering.
2016-03-05 22:53:40 +01:00
Andreas Enge 451b5c5dc6 gnu: vigra: Update to a development snapshot.
* gnu/packages/image.scm (vigra): Update to a git snapshot to fix build
  problems with the current python-numpy.
2016-03-05 19:09:42 +01:00
Andreas Enge d7c4619bd1 gnu: Add einstein.
* gnu/packages/games.scm (einstein): New variable.
* gnu/packages/patches/einstein-build.patch: New file.
* gnu-system.am (dist_patch_DATA): Register patch.
2016-03-05 18:44:43 +01:00
Andreas Enge 1068f26b79 doc: Typos and small stylistic changes.
* guix.texi: Correct typos and make minor changes.
2016-03-05 16:27:35 +01:00
Andreas Enge 03d55eeca7 gnu: jalv: Drop Qt-4 support.
* gnu/packages/audio.scm (jalv)[inputs]: Drop qt-4. It does not receive any
  upstream security updates, and Qt-4 support is marked as experimental in
  the jalv documentation.
2016-03-05 12:20:09 +01:00
Ludovic Courtès b4c42a4b07 tests: Disable tests that would rebuild the world due to grafting.
The Perl replacement added in d8173f2 leads some tests to involve
grafting, which in turn triggers derivation builds that rebuild the
world.  Work around that.

* tests/packages.scm: Add call to '%graft?'.
("package-derivation, direct graft")
("package-cross-derivation, direct graft"): Comment out.
2016-03-05 00:19:10 +01:00
Ludovic Courtès d4da602e4c grafts: Memoize intermediate results in 'cumulative-grafts'.
The time for:

  guix build inkscape -n --no-substitutes

goes down by 30% (in the presence of 3 replacements among all the
packages.)

* guix/grafts.scm (cumulative-grafts): Turn into a monadic procedure in
%STATE-MONAD.  Use the current state as a derivation-to-graft cache.
(graft-derivation): Call 'cumulative-grafts' within 'run-with-state'.
2016-03-05 00:19:10 +01:00
Ludovic Courtès fcadd9ff9d packages: The result of 'bag-grafts' does not contain duplicates.
* guix/packages.scm (bag-grafts): Add call to 'delete-duplicates'.
2016-03-05 00:19:10 +01:00
Ludovic Courtès c90cb5c9d8 grafts: Use dependency information from substitutes when possible.
This avoids starting derivation builds just for the sake of knowing the
references of their outputs, thereby restoring the expected behavior of
--dry-run when substitutes are available.

* guix/grafts.scm (non-self-references): Remove 'store' parameter, and
add 'references'.  Use it.  Update caller.
(references-oracle): New variable.
(cumulative-grafts): Add 'references' parameter and use it.  Update
callers.
(graft-derivation): Remove 'build-derivations' call.  Add call to
'references-oracle'.
2016-03-05 00:19:10 +01:00
Ludovic Courtès 6581ec9ab9 store: Add 'references/substitutes'.
* guix/store.scm (references/substitutes): New procedure.
* tests/store.scm ("references/substitutes missing reference info")
("references/substitutes with substitute info"): New tests.
2016-03-05 00:19:10 +01:00
Ludovic Courtès 7bfeb9df20 tests: Narinfos can specify an non-empty reference list.
* guix/tests.scm (derivation-narinfo): Add #:references and honor it.
(call-with-derivation-narinfo, call-with-derivation-substitute):
Likewise.
(with-derivation-narinfo, with-derivation-substitute): Add 'references'
keyword.
2016-03-05 00:19:10 +01:00
Ludovic Courtès c8f9f24776 guix build: Set the build options early.
This fixes a bug whereby, with grafts leading to builds very early,
build options such as --substitute-urls would not be taken into account
yet.

Reported by Andreas Enge <andreas@enge.fr>.

* guix/scripts/build.scm (guix-build): Move 'opts' to the beginning.
Use 'with-store' instead of 'open-connection'.  Call
'set-build-options-from-command-line' right after 'with-store'.
2016-03-05 00:19:10 +01:00
Leo Famulari eda0522aab gnu: letsencrypt, python-acme: Update to 0.4.2.
These packages should be updated together.

* gnu/packages/tls.scm (letsencrypt): Update to 0.4.2.
(python-acme, python2-acme): Update to 0.4.2.
2016-03-04 18:10:00 -05:00
Leo Famulari 65f1b8a591 gnu: python-cryptography, python-cryptography-vectors: Update to 1.2.3.
These packages should be updated together.

* gnu/packages/python.scm (python-cryptography): Update to 1.2.3.
(python-cryptography-vectors): Update to 1.2.3.
2016-03-04 18:09:20 -05:00
Ludovic Courtès 44abcb2868 doc: Mention syslogd configuration.
* gnu/services/base.scm (syslog-service): Add xref to Inetutils in the
docstring.
(%default-syslog.conf): Export.
* doc/guix.texi (Base Services): Update accordingly.
2016-03-04 11:48:52 +01:00
Ludovic Courtès 4ce783a2f9 lint: cve: Gracefully handle HTTP errors.
* guix/scripts/lint.scm (current-vulnerabilities*): New procedure.
(package-vulnerabilities): Use it.
2016-03-04 11:48:52 +01:00
Ludovic Courtès fe4e698d77 gnu: gnome: Sync description and synopsis.
* gnu/packages/gnome.scm (gnome)[synopsis, description]: Use official
GNU blurb.
2016-03-04 11:48:52 +01:00
Ludovic Courtès ffaf83dfb1 gnu: nano: Update to 2.5.3.
* gnu/packages/nano.scm (nano): Update to 2.5.3.
2016-03-04 11:48:52 +01:00
Ludovic Courtès 4978ffcfc2 gnu: libgit2: Update to 0.23.4.
* gnu/packages/version-control.scm (libgit2): Update to 0.23.4.
2016-03-04 11:48:52 +01:00
Ludovic Courtès 9c7e7eadfa gnu: findnewest: Update to 0.3.
* gnu/packages/version-control.scm (findnewest): Update to 0.3.
2016-03-04 11:48:52 +01:00
Alex Kost db0c709b9a emacs: Use '@' to separate package names and version numbers.
This is a followup to commit 1b846da8c3.

* emacs/guix-base.el (guix-package-name-specification): Use "@" instead
of "-".
* emacs/guix-main.scm (name+version->full-name): Likewise.
(package-inputs-names): Use 'make-package-specification' instead of
'package-full-name'.
(full-name->name+version): Update the docstring.
* emacs/guix-ui-package.el (guix-packages-by-name): Likewise.
2016-03-04 13:17:36 +03:00
Alex Kost b8fa5a2ae8 emacs: hydra: Use '-' to separate job names and version numbers.
* emacs/guix-hydra.el (guix-hydra-job-name-specification): New procedure.
* emacs/guix-ui-package.el (guix-package-info-insert-systems)
(guix-package-list-latest-builds): Use it.
2016-03-04 13:17:36 +03:00
Leo Famulari c7658f8f2c gnu: exim: Update to 4.86.2 [fixes CVE-2016-1531].
* gnu/packages/mail.scm (exim): Update to 4.86.2.
2016-03-03 20:38:47 -05:00
David Thompson 4a52671131 gnu: Add byzanz.
* gnu/packages/gnome.scm (byzanz): New variable.
2016-03-03 20:23:07 -05:00
Ludovic Courtès abd678565e doc: Improve Info categories.
* doc/guix.texi: Change main category to "System administration".  Fix
syntax of subnodes.  Add entries for 'guix pull' and 'guix gc'.  Add
"Emacs" category.
2016-03-03 23:54:36 +01:00
Ludovic Courtès 5c7e1a3270 build: Use (guix grafts) as needed.
This is a followup to 7adf9b8.

* build-aux/check-final-inputs-self-contained.scm: Use (guix grafts).
* build-aux/check-available-binaries.scm: Likewise.
2016-03-03 23:54:36 +01:00
Efraim Flashner 50b66bf1b0 gnu: youtube-dl: Update to 2016.03.01.
* gnu/packages/video.scm (youtube-dl): Update to 2016.03.01.
2016-03-03 22:55:46 +02:00
Efraim Flashner 581873b55d gnu: mpv: Update to 0.16.0.
* gnu/packages/video.scm (mpv): Update to 0.16.0.
2016-03-03 22:53:37 +02:00
Leo Famulari d8173f21f7 gnu: perl: Replace with patched version [fixes CVE-2016-2381].
* gnu/packages/patches/perl-CVE-2016-2381.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/perl.scm (perl)[replacement]: New field.
(perl-fixed): New variable.
* gnu/packages/commencement.scm (perl-boot0)[replacement]: New field.
2016-03-03 14:56:23 -05:00
Efraim Flashner 7b3f2682de gnu: irssi: Support proxy, socks, bot.
* gnu/packages/irc.scm (irssi)[arguments]: Add configure flags to
support proxy, socks and bot.
2016-03-03 19:04:31 +02:00
Efraim Flashner fd41741bdc gnu: irssi: Update to 0.8.18.
* gnu/packages/irc.scm (irssi): Update to 0.8.18.
[source]: Update uri.
2016-03-03 19:04:31 +02:00
Ludovic Courtès 7016184245 build: Build (guix import github) only when Guile-JSON is available.
Reported by Justus Winter <justus@gnupg.org>.

* Makefile.am (MODULES): Add guix/import/github.scm only when
HAVE_GUILE_JSON.
2016-03-03 17:46:58 +01:00
Justus Winter 8a56a3d7a3 po: Drop removed file 'weechat.scm'.
Fixes <http://bugs.gnu.org/22888>.
weechat has been merged into 'irc.scm' in e288f007.

* po/packages/POTFILES.in: Drop removed file 'weechat.scm'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-03 17:42:47 +01:00
Petter d0a65256a3 system: GRUB menu entry says "beta" instead of "alpha"
* gnu/system.scm (kernel->grub-label): Change "alpha" to "beta'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-03 17:42:47 +01:00
Ludovic Courtès 16cc99610d system: Add rfkill to '%base-packages'.
* gnu/system.scm (%base-packages): Add RFKILL.
2016-03-03 17:42:47 +01:00
Ricardo Wurmus 649e9b3b47 gnu: python-pysam: Move cython and setuptools to native inputs.
* gnu/packages/bioinformatics.scm (python-pysam)[inputs]: Move
"python-cython" and "python-setuptools" from here...
[native-inputs]: ... to here.
2016-03-03 13:47:19 +01:00
Ricardo Wurmus 3acb8c857c gnu: deeptools: Update to 2.1.1.
* gnu/packages/bioinformatics.scm (deeptools): Update to 2.1.1.
[inputs]: Add "python2-numpydoc" and "python2-pybigwig".
2016-03-03 13:47:12 +01:00
Ricardo Wurmus 14bda1ff49 gnu: deeptools: Change "propagated-inputs" to "inputs".
* gnu/packages/bioinformatics.scm (deeptools)[propagated-inputs]: Move
all inputs from here...
[inputs]: ...to here.
2016-03-03 13:47:02 +01:00
Ricardo Wurmus 69e0e03c36 gnu: Add python-pybigwig.
* gnu/packages/bioinformatics.scm (python-pybigwig, python2-pybigwig):
  New variables.
2016-03-03 13:46:52 +01:00
Ricardo Wurmus d454640c38 gnu: python-pysam: Update to 0.8.4.
* gnu/packages/bioinformatics.scm (python-pysam): Update to 0.8.4.
2016-03-03 13:46:39 +01:00
Ricardo Wurmus 55a9a8c2b9 gnu: python-pysam, python2-pysam: Move to bioinformatics.scm.
* gnu/packages/python.scm (python-pysam, python2-pysam): Move to...
* gnu/packages/bioinformatics.scm (python-pysam, python2-pysam):
  ...here.
2016-03-03 13:46:26 +01:00
Ludovic Courtès 937690f909 lint: derivation: Disable grafts, but check replacements.
* guix/scripts/lint.scm (check-derivation): Pass #:graft? #f.  When
'package-replacement' exists, compute its derivation.
2016-03-03 09:46:17 +01:00
Lukas Gradl e90819c40a gnu: Add procmail.
* gnu/packages/patches/procmail-ambiguous-getline-debian.patch: New file.
 * gnu-system.am (dist_patch_DATA): Add it.
 * gnu/packages/mail.scm (procmail): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-02 20:44:18 -05:00
Ludovic Courtès 94d609aba8 guix build: -S returns the replacement's source.
Reported by Mark H Weaver.

* guix/scripts/build.scm (options->derivations): When SRC and GRAFT? are
true, use the source of P's replacement.
* tests/guix-build.sh: Add test.
2016-03-03 00:18:30 +01:00
Ludovic Courtès 49c4fd2aab hydra: Completely disable grafting.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Parameterize '%graft?'.
Build package replacements when they are available.
2016-03-03 00:18:30 +01:00
Ludovic Courtès f8187bde7f hydra: Improve readability.
* build-aux/hydra/gnu-system.scm (hydra-jobs): Use 'filter-map' instead
of directly 'fold-packages'.
2016-03-03 00:18:30 +01:00
Mathieu Lirzin 1b846da8c3 utils: Use '@' for separating package names and version numbers.
This provides the ability to use numbers in package names.

Fixes <http://bugs.gnu.org/19219>.

* guix/utils.scm (package-name->name+version): New procedure.
* gnu/packages.scm (%find-package): Add a FALLBACK? keyword argument.
Use the previous method when no package is found.
(specification->package+output, specification->package): Adapt
documentation to new syntax.
* doc/guix.texi (Invoking guix package, Invoking guix import): Likewise.
* guix/ui.scm (package-specification->name+version+output): Likewise.
* guix/scripts/import/hackage.scm (show-help): Likewise.
* tests/guix-build.sh: Adapt to new syntax.
* tests/guix-lint.sh: Likewise.
* tests/guix-package.sh: Likewise.
* tests/ui.scm ("package-specification->name+version+output"): Likewise.
* tests/utils.scm ("package-name->name+version"): Likewise.
* NEWS: Mention new syntax.
2016-03-02 21:41:41 +01:00
Mathieu Lirzin fad155d47e packages: Factorize package specification search.
* gnu/packages.scm (%find-package): New procedure.
(specification->package, specification->package+output): Use it.
2016-03-02 21:41:41 +01:00
Mark H Weaver b134a80c36 gnu: icecat: Update bundled graphite2 to 1.3.6 [unspecified security fixes].
* gnu/packages/patches/icecat-update-graphite2-pt2.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch.
2016-03-02 15:13:15 -05:00
Mark H Weaver bd009cd95d gnu: nss: Update to 3.21.1.
* gnu/packages/gnuzilla.scm (nss): Update to 3.21.1.
2016-03-02 15:13:14 -05:00