Commit graph

22606 commits

Author SHA1 Message Date
Christopher Baines
f135b4ae83
git-download: Speed up 'git-predicate'.
Adjust 'git-predicate' to use data structures that perform better when used
with git repositories with a large number of files.

Previously when matching either a regular file or directory, 'git-predicate'
would search a list with a length equal to the number of files in the
repository. As a search operation happens for roughly every file in the
repository, this meant that the time taken to use 'git-predicate' to traverse
all the files in a repository was roughly exponential with respect to the
number of files in the repository.

Now, for matching regular files or symlinks, 'git-predicate' uses a vhash
using the inode value as the key. This should perform roughly in constant
amount of time, instead of linear with respect to the number of files in the
repository.

For matching directories, 'git-predicate' now uses a tree structure stored in
association lists. To check if a directory is in the tree, the tree is
traversed from the root. The time complexity of this depends on the shape of
the tree, but it should be an improvement on searching through the list of all
files.

* guix/git-download.scm (files->directory-tree, directory-in-tree?): New
procedures.
(git-predicate): Compute DIRECTORY-TREE.  Turn INODES into a vhash.
Adjust body of lambda accordingly.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-07-25 23:24:16 +02:00
Ludovic Courtès
84620dd0c4
offload: Fix potential file descriptor and memory leak.
The '%slots' list could grow indefinitely; in practice though,
guix-daemon is likely to restart 'guix offload' often enough.

* guix/scripts/offload.scm (%slots): Remove.
(choose-build-machine): Don't 'set!' %SLOTS.  Return the acquired slot
as a second value.
(process-request): Adjust accordingly.  Release the returned slot after
'transfer-and-offload'.
2017-07-25 23:24:16 +02:00
Ludovic Courtès
236cae0628
offload: Disconnect sessions created by 'machine-load'.
This fixes a memory leak that can be seen by running:

  (map (lambda _ (machine-load m)) (iota 1000))

* guix/scripts/offload.scm (machine-load): Add call to 'disconnect!'.
2017-07-25 23:24:15 +02:00
Oleg Pykhalov
af79852c99
gnu: neofetch: Fix search path.
* gnu/packages/admin.scm (neofetch): Fix "No such file or directory" for distro logo.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-07-25 23:07:37 +02:00
Marius Bakke
16fb1e79ca
gnu: chess: Update to 6.2.5.
* gnu/packages/games.scm (chess): Update to 6.2.5.
2017-07-25 23:07:37 +02:00
Marius Bakke
4eacb47de0
gnu: feh: Update to 2.19.1.
* gnu/packages/image-viewers.scm (feh): Update to 2.19.1.
2017-07-25 22:58:43 +02:00
Marius Bakke
5f02ea1a6d
gnu: notmuch: Update to 0.25.
* gnu/packages/mail.scm (notmuch): Update to 0.25.
2017-07-25 22:58:43 +02:00
Kei Kebreau
4fdab17371
gnu: python2-urwid: Actually build urwid for Python 2.
* gnu/packages/python.scm (python2-urwid)[arguments]: Add #:python.
2017-07-25 15:29:29 -04:00
Leo Famulari
e9f468dfcd
gnu: tcpdump: Update to 4.9.1 [fixes CVE-2017-11108].
* gnu/packages/admin.scm (tcpdump): Update to 4.9.1.
2017-07-25 15:25:44 -04:00
Feng Shu
90062885b7
gnu: you-get: Update to 0.4.803.
* gnu/packages/video.scm (you-get): Update to 0.4.803.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-07-25 14:44:19 -04:00
Kei Kebreau
c7db7b86ce
gnu: perl-dbd-mysql: Fix CVE-2017-10788.
* gnu/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/databases.scm (perl-dbd-mysql)[source]: Use it.
2017-07-25 14:11:20 -04:00
Dave Love
bb0f6d7526
gnu: openmpi: Description mentions MPI 3.0.
* gnu/packages/mpi.scm (openmpi): It's MPI 3, not MPI 2.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-07-25 18:10:08 +02:00
Dave Love
1f9bff4152
gnu: openmpi: Update to 1.10.7.
* gnu/packages/mpi.scm (openmpi): Update to 1.10.7.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-07-25 18:09:27 +02:00
Ludovic Courtès
386f541556
hydra: Add 'guix.SYSTEM' jobs.
* build-aux/hydra/guix.scm (package->alist): Disable grafting.
(hydra-jobs): Return 'guix.SYSTEM' jobs in addition to 'tarball'.
2017-07-25 17:46:17 +02:00
Ludovic Courtès
06ce8e5680
hydra: Simplify 'tarball' job.
* build-aux/hydra/guix.scm (tarball-package): Remove.
(hydra-jobs): Use 'dist-package' instead of 'tarball-package'.
2017-07-25 17:46:17 +02:00
Ludovic Courtès
70bc608503
gnu: Add guile2.0-git.
* gnu/packages/guile.scm (guile2.0-git): New variable.
2017-07-25 17:46:17 +02:00
Ludovic Courtès
726ecfeb3a
gnu: Add guile2.0-bytestructures.
* gnu/packages/patches/guile-bytestructures-name-clash.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/guile.scm (guile-bytestructures)[source]: Use it.
[arguments]: Unpack the source.
[native-inputs]: New field.
(guile2.0-bytestructures): New variable.
2017-07-25 17:46:17 +02:00
Kei Kebreau
0093b1262b
gnu: maxima: Ensure binutils are available at runtime.
* gnu/packages/maths.scm (maxima)[arguments]: Use modify-phases syntax.
Modify 'post-install' phase.
2017-07-25 07:58:55 -04:00
Kei Kebreau
6b2eafaaa8
Revert "gnu: maxima: Ensure gcc is available at runtime."
This reverts commit f2fa86cc82.
Commit 5ea8dbf0c9 fixes the underlying
issue in GNU Common Lisp.
2017-07-25 07:58:46 -04:00
Kei Kebreau
5ea8dbf0c9
gnu: gcl: Ensure gcc and binutils are available at runtime.
* gnu/packages/lisp.scm (gcl)[arguments]: Add -fgnu89-inline to CFLAGS.
Add GCC path to make-flags. Modify 'pre-conf' phase. Add 'wrap' phase.
2017-07-25 07:58:06 -04:00
Mark H Weaver
ebc9f7050c
gnu: webkitgtk: Update to 2.16.6 [security fixes].
Includes fixes for CVE-2017-7039, CVE-2017-7018, CVE-2017-7030, CVE-2017-7037,
CVE-2017-7034, CVE-2017-7055, CVE-2017-7056, CVE-2017-7064, CVE-2017-7061,
CVE-2017-7048, and CVE-2017-7046.

* gnu/packages/webkit.scm (webkitgtk): Update to 2.16.6.
2017-07-25 07:32:25 -04:00
Ludovic Courtès
a84ea2191e
system: Add a default '.guile' skeleton.
* gnu/system/shadow.scm (default-skeletons): Add ".guile".
2017-07-25 12:23:26 +02:00
Ludovic Courtès
585347d7aa
Add 'guix weather'.
* guix/scripts/weather.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (Substitutes, Invoking guix publish): Mention "guix
weather".
(Invoking guix weather): New node.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-07-25 12:15:43 +02:00
Leo Famulari
5b4a6ba044
gnu: xterm: Update to 330.
* gnu/packages/xorg.scm (xterm): Update to 330.
2017-07-24 22:54:18 -04:00
Leo Famulari
0e8fed86d8
gnu: dialog: Update to 1.3-20170509.
* gnu/packages/ncurses.scm (dialog): Update to 1.3-20170509.
2017-07-24 22:54:15 -04:00
Leo Famulari
fce8285e4b
gnu: opus: Update to 1.2.1.
* gnu/packages/xiph.scm (opus): Update to 1.2.1.
[source]: Use new source URL.
2017-07-24 17:37:05 -04:00
Christopher Baines
d61a894bfa
gnu: gnome: Add deja-dup.
* gnu/packages/gnome.scm (deja-dup): New variable.
* gnu/packages/patches/deja-dup-use-ref-keyword-for-iter.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch file entry.
2017-07-24 20:05:49 +01:00
Ludovic Courtès
e956ae16a4
import: cpan: Updater returns a list of URLs.
* guix/import/cpan.scm (latest-release): Return a list in the 'urls'
field of 'upstream-source'.
2017-07-24 17:35:26 +02:00
Ludovic Courtès
c022e11187
gnu: guix: Update snapshot.
* gnu/packages/package-management.scm (guix): Update to f1ddfe4.
2017-07-24 12:25:08 +02:00
Ludovic Courtès
f1ddfe4f14
gnu: python-flaky: Fix Texinfo markup in description.
* gnu/packages/python.scm (python-flaky)[description]: Escape "@".
2017-07-24 12:05:53 +02:00
Leo Famulari
2472f7a8f1
gnu: isc-dhcp: Update bundled bind to 9.9.10-P3.
This fixes a regression introduced in the fix for CVE-2017-3142, in BIND
9.9.10-P2, commit ecb232bdfc.

See 'CHANGELOG' in the source distribution for more information.

* gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.10-P3.
2017-07-23 19:05:37 -04:00
Leo Famulari
5391c6c9d2
gnu: bind: Update to 9.11.1-P3.
This fixes a regression introduced in the fix for CVE-2017-3142, in BIND
9.11.1-P2, commit faa1369e3c.

See 'CHANGELOG' in the source distribution for more information.

* gnu/packages/dns.scm (isc-bind): Update to 9.11.1-P3.
2017-07-23 19:05:37 -04:00
Mark H Weaver
c67d80563f
gnu: ncurses/gpm: Move to (gnu packages ncurses).
This is needed to avoid compilation problems caused by the cyclic dependency
between (gnu packages ncurses) and (gnu packages linux).

* gnu/packages/linux.scm (ncurses/gpm): Move to ...
* gnu/packages/ncurses.scm (ncurses/gpm): ... here.  Fix misleading
indentation.  Add (gnu packages linux) to the module imports.
2017-07-23 17:04:51 -04:00
Efraim Flashner
fd900d68a5
gnu: Add support for aarch64's compiled kernel.
* gnu/packages/linux.scm (linux-libre)[arguments]: Add to the regex to
find and install the aarch64-linux kernel.
* gnu/system.scm (system-linux-image-file-name): Add entry for aarch64.
2017-07-23 23:33:18 +03:00
Efraim Flashner
826adfdb37
gnu: Add xf86-video-freedreno.
* gnu/packages/xorg.scm (xf86-video-freedreno): New variable.
2017-07-23 23:33:17 +03:00
Efraim Flashner
4adeb3f6e6
gnu: Add u-boot-odroid-c2.
* gnu/packages/bootloaders.scm (u-boot-odroid-c2): New variable.
2017-07-23 23:33:16 +03:00
Efraim Flashner
1313628339
gnu: u-boot: Update to 2017.07.
* gnu/packages/bootloaders.scm (u-boot): Update to 2017.07.
2017-07-23 23:33:13 +03:00
Marius Bakke
846cb73865
gnu: tevent: Update to 0.9.33.
* gnu/packages/samba.scm (tevent): Update to 0.9.33.
2017-07-23 22:01:29 +02:00
Marius Bakke
85a5800e52
gnu: talloc: Update to 2.1.10.
* gnu/packages/samba.scm (talloc): Update to 2.1.10.
2017-07-23 22:01:29 +02:00
Marius Bakke
fbed150133
gnu: ldb: Update to 1.1.31.
* gnu/packages/samba.scm (ldb): Update to 1.1.31.
[native-inputs]: Add CMOCKA.
2017-07-23 22:01:28 +02:00
Marius Bakke
17c3f1fb67
gnu: cmocka: Update to 1.1.1.
* gnu/packages/check.scm (cmocka): Update to 1.1.1.
2017-07-23 22:01:28 +02:00
Marius Bakke
38bb9df150
gnu: tdb: Update to 1.3.14.
* gnu/packages/databases.scm (tdb): Update to 1.3.14.
2017-07-23 22:01:28 +02:00
Marius Bakke
09efef3384
gnu: python-scipy: Update to 0.19.1.
* gnu/packages/python.scm (python-scipy): Update to 0.19.1.
[source]: Use 'pypi-uri'.
2017-07-23 22:01:28 +02:00
Marius Bakke
71d20587a5
gnu: python-matplotlib: Update to 2.0.2.
* gnu/packages/python.scm (python-matplotlib): Update to 2.0.2.
[source]: Use 'pypi-uri'.
2017-07-23 22:01:28 +02:00
Marius Bakke
9e5ee6b60c
gnu: python-pyparsing: Update to 2.2.0.
* gnu/packages/python.scm (python-pyparsing, python2-pyparsing): Update to
2.2.0.
2017-07-23 22:01:27 +02:00
Marius Bakke
007176e710
gnu: python-pyparsing: Use 'modify-phases' syntax.
* gnu/packages/python.scm (python-pyparsing)[arguments]<#:phases>: Use
'modify-phases'.
2017-07-23 22:01:27 +02:00
Oleg Pykhalov
6e864d0081
gnu: Add xmobar.
gnu/packages/wm.scm (xmobar): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-07-23 15:29:36 -04:00
Efraim Flashner
8f155e3cff
gnu: bash-completion: Update to 2.7.
* gnu/packages/bash.scm (bash-completion): Update to 2.7.
2017-07-23 11:05:54 +03:00
ng0
9478c05955
gnu: getmail: Update to 5.1.
* gnu/packages/mail.scm (getmail): Update to 5.1.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-07-22 20:34:47 -04:00
Ben Woodcroft
f3f68a442c
gnu: metabat: Update to 2.11.1.
* gnu/packages/bioinformatics.scm (metabat): Update to 2.11.1.
[source]: Add patch to fix compilation.
[arguments]: Adjust regular expressions modifying 'SConstruct'.
* gnu/packages/patches/metabat-fix-compilation.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-07-23 10:29:36 +10:00