1
0
forked from tribes/guix

Compare commits

...

2248 Commits

Author SHA1 Message Date
Ludovic Courtès f98b48dc51 gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to 7611393.
(guix): Set to GUIX-DEVEL.
2016-03-29 09:35:22 +02:00
Ludovic Courtès 7611393547 gnu: guix: Default to 0.10.0.
This updates 58f0aae.

* gnu/packages/package-management.scm (guix): Set to GUIX-0.10.0.
2016-03-28 23:54:48 +02:00
Ludovic Courtès 58f0aae5cb gnu: guix: Update to 0.10.0.
* gnu/packages/package-management.scm (guix-0.8.3): Rename to...
(guix-0.10.0): ... this.  Adjust users.
(guix): Set to GUIX-0.10.0.
2016-03-28 23:38:00 +02:00
Ludovic Courtès 34bf416e4a Update NEWS. 2016-03-28 22:51:18 +02:00
Ludovic Courtès 7f949db03e guix system: Warn against missing 'guix pull'.
Suggested by Leo Famulari and others.

* guix/scripts/system.scm (maybe-suggest-running-guix-pull): New
procedure.
(perform-action): Call it when ACTION is 'reconfigure.
2016-03-28 22:50:25 +02:00
Ludovic Courtès e2f41133e9 doc: We have even more than 3,000 packages.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (Limitations): Increase package count.
2016-03-28 22:25:42 +02:00
Ludovic Courtès d70533cbe9 store: Prepend mirror.hydra.gnu.org to %DEFAULT-SUBSTITUTE-URLS.
This allows GuixSD to default to the right list of URLs, with
mirror.hydra.gnu.org coming first.

Reported by Chris Marusich <cmmarusich@gmail.com>.

* guix/store.scm (%default-substitute-urls): Prepend
"mirror.hydra.gnu.org."
2016-03-28 22:25:42 +02:00
Ludovic Courtès efa77c6c92 doc: Explain why the config file should be stored on the target.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (Proceeding with the Installation): Explain why the
config file should be on the target file system.
2016-03-28 22:25:42 +02:00
Ludovic Courtès 15650ac2a0 doc: Suggest 'dhclient -v'.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (Preparing for Installation): Add "-v" for dhclient.
2016-03-28 22:25:42 +02:00
Ludovic Courtès 9c18cf9bca doc: Suggest running "info info" during system installation.
Based on a suggestion by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (System Installation): Suggest running "info info".
2016-03-28 22:25:42 +02:00
Ludovic Courtès b397c0d58a doc: Clarify 'cow-store'.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (Proceeding with the Installation): Clarify what
'cow-store' is about.
2016-03-28 22:25:42 +02:00
Ludovic Courtès ff925d37e0 doc: Make it clear that networking is needed for GuixSD installation.
Suggested by Jan Nieuwenhuizen <janneke@gnu.org>.

* doc/guix.texi (Preparing for Installation): Make it clear that
networking is required.
2016-03-28 22:25:42 +02:00
Ludovic Courtès 09866b3962 doc: Augment documentation about security updates.
* doc/guix.texi (Security Updates): Add paragraph on the big picture of
security updates.  Cross-reference 'guix lint'.
(Invoking guix lint): Add CVE URLs.
2016-03-28 22:25:42 +02:00
Ludovic Courtès c3cfb7e330 nls: Update 'da' translation. 2016-03-28 22:25:42 +02:00
Ricardo Wurmus e0b90dbf65 gnu: qtractor: Update to 0.7.5.
* gnu/packages/music.scm (qtractor): Update to 0.7.5.
2016-03-28 09:52:16 +02:00
Leo Famulari 36c2c8c826 gnu: beets: Run tests with python-nose.
* gnu/packages/music.scm (nose)[native-inputs]: Add python-nose.
[arguments]: Replace 'check' and use python-nose.
2016-03-27 18:24:19 -04:00
David Thompson 13bc8d5e4f environment: Properly handle SIGINT.
Switching to execlp means that the process spawned in a container is PID
1, which obsoleted one of the 'guix environment --container' tests
because the init process can't be killed in the usual manner.

* guix/scripts/environment.scm (launch-environment/fork): New procedure.
(launch-environment): Switch from system* to execlp.  Add handler for
SIGINT.
(guix-environment): Use launch-environment/fork.
* tests/guix-environment-container.sh: Replace abnormal exit test with
one that works now that the spawned process is PID 1.
2016-03-27 15:09:21 -04:00
Ludovic Courtès c8786834ef Update 'NEWS'. 2016-03-27 19:23:26 +02:00
Leo Famulari d3e3468fb8 gnu: python-pyechonest: Clean up description.
* gnu/packages/music.scm (pyechonest)[description]: Remove "open source" from
the description.
2016-03-26 17:25:13 -04:00
Efraim Flashner e12f047f75 gnu: pspp: Update to 0.10.0.
* gnu/packages/maths.scm (pspp): Update to 0.10.0.
[inputs]: Switch gtk+-2 to gtk+, gtksourceview-2 to gtksourceview.
2016-03-26 22:39:29 +03:00
David Thompson 8d50632373 gnu: sdl2-ttf: Update to 2.0.14.
* gnu/packages/sdl.scm (sdl2-ttf): Update to 2.0.14 and remove bundled
  libraries from source tarball.
2016-03-26 13:35:06 -04:00
David Thompson 64ee72e124 gnu: sdl2-image: Update to 2.0.1.
* gnu/packages/sdl.scm (sdl2-image): Update to 2.0.1.
2016-03-26 13:35:06 -04:00
David Thompson efd75ade17 gnu: sdl2-mixer: Update to 2.0.1.
* gnu/packages/sdl.scm (sdl2-mixer): Update to 2.0.1 and remove bundled
  libraries in source tarball.
2016-03-26 13:35:06 -04:00
David Thompson a313e0850c gnu: sdl-mixer: Add ModPlug support.
* gnu/packages/sdl.scm (sdl-mixer)[inputs]: Add libmodplug.
2016-03-26 13:35:06 -04:00
David Thompson 4c0e59d1a8 gnu: sdl2: Update to 2.0.4.
* gnu/packages/sdl.scm (sdl2): Update to 2.0.4.
2016-03-26 13:35:06 -04:00
Mark H Weaver 641d05188d doc: Fix typo: "wpa_supplication" --> "wpa_supplicant".
* doc/guix.texi (Preparing for Installation): Fix typo.
2016-03-26 13:15:11 -04:00
David Thompson 7c776ddcc0 gnu: crossguid: Set explicit file name for source checkout.
* gnu/packages/kodi.scm (crossguid)[source]: Set explicit file-name to
  satisfy linter.
2016-03-26 09:52:28 -04:00
David Thompson a01ad63893 environment: container: Create dummy home directory and /etc/passwd.
* guix/scripts/environment.scm (launch-environment/container): Change
$HOME to the current user's home directory instead of
/homeless-shelter.  Create a dummy /etc/passwd with a single entry for
the current user.
* doc/guix.texi ("invoking guix environment"): Add a note about the
dummy home directory and /etc/passwd.
2016-03-26 09:38:27 -04:00
Ludovic Courtès bf9eacd2af doc: Mention 'guix challenge' in "Features".
* doc/guix.texi (Features): Mention trust and 'guix challenge'.
2016-03-25 23:54:12 +01:00
Ludovic Courtès 6f77360681 doc: Rephrase introduction to give a better overview.
Suggested by myglc2 <myglc2@gmail.com>.

* doc/guix.texi (Introduction): Rephrase to mention features and use
cases first, and foundations last.
(Features): Mention "GuixSD".
(Utilities): Change intro: not all the tools are for packagers.
2016-03-25 23:54:12 +01:00
Mark H Weaver c7762233fb Revert "gnu: expat: Replace with 2.1.1 [fixes CVE-2015-1283]."
This reverts commit 6458876597.
2016-03-25 17:20:57 -04:00
Leo Famulari 15bdd91cc4 gnu: diffoscope: Update to 51.
* gnu/packages/package-management.scm (diffoscope): Update to 51.
2016-03-25 17:17:06 -04:00
Leo Famulari 54c30ebcb1 gnu: python-atomicwrites: Update to 1.0.0.
* gnu/packages/python.scm (python-atomicwrites, python2-atomicwrites):
Update to 1.0.0.
2016-03-25 17:08:47 -04:00
Mark H Weaver 6458876597 gnu: expat: Replace with 2.1.1 [fixes CVE-2015-1283].
* gnu/packages/xml.scm (expat)[replacement]: New field.
(expat-2.1.1): New variable.
2016-03-25 17:04:28 -04:00
Ludovic Courtès 7adbe85e60 syscalls: 'interface-address' can return #f.
Fixes <http://bugs.gnu.org/22612>.
Reported by Danny Milosavljevic <dannym@scratchpost.org>.

* tests/syscalls.scm ("network-interfaces returns one or more
interfaces"): Accept 'interface-address' value of #f.
2016-03-25 17:29:36 +01:00
Ludovic Courtès 001dae0d74 syscalls: <interface> printer correctly handles lack of sockaddr.
Reported by Danny Milosavljevic <dannym@scratchpost.org>
in <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=22612#16>.

* guix/build/syscalls.scm (write-interface): Check whether ADDRESS is
true.
2016-03-25 17:24:47 +01:00
Ludovic Courtès a2da8c173a gnu: guix: Update development snapshot to dd21308.
* gnu/packages/package-management.scm (guix-devel): Update to dd21308.
2016-03-25 10:52:25 +01:00
Ricardo Wurmus 7affb2c1ac gnu: lilypond: Fix check for fontforge version.
* gnu/packages/music.scm (lilypond)[arguments]: Patch configure script
  to find actual fontforge version.
2016-03-25 10:03:11 +01:00
John Darrington dd21308225 gnu: postgresql: Substitute hard coded "/bin/sh".
* gnu/packages/databses.scm (postgresql): substitute /bin/sh
with location of bash binary.
2016-03-25 08:04:56 +01:00
Leo Famulari 43a58615bf gnu: htop: Update to 2.0.1.
* gnu/packages/admin.scm (htop): Update to 2.0.1.
2016-03-24 23:06:09 -04:00
Ludovic Courtès 622b2304ce doc: We now need 1 GiB for the installation USB image.
* doc/guix.texi (Building the Installation Image): Change image size to 1G.
* build-aux/hydra/gnu-system.scm (qemu-jobs): Likewise.
2016-03-24 23:31:56 +01:00
Ludovic Courtès aeaa5ccbf4 build: Bump version number.
* configure.ac: Change version to 0.10.0.
2016-03-24 23:04:37 +01:00
Ludovic Courtès de341e7c3f doc: Update reference to the Info reader's manual.
* doc/guix.texi (System Installation): Refer to 'info-stnd' instead of
'info'.
(Preparing for Installation): Likewise.
2016-03-24 23:00:11 +01:00
Ludovic Courtès 68abb9b04c install: Use 'info-reader' instead of Texinfo 4.
* gnu/system/install.scm (installation-os)[packages]: Remove TEXINFO-4
since %BASE-PACKAGES already provides the Info reader.
(log-to-info): Use INFO-READER instead of TEXINFO-4.
2016-03-24 22:47:15 +01:00
Ludovic Courtès 02683c3331 system: Use 'info-reader' instead of Texinfo to avoid dragging Perl.
* gnu/system.scm (%base-packages): Use INFO-READER instead of TEXINFO.
2016-03-24 22:47:15 +01:00
Ludovic Courtès 7feebd33ae gnu: Add 'info-reader'.
* gnu/packages/texinfo.scm (info-reader): New variable.
2016-03-24 22:47:15 +01:00
Ludovic Courtès 0feefb530f install: Remove cgroup and elogind file systems.
* gnu/system/install.scm (installation-os): Explicitly list three file
systems instead of using %BASE-FILE-SYSTEMS.
2016-03-24 22:47:15 +01:00
Ludovic Courtès 2fa909b27b activation: Copy account skeletons silently.
* gnu/build/activation.scm (copy-account-skeletons): Pass #:log to
'copy-recursively'.
2016-03-24 22:47:15 +01:00
Ludovic Courtès ee03b75dfb install: Add /tmp as a tmpfs.
Fixes <http://bugs.gnu.org/23056>.
Reported by Michael Downey <shaggy814@yandex.com>
and Kei <kei@openmailbox.org>.

* gnu/system/install.scm (installation-os)[file-systems]: Add "/tmp".
2016-03-24 22:47:15 +01:00
Ludovic Courtès cc7234aede services: nscd: Make respawnable.
* gnu/services/base.scm (nscd-shepherd-service): Remove 'respawn?' field.
2016-03-24 22:47:15 +01:00
Leo Famulari 229b36617a gnu: python-llfuse-0.41: Update to 0.41.1.
* gnu/packages/python.scm (python-llfuse-0.41): Update to 0.41.1.
2016-03-24 15:30:51 -04:00
Leo Famulari 6fc5c11b81 gnu: Add borg.
* gnu/packages/backup.scm (borg): New variable.
2016-03-24 15:30:51 -04:00
Leo Famulari 5a39b07f8a gnu: attic: Specify dependency on python-llfuse-0.41.
* gnu/packages/backup.scm (attic)[inputs]: Specify dependency on
python-llfuse-0.41.
2016-03-24 15:30:51 -04:00
Leo Famulari cd0569c498 gnu: python-llfuse: Update to 1.0, keep 0.41 variant.
* gnu/packages/python.scm (python-llfuse, python2-llfuse): Update to 1.0.
(python-llfuse)[properties]: New field.
[license]: Remove 'expat'.
(python2-llfuse): Use 'strip-python2-variant'.
[propagated-inputs]: Add python2-contextlib2.
(python-llfuse-0.41): New variable.
2016-03-24 15:30:51 -04:00
Leo Famulari bd74be7b8c gnu: python-msgpack: Use 'python2-variant'.
* gnu/packages/python.scm (python-msgpack)[native-inputs]: Remove field.
[properties]: New field.
(python2-msgpack): Use 'strip-python2-variant'.
[native-inputs]: Add python2-setuptools.
2016-03-24 15:30:51 -04:00
Leo Famulari ae831df428 gnu: python-msgpack: Update to 0.4.7.
* gnu/packages/python.scm (python-msgpack, python2-msgpack): Update to 0.4.7.
[source]: Use pypi-uri.
2016-03-24 15:30:51 -04:00
Alex Kost 98db8e89ff Update .mailmap.
* .mailmap: Add new entries for Al McElrath, Alírio Eyng, Andreas Enge,
  Ben Woodcroft, David Thompson, Leo Famulari, Mathieu Lirzin, Nils
  Gillmann, Raimon Grau.
2016-03-24 18:50:11 +03:00
Alex Kost 6667af6a97 doc: Clarify installation instructions for "guix.el".
* doc/emacs.texi (Emacs Initial Setup): Mention that "guix package -i
guix" is an easy way.  Warn that "make install" may lead to an outdated
code.
2016-03-24 18:49:59 +03:00
Alex Kost ff4455e6e2 emacs: Deprecate "guix-init.el".
'guix-init' served 2 purposes:

- to autoload guix commands (by requiring 'guix-autoloads');
- and to autoload Emacs packages installed with Guix (by requiring
  'guix-emacs').

The second purpose is not actual anymore, as Emacs package handles this
task now, so there is no need in 'guix-init' anymore.

* emacs/guix-init.el: Do not require 'guix-emacs'.  Add a deprecation
  message.
* doc/emacs.texi (Emacs Initial Setup): Recommend to use
  'guix-autoloads' instead of 'guix-init'.
2016-03-24 18:49:59 +03:00
Alex Kost 453cdf8606 system: Do not create "site-start.el".
After commits 004ea62 and 092dd65, Emacs can find packages in a system
profile, so it autoloads guix code without additional hacks, which can
be removed now.

* gnu/system.scm (emacs-site-file, emacs-site-directory): Remove.
(operating-system-etc-service): Adjust accordingly.
(operating-system-environment-variables): Remove EMACSLOADPATH.
2016-03-24 18:49:59 +03:00
Ricardo Wurmus 1d216b6ec9 gnu: Remove "r-repository" property.
* gnu/packages/bioinformatics.scm (r-biocgenerics, r-s4vectors,
r-iranges, r-genomeinfodb, r-xvector, r-genomicranges)[properties]:
Remove "r-repository" property.
2016-03-24 16:18:01 +01:00
Andreas Enge 08595262db gnu: pari-gp: Syntactic changes.
* gnu/packages/algebra.scm (pari-gp)[arguments]: Use modify-phases syntax.
2016-03-24 14:44:08 +01:00
Ludovic Courtès f2ab925028 services: xorg: Fix ~/.xsession handling.
Fixes a regression introduced in c510cbb4ec.

* gnu/services/xorg.scm (xinitrc)[builder]: Add missing 'apply' when
XSESSION-FILE exists.
2016-03-24 11:01:07 +01:00
Efraim Flashner 473dbe9b19 gnu: modem-manager: Update to 1.4.14.
* gnu/packages/freedesktop.scm (modem-manager): Update to 1.4.14.
2016-03-24 08:37:07 +02:00
Mark H Weaver 385b1be8d0 gnu: webkitgtk: Update to 2.12.0.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.12.0.
2016-03-23 18:47:41 -04:00
Ludovic Courtès ee37e1e501 gnu: shepherd: Update to 0.3.1.
* gnu/packages/admin.scm (shepherd): Update to 0.3.1.
2016-03-23 23:43:50 +01:00
Ludovic Courtès 9a2a20052a guix build: '--with-source' correctly matches versioned file names.
* guix/scripts/build.scm: Use the right 'package-name->name+version'
procedure.  Fixes a regression introduced in
1b846da8c3.
* tests/scripts-build.scm ("options->transformation, with-source, with
version"): New test.
2016-03-23 23:43:50 +01:00
Nils Gillmann 7b150a24fe gnu: libressl: Update to 2.3.3.
* gnu/packages/tls.scm (libressl): Update to 2.3.3.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-23 13:39:17 -04:00
Alex Kost c292a6f304 emacs: Use space to separate package name and version in heading.
Reported by Ludovic Courtès <ludo@gnu.org>.

* emacs/guix-ui-package.el (guix-package-name): Check 'spec' property.
(guix-package-info-insert-heading): Use "name version" for button label,
write name specification to 'spec' property.
2016-03-23 11:24:38 +03:00
Alex Kost 4c68c53804 emacs: Fix converting scheme into elisp expression.
* emacs/guix-geiser.el (guix-geiser-eval-read): Replace #f/#t with nil/t
  only when they follow "(" or " ".
2016-03-23 11:24:38 +03:00
Ricardo Wurmus c1f73569be gnu: Add AIDE.
* gnu/packages/admin.scm (aide): New variable.
2016-03-23 08:08:02 +01:00
Leo Famulari 6139fed563 gnu: icecast: Update to 2.4.3 [fixes CVE-2015-3026].
* gnu/packages/xiph.scm (icecast): Update to 2.4.3.
2016-03-22 23:13:58 -04:00
Ludovic Courtès 9b1cee97a5 services: postgresql: Use syslog.
Fixes <http://bugs.gnu.org/23064>.
Reported by Danny Milosavljevic <dannym@scratchpost.org>.

* gnu/services/databases.scm (%default-postgres-config): Add
'log_destination' line.
(postgresql-shepherd-service): Add requirement on 'syslogd'.
2016-03-23 00:23:12 +01:00
Ludovic Courtès d038b674cf doc: Add "lightweight desktop" OS config example.
* gnu/system/examples/desktop.tmpl (packages): Remove XFCE and
RATPOISON.
(services): Add 'gnome-desktop-service' and 'xfce-desktop-service'.
* gnu/system/examples/lightweight-desktop.tmpl: New file.
* Makefile.am (EXAMPLES): Add it.
* doc.am (OS_CONFIG_EXAMPLES_TEXI): Add
doc/os-config-lightweight-desktop.texi.
* gnu/system/install.scm (/etc/configuration-files)[directory]: Add
lightweight-desktop.tmpl.
2016-03-23 00:23:12 +01:00
Ludovic Courtès d26e19671e derivations: Raise an error when a module file is not found.
Suggested by Jookia.

* guix/derivations.scm (&file-search-error): New error condition.
(search-path*): Raise it when 'search-path' returns #f.
* guix/gexp.scm (search-path*): Remove.
* guix/ui.scm (call-with-error-handling): Add case for
'file-search-error?'.
* tests/derivations.scm ("build-expression->derivation and invalid
module name"): New test.
2016-03-23 00:23:12 +01:00
Ludovic Courtès 6985335faa derivations: Add 'module->source-file-name'.
* guix/derivations.scm (module->source-file-name): New procedure.
(%imported-modules): Use it.
* guix/gexp.scm (imported-modules): Likewise.
2016-03-23 00:23:12 +01:00
Ludovic Courtès 8c321299c5 substitute: Gracefully handle TLS errors.
* guix/scripts/substitute.scm (with-networking): Use 'match-lambda*' and
add case for 'gnutls-error'.
2016-03-23 00:23:12 +01:00
Ricardo Wurmus b98293ebed import: cran: Accept single URL in addition to single URL.
* guix/import/cran.scm (package->upstream-name): Match single URL in
  addition to list of URLs.
2016-03-22 17:57:40 +01:00
Mark H Weaver 58cc369f32 gnu: webkitgtk-2.4: Update to 2.4.10 [fixes many security flaws].
Fixes CVE-2014-1748, CVE-2015-1071, CVE-2015-1076, CVE-2015-1081,
CVE-2015-1083, CVE-2015-1120, CVE-2015-1122, CVE-2015-1127, CVE-2015-1153,
CVE-2015-1155, CVE-2015-3658, CVE-2015-3659, CVE-2015-3727, CVE-2015-3731,
CVE-2015-3741, CVE-2015-3743, CVE-2015-3745, CVE-2015-3747, CVE-2015-3748,
CVE-2015-3749, CVE-2015-3752, CVE-2015-5788, CVE-2015-5794, CVE-2015-5801,
CVE-2015-5809, CVE-2015-5822, and CVE-2015-5928.

* gnu/packages/patches/webkitgtk-2.4-sql-init-string.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/webkit.scm (webkitgtk-2.4): Update to 2.4.10.
[source]: Remove patch.
2016-03-22 07:38:22 -04:00
Mark H Weaver 1020fb6ac7 gnu: linux-libre-4.1: Update to 4.1.20.
* gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.20.
2016-03-21 22:53:55 -04:00
Ludovic Courtès cd6cc144e0 Merge branch 'security-updates' 2016-03-22 00:14:03 +01:00
Ricardo Wurmus ffc13e753b gnu: chicken: Build with GCC 4.8.
* gnu/packages/scheme.scm (chicken)[native-inputs]: Add GCC 4.8.
2016-03-21 22:08:24 +01:00
Ricardo Wurmus 416a5a9a51 gnu: chicken: Disable port tests.
* gnu/packages/scheme.scm (chicken)[arguments]: Do not run port tests.
2016-03-21 22:08:24 +01:00
Ricardo Wurmus acb3807079 gnu: chicken: Use "modify-phases" syntax.
* gnu/packages/scheme.scm (chicken)[arguments]: Use "modify-phases"
  syntax.
2016-03-21 22:08:24 +01:00
Ricardo Wurmus d0d9411015 gnu: chicken: Update to 4.10.0.
* gnu/packages/scheme.scm (chicken): Update to 4.10.0.
2016-03-21 22:08:23 +01:00
Leo Famulari b0bb013698 gnu: mutt: Enable header caching.
* gnu/packages/mail.scm (mutt)[inputs]: Add gdbm.
[arguments]: Pass --enable-hcache to #:configure-flags.
2016-03-21 16:48:39 -04:00
Efraim Flashner 506379664a gnu: gmtp: Update to 1.3.10.
* gnu/packages/libusb.scm (gmtp): Update to 1.3.10.
2016-03-21 20:52:26 +02:00
Ricardo Wurmus c84ceace14 gnu: artanis: Update to 0.1.2.
* gnu/packages/guile.scm (artanis): Update to 0.1.2.
[arguments]: Set DESTDIR.
2016-03-21 17:44:39 +01:00
Ricardo Wurmus 71cafa0472 gnu: Add r-doparallel.
* gnu/packages/statistics.scm (r-doparallel): New variable.
2016-03-21 15:54:05 +01:00
Ricardo Wurmus b2cdb0271b gnu: Add r-foreach.
* gnu/packages/statistics.scm (r-foreach): New variable.
2016-03-21 15:54:05 +01:00
Ricardo Wurmus 7a6f5f0323 gnu: Add r-codetools.
* gnu/packages/statistics.scm (r-codetools): New variable.
2016-03-21 15:54:05 +01:00
Ricardo Wurmus 264df1a49d gnu: Add r-iterators.
* gnu/packages/statistics.scm (r-iterators): New variable.
2016-03-21 15:54:05 +01:00
Ricardo Wurmus 9128db2178 gnu: Add ustr.
* gnu/packages/textutils.scm (ustr): New variable.
2016-03-21 15:53:40 +01:00
Efraim Flashner ce16d1dc94 gnu: ddrescue: Update to 1.21.
* gnu/packages/disk.scm (ddrescue): Update to 1.21.
2016-03-21 15:22:31 +02:00
Mathieu Lirzin 39118b5eed build: Rewrite comments for man pages.
* doc.am <Man pages>: Rewrite comments to describe the build process and
the meaning of the noticeable idiosyncrasies in a more general way.
2016-03-20 23:47:59 +01:00
Mathieu Lirzin b33d3a5a94 build: Build man pages in $(srcdir).
Before that the doc/guix.1 rule was always triggered when doing a VPATH
build from a tarball.

* doc.am (sub_commands_mans, dist_man1_MANS): man pages are now
generated in $(srcdir) like the info manual.
(doc/guix.1, doc/guix-%.1): Prepend $(srcdir) to target name.
[BUILD_DAEMON] (doc/guix-daemon.1): Likewise.
2016-03-20 23:47:59 +01:00
Mathieu Lirzin 83e79a134d build: Make 'guix' man page depend on scripts/guix.in.
* doc.am (doc/guix.1): Add scripts/guix.in prerequisite.
2016-03-20 23:47:59 +01:00
Mathieu Lirzin 92d40a68f4 Revert "build: Do not remake doc/guix.1."
This reverts commit 97966e6d65.
2016-03-20 23:47:59 +01:00
Ludovic Courtès c035145968 gnu: udisks: Enforce non-reference of the "doc" output.
* gnu/packages/freedesktop.scm (udisks)[arguments]: Add
  #:disallowed-references.
2016-03-20 22:52:33 +01:00
Ludovic Courtès 55e1f25d89 build-system/gnu: Add #:disallowed-references.
* guix/build-system/gnu.scm (gnu-build): Add #:disallowed-references and
honor it.
(gnu-cross-build): Likewise.
2016-03-20 22:46:45 +01:00
Ludovic Courtès 3f4ecf3229 gexp: Add #:disallowed-references.
* guix/gexp.scm (gexp->derivation): Add #:disallowed-references and
honor it.
* tests/gexp.scm ("gexp->derivation #:disallowed-references, allowed")
("gexp->derivation #:disallowed-references"): New tests.
* doc/guix.texi (G-Expressions): Adjust accordingly.
2016-03-20 22:46:14 +01:00
Ludovic Courtès 35b5ca7869 derivations: Add #:disallowed-references.
* guix/derivations.scm (derivation): Add #:disallowed-references.
[user+system-env-vars]: Honor it.
(build-expression->derivation): Likewise.
* tests/derivations.scm ("derivation #:disallowed-references, ok")
("derivation #:disallowed-references, not ok"): New tests.
* doc/guix.texi (Derivations): Adjust accordingly.
2016-03-20 22:45:35 +01:00
Ludovic Courtès e71ef7adae system: Make sure fonts are searched for in the system profile.
This fixes a bug whereby fonts in /run/current-system/profile would be
invisible to Fontconfig.

* gnu/packages/fontutils.scm (fontconfig): Add comment about system
profile not being searched.
* gnu/system/shadow.scm (default-skeletons)[fonts.conf-content,
fonts.conf]: New variable.
Add FONTS.CONF to the skeletons.
2016-03-20 15:27:44 +01:00
Ludovic Courtès 0bd3597bbe gnu: gnome: Add dependency on font-abattis-cantarell.
* gnu/packages/gnome.scm (gnome)[propagated-inputs]: Add
FONT-CANTARELL.
2016-03-20 15:05:12 +01:00
Ludovic Courtès 4e8b7502e3 system: Allow account skeletons to be directories.
* gnu/system/shadow.scm (skeleton-directory): Use 'copy-recursively'
instead of 'copy-file'.
* gnu/build/activation.scm (copy-account-skeletons): Likewise.
2016-03-20 15:02:38 +01:00
Ludovic Courtès 71be99b8b6 gnu: Add font-abattis-cantarell.
* gnu/packages/fonts.scm (font-cantarell): New variable.
2016-03-20 01:07:37 +01:00
Ludovic Courtès 522773b700 import: pypi: Emit 'pypi-uri' only when it yields the right URL.
Fixes <http://bugs.gnu.org/23062>.
Reported by Danny Milosavljevic <dannym@scratchpost.org>.

* guix/import/pypi.scm (make-pypi-sexp): Check whether 'pypi-uri'
returns SOURCE-URL and fall back to the full URL otherwise.
* tests/pypi.scm ("pypi->guix-package"): Adjust expected URI
accordingly.

Co-authored-by: Danny Milosavljevic <dannym@scratchpost.org>
2016-03-19 23:54:19 +01:00
Ludovic Courtès 329a702634 gnu: fontforge: Make builds bit-reproducible.
* gnu/packages/fontutils.scm (fontforge)[source](snippet, modules): New
fields.
2016-03-19 15:57:07 +01:00
alírio eyng 56586557dd gnu: fontforge: Update to 20150824.
* gnu/packages/fontutils.scm (fontforge): Update to 20150824.
[inputs]: Add libltdl, libxft, python.
[native-inputs]: New field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-19 15:36:26 +01:00
Ludovic Courtès ef5f5c8659 build: Protect against misconfiguration of localstatedir.
Suggested by Jookia <166291@gmail.com>.

* m4/guix.m4 (GUIX_CURRENT_LOCALSTATEDIR, GUIX_CHECK_LOCALSTATEDIR): New
macros.
* config-daemon.ac: Use 'GUIX_CHECK_LOCALSTATEDIR'.
* Makefile.am (DISTCHECK_CONFIGURE_FLAGS): Add --localstatedir.
* doc/guix.texi (Requirements): Mention --localstatedir.
(The Store): Mention LOCALSTATEDIR as such.
2016-03-19 15:07:46 +01:00
Ludovic Courtès 7c49ab5b1c gnu: kodi: Remove @acronym from description.
This works around <http://bugs.gnu.org/21772>.

* gnu/packages/kodi.scm (crossguid): Remove @acronym.
2016-03-19 14:41:56 +01:00
Ludovic Courtès 5697fdc366 gnu: r-dnacopy: Fix home page URL.
* gnu/packages/bioinformatics.scm (r-dnacopy)[home-page]: Add missing
URI scheme.
2016-03-18 23:00:04 +01:00
Ludovic Courtès 6cbc8d5766 gnu: gnome: Disable hardware acceleration check via 'gnome.desktop'.
* gnu/packages/gnome.scm (gnome-session)[arguments]: Add
'disable-hardware-acceleration-check' phase.
2016-03-18 19:42:00 +01:00
Ludovic Courtès c510cbb4ec services: xorg: Accept session commands with arguments.
Before that, a session command with several items, such as
'gnome-session --disable-acceleration-check', would trigger the fallback
session.

* gnu/services/xorg.scm (xinitrc)[builder]: Accept command lines with
more than one arguments.
2016-03-18 19:42:00 +01:00
Ludovic Courtès a0d7baaf48 gnu: gnome-session: Make sure 'gsettings' is found.
* gnu/packages/gnome.scm (gnome-session)[arguments]: Add
'wrap-gnome-session' phase.
2016-03-18 19:42:00 +01:00
Leo Famulari 3bf429af2f gnu: Add beets.
* gnu/packages/music.scm (beets): New variable.
2016-03-18 14:27:16 -04:00
Leo Famulari 064503aaa2 gnu: Add python-rarfile.
* gnu/packages/python.scm (python-rarfile, python2-rarfile): New
variables.
* gnu/packages/patches/python-rarfile-fix-tests.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2016-03-18 14:27:16 -04:00
Leo Famulari 13edb0e5c3 gnu: Add python2-unicodecsv.
* gnu/packages/python.scm (python2-unicodecsv): New variable.
2016-03-18 14:27:16 -04:00
Leo Famulari 25a7db0ad3 gnu: Add python-jellyfish.
* gnu/packages/python.scm (python-jellyfish, python2-jellyfish): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari efe0b14369 gnu: Add python-mpd2.
* gnu/packages/mpd.scm (python-mpd2, python2-mpd2): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari 76b9488534 gnu: Add python2-pathlib.
* gnu/packages/python.scm (python-pathlib, python2-pathlib): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari 0efde7d6d6 gnu: Add python-responses.
* gnu/packages/python.scm (python-responses, python2-responses): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari 603d665bc3 gnu: Add python-cookies.
* gnu/packages/python.scm (python-cookies, python2-cookies): New variable.
2016-03-18 14:27:16 -04:00
Leo Famulari acd7351ff6 gnu: Add python-pylast.
* gnu/packages/music.scm (python-pylast, python2-pylast): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari e8fee6486f gnu: Add python-pyechonest.
* gnu/packages/music.scm (python-pyechonest, python2-pyechonest): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari f3b3d78fbc gnu: Add python-flask.
* gnu/packages/python.scm (python-flask, python2-flask): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari 8975de8821 gnu: Add python-musicbrainzngs.
* gnu/packages/music.scm (python-musicbrainzngs, python2-musicbrainzngs): New
variables.
2016-03-18 14:27:16 -04:00
Leo Famulari cedac813a5 gnu: Add python-munkres.
* gnu/packages/python.scm (python-munkres, python2-munkres): New variables.
2016-03-18 14:27:16 -04:00
Leo Famulari 3f7a182d25 gnu: Add python-mutagen.
* gnu/packages/music.scm (python-mutagen, python2-mutagen): New variables.
2016-03-18 14:27:16 -04:00
Mark H Weaver 0e0fd3ef10 gnu: linux-libre-4.4: Update to 4.4.6.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.6.
2016-03-18 11:03:16 -04:00
David Thompson 8961b4d362 gnu: bundler: Update to 1.11.2.
* gnu/packages/ruby.scm (bundler): Update to 1.11.2.
2016-03-18 08:48:40 -04:00
Andreas Enge 019b38758c gnu: vigra: Update to 1.11.0.
* gnu/packages/image.scm (vigra)[source]: Update to 1.11.0.
  [arguments]: Disable parallel builds.
2016-03-18 09:01:02 +01:00
Efraim Flashner c5e2b69d59 gnu: aria2: Update to 1.21.0.
* gnu/packages/bittorrent.scm (aria2): Update to 1.21.0.
2016-03-18 08:29:30 +02:00
Mark H Weaver e3d3546eda gnu: libotr: Fix tests on mips64el.
* gnu/packages/patches/libotr-test-auth-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/messaging.scm (libotr)[source]: Add patch.
2016-03-17 19:05:08 -04:00
Ludovic Courtès b879b3e848 substitute: Do not leak file descriptors for TLS connections.
Partially fixes <http://bugs.gnu.org/20145>.

* guix/scripts/substitute.scm (fetch, download-cache-info):
(http-multiple-get, fetch-narinfos, progress-report-port): Use
'close-connection' instead of 'close-port'.
2016-03-17 23:53:53 +01:00
Ludovic Courtès 958fb14cdb substitute: Cache transient HTTP errors for 10mn.
* guix/scripts/substitute.scm (fetch-narinfos)[handle-narinfo-response]:
Cache transient errors for 10mn.
(%narinfo-transient-error-ttl): New variable.
2016-03-17 23:53:53 +01:00
Ludovic Courtès 14d6ca3e4d lint: Do not leak file descriptors for TLS connections.
Partially fixes <http://bugs.gnu.org/20145>.

* guix/scripts/lint.scm (probe-uri): Use 'close-connection' instead of
'close-port'.
2016-03-17 23:53:53 +01:00
Ludovic Courtès 097a951e96 download: Add 'close-connection'.
Partially fixes <http://bugs.gnu.org/20145>.

* guix/build/download.scm (add-weak-reference): Remove.
(%tls-ports): New variable.
(register-tls-record-port): New procedure.
(tls-wrap): Use it instead of 'add-weak-reference'.
(close-connection): New procedure.
2016-03-17 23:53:53 +01:00
Ludovic Courtès fc3ea24bf4 substitute: Update progress for responses different from 200/404.
* guix/scripts/substitute.scm (fetch-narinfos)[handle-narinfo-response]:
Add missing call to 'update-progress!'.
2016-03-17 23:53:53 +01:00
Efraim Flashner f1723b8be6 gnu: postgresql: Update to 9.5.1.
* gnu/packages/databases.scm (postgresql): Update to 9.5.1.
2016-03-17 21:59:32 +02:00
Efraim Flashner 23bbd7dd60 gnu: mysql: Update to 5.7.11.
* gnu/packages/databases.scm (mysql): Update to 5.7.11.
[source]: Add archives as alternate download location.
[arguments]: Remove custom phase 'strip-extra-references. Add
substitution to target boost-1.60.
2016-03-17 21:59:32 +02:00
Andy Wingo 2914af3c96 gnu: gnome-session: Add elogind input.
* gnu/packages/gnome.scm (gnome-session): Add elogind input, while
  disabling the use of systemd's journal.
2016-03-17 18:11:42 +01:00
Ricardo Wurmus 953c12232f gnu: bless: Remove bundled sources for sparsehash.
* gnu/packages/bioinformatics.scm (bless)[source]: Delete
"google-sparsehash" sources.
[inputs]: Add "sparsehash".
2016-03-17 13:01:31 +01:00
Ricardo Wurmus 6c1305f9ec gnu: Add CD-HIT.
* gnu/packages/bioinformatics.scm (cd-hit): New variable.
2016-03-17 13:01:31 +01:00
Ludovic Courtès b53daad064 doc: Add missing comma after @xref.
Reported by Alex Kost <alezost@gmail.com>.

* doc/guix.texi (Service Reference): Add comma after @xref.
2016-03-17 09:49:05 +01:00
Ludovic Courtès 5fe01c2d9b doc: GNOME is now available.
* doc/guix.texi (Limitations): Rephrase item about GNOME and KDE.
2016-03-17 09:49:05 +01:00
Andy Wingo fa4b8badf0 gnu: elogind: Update to 219.14.
* gnu/packages/freedesktop.scm (elogind): Update to 219.14.
2016-03-17 09:44:32 +01:00
Alex Kost e6527d643e gnu: emacs-pdf-tools: Add missing input.
This is a followup to commit eccd0b57a1.

* gnu/packages/emacs.scm (emacs-pdf-tools)[propagated-inputs]: Add
'let-alist'.
2016-03-17 10:49:45 +03:00
Alex Kost 1bcae5c5c5 gnu: emacs-pdf-tools: Use emacs-build-system for elisp side.
* gnu/packages/emacs.scm (emacs-pdf-tools)[arguments]: Add phases from
emacs-build-system to build elisp side.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-03-17 10:49:45 +03:00
Ricardo Wurmus 5e3161d38e gnu: Add WAH plugins.
* gnu/packages/audio.scm (wah-plugins): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus c04b4e7aea gnu: Add STE plugins.
* gnu/packages/audio.scm (ste-plugins): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus 75f45d16d4 gnu: Add FIL plugins.
* gnu/packages/audio.scm (fil-plugins): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus dffb6c3be6 gnu: Add REV plugins.
* gnu/packages/audio.scm (rev-plugins): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus 8ba62f92ec gnu: Add AMB plugins.
* gnu/packages/audio.scm (amb-plugins): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus ed17465d3d gnu: Add g2reverb.
* gnu/packages/audio.scm (g2reverb): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus eb4fca7ebf gnu: Add vco-plugins.
* gnu/packages/audio.scm (vco-plugins): New variable.
2016-03-17 08:25:21 +01:00
Ricardo Wurmus fb2e072cec gnu: Add mcp-plugins.
* gnu/packages/audio.scm (mcp-plugins): New variable.
2016-03-17 08:25:21 +01:00
Roel Janssen f88ce395e6 licenses: Add Apache Software License 1.1.
* guix/licenses.scm (asl1.1): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-17 00:49:30 -04:00
Jochem Raat 65829fec47 gnu: Add perl-text-neattemplate.
* gnu/packages/perl.scm (perl-text-neattemplate): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-17 00:39:33 -04:00
Tobias Geerinckx-Rice 08e9daf505 gnu: Add freefall.
* gnu/packages/linux.scm (freefall): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-17 00:25:41 -04:00
Efraim Flashner e3bf5d2cb2 gnu: mariadb: Update to 10.1.12.
* gnu/packages/databases.scm (mariadb): Update to 10.1.12.
2016-03-17 02:17:04 +02:00
Eric Bavier 97966e6d65 build: Do not remake doc/guix.1.
* doc.am (doc/guix.1): Do not depend on $(sub_commands_mans) which will
  always appear out-of-date.
2016-03-16 18:32:25 -05:00
Eric Bavier dfdf571688 gnu: petsc: Fix compiler configuration references.
* gnu/packages/maths.scm (petsc)[arguments]: When patching compiler
  driver paths, do not assume they come from fortran input.
2016-03-16 18:32:25 -05:00
Eric Bavier d588422e13 gnu: slepc: Set origin file-name.
* gnu/packages/maths.scm (slepc)[source]: Add file-name.
2016-03-16 18:32:25 -05:00
Mark H Weaver ce362de86e gnu: Fix definitions of gcc-toolchain-4.8 and gcc-toolchain-4.9.
* gnu/packages/commencement.scm (gcc-toolchain-4.8): Use gcc-4.8,
not gcc-final.
(gcc-toolchain-4.9): Use gcc-final, not gcc-4.9.
* gnu/packages/gcc.scm (gcc): Add reminder comment for the future.
2016-03-16 18:06:52 -04:00
Ludovic Courtès 092dd6541f gnu: guix: Update development snapshot to 71e2065.
* gnu/packages/package-management.scm (guix-devel): Update to 71e2065.
2016-03-16 19:03:12 +01:00
Efraim Flashner 87f7625bf5 gnu: offlineimap: Update to 6.7.0.
* gnu/packages/mail.scm (offlineimap): Update to 6.7.0.
2016-03-16 19:52:40 +02:00
Ludovic Courtès 71e2065a38 substitute: Honor client-provided empty URL list.
Before that, 'guix build --substitute-urls=""' would lead to using the
daemon's own URL list instead of the empty list.  The 'or*' hack, which
is to blame, had become unnecessary since commit
fb4bf72be3.

Reported by Mark H Weaver <mhw@netris.org>.

* guix/scripts/substitute.scm (or*): Remove.
(%cache-urls): Use 'or' instead of 'or*'.
* tests/store.scm ("substitute query, alternating URLs"): Add test with
empty URL list.
* doc/guix.texi (Common Build Options): Mention the empty string.
2016-03-16 18:34:53 +01:00
Ludovic Courtès 1ac94ae166 build: Write emacs-autoloads.el to $(builddir).
* emacs.am ($(AUTOLOADS)): Write to $(builddir), not $(srcdir).
2016-03-16 17:02:53 +01:00
Ludovic Courtès 23d60ba65c substitute: Honor the 'max-age' of 'Cache-Control' headers.
This allows substitute servers to tell 'guix substitute' how long they
can cache narinfo lookups.

* guix/scripts/substitute.scm (cache-narinfo!): Add 'ttl' parameter.
[cache-entry]: Honor it.
(fetch-narinfos)[handle-narinfo-response]: Check the 'Cache-Control'
header of RESPONSE and pass its 'max-age' value to 'cache-narinfo!'.
2016-03-16 15:57:47 +01:00
Ludovic Courtès 1cf7e31898 substitute: Make room for a 'ttl' field in cached entries.
* guix/scripts/substitute.scm (cached-narinfo): Expect 'narinfo' sexp
version 2 with a 'ttl' field.
(cache-narinfo!)[cache-entry]: Produce 'narinfo' sexp version 2 with a
'ttl' field.
(remove-expired-cached-narinfos)[expired?]: Read 'narinfo' sexp version 2.
2016-03-16 15:57:47 +01:00
Andreas Enge 81b55bf7a9 gnu: cm: Update to 0.3.
* gnu/packages/algebra.scm (cm): Update to 0.3.
  [license]: Change to gpl3+.
2016-03-16 14:29:36 +01:00
Ludovic Courtès df061d079b build: Default to "https://mirror.hydra.gnu.org/" for substitutes.
* config-daemon.ac: Check for (gnutls) and define 'GUIX_SUBSTITUTE_URLS'.
* nix/nix-daemon/guix-daemon.cc (main): Use GUIX_SUBSTITUTE_URLS.
* guix/store.scm (%default-substitute-urls): Use 'https' when (gnutls)
is available.
* doc/guix.texi (Binary Installation): Mention mirrors
(Invoking guix-daemon): Mention mirror.hydra.gnu.org.
(Substitutes): Mention mirrors.
(Invoking guix archive): Show https URLs.
2016-03-16 11:27:37 +01:00
Ludovic Courtès 409e4ac6e3 http-client: No 'setvbuf' for non-file ports.
* guix/http-client.scm (http-fetch): Do not call 'setvbuf' on non-file
ports.
2016-03-16 11:27:37 +01:00
Roel Janssen 247d498aaa gnu: Add r-dnacopy.
* gnu/packages/bioinformatics.scm (r-dnacopy): New variable.
2016-03-16 11:23:27 +01:00
Rob Syme 6a35566df7 gnu: Add codingquarry.
* gnu/packages/bioinformatics.scm (codingquarry): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-16 04:49:27 -04:00
Tobias Geerinckx-Rice 8e14e059c4 gnu: Add idle3-tools.
* gnu/packages/disk.scm (idle3-tools): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-16 02:35:06 -04:00
Efraim Flashner 892f92b7aa gnu: neon: Update to 0.30.1.
* gnu/packages/version-control.scm (neon): Update to 0.30.1.
2016-03-16 05:46:50 +02:00
Efraim Flashner 5575917d13 gnu: mercurial: Update to 3.7.2.
* gnu/packages/version-control.scm (mercurial): Update to 3.7.2.
[source]: Update to mercurial-scm.org.
[home-page]: Same.
2016-03-16 05:46:50 +02:00
宋文武 34dc3907ac gnu: Add gdk-pixbuf+svg.
* gnu/packages/gtk.scm (gdk-pixbuf+svg): New variable.
2016-03-16 09:07:00 +08:00
Leo Famulari 1714e2c39c gnu: git: Update to 2.7.3 [unspecified security fixes].
* gnu/packages/version-control.scm (git): Update to 2.7.3.
(git-manpages)[source]: Update hash.
2016-03-15 19:41:23 -04:00
Andy Wingo 7a2413e46d gnu: services: Add GNOME and XFCE desktop services.
* gnu/services/desktop.scm (package-direct-input-selector): New
  function.
  (<gnome-desktop-configuration>, gnome-desktop-service-type)
  (<xfce-desktop-configuration>, xfce-desktop-service-type): New
  variables.
  (gnome-desktop-service, xfce-desktop-service): New public variables.

* doc/guix.texi (Desktop Services): Document new variables.
2016-03-15 21:03:27 +01:00
Mark H Weaver a3b84f70d8 Merge branch 'master' into security-updates 2016-03-15 12:40:53 -04:00
Leo Famulari 20095cc513 gnu: xfce: Add xfce4-power-manager.
* gnu/packages/xfce.scm (xfce)[propagated-inputs]: Add xfce4-power-manager.
2016-03-15 11:57:40 -04:00
Florian Paul Schmidt c29e5fda3e gnu: Add xfce4-power-manager.
* gnu/packages/xfce.scm (xfce4-power-manager): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-15 11:57:40 -04:00
Mark H Weaver 75b314a615 gnu: linux-libre: Update to 4.5, while preserving linux-libre-4.4.
* gnu/packages/linux-libre-x86_64.conf: Rename to ...
* gnu/packages/linux-libre-4.4-x86_64.conf: ... this.
* gnu/packages/linux-libre-i686.conf: Rename to ...
* gnu/packages/linux-libre-4.4-i686.conf: ... this.
* gnu/packages/linux-libre-4.5-i686.conf,
gnu/packages/linux-libre-4.5-x86_64.conf: New files.
* Makefile.am (KCONFIGS): Update accordingly.
* gnu/packages/linux.scm (linux-libre): Update to 4.5.
(linux-libre-4.4): New variable.
2016-03-15 11:09:00 -04:00
Chris Marusich 4d343a141b doc: Clarify and consolidate modify-services documentation.
* doc/guix.texi ("Using the Configuration System"): Move the example...
("Service Reference"): ...to here, and clarify more.
* gnu/services.scm (modify-services): Update docstring to mention the
return type.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-03-15 15:54:02 +01:00
Ludovic Courtès e3009f6000 doc: Add "Hardware Considerations" node.
Suggested by Nils Gillmann <niasterisk@grrlz.net>.

* doc/guix.texi (Hardware Considerations): New node.
(operating-system Reference): Mention it.
2016-03-15 10:34:29 +01:00
Efraim Flashner 20109e07bd gnu: gitolite: Update to 3.6.5.
* gnu/packages/version-control.scm (gitolite): Update to 3.6.5.
[source]: Remove patch.
* gnu/packages/patches/gitolite-openssh-6.8-compat.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove it.
2016-03-15 07:10:35 +02:00
Efraim Flashner b65195c2cc gnu: shflags: Update to 1.2.0.
* gnu/packages/version-control.scm (shflags): Update to 1.2.0.
[source]: Switch to github.
[home-page]: Project moved to github.
2016-03-15 07:10:35 +02:00
Efraim Flashner 3a099d179a gnu: libgit2: Update to 0.24.0.
* gnu/packages/version-control.scm (libgit2): Update to 0.24.0.
[inputs]: Switch python to python-wrapper.
2016-03-15 07:10:35 +02:00
Ludovic Courtès 264fdedb40 grafts: Update the narinfo cache before building a derivation.
* guix/grafts.scm (references-oracle)[references*]: Add call to
'substitution-oracle'.
2016-03-14 23:34:33 +01:00
Ludovic Courtès 026ca50fa4 substitute: Keep the initial connection alive.
The connection used to fetch /nix-cache-info is now reused for the
subsequent narinfo requests.

* guix/scripts/substitute.scm (download-cache-info)[download]: Remove.
[uri, read-cache-info]: New variables.
Rewrite in terms of 'http-fetch' instead of 'fetch'.  Return an open
port in addition to a <cache-info>.
* guix/scripts/substitute.scm (http-multiple-get): Add #:port parameter
and honor it.
(fetch-narinfos)[do-fetch]: Add 'port' parameter.
Adjust to new 'download-cache-info' and 'do-fetch' signatures.
2016-03-14 23:34:33 +01:00
Ludovic Courtès d262a0f36b http-client: Add #:keep-alive? parameter.
* guix/http-client.scm (http-fetch): Add #:keep-alive? parameter and
pass it to 'http-get' or 'http-get*'.
2016-03-14 23:34:33 +01:00
Ludovic Courtès cc27dbcf4a substitute: Remove dead code.
This parameter became unused with the switch to HTTP pipelining in
commit d3a652037e.

* guix/scripts/substitute.scm (fetch): Remove #:quiet-404? and adjust
accordingly.
2016-03-14 23:34:33 +01:00
Ludovic Courtès f09aea1b58 store: 'references/substitutes' caches its results.
* guix/store.scm (%reference-cache): New variable.
(references/substitutes): Use it.
2016-03-14 23:34:33 +01:00
Ludovic Courtès 3667bb6cb0 size: Disable grafts.
* guix/scripts/size.scm (guix-size): Parametrize '%graft?'.
2016-03-14 23:34:33 +01:00
Andreas Enge 6e6a04016d doc: Fix incorrect use of @xref.
This is a follow-up to commit 1068f26b79.
Reported by Alex Kost <alezost@gmail.com>.

* doc/guix.texi (Building the Installation Image): Replace @xref by @ref.
2016-03-14 20:54:28 +01:00
David Thompson 9ced12de01 gnu: kodi: Update to 16.0.
* gnu/packages/kodi.scm (kodi): Update to 16.0.
[inputs]: Add crossguid, dcadec, and util-linux.
2016-03-14 13:33:01 -04:00
David Thompson 680b54c5ce gnu: Add dcadec.
* gnu/packages/audio.scm (dcadec): New variable.
2016-03-14 13:33:01 -04:00
David Thompson 1e3fbf3c6d gnu: Add crossguid.
* gnu/packages/kodi.scm (crossguid): New variable.
2016-03-14 13:33:01 -04:00
Ricardo Wurmus 10b4a969be gnu: htsjdk: Use ant-build-system.
* gnu/packages/bioinformatics.scm (htsjdk)[build-system]: Use
ant-build-system.
[arguments]: Adapt for ant-build-system.
2016-03-14 14:30:03 +01:00
Ricardo Wurmus 5f7a1a4def build: Add Ant build system.
* guix/build-system/ant.scm: New file.
* guix/build/ant-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document ant-build-system.
2016-03-14 12:36:49 +01:00
Ricardo Wurmus 535e2a2fee gnu: ant: Update source URL.
* gnu/packages/java.scm (ant)[source]: Use Apache mirror instead of
  plain URL.
2016-03-14 12:36:49 +01:00
Ricardo Wurmus e1a5615875 build: reset-timestamps: Include directories.
* guix/build/install.scm (reset-timestamps): Reset timestamps of
  directories as well.
2016-03-14 12:36:49 +01:00
Ricardo Wurmus 846e340954 gnu: Add pyicoteo.
* gnu/packages/bioinformatics.scm (pyicoteo): New variable.
2016-03-14 12:36:49 +01:00
Efraim Flashner 388e05ee16 gnu: enlightenment: Update to 0.20.6.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.6.
2016-03-14 12:12:53 +02:00
Leo Famulari 61c30e9d23 gnu: Add khard.
* gnu/packages/mail.scm (khard): New variable.
2016-03-13 18:52:30 -04:00
Leo Famulari eed1a61fbb gnu: Add python-vobject.
* gnu/packages/python.scm (python-vobject, python2-vobject): New variables.
2016-03-13 18:52:30 -04:00
Leo Famulari ed07b08d93 gnu: Split python2-pyicu into python-pyicu and python2-pyicu.
* gnu/packages/python.scm (python2-pyicu): Split variable into...
(python-pyicu, python2-pyicu): ...both Python variants.
(python-pyicu)[arguments]: Enable tests.
2016-03-13 18:52:30 -04:00
Leo Famulari d3b29319b1 gnu: python2-pyicu: Update to 1.9.2.
* gnu/packages/python.scm (python2-pyicu): Update to 1.9.2.
2016-03-13 18:52:30 -04:00
Leo Famulari 9bb6d18482 gnu: Add python2-atomicwrites.
* gnu/packages/python.scm (python2-atomicwrites): New variable.
2016-03-13 18:52:30 -04:00
Nils Gillmann aae6b4b9a9 gnu: Add font-un.
* gnu/packages/fonts.scm (font-un): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-13 23:39:26 +01:00
Jochem Raat 467c498bdc gnu: Add Dutch Aspell dictionary.
* gnu/packages/aspell.scm (aspell-dict-nl): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-13 23:39:26 +01:00
Jookia b6ecac93d6 gnu: Add Google Noto font.
* gnu/packages/fonts.scm (font-google-noto): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-13 23:39:26 +01:00
Leo Famulari 36455a9672 gnu: vdirsyncer: Update 0.9.2.
* gnu/packages/dav.scm (vdirsyncer): Update to 0.9.2.
[arguments]: Run the test suite after installation. Use DETERMINISTIC_TESTS.
Run tests with `make` instead of "py.test".
[native-inputs]: Remove python-pytest-xprocess and python-oauthlib.
2016-03-13 18:26:48 -04:00
Leo Famulari bea6d94d24 gnu: python-hypothesis: Update to 3.1.0.
* gnu/packages/python.scm (python-hypothesis, python2-hypothesis): Update to
3.1.0.
2016-03-13 18:26:48 -04:00
Efraim Flashner 03aef4a795 gnu: libcddb: Update to 1.3.2.
* gnu/packages/cdrom.scm (libcddb): Update to 1.3.2.
2016-03-13 21:29:51 +02:00
Efraim Flashner 036fd4f27f gnu: dvdisaster: Update to 0.79.5.
* gnu/packages/cdrom.scm (dvdisaster): Update to 0.79.5.
2016-03-13 21:29:51 +02:00
Efraim Flashner 7df85799b1 gnu: abcde: Use 'modify-phases'.
* gnu/packages/cdrom.scm (adcde)[arguments]: Use 'modify-phases'.
2016-03-13 21:29:51 +02:00
Efraim Flashner 1bb4005fbd gnu: abcde: Update to 2.7.1.
* gnu/packages/cdrom.scm (abcde): Update to 2.7.1.
[home-page]: Use https.
2016-03-13 21:29:51 +02:00
Leo Famulari 03422bf834 gnu: libmbim: Use HTTPS URL.
* gnu/packages/freedesktop.scm (libmbim)[source]: Use HTTPS URL.
2016-03-13 14:28:38 -04:00
Efraim Flashner 7ff165da48 gnu: frescobaldi: Update to 2.18.2.
* gnu/packages/music.scm (frescobaldi): Update to 2.18.2.
2016-03-13 14:31:46 +02:00
Efraim Flashner 5c85c7265a gnu: libuninameslist: Update to 0.5.20150701.
* gnu/packages/fontutils.scm (libuninameslist): Update to 0.5.20150701.
2016-03-13 14:31:46 +02:00
Efraim Flashner edca4cbeba gnu: jrnl: Update to 1.9.7.
* gnu/packages/jrnl.scm (jrnl): Update to 1.9.7.
[native-inputs]: Remove python-setuptools.
2016-03-13 14:31:46 +02:00
Alex Kost 29f9abb4ca gnu: font-ubuntu: Update to 0.83.
* gnu/packages/fonts.scm (font-ubuntu): Update to 0.83.
2016-03-13 13:16:40 +03:00
Alex Kost e2a3d69003 gnu: manaplus: Update to 1.6.3.12.
* gnu/packages/games.scm (manaplus): Update to 1.6.3.12.
2016-03-13 13:16:23 +03:00
Alex Kost acd62175e2 gnu: git-modes: Update to 1.2.1.
* gnu/packages/emacs.scm (git-modes): Update to 1.2.1.
2016-03-13 12:54:12 +03:00
Efraim Flashner eb4f2cd7e3 gnu: glpk: Update to 4.59.
* gnu/packages/maths.scm (glpk): Update to 4.59.
2016-03-12 23:07:09 +02:00
Mark H Weaver 2c9f0b0770 Merge branch 'master' into security-updates 2016-03-12 15:07:41 -05:00
Efraim Flashner 9591e11a4c gnu: samba: Update to 4.3.6 [fixes CVE-2015-7560, CVE-2016-0771].
* gnu/packages/samba.scm (samba): Update to 4.3.6.
2016-03-12 21:53:03 +02:00
Leo Famulari e1c644a044 gnu: accountsservice: Use HTTPS URL.
* gnu/packages/freedesktop.scm (accountsservice)[source]: Use HTTPS URL.
2016-03-12 12:20:18 -05:00
Andreas Enge dfbe56c36d gnu: mupdf: Update to 1.8.
* gnu/packages/pdf.scm (mupdf): Update to 1.8.
2016-03-12 10:03:38 +01:00
Andreas Enge 8e755b1bcd gnu: mupdf: Simplify package.
* gnu/packages/pdf.scm (mupdf)[source]: Drop patch and part of snippet
  modifying permissions of files added by the patch.
  [arguments]: Use #:make-flags instead of modified build and install phases.
  Drop superfluous module inclusion. Use modify-phases syntax.
* gnu/packages/patches/mupdf-buildsystem-fix.patch: Remove patch.
* gnu-system.am (dist_patch_DATA): Unregister patch.
2016-03-12 09:56:27 +01:00
Danny Milosavljevic 0ede252b66 gnu: Add fluxbox.
* gnu/packages/wm.scm (fluxbox): New variable.

Co-authored-by: Eric Bavier <bavier@member.fsf.org>
2016-03-11 20:43:51 -06:00
Mark H Weaver 81a9653983 gnu: webkitgtk: Update to 2.10.8 [fixes CVE-2016-1726].
* gnu/packages/webkit.scm (webkitgtk): Update to 2.10.8.
2016-03-11 17:59:05 -05:00
Leo Famulari bce6f7ce63 gnu: openexr: Disable broken test to fix build on i686.
* gnu/packages/graphics.scm (openexr)[arguments]: New field.
2016-03-11 15:08:32 -05:00
Christopher Allan Webber b5f990a680 doc: Add footnote about pointing ~/.config/guix/latest at user's checkout
* doc/contributing.texi (Running Guix Before It Is Installed): New footnote.
2016-03-11 08:41:07 -08:00
Ludovic Courtès 66a30a3ea4 gnu: libevent: Update to 2.0.22 [fixes CVE-2015-6525].
* gnu/packages/libevent.scm (libevent): Update to 2.0.22.
2016-03-11 16:33:50 +01:00
Ludovic Courtès 6a25e59514 cve: Read entire CVE databases for the current year and the past year.
The "Modified" database that we were reading is much smaller, but it
only shows CVEs modified over the past week.

* guix/cve.scm (%now, %current-year, %past-year): New variables.
(yearly-feed-uri): New procedure.
(%cve-feed-uri, %ttl): Remove.
(%current-year-ttl, %past-year-ttl): New variables.
(call-with-cve-port): Add 'uri' and 'ttl' parameters and honor them.
Add 'setvbuf' call.
(current-vulnerabilities)[read-vulnerabilities]: New procedure.
Read from both %LAST-YEAR and %CURRENT-YEAR.
2016-03-11 16:33:50 +01:00
Ludovic Courtès ef0f0d5f97 gnu: vorbis-tools: Patch buffer overflow [fixes CVE-2015-6749].
* gnu/packages/patches/vorbis-tools-CVE-2015-6749.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/xiph.scm (vorbis-tools)[source]: Use it.
2016-03-11 16:33:50 +01:00
Jan Nieuwenhuizen baacf042fd doc: Suggest `guix.scm' for upstream maintainers.
* doc/guix.texi (Invoking guix package): Suggest `guix.scm'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-03-11 16:33:50 +01:00
Ludovic Courtès cf557afa2e cve: Make CPE patch level part of the version string.
* guix/cve.scm (%cpe-package-rx): Adjust to account for :PATCH-LEVEL.
(cpe->package-name): Likewise.
2016-03-11 16:33:50 +01:00
Nils Gillmann d381962f35 gnu: Add powwow.
* gnu/packages/games.scm (powwow): New variable.
2016-03-11 08:37:11 +08:00
Roel Janssen a0a71439fa gnu: Add bioawk.
* gnu/packages/bioinformatics.scm (bioawk): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-10 18:37:25 -05:00
Mark H Weaver 7bf4bd0991 gnu: linux-libre: Update to 4.4.5.
* gnu/packages/linux.scm (linux-libre): Update to 4.4.5.
2016-03-10 18:17:31 -05:00
Raimon Grau 9514662322 gnu: Add nload.
* gnu/packages/networking.scm (nload): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-03-10 16:48:16 -05:00
Leo Famulari ff22f01d67 gnu: dropbear: Update to 2016.72 [fixes CVE-2016-3116].
* gnu/packages/ssh.scm (dropbear): Update to 2016.72.
2016-03-10 15:34:05 -05:00
Leo Famulari efa3752964 gnu: openssh: Update to 7.2p2 [fixes CVE-2016-3115].
* gnu/packages/ssh.scm (openssh): Update to 7.2p2.
2016-03-10 15:34:05 -05:00
Efraim Flashner a232ce429e gnu: catch: Update to 1.3.5.
* gnu/packages/check.scm (catch): Update to 1.3.5.
2016-03-10 21:41:24 +02:00
Efraim Flashner 34a6f4dcf9 gnu: cppunit: Update to 1.13.2.
* gnu/packages/check.scm (cppunit): Update to 1.13.2.
[source]: Change to libreoffice's hosted release tarballs.
[home-page]: Change to freedesktop.
2016-03-10 21:25:31 +02:00
Efraim Flashner 591f1d3e4c gnu: lcov: Update to 1.12.
* gnu/packages/code.scm (lcov): Update to 1.12.
2016-03-10 20:20:26 +02:00
Efraim Flashner 1d116171a0 gnu: the-silver-searcher: Update to 0.31.0.
* gnu/packages/code.scm (the-silver-searcher): Update to 0.31.0.
2016-03-10 20:17:50 +02:00
Efraim Flashner 1e42d8b8ba gnu: complexity: Update to 1.10.
* gnu/packages/code.scm (complexity): Update to 1.10.
2016-03-10 20:15:15 +02:00
Efraim Flashner 9720651942 gnu: libass: Update to 0.13.2.
* gnu/packages/video.scm (libass): Update to 0.13.2.
2016-03-10 18:23:40 +02:00
Efraim Flashner 83820c0f10 gnu: obs: Update to 0.13.2.
* gnu/packages/video.scm (obs): Update to 0.13.2.
2016-03-10 18:23:40 +02:00
Mark H Weaver c3499ad6b8 gnu: icecat: Add several security fixes.
* gnu/packages/patches/icecat-CVE-2015-4477.patch,
gnu/packages/patches/icecat-CVE-2015-7207.patch,
gnu/packages/patches/icecat-CVE-2016-1952-pt01.patch,
gnu/packages/patches/icecat-CVE-2016-1952-pt02.patch,
gnu/packages/patches/icecat-CVE-2016-1952-pt03.patch,
gnu/packages/patches/icecat-CVE-2016-1952-pt04.patch,
gnu/packages/patches/icecat-CVE-2016-1952-pt05.patch,
gnu/packages/patches/icecat-CVE-2016-1952-pt06.patch,
gnu/packages/patches/icecat-CVE-2016-1954.patch,
gnu/packages/patches/icecat-CVE-2016-1960.patch,
gnu/packages/patches/icecat-CVE-2016-1961.patch,
gnu/packages/patches/icecat-CVE-2016-1962.patch,
gnu/packages/patches/icecat-CVE-2016-1964.patch,
gnu/packages/patches/icecat-CVE-2016-1965.patch,
gnu/packages/patches/icecat-CVE-2016-1966.patch,
gnu/packages/patches/icecat-CVE-2016-1974.patch,
gnu/packages/patches/icecat-bug-1248851.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patches.
2016-03-10 10:52:41 -05:00
Ludovic Courtès ec278439f3 substitute: Optimize HTTP pipelining over TLS.
* guix/scripts/substitute.scm (http-multiple-get): Write the requests
to a bytevector output port before sending them.
2016-03-10 13:55:30 +01:00
Ludovic Courtès 9b7bd1b160 substitute: Add HTTPS support.
Fixes <http://bugs.gnu.org/22937>.
Reported by Chris Marusich <cmmarusich@gmail.com>.

* guix/scripts/substitute.scm (fetch): Add 'https' alongside 'http'.
Use 'open-connection-for-uri' instead of 'open-socket-for-uri'.  Call
'setvbuf' only when PORT matches 'file-port?'.
(http-multiple-get): Likewise.  Change 'base-url' parameter to
'base-uri'.
(fetch-narinfos)[do-fetch]: Add 'https' case alongside 'http'.  Pass URI
instead of URL to 'http-multiple-get'.
* doc/guix.texi (Requirements): Move GnuTLS one level higher and mention
HTTPS substitutes.
(Substitutes): Mention HTTPS and recommend it.  Explain why servers
are not authenticated.  Add "On Trusting Binaries" subsection.
2016-03-10 13:55:30 +01:00
Efraim Flashner 2f9862ffd0 gnu: isc-dhcp: Update bundled bind to 9.9.8-P4 [fixes CVE-2016-1285, CVE-2016-1286].
* gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.8-P4.
2016-03-10 09:49:04 +02:00
Efraim Flashner 0d88031c2f gnu: bind-utils: Update to 9.10.3-P4 [fixes CVE-2016-1285, CVE-2016-1286].
* gnu/packages/dns.scm (bind-utils): Update to 9.10.3-P4.
2016-03-10 09:29:55 +02:00
Ricardo Wurmus 82f145ef7a gnu: custom-gcc: Delete broken or conflicting executables.
* gnu/packages/gcc.scm (custom-gcc)[arguments]: Add phase to remove
executables that are non-functional or conflict with the executables of
"gcc".
2016-03-10 07:12:27 +01:00
宋文武 ce6027bf43 gnu: nautilus: Don't propagate gtk+.
* gnu/packages/gnome.scm (nautilus): Move gtk+ from propagated-inputs to inputs.
2016-03-10 08:27:53 +08:00
Ludovic Courtès 204d34ff96 substitute: Error out on unsupported URL schemes.
Reported in <http://bugs.gnu.org/22937>
by Chris Marusich <cmmarusich@gmail.com>.

* guix/scripts/substitute.scm (fetch): Add 'else' case and call 'leave'.
2016-03-09 23:47:49 +01:00
Ludovic Courtès bec7f35214 ui: Do not call 'port-filename' on closed file ports.
* guix/ui.scm (call-with-error-handling)[port-filename*]: New
procedure.
Use it in the 'nar-error?' case.
2016-03-09 23:47:49 +01:00
Andreas Enge 8bcdc23fd0 gnu: texlive: Make texlive-bin and texlive-texmf private.
* gnu/packages/texlive.scm (texlive-bin, texlive-texmf): Define the variables
  as non-public; they should not be installed into a profile.
2016-03-09 22:36:45 +01:00
Andreas Enge fde6060347 gnu: po4a: Use texlive-minimal instead of texlive-bin.
* gnu/packages/gettext.scm (po4a)[inputs]: Replace texlive-bin by
  texlive-minimal.
2016-03-09 22:36:45 +01:00
Andreas Enge aad375c9bc gnu: statistics: Remove import of unused texlive module.
* gnu/packages/statistics.scm: Do not import (gnu packages texlive).
2016-03-09 22:36:45 +01:00
Andreas Enge 289adba7a3 gnu: gnuplot: Use texlive-minimal instead of texlive-bin.
* gnu/packages/maths.scm (gnuplot)[inputs]: Replace texlive-bin by
  texlive-minimal.
2016-03-09 22:36:45 +01:00
Tobias Geerinckx-Rice fb9ca51130 gnu: simple-scan: Update to 3.19.91.
* gnu/packages/gnome.scm (simple-scan): Update to 3.19.91.
[arguments]: Add 'clean' phase.
2016-03-09 15:55:33 -05:00
Mark H Weaver f97334220c gnu: pidgin-otr: Update to 4.0.2.
* gnu/packages/messaging.scm (pidgin-otr): Update to 4.0.2.
2016-03-09 15:51:16 -05:00
Andreas Enge 5adb3a4db4 gnu: libotr: Remove version 3.2.1.
* gnu/packages/messaging.scm (libotr-3): Remove variable.
2016-03-09 21:31:18 +01:00
Leo Famulari 89e58e8e8c libotr: Update to 4.1.1 [fixes CVE-2016-2851].
* gnu/packages/messaging.scm (libotr): Update to 4.1.1.
[native-inputs]: New field.
2016-03-09 15:19:50 -05:00
Ludovic Courtès f5a9103991 gnu: dbus: Incorporate "dbus-helper-search-path.patch".
* gnu/packages/glib.scm (dbus)[source]: Apply
"dbus-helper-search-path.patch".
(dbus/activation): Remove.
* gnu/services/dbus.scm (<dbus-configuration>)[dbus]: Default to DBUS.
(dbus-service): Likewise.
2016-03-09 15:31:23 +01:00
Ludovic Courtès 255f730879 gnu: eudev: Add dependency on blkid.
* gnu/packages/linux.scm (eudev)[inputs]: Add UTIL-LINUX.
(eudev-with-blkid): Remove.
* gnu/services/base.scm (udev-service): Use EUDEV instead of
EUDEV-WITH-BLKID.
* gnu/system.scm (%base-packages): Likewise.
2016-03-09 15:26:09 +01:00
Ludovic Courtès 297a36abfc gnu: graphite2: Update to 1.3.6.
* gnu/packages/fontutils.scm (graphite2)[replacement]: Remove.
[version, source]: Update to 1.3.6.
(graphite2-1.3.6): Remove.
2016-03-09 15:23:12 +01:00
Ludovic Courtès 4cff124bbf gnu: openssl: Update to 1.0.2g.
* gnu/packages/tls.scm (openssl)[replacement]: Remove.
[version, source]: Bump to 1.0.2g.  Use "openssl-c-rehash-in.patch"
instead of "openssl-c-rehash.patch".
(openssl-1.0.2g): Remove.
* gnu-system.am (dist_patch_DATA): Remove "openssl-c-rehash.patch".
2016-03-09 15:20:34 +01:00
Ludovic Courtès 4d1a35fabc gnu: perl: Incorporate patch for CVE-2016-2381.
* gnu/packages/perl.scm (perl)[source]: Add "perl-CVE-2016-2381.patch".
[replacement]: Remove.
(perl-fixed): Remove.
2016-03-09 15:17:12 +01:00
Ludovic Courtès 6da23c0429 gnu: complexity: Update to 1.9.
* gnu/packages/code.scm (complexity): Update to 1.9.
2016-03-09 15:10:20 +01:00
Ludovic Courtès f1eacbafc4 upstream: Fix 'signature-urls' coalescing.
Previously, the resulting 'signature-urls' would contain N times the
same URL.

* guix/upstream.scm (coalesce-sources): Fix TWO in 'signature-urls'.
* tests/upstream.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2016-03-09 15:08:00 +01:00
Ludovic Courtès 1ddee42472 doc: Add note on store immutability.
* doc/guix.texi (The Store): Mention "store items" and the database
location.  Add note on the store's immutability.
2016-03-09 14:49:28 +01:00
Efraim Flashner 00eb9fa3e2 gnu: Add liblangtag.
* gnu/packages/libreoffice.scm (liblangtag): New variable.

Co-authored-by: Andreas Enge <andreas@enge.fr>
2016-03-09 14:27:19 +01:00
Andreas Enge ebc816311c gnu: libreoffice: Enable parallel build.
* gnu/packages/libreoffice.scm (libreoffice)[arguments]: Enable parallel
  build.
2016-03-09 14:27:19 +01:00
Ludovic Courtès 112024826d system: Explicitly set umask to 022 in /etc/profile.
Fixes <http://bugs.gnu.org/22650>.
Reported by myglc2 <myglc2@gmail.com>.

* gnu/system.scm (operating-system-etc-service)[profile]: Invoke
'umask'.
2016-03-08 23:30:53 +01:00
Ludovic Courtès 5284339d9d guix build: Add '--quiet'.
Fixes <http://bugs.gnu.org/19772>.
Reported by Andrei Osipov <andrspv@gmail.com>.

* guix/scripts/build.scm (show-help, %options): Add --quiet.
(guix-build): Parameterize 'current-build-output-port' accordingly.
* doc/guix.texi (Invoking guix build): Use it in example.
(Additional Build Options): Document it.
2016-03-08 22:00:17 +01:00
Ludovic Courtès efb107e0cd packages: Gracefully report packages not found.
Fixes a thinko introduced in 1b846da8c3
that would lead to a backtrace when looking for an unknown package.

* gnu/packages.scm (%find-package): Correct logic when checking for
FALLBACK?.
2016-03-08 11:48:21 +01:00
Ludovic Courtès 95cd4971d0 packages: Support the deprecated "NAME-VERSION" syntax.
Fixes a typo introduced in 1b846da8c3 that
would lead to a backtrace when using the deprecated syntax.

* gnu/packages.scm (%find-package): Turn the first argument to
'call-with-values' into a thunk.  Use #:select instead of '@' to select
the right 'package-name->name+version' procedure.
2016-03-08 11:38:46 +01:00
Ludovic Courtès 7befee308b packages: Clarify NAME-VERSION deprecation message.
* gnu/packages.scm (%find-package): Clarify message; remove trailing
period.
2016-03-08 11:36:16 +01:00
Ludovic Courtès 16210486e6 guix system: Write the GC root on the target file system.
Fixes <http://bugs.gnu.org/22802>.
Reported by Jookia <166291@gmail.com>.

* guix/scripts/system.scm (install-grub*): Prepend TARGET to GC-ROOT.
2016-03-08 11:11:28 +01:00
Ludovic Courtès 16f4acbddb emacs: Gracefully handle wrong package names passed to 'guix-edit'.
Fixes <http://bugs.gnu.org/22933>.

* emacs/guix-main.scm (package-location-string): Rewrite to handle the
case where 'packages-by-name' returns the empty list.

Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
2016-03-08 11:11:28 +01:00
Efraim Flashner e224495ce1 gnu: jasper: Add fixes for CVE-2016-1577, CVE-2016-2089, CVE-2016-2116.
* gnu/packages/patches/jasper-CVE-2016-1557.patch,
gnu/packages/patches/jasper-CVE-2016-2089.patch,
gnu/packages/patches/jasper-CVE-2016-2116.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/image.scm (jasper)[source]: Add patches.
2016-03-08 11:54:58 +02:00
Leo Famulari 165e0382b3 gnu: libreoffice: Update to 5.0.5.2 [fixes CVE-2016-{0794, 0795}].
* gnu/packages/libreoffice.scm (libreoffice): Update to 5.0.5.2.
2016-03-07 22:55:45 -05:00
Mark H Weaver a90d24715b gnu: linux-libre: Update to 4.1.19.
* gnu/packages/linux.scm (linux-libre): Update to 4.1.19.
2016-03-07 19:17:39 -05:00
Mark H Weaver ac00a3d897 gnu: linux-libre: Update to 4.4.4.
* gnu/packages/linux.scm (linux-libre): Update to 4.4.4.
2016-03-07 19:17:39 -05:00
Ludovic Courtès ced71ac7a7 packages: Cache the result of 'input-grafts'.
This reduces the wall-clock time of

  guix environment gnutls --pure -E true

by ~35%.

* guix/packages.scm (%graft-cache): New variable.
(input-graft): Use 'cached' to cache to %GRAFT-CACHE.
2016-03-08 00:01:13 +01:00
Ludovic Courtès 9775412ee0 packages: Cache the result of 'package->bag'.
This reduces the wall-clock time of

  guix environment gnutls --pure -E true

by ~25%.

* guix/packages.scm (%bag-cache): New variable.
(package->bag): Use 'cached' to cache things to %BAG-CACHE.
2016-03-08 00:01:13 +01:00
Ludovic Courtès 198d84b70b packages: Generalize the 'cached' macro.
* guix/packages.scm (cache): Rename to...
  (cache!): ... this.  Add 'cache' parameter, and use it.
  (cached): Add a rule to allow the cache to be specified.
2016-03-08 00:01:13 +01:00
Andy Wingo ef7516aa04 gnu: network-manager: Update to 1.0.10.
* gnu/packages/gnome.scm (network-manager): Update to 1.0.10.
  (network-manager-applet): Likewise.
  (%network-manager-glib-duplicate-test-patch): Remove.
2016-03-07 21:15:37 +01:00
Andy Wingo b4f59d87a6 gnu: network-manager: Disable failing tests.
* gnu/packages/gnome.scm (network-manager): Add pre-configure phase.
2016-03-07 21:14:23 +01:00
Andy Wingo c42602b5cb gnu: elogind: Update to 219.13.
* gnu/packages/freedesktop.scm (elogind): Update to 219.13.  Remove
  build fix that is no longer needed.  Update home page.
2016-03-07 21:10:00 +01:00
Andy Wingo a7e50a2a03 gnu: system: Add elogind cgroup mount.
* gnu/system/file-systems.scm (%elogind-file-systems): Add elogind
  cgroup mount.
2016-03-07 21:10:00 +01:00
Ricardo Wurmus 0e2f2aebed gnu: Add Blender.
* gnu/packages/graphics.scm (blender): New variable.
2016-03-07 20:58:25 +01:00
宋文武 201cfb81d1 gnu: Add gst-python.
* gnu/packages/gstreamer.scm (python-gst, python2-gst): New variables.
2016-03-07 09:57:20 +08:00
宋文武 fa7cf82ebe gnu: python-pygobject: Propagate glib and libffi.
* gnu/packages/glib.scm (python-pygobject): Move glib and libffi to propagated-inputs.
(python2-pygobject)[inputs]: Remove glib and libffi.
2016-03-07 09:57:20 +08:00
宋文武 e28f95a963 gnu: python-pygobject: Add search path for GI_TYPELIB_PATH.
* gnu/packages/glib.scm (python-pygobject)[native-search-paths]: Use the
same search paths as gobject-introspection.
2016-03-07 09:57:20 +08:00
宋文武 b3585d9bda gnu: orc: Update to 0.4.25.
* gnu/packages/gstreamer.scm (orc): Update to 0.4.25.
2016-03-07 09:57:20 +08:00
宋文武 60a0886d72 services: Use 'packages->manifest' in 'packages->profile-entry'.
This allows using (PACKAGE OUTPUT) in the packages field.
Reported by Jan Nieuwenhuizen <janneke@gnu.org>.

* gnu/services.scm (packages->profile-entry): Use 'packages->manifest'.
2016-03-07 09:57:20 +08:00
Ludovic Courtès 956ad60cad services: elogind: Rely on D-Bus activation.
Previously elogind was explicitly spawned by the Shepherd.  Now it is
activated by dbus-daemon on demand.

* gnu/packages/freedesktop.scm (elogind)[arguments]: Add
'fix-service-file' phase.
* gnu/services/desktop.scm (elogind-shepherd-service): Remove.
(elogind-dbus-service): New procedure.
(elogind-service-type): Do not extend SHEPHERD-ROOT-SERVICE-TYPE.  Use
'elogind-dbus-service' for DBUS-ROOT-SERVICE-TYPE.
2016-03-07 00:01:03 +01:00
Ludovic Courtès ef8de9852e tests: Disable grafting by default for most tests.
This allows tests to run as expected even in the presence of
replacements among the bootstrap packages, such as Perl (commit
d8173f21f7).

* tests/cpan.scm: Add (%graft? #f).
* tests/derivations.scm: Likewise.
* tests/graph.scm: Likewise.
* tests/monads.scm: Likewise.
* tests/profiles.scm: Likewise.
* tests/gexp.scm: Likewise.
("gexp->derivation vs. grafts"): Explicitly reenable grafting before,
and disable it after, using 'set-grafting'.
2016-03-06 23:16:35 +01:00
Ludovic Courtès 322bb53c7a import: snix: Use the right 'package-name->name+version'.
Fixes a regression introduced in
1b846da8c3.

* guix/import/snix.scm: Use 'package-name->name+version' from (guix
build utils).
2016-03-06 23:16:35 +01:00
Ricardo Wurmus afadb05e58 gnu: alsa-modular-synth: Insert space to separate linker flags.
* gnu/packages/audio.scm (alsa-modular-synth)[arguments]: Add build
phase to separate linker flags.
2016-03-06 21:17:05 +01:00
Ricardo Wurmus ee6a88b118 gnu: alsa-modular-synth: Drop Qt 4.
* gnu/packages/audio.scm (alsa-modular-synth)[inputs]: Replace "qt-4"
with "qt".
[arguments]: Add configure flag to build with Qt 5.
2016-03-06 21:17:05 +01:00
Ludovic Courtès 59a4dd509b doc: Explain how to check whether security updates are used.
Based on
<https://lists.gnu.org/archive/html/guix-devel/2016-03/msg00009.html>.

* doc/guix.texi (Security Updates): Explain how to check whether we're
using a grafted version.
2016-03-05 22:53:40 +01:00
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
Mark H Weaver d47ad0890c gnu: graphite2: Replace with 1.3.6 [unspecified security fixes].
See <https://bodhi.fedoraproject.org/updates/FEDORA-2016-dec1faadc5>

* gnu/packages/fontutils.scm (graphite2)[replacement]: New field.
(graphite2-1.3.6): New variable.
2016-03-02 15:12:18 -05:00
Jessica Tallon c285a400a2 gnu: Add password-store.
* gnu/packages/password-utils.scm (password-store): New variable.

Co-authored-by: Andreas Enge <andreas@enge.fr>
Co-authored-by: Leo Famulari <leo@famulari.name>
2016-03-02 14:18:51 -05:00
Roel Janssen dd6e70f920 gnu: Add cppcheck.
* gnu/packages/check.scm (cppcheck): New variable.
2016-03-02 15:17:56 +01:00
Ludovic Courtès 442a6ff5ea tests: Disable grafts by default.
Fixes <http://bugs.gnu.org/22872>.
Reported by myglc2 <myglc2@gmail.com>.

* test-env.in: Define and export 'GUIX_BUILD_OPTIONS'.
* tests/guix-build.sh: When setting 'GUIX_BUILD_OPTIONS', make sure it
contains '--no-grafts'.
* tests/guix-package.sh: Likewise.
* tests/guix-daemon.sh: Add (%graft? #f) in Scheme snippets.
2016-03-02 14:47:07 +01:00
Ludovic Courtès 637cd12543 graph: Ignore 'GUIX_BUILD_OPTIONS'.
Previously 'GUIX_BUILD_OPTIONS' would be honored, but 'guix graph' does
not support the common build options.

* guix/scripts/graph.scm (guix-graph): Use 'args-fold*' instead of
'parse-command-line'.
2016-03-02 14:47:07 +01:00
Ludovic Courtès 7573d30ff8 guix build: Move '--no-grafts' to the common build options.
* guix/scripts/build.scm (%options): Move --no-grafts to...
(%standard-build-options): ... here.
(show-help, show-build-options-help): Adjust accordingly.
* guix/scripts/archive.scm (%default-options): Add 'graft?'.
(guix-archive): Parametrize '%graft?'.
* guix/scripts/environment.scm (%default-options): Add 'graft?'.
(guix-environment): Parametrize '%graft?'.
* guix/scripts/package.scm (%default-options): Add 'graft?'.
(guix-package): Parametrize '%graft?'.
* guix/scripts/system.scm (%default-options): Add 'graft?'.
(guix-system): Parametrize 'graft?'.
* doc/guix.texi (Additional Build Options): Move --no-grafts to...
(Common Build Options): ... here.
2016-03-02 14:47:07 +01:00
Ludovic Courtès 1cbdf82d3b guix archive: Use 'with-store'.
* guix/scripts/archive.scm (guix-archive): Use 'with-store' instead of
an explicit 'open-connection'.
2016-03-02 14:47:07 +01:00
Mark H Weaver ed742bc4b4 gnu: openssl: Enable ssl2 at build time to ensure ABI compatible graft.
Fixes <https://debbugs.gnu.org/22876>
Reported by Christopher Allan Webber <cwebber@dustycloud.org>.

* gnu/packages/tls.scm (openssl-1.0.2g)[arguments]: Override the inherited
  'configure' phase to add "enable-ssl2" as an argument to ./config.
2016-03-02 01:58:42 -05:00
Leo Famulari eb8065cd27 gnu: ilmbase: Fix typo in adding a patch.
* gnu-system.am (dist_patch_DATA): Fix typo.
5e8276dcf4
2016-03-01 20:47:11 -05:00
宋文武 6150b5c780 gnu: xfce: Don't wrap 'startxfce4'.
The necessary environment variables are set by 'etc/profile' now.

* gnu/packages/xfce.scm (xfce)[build-system]: Use 'trivial-build-system'.
[arguments]: Simplify.
2016-03-02 08:32:47 +08:00
Leo Famulari 5e8276dcf4 gnu: ilmbase: Add patch to fix build on i686.
Fixes <http://bugs.gnu.org/22049>.

* gnu/packages/patches/ilmbase-fix-tests.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/graphics.scm (ilmbase)[source]: Add patch.
2016-03-01 19:08:31 -05:00
Leo Famulari 88ccca45f6 gnu: openssh: Update to 7.2p1.
* gnu/packages/ssh.scm (openssh): Update to 7.2p1.
2016-03-01 16:32:41 -05:00
Leo Famulari 599860d2b9 gnu: libressl: Update to 2.2.6.
* gnu/packages/tls.scm (libressl): Update to 2.2.6.
2016-03-01 16:30:13 -05:00
Leo Famulari 043c3f0bed gnu: parallel: Update to 20160222.
* gnu/packages/parallel.scm (parallel): Update to 20160222.
2016-03-01 15:15:38 -05:00
Pjotr Prins f82c8c3cba gnu: r-go-db: Bioconductor changed URL for data downloads.
* gnu/packages/bioinformatics.scm (r-go-db)[source]: Update data URL.
2016-03-01 19:47:26 +02:00
Pjotr Prins 27acfaea4c gnu: r-iranges: Update to 2.4.8.
* gnu/packages/bioinformatics.scm (r-iranges): Update to 2.4.8.
2016-03-01 19:47:26 +02:00
Pjotr Prins 8921841da8 gnu: r-s4vectors: Update to 0.8.11.
* gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.8.11.
2016-03-01 19:47:25 +02:00
Pjotr Prins b70fa3c7f7 gnu: r-ggplot2: Update to 2.0.0.
* gnu/packages/statistics.scm (r-ggplot2): Update to 2.0.0.
2016-03-01 19:47:24 +02:00
Ludovic Courtès caeadfddb0 gnu: openssl: Replace with 1.0.2g [fixes CVE-2016-{0800,0705,0798,0797,0799,0702,0703,0704}].
See <http://openssl.org/news/secadv/20160301.txt>.
Also fixes <http://bugs.gnu.org/22831>.

* gnu/packages/patches/openssl-c-rehash-in.patch: New file.
* gnu/packages/tls.scm (openssl)[replacement]: New field.
(openssl-1.0.2g): New variable.
2016-03-01 16:00:46 +01:00
Ludovic Courtès c22a1324e6 grafts: Graft recursively.
Fixes <http://bugs.gnu.org/22139>.

* guix/grafts.scm (graft-derivation): Rename to...
(graft-derivation/shallow): ... this.
(graft-origin-file-name, item->deriver, non-self-references)
(cumulative-grafts, graft-derivation): New procedures
* tests/grafts.scm ("graft-derivation, grafted item is a direct
dependency"): Clarify title.  Use 'grafted' instead of 'graft' to refer
to the grafted derivation.
("graft-derivation, grafted item is an indirect dependency")
("graft-derivation, no dependencies on grafted output"): New tests.
* guix/packages.scm (input-graft): Change to take a package instead of
an input.
(input-cross-graft): Likewise.
(fold-bag-dependencies): New procedure.
(bag-grafts): Rewrite in terms of 'fold-bag-dependencies'.
* tests/packages.scm ("package-derivation, indirect grafts"): Comment out.
* doc/guix.texi (Security Updates): Mention run-time dependencies and
recursive grafting.
2016-03-01 16:00:46 +01:00
Efraim Flashner d06fc008bd gnu: tiled: Use 'modify-phases'.
* gnu/packages/game-development.scm (tiled)[arguments]: Use 'modify-phases'.
2016-03-01 14:55:55 +02:00
Efraim Flashner e8ea01d902 gnu: tiled: Update to 0.15.1.
* gnu/packages/game-development.scm (tiled): Update to 0.15.1.
2016-03-01 14:55:55 +02:00
Ricardo Wurmus d1e32822b4 gnu: Add PePr.
* gnu/packages/bioinformatics.scm (pepr): New variable.
2016-03-01 11:51:24 +01:00
Ricardo Wurmus d29150b55d gnu: Add bwa-pssm.
* gnu/packages/bioinformatics.scm (bwa-pssm): New variable.
2016-03-01 10:31:04 +01:00
Ricardo Wurmus b4464d384c gnu: Add gdsl.
* gnu/packages/datastructures.scm (gdsl): New variable.
2016-03-01 10:30:04 +01:00
Efraim Flashner e288f0075c gnu: weechat: Move to irc.scm.
* gnu/packages/weechat.scm (weechat): Move from here ...
* gnu/packages/irc.scm (weechat): ... to here.
* gnu/packages/weechat.scm: Delete file.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove weechat.scm.
2016-03-01 11:09:32 +02:00
Efraim Flashner a61bd6a5e3 gnu: irssi: Use 'modify-phases'.
* gnu/packages/irc.scm (irssi)[arguments]: Use 'modify-phases'.
2016-03-01 11:09:32 +02:00
Efraim Flashner 27930f853d gnu: irssi: Move to irc.scm.
* gnu/packages/irssi.scm (irssi): Move from here ...
* gnu/packages/irc.scm (irssi): ... to here.
* gnu/packages/irssi.scm: Delete file.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove irssi.scm.
2016-03-01 11:09:32 +02:00
Efraim Flashner 980f058d92 gnu: Add quassel.
* gnu/packages/irc.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Register it.
2016-03-01 11:09:32 +02:00
Efraim Flashner 550791b8f1 gnu: Add snorenotify.
* gnu/packages/kde.scm (snorenotify): New variable.
2016-03-01 11:09:32 +02:00
Efraim Flashner d34c594aeb gnu: Add qca.
* gnu/packages/kde.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Register it.
2016-03-01 11:09:32 +02:00
Efraim Flashner d8ea278204 gnu: Add oxygen-icons.
* gnu/packages/kde-frameworks.scm (oxygen-icons): New variable.
2016-03-01 11:09:32 +02:00
Manolis Ragkousis fea1f275bc gnu: Add desmume.
* gnu/packages/games.scm (desmume): New variable.
2016-02-29 22:04:53 -05:00
Mark H Weaver 8d5ceb120d gnu: curl: Use updated libssh2 [fixes CVE-2016-7087].
* gnu/packages/curl.scm (curl)[inputs]: Use libssh2.
* gnu/packages/ssh.scm (libssh2-1.4): Remove variable.
2016-02-29 20:09:29 -05:00
Christopher Allan Webber aa5946edb2 gnu: Remove python2-pil.
python2-pil is vulnerable to several security issues (CVE-2016-0740,
CVE-2016-0775, and CVE-2016-2533).  Fortunately, python2-pillow provides
equivalent functionality, so this package can be cleanly removed.

* gnu/packages/python.scm (python2-pil): Remove variable.
2016-02-29 15:01:20 -08:00
Ricardo Wurmus daeb61f7a9 gnu: guile-for-guile-emacs: Use guile-2.0 search paths.
* gnu/packages/guile.scm (guile-for-guile-emacs)[native-search-paths]:
  Use the same search paths as guile-2.0.
2016-02-29 07:10:40 +01:00
Leo Famulari 823e2ed4b3 gnu: msmtp: Install msmtpq.
* gnu/packages/mail.scm (msmtp)[arguments]: Install msmtpq scripts.
2016-02-28 22:06:24 -05:00
Ludovic Courtès 1a59b6d014 gnu: git: Install symlinks instead of hard links.
This reduces nar size by a factor of 10.
Fixes <http://bugs.gnu.org/21949>.

* gnu/packages/version-control.scm (git)[arguments]: Pass
NO_INSTALL_HARDLINKS as #:make-flags.
2016-02-28 16:41:53 +01:00
Andreas Enge dbb7a08175 gnu: libwnck: Rename variable for GTK+ 2 variant.
* gnu/packages/gnome.scm (libwnck-1): Rename this...
  (libwnck-2): ...to this.
* gnu/packages/xfce.scm (xfce4-panel, xfce4-xkb-plugin, xfce4-session,
  xfwm4, xfdesktop)[inputs]: Adapt.
2016-02-28 15:59:56 +01:00
Efraim Flashner 2236da6e97 gnu: xrandr: Update to 1.5.0.
* gnu/packages/xorg.scm (xrandr): Update to 1.5.0.
2016-02-28 14:13:30 +02:00
Efraim Flashner 97a0859593 gnu: libqmi: Update to 1.12.8.
* gnu/packages/freedesktop.scm (libqmi): Update to 1.12.8.
2016-02-28 13:42:34 +02:00
Efraim Flashner 9012e118ff gnu: wayland: Update to 1.10.0.
* gnu/packages/freedesktop.scm (wayland): Update to 1.10.0.
[arguments]: Disable parallel tests.
2016-02-28 13:32:52 +02:00
Efraim Flashner d3e3d7f02a gnu: libinput: Update to 1.2.0.
* gnu/packages/freedesktop.scm (libinput): Update to 1.2.0.
2016-02-28 13:08:08 +02:00
Efraim Flashner a724924beb gnu: python-tornado: Update to 4.3.
* gnu/packages/python.scm (python-tornado): Update to 4.3.
[native-inputs]: Add python-backports-abc.
(python2-tornado)[inputs]: Add python2-singledispatch.
2016-02-28 10:53:42 +02:00
Efraim Flashner 6b59fc1020 gnu: Add python-backports-abc.
* gnu/packages/python.scm (python-backports-abc): New variable.
2016-02-28 10:53:35 +02:00
Mark H Weaver 9579118922 gnu: bitlbee: Update to 3.4.1.
* gnu/packages/patches/bitlbee-configure-doc-fix.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/messaging.scm (bitlbee): Update to 3.4.1.
[source]: Remove patch.
2016-02-27 21:10:56 -05:00
Ludovic Courtès f376dc3acb grafts: Consider all the outputs in the graft mapping.
Before that, outputs of a derivation could be left referring to the
ungrafted version of the derivation.

* guix/grafts.scm (graft-derivation)[outputs]: Change to a list of
name/file pairs.
* guix/grafts.scm (graft-derivation)[build]: Add 'old-outputs' variable
and use it when computing 'mapping'.  Use 'mapping' directly.
* tests/grafts.scm ("graft-derivation, multiple outputs"): New test.
2016-02-27 23:31:52 +01:00
Ludovic Courtès cd05d38812 grafts: Slight simplification.
* guix/grafts.scm (graft-derivation)[output-names]: Use
'derivation-output-names'.
2016-02-27 23:31:52 +01:00
Ludovic Courtès 82f5186650 grafts: Make sure files are not created world-writable.
* guix/build/graft.scm (rewrite-directory): Add 'umask' call.
2016-02-27 23:31:52 +01:00
Tobias Geerinckx-Rice 9c7f7e2da9 gnu: btrfs-progs: Update to 4.4.1.
* gnu/packages/linux.scm (btrfs-progs): Update to 4.4.1.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2016-02-27 22:39:51 +02:00
Ricardo Wurmus a003b5b650 gnu: scribus: Update to 1.5.1.
* gnu/packages/scribus.scm (scribus): Update to 1.5.1.
[source]: Remove patch.
* gnu/packages/patches/scribus-qobject.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
2016-02-27 16:34:20 +01:00
Ricardo Wurmus b951e26fe5 gnu: arandr: Add "xrandr" to inputs.
* gnu/packages/xdisorg.scm (arandr)[inputs]: Add "xrandr".
[arguments]: Add build phase "make-xrandr-available" to ensure "xrandr"
executable is found at runtime.
2016-02-27 16:25:26 +01:00
Mark H Weaver b35461748b gnu: Fix misplaced commas (unquote).
Fix many occurrences of comma (unquote) being placed immediately after the
previous list item, e.g. ("ncurses", ncurses) in the inputs.

* gnu/packages/base.scm (patch, gnu-make),
  gnu/packages/bioinformatics.scm (hmmer),
  gnu/packages/bittorrent.scm (aria2),
  gnu/packages/compression.scm (pbzip2),
  gnu/packages/databases.scm (recutils),
  gnu/packages/fonts.scm (font-terminus),
  gnu/packages/freedesktop.scm (xdg-utils, elogind),
  gnu/packages/games.scm (gnujump),
  gnu/packages/gnome.scm (libidl, gnumeric, eog, gedit),
  gnu/packages/gnunet.scm (gnunet),
  gnu/packages/gnuzilla.scm (mozjs, nspr),
  gnu/packages/gtk.scm (gtksourceview, gdk-pixbuf),
  gnu/packages/lua.scm (lua),
  gnu/packages/openstack.scm (python-swiftclient),
  gnu/packages/perl.scm (perl-json-any),
  gnu/packages/polkit.scm (polkit-qt),
  gnu/packages/python.scm (wrap-python3, python-oauthlib)
  (python-mccabe-0.2.1, python-contextlib2, python2-rauth),
  gnu/packages/qt.scm (qtkeychain),
  gnu/packages/ruby.scm (ruby-nokogiri),
  gnu/packages/screen.scm (screen),
  gnu/packages/ssh.scm (libssh),
  gnu/packages/video.scm (ffmpeg, mplayer),
  gnu/packages/vim.scm (vim),
  gnu/packages/xdisorg.scm (redshift),
  gnu/packages/xfce.scm (xfce4-panel, xfce4-settings),
  gnu/packages/xnee.scm (xnee),
  gnu/packages/xorg.scm (font-adobe100dpi, font-adobe75dpi),
  gnu/packages/zsh.scm (zsh): Fix misplaced commas (unquote).
2016-02-27 08:49:26 -05:00
Ricardo Wurmus 48766ea85f gnu: Add emacs-god-mode.
* gnu/packages/emacs.scm (emacs-god-mode): New variable.
2016-02-27 13:50:18 +01:00
Ricardo Wurmus 048bfba163 gnu: Add gtklick.
* gnu/packages/music.scm (gtklick): New variable.
2016-02-27 12:27:21 +01:00
Ricardo Wurmus 6ab4712d6e gnu: python2-pygtk: Add libglade to inputs.
* gnu/packages/gtk.scm (python2-pygtk)[inputs]: Add "libglade".
2016-02-27 12:27:21 +01:00
Ricardo Wurmus a91d72e23a gnu: Add pyliblo.
* gnu/packages/audio.scm (python-pyliblo, python2-pyliblo): New
  variables.
2016-02-27 12:27:21 +01:00
Mark H Weaver b460a99890 gnu: linux-libre-4.1: Update to 4.1.18.
* gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.18.
2016-02-27 02:36:16 -05:00
Mark H Weaver 3dad786b64 gnu: linux-libre: Update to 4.4.3.
* gnu/packages/linux.scm (linux-libre): Update to 4.4.3.
2016-02-27 02:36:10 -05:00
Ben Woodcroft 917a2a58ec import: Add github-updater.
* guix/import/github.scm: New file.
* guix/scripts/refresh.scm (%updaters): Add %GITHUB-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention it.
* Makefile.am (MODULES): Add gnu/import/github.scm.
2016-02-26 22:06:34 -05:00
Ludovic Courtès 22572d56cb store: 'path-info-deriver' is #f when there is no deriver.
* guix/store.scm (read-path-info): Use #f when we get the empty string
for DERIVER.
* guix/scripts/publish.scm (narinfo-string): Adjust accordingly.
* tests/store.scm ("path-info-deriver"): New test.
2016-02-26 23:35:29 +01:00
Ludovic Courtès acb01e3746 grafts: Add record type printer.
* guix/grafts.scm (write-graft): New procedure.  Register it as a
printer for <graft>.
2016-02-26 23:35:29 +01:00
Ludovic Courtès 70ac09a552 doc: Capitalize section title.
* doc/guix.texi (Running GuixSD in a VM): Capitalize section title.
2016-02-26 23:35:29 +01:00
Mark H Weaver 4ed737b2ab gnu: gtk-doc: Improve fix-docbook phase.
* gnu/packages/gtk.scm (gtk-doc)[arguments]: In the 'fix-docbook' phase,
avoid hard-coding the docbook-xsl version number, and return #t.
2016-02-25 22:24:32 -05:00
Danny Milosavljevic b31fbea566 gnu: Add python-psycopg2.
* gnu/packages/python.scm (python-psycopg2, python2-psycopg2): New variables.
2016-02-25 14:35:28 -08:00
Leo Famulari 7dd21101a3 gnu: diffoscope: Update to 49.
* gnu/packages/package-management.scm (diffoscope): Update to 49.
[source]: Use pypi-uri.
[arguments]: Use python-3. Enable tests. Add 'dependency-on-python-magic' phase
and remove 'dependency-on-rpm' phase.
[native-inputs]: Remove python2-setuptools.
[inputs]: Replace python2-file, python2-debian, python2-libarchive-c,
python2-tlsh, python2-pytest, python2-chardet with python-3 variants.
2016-02-25 17:06:25 -05:00
Rene Saavedra 66d59111e3 gnu: Add dconf-editor.
* gnu/packages/gnome.scm (dconf-editor): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-25 16:36:10 -05:00
Andy Wingo 735e84c7bd gnu: libx264: Change source URL to HTTP.
* gnu/packages/video.scm (libx264): Download via HTTP.  The videolan ftp
  server does not work with IPv6.
2016-02-25 22:33:40 +01:00
Andy Wingo b4787e71ac gnu: gtk-doc: Fix build.
* gnu/packages/gtk.scm (gtk-doc): Fix build.
2016-02-25 22:33:20 +01:00
Efraim Flashner 2865c81c71 gnu: youtube-dl: Update to 2016.02.22.
* gnu/packages/video.scm (youtube-dl): Update to 2016.02.22.
2016-02-25 22:54:03 +02:00
Efraim Flashner eb6e2e812a gnu: python-decorator: Update to 4.0.9.
* gnu/packages/python.scm (python-decorator): Update to 4.0.9.
2016-02-25 21:05:37 +02:00
Efraim Flashner cc0c4fdedd gnu: python-traitlets: Update to 4.1.0.
* gnu/packages/python.scm (python-traitlets): Update to 4.1.0.
[native-inputs]: Add python-mock.
2016-02-25 21:05:37 +02:00
Efraim Flashner c6ebd40da1 gnu: python-mccabe: Update to 0.4.0.
* gnu/packages/python.scm (python-mccabe): Update to 0.4.0.
[inputs]: Add python-pytest, python-pytest-runner.
(python-mccabe-0.2.1)[inputs]: Only use python-setuptools.
2016-02-25 21:05:37 +02:00
Efraim Flashner 43789136d2 gnu: python-flake8: Update to 2.5.4.
* gnu/packages/python.scm (python-flake8): Update to 2.5.4.
[inputs]: Use recent python-pep8, python-pyflakes.
2016-02-25 21:05:37 +02:00
Efraim Flashner db251311cf gnu: python-pep8: Update to 1.7.0.
* gnu/packages/python.scm (python-pep8): Update to 1.7.0.
2016-02-25 21:05:37 +02:00
Efraim Flashner a4d9609c98 gnu: python-networkx: Update to 1.11.
* gnu/packages/python.scm (python-networkx): Update to 1.11.
2016-02-25 21:05:37 +02:00
Efraim Flashner 6f068e081b gnu: python-hypothesis: Update to 3.0.4.
* gnu/packages/python.scm (python-hypothesis): Update to 3.0.4.
[native-inputs]: Remove python-setuptools.
(python2-hypothesis): Use 'strip-python2-variant'.
[native-inputs]: Add python2-enum34, python2-setuptools.
2016-02-25 21:05:37 +02:00
Efraim Flashner fee04c198c gnu: python-html5lib: Update to 1.0b8.
* gnu/packages/python.scm (python-html5lib): Update to 1.0b8.
2016-02-25 21:05:37 +02:00
Efraim Flashner b6785c2e3a gnu: python-isodate: Update to 0.5.4.
* gnu/packages/python.scm (python-isodate): Update to 0.5.4.
2016-02-25 21:05:37 +02:00
Efraim Flashner 9d813ec147 gnu: python-wsgi-intercept: Update to 1.1.2.
* gnu/packages/python.scm (python-wsgi-intercept): Update to 1.1.2.
[native-inputs]: Add python-six.
2016-02-25 21:05:37 +02:00
Efraim Flashner 29f20168cf gnu: python-pytest-localserver: Update to 0.3.5.
* gnu/packages/python.scm (python-pytest-localserver): Update to 0.3.5.
2016-02-25 21:05:37 +02:00
Efraim Flashner da8b011d2a gnu: python-requests-toolbelt: Update to 0.6.0.
* gnu/packages/python.scm (python-requests-toolbelt): Update to 0.6.0.
2016-02-25 21:05:37 +02:00
Efraim Flashner 74a066f9a0 gnu: python-requests: Update to 2.9.1.
* gnu/packages/python.scm (python-requests): Update to 2.9.1.
2016-02-25 21:05:37 +02:00
Efraim Flashner 40981b5c18 gnu: python-wheel: Update to 0.29.0.
* gnu/packages/python.scm (python-wheel): Update to 0.29.0.
2016-02-25 21:05:37 +02:00
Christopher Allan Webber a8f20f63dc gnu: Add python-pastescript.
* gnu/packages/python.scm (python-pastescript, python2-pastescript):
  New variables.
2016-02-25 11:01:56 -08:00
Christopher Allan Webber c4a7904c21 gnu: Add python-paste.
* gnu/packages/python.scm (python-paste, python2-paste): New variables.
* gnu/packages/patches/python-paste-remove-timing-test.patch: New file.
* gnu/packages/patches/python-paste-remove-website-test.patch: New file.
* gnu-system.am (dist_patch_DATA): Add them.
2016-02-25 11:01:45 -08:00
Mark H Weaver e62b5c6903 Merge branch 'media-updates' 2016-02-25 13:50:19 -05:00
Ludovic Courtès 0767f6a69e doc: Clarify the form of UUIDs we expect.
Fixes <http://bugs.gnu.org/22797>.
Reported by Alex Kost <alezost@gmail.com>.

* doc/guix.texi (File Systems): Clarify which UUIDs we're talking
about.
2016-02-25 19:29:21 +01:00
Ludovic Courtès a4e7083da3 http-client: 'http-client/cached' uses unique cache file names.
* guix/http-client.scm (cache-file-for-uri): New procedure.
(http-fetch/cached): Use it.  Remove 'directory' variable.
[update-cache]: Make the 'dirname' of FILE.
2016-02-25 17:23:29 +01:00
Ludovic Courtès e72f50a787 http-client: 'http-fetch/cached' updates the cache atomically.
* guix/http-client.scm (http-fetch/cached)[update-cache]: Use
'with-atomic-file-output' instead of 'call-with-output-file'.
2016-02-25 16:49:11 +01:00
Ludovic Courtès 736f9ffce2 gnu: Add missing import in bioinformatics.scm.
This is a followup to 1baee94.

* gnu/packages/bioinformatics.scm: Add missing import.
2016-02-25 12:48:08 +01:00
Ludovic Courtès cfd503205e guix system: Restore load path after running the activation script.
Fixes <http://bugs.gnu.org/22753>.
Reported by Mark H Weaver <mhw@netris.org>.

* guix/scripts/system.scm (save-load-path-excursion): New variable.
(upgrade-shepherd-services): Add comment about the issue.
(switch-to-system): Use 'save-load-path-excursion' around
'primitive-load' call.
2016-02-25 12:44:41 +01:00
Ludovic Courtès 06b76acceb store: Clarify documentation of 'valid-path?'.
* guix/store.scm (valid-path?): Improve docstring.
* doc/guix.texi (The Store): Update accordingly.
2016-02-25 12:44:41 +01:00
Ludovic Courtès 0043558082 publish: Do not publish nars for invalid store items.
Before that, /nar requests could succeed if the requested store item
exists but is invalid (although such requests were unlikely because the
corresponding narinfo request would have failed.)

* guix/scripts/publish.scm (render-nar): Add 'store' parameter.  Use
'valid-path?' instead of 'file-exists?'.
(make-request-handler): Adjust 'render-nar' call accordingly.
* tests/publish.scm ("/nar/invalid"): New test.
2016-02-25 12:44:41 +01:00
Nils Gillmann a65e2a02fc gnu: Add kyotocabinet.
* gnu/packages/databases.scm (kyotocabinet): New variable.
2016-02-25 11:56:00 +01:00
Ricardo Wurmus 1baee943ca gnu: Add libBigWig.
* gnu/packages/bioinformatics.scm (libbigwig): New variable.
2016-02-25 11:43:44 +01:00
Jan Nieuwenhuizen 1644f0cd87 gnu: guile-json: Update to 0.5.0.
* gnu/packages/guile.scm (guile-json): Update to 0.5.0.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2016-02-25 09:19:30 +01:00
Ricardo Wurmus b16043a361 gnu: ardour: Update to 4.7.
* gnu/packages/audio.scm (ardour): Update to 4.7.
2016-02-25 09:17:35 +01:00
宋文武 f072e9adf5 gnu: xdg-utils: Propagate xprop and xset.
Fixes <http://bugs.gnu.org/22755>.

* gnu/packages/freedesktop.scm (xdg-utils): Propagate xprop and xset.
2016-02-25 08:54:42 +08:00
Ludovic Courtès bf98aea9b2 doc: Improve recent changes in "Binary Installation".
This amends part of c8e2688.

* doc/guix.texi (Binary Installation): Improve wording of some parts.
Fix Upstart example.  Remove incorrect paragraph about locales.
Reinstate bit about reproducing the binary tarball.
2016-02-24 23:24:33 +01:00
Ludovic Courtès cb05108a5d doc: Clarify who can run 'guix pull'.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* doc/guix.texi (Invoking guix pull): Add paragraph explaining that any
user can run 'guix pull'.
2016-02-24 23:24:33 +01:00
Leo Famulari 85267efb2a gnu: libssh: Update to 0.7.3 [fixes CVE-2016-0739].
* gnu/packages/patches/libssh-CVE-2014-0017.patch: Delete file.
* gnu/packages/patches/libssh-0.6.5-CVE-2016-0739.patch: New file.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
* gnu/packages/ssh.scm (libssh): Update to 0.7.3.
  (libssh-0.5): Rename to...
  (libssh-0.6): ... this.  Update to 0.6.5.
  [source]: Add patch for CVE-2016-0739.
  (guile-ssh)[inputs]: Use libssh-0.6.

Modified-By: Mark H Weaver <mhw@netris.org>
2016-02-24 16:32:09 -05:00
Leo Famulari 78d80c5c6a gnu: libssh2: Update to 1.7.0 [fixes CVE-2016-0787].
* gnu/packages/ssh.scm (libssh2): Update to 1.7.0.
  (libssh2-1.4): New variable.
* gnu/packages/curl.scm (curl)[inputs]: Use libssh4-1.4.

Modified-By: Mark H Weaver <mhw@netris.org>
2016-02-24 16:32:08 -05:00
George Clemmer c8e26887ed doc: Add details for binary installation.
* doc/guix.texi (Binary Installation): Provide some more details for binary
  installation, in particular automatic starting of the daemon.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2016-02-24 22:00:07 +01:00
Chris Marusich a40424bd11 doc: Fix minor typos and add missing words.
* doc/guix.texi (Shepherd Services): Add missing words.
  (Invoking guix system): Fix typo.
  (Service Types and Services): Fix typo.
* doc/contributing.texi (Submitting Patches): Fix typo.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2016-02-24 21:34:30 +01:00
Mark H Weaver bf6996c9cf gnu: xf86-video-intel: Update to 2.99.917-1-d167280.
* gnu/packages/xorg.scm (xf86-video-intel): Update to 2.99.917-1-d167280.
2016-02-24 13:56:57 -05:00
Efraim Flashner a49332a0c0 gnu: gdb: Update to 7.11.
* gnu/packages/gdb.scm (gdb): Update to 7.11.
2016-02-24 20:52:12 +02:00
Efraim Flashner c73210d7a9 gnu: kde-frameworks: Update to 5.19.0.
* gnu/packages/kde-frameworks.scm (kwindowsystem): Update to 5.19.0.
(extra-cmake-modules): Update to 5.19.0.
2016-02-24 20:25:25 +02:00
Andy Wingo 79fd74facd gnu: services: Start X with -configdir.
* gnu/services/xorg.scm (%default-xorg-modules): New public variable.
(xorg-configuration-directory): New function.
(xorg-start-command): Add #:modules keyword argument, defaulting to
%default-xorg-modules.  Build an xorg.conf.d directory from those
modules, and pass it to X via the -configdir parameter.
2016-02-24 11:49:57 -05:00
Andy Wingo d0a6437f7d gnu: libxaw: Update to 1.0.13.
* gnu/packages/xorg.scm (libxaw): Update to 1.0.13.
2016-02-24 11:49:57 -05:00
Andy Wingo ea9763dae0 gnu: libxt: Update to 1.1.5.
* gnu/packages/xorg.scm (libxt): Update to 1.1.5.
2016-02-24 11:49:57 -05:00
Andy Wingo f1aeae762d gnu: libx11: Update to 1.6.3.
* gnu/packages/xorg.scm (libx11): Update to 1.6.3.
2016-02-24 11:49:57 -05:00
Andy Wingo 0eae6b2d91 gnu: xorg-server: Update to 1.18.1.
* gnu/packages/xorg.scm (xorg-server): Update to 1.18.1.
2016-02-24 11:49:57 -05:00
Andy Wingo 7606baa8f9 gnu: libxxf86vm: Update to 1.1.4.
* gnu/packages/xorg.scm (libxxf86vm): Update to 1.1.4.
2016-02-24 11:49:57 -05:00
Andy Wingo 9a5f739ef8 gnu: libxvmc: Update to 1.0.9.
* gnu/packages/xorg.scm (libxvmc): Update to 1.0.9.
2016-02-24 11:49:57 -05:00
Andy Wingo 61f29af1db gnu: libxrandr: Update to 1.5.0.
* gnu/packages/xorg.scm (libxrandr): Update to 1.5.0.
2016-02-24 11:49:57 -05:00
Andy Wingo d51b8529e6 gnu: libxi: Update to 1.7.6.
* gnu/packages/xorg.scm (libxi): Update to 1.7.6.
2016-02-24 11:49:57 -05:00
Andy Wingo 10d85db449 gnu: xproto: Update to 7.0.28.
* gnu/packages/xorg.scm (xproto): Update to 7.0.28.
2016-02-24 11:49:57 -05:00
Andy Wingo 6fad350498 gnu: libxrender: Update to 0.9.9.
* gnu/packages/xorg.scm (libxrender): Update to 0.9.9.
2016-02-24 11:49:57 -05:00
Andy Wingo 42ca6c8528 gnu: libxp: Update to 1.0.3.
* gnu/packages/xorg.scm (libxp): Update to 1.0.3.
2016-02-24 11:49:57 -05:00
Andy Wingo 97b6f9632e gnu: xvinfo: Update to 1.1.3.
* gnu/packages/xorg.scm (xvinfo): Update to 1.1.3.
2016-02-24 11:49:57 -05:00
Andy Wingo 625f4cae0a gnu: xmodmap: Update to 1.0.9.
* gnu/packages/xorg.scm (xmodmap): Update to 1.0.9.
2016-02-24 11:49:57 -05:00
Andy Wingo 85c64cb200 gnu: xlsatoms: Update to 1.1.2.
* gnu/packages/xorg.scm (xlsatoms): Update to 1.1.2.
2016-02-24 11:49:57 -05:00
Andy Wingo 379e1d875b gnu: xkeyboard-config: Update to 2.17.
* gnu/packages/xorg.scm (xkeyboard-config): Update to 2.17.
2016-02-24 11:49:57 -05:00
Andy Wingo ed7abe52e0 gnu: xkbevd: Update to 1.1.4.
* gnu/packages/xorg.scm (xkbevd): Update to 1.1.4.
2016-02-24 11:49:57 -05:00
Andy Wingo ab2d710cc2 gnu: xinput: Update to 1.6.2.
* gnu/packages/xorg.scm (xinput): Update to 1.6.2.
2016-02-24 11:49:57 -05:00
Andy Wingo 2e5a0b7850 gnu: xhost: Update to 1.0.7.
* gnu/packages/xorg.scm (xhost): Update to 1.0.7.
2016-02-24 11:49:57 -05:00
Andy Wingo 033a1ba373 gnu: xgamma: Update to 1.0.6.
* gnu/packages/xorg.scm (xgamma): Update to 1.0.6.
2016-02-24 11:49:57 -05:00
Andy Wingo 9177dbeb5f gnu: xf86-video-voodoo: Fix build.
* gnu/packages/xorg.scm (xf86-video-voodoo): Add patch from upstream git
  to fix the build.
2016-02-24 11:49:57 -05:00
Andy Wingo 2ae7a55062 gnu: xf86-video-vmware: Update to 13.1.0.
* gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/xorg.scm (xf86-video-vmware): Update to 13.1.0.
  [source]: Remove patch.
2016-02-24 11:49:57 -05:00
Andy Wingo 937c13f220 gnu: xf86-video-vesa: Update to 2.3.4.
* gnu/packages/xorg.scm (xf86-video-vesa): Update to 2.3.4.
2016-02-24 11:49:57 -05:00
Andy Wingo bcd4a74039 gnu: xf86-video-trident: Update to 1.3.7.
* gnu/packages/patches/xf86-video-trident-remove-mibstore.patch: Delete
  file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/xorg.scm (xf86-video-trident): Update to 1.3.7.
  [source]: Remove patch.
2016-02-24 11:49:57 -05:00
Andy Wingo 816decebf2 gnu: xf86-video-tdfx: Update to 1.4.6.
* gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch: Delete
  file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/xorg.scm (xf86-video-tdfx): Update to 1.4.6.
  [source]: Remove patch.
2016-02-24 11:49:57 -05:00
Andy Wingo 5f59f5103a gnu: xf86-video-sis: Update to 0.10.8.
* gnu/packages/patches/xf86-video-sis-fix-exa-crash.patch,
  gnu/packages/patches/xf86-video-sis-update-api.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/xorg.scm (xf86-video-sis): Update to 0.10.8.
  [source]: Remove patches.
2016-02-24 11:49:57 -05:00
Andy Wingo fc1172f787 gnu: xf86-video-siliconmotion: Update to 1.7.8.
* gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch:
  Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/xorg.scm (xf86-video-siliconmotion): Update to 1.7.8.
  [source]: Remove patch.
2016-02-24 11:49:57 -05:00
Andy Wingo bfc0d8395e gnu: xf86-video-savage: Update to 2.3.8.
* gnu/packages/xorg.scm (xf86-video-savage): Update to 2.3.8.
2016-02-24 11:49:57 -05:00
Andy Wingo bfe27469b4 gnu: xf86-video-r128: Update to 6.10.1.
* gnu/packages/patches/xf86-video-r128-glibc-2.20.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/xorg.scm (xf86-video-r128): Update to 6.10.1.
  [source]: Remove patch.
2016-02-24 11:49:57 -05:00
Andy Wingo 9f9b89bcf2 gnu: xf86-video-nouveau: Update to 1.0.12.
* gnu/packages/xorg.scm (xf86-video-nouveau): Update to 1.0.12.
2016-02-24 11:49:57 -05:00
Andy Wingo bd714f8509 gnu: xf86-video-neomagic: Update to 1.2.9.
* gnu/packages/xorg.scm (xf86-video-neomagic): Update to 1.2.9.
2016-02-24 11:49:57 -05:00
Andy Wingo ea192db119 gnu: xf86-video-mga: Update to 1.6.4.
* gnu/packages/patches/xf86-video-mga-glibc-2.20.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/xorg.scm (xf86-video-mga): Update to 1.6.4.
  [source]: Remove patch.
2016-02-24 11:49:57 -05:00
Andy Wingo 2a26eb96d3 gnu: xf86-video-mach64: Update to 6.9.5.
* gnu/packages/xorg.scm (xf86-video-mach64): Update to 6.9.5.
2016-02-24 11:49:57 -05:00
Andy Wingo 6cc328b43b gnu: xf86-video-intel: Update to git snapshot e41040f.
* gnu/packages/xorg.scm (xf86-video-intel): Update to git snapshot
  e41040f.  Upstream isn't making releases.

Modified-By: Mark H Weaver <mhw@netris.org>
2016-02-24 11:49:57 -05:00
Andy Wingo 315a0ecc0d gnu: xf86-video-geode: Update to 2.11.18.
* gnu/packages/xorg.scm (xf86-video-geode): Update to 2.11.18.
2016-02-24 11:49:57 -05:00
Andy Wingo 6bc2fa7c5e gnu: xf86-video-cirrus: Update to 1.5.3.
* gnu/packages/xorg.scm (xf86-video-cirrus): Update to 1.5.3.
2016-02-24 11:49:57 -05:00
Andy Wingo 83696ce1c2 gnu: xf86-video-ati: Update to 7.6.1.
* gnu/packages/xorg.scm (xf86-video-ati): Update to 7.6.1.
2016-02-24 11:49:57 -05:00
Andy Wingo 746e671007 gnu: xf86-input-void: Update to 1.4.1.
* gnu/packages/xorg.scm (xf86-input-void): Update to 1.4.1.
2016-02-24 11:49:57 -05:00
Andy Wingo eec4e906ce gnu: xf86-input-synaptics: Update to 1.8.3.
* gnu/packages/xorg.scm (xf86-input-synaptics): Update to 1.8.3.
2016-02-24 11:49:57 -05:00
Andy Wingo 5be72cd395 gnu: xf86-input-keyboard: Update to 1.8.1.
* gnu/packages/xorg.scm (xf86-input-keyboard): Update to 1.8.1.
2016-02-24 11:49:57 -05:00
Andy Wingo 049a02128d gnu: xf86-input-libinput: Update to 0.16.0.
* gnu/packages/xorg.scm (xf86-input-libinput): Update to 0.16.0.
2016-02-24 11:49:57 -05:00
Andy Wingo d44d724966 gnu: xf86-input-evdev: Update to 2.10.1.
* gnu/packages/xorg.scm (xf86-input-evdev): Update to 2.10.1.  Add mtdev
  input.
2016-02-24 11:49:57 -05:00
Andy Wingo 9502179d62 gnu: xev: Update to 1.2.2.
* gnu/packages/xorg.scm (xev): Update to 1.2.2.
2016-02-24 11:49:57 -05:00
Andy Wingo 380af498e3 gnu: xdriinfo: Update to 1.0.5.
* gnu/packages/xorg.scm (xdriinfo): Update to 1.0.5.
2016-02-24 11:49:57 -05:00
Andy Wingo c6be2454c1 gnu: xdpyinfo: Update to 1.3.2.
* gnu/packages/xorg.scm (xdpyinfo): Update to 1.3.2.
2016-02-24 11:49:57 -05:00
Andy Wingo b1b3ab34b4 gnu: xcmsdb: Update to 1.0.5.
* gnu/packages/xorg.scm (xcmsdb): Update to 1.0.5.
2016-02-24 11:49:57 -05:00
Andy Wingo 9fab5cc9b5 gnu: x11perf: Update to 1.6.0.
* gnu/packages/xorg.scm (x11perf): Update to 1.6.0.
2016-02-24 11:49:57 -05:00
Andy Wingo 10814b66cc gnu: smproxy: Update to 1.0.6.
* gnu/packages/xorg.scm (smproxy): Update to 1.0.6.
2016-02-24 11:49:57 -05:00
Andy Wingo 350843a5be gnu: setxkbmap: Update to 1.3.1.
* gnu/packages/xorg.scm (setxkbmap): Update to 1.3.1.
2016-02-24 11:49:57 -05:00
Andy Wingo 849f01df4a gnu: sessreg: Update to 1.1.0.
* gnu/packages/xorg.scm (sessreg): Update to 1.1.0.
2016-02-24 11:49:57 -05:00
Andy Wingo 2c26245b39 gnu: randrproto: Update to 1.5.0.
* gnu/packages/xorg.scm (randrproto): Update to 1.5.0.
2016-02-24 11:49:57 -05:00
Andy Wingo 042777cee5 gnu: mkfontscale: Update to 1.1.2.
* gnu/packages/xorg.scm (mkfontscale): Update to 1.1.2.
2016-02-24 11:49:57 -05:00
Andy Wingo c8012b798e gnu: libxkbfile: Update to 1.0.9.
* gnu/packages/xorg.scm (libxkbfile): Update to 1.0.9.
2016-02-24 11:49:57 -05:00
Andy Wingo ccca0efe13 gnu: libxdmcp: Update to 1.1.2.
* gnu/packages/xorg.scm (libxdmcp): Update to 1.1.2.
2016-02-24 11:49:57 -05:00
Andy Wingo 34a9b4e5a1 gnu: libfs: Update to 1.0.7.
* gnu/packages/xorg.scm (libfs): Update to 1.0.7.
2016-02-24 11:49:57 -05:00
Andy Wingo 203593ddde gnu: libfontenc: Update to 1.1.3.
* gnu/packages/xorg.scm (libfontenc): Update to 1.1.3.
2016-02-24 11:49:57 -05:00
Andy Wingo f98e2a3ff2 gnu: libxshmfence: Update to 1.2.
* gnu/packages/xorg.scm (libxshmfence): Update to 1.2.
2016-02-24 11:49:57 -05:00
Andy Wingo d6c6dde8f5 gnu: kbproto: Update to 1.0.7.
* gnu/packages/xorg.scm (kbproto): Update to 1.0.7.
2016-02-24 11:49:57 -05:00
Andy Wingo 247ef1f52d gnu: iceauth: Update to 1.0.7.
* gnu/packages/xorg.scm (iceauth): Update to 1.0.7.
2016-02-24 11:49:57 -05:00
Andy Wingo 201bd16530 gnu: font-util: Update to 1.3.1.
* gnu/packages/xorg.scm (font-util): Update to 1.3.1.
2016-02-24 11:49:57 -05:00
Andy Wingo 235d701972 gnu: bdftopcf: Update to 1.0.5.
* gnu/packages/xorg.scm (bdftopcf): Update to 1.0.5.
2016-02-24 11:49:57 -05:00
Andy Wingo 521b1d888b gnu: libinput: Update to 1.1.902.
* gnu/packages/freedesktop.scm (libinput): Update to 1.1.902.
2016-02-24 11:49:57 -05:00
Andy Wingo 34efce4ff4 gnu: libwacom: Propagate glib input.
* gnu/packages/xdisorg.scm (libwacom): Propagate glib input.
2016-02-24 11:49:57 -05:00
Andy Wingo ffc959939f gnu: mesa: Update to 11.0.9.
* gnu/packages/gl.scm (mesa): Update to 11.0.9.
2016-02-24 11:49:57 -05:00
Andy Wingo 62061d6be3 gnu-maintenance: Add X.org updater.
* guix/gnu-maintenance.scm (xorg-package?, latest-xorg-release): New
  private functions.
  (%xorg-updater): New public variable.

* guix/scripts/refresh.scm (%updaters): Add %xorg-updater.

* doc/guix.texi (Invoking guix refresh): Mention the new updater.
2016-02-24 11:49:57 -05:00
Efraim Flashner 0e47b4e769 gnu: libvpx: Use 'modify-phases'.
* gnu/packages/video.scm (libvpx)[arguments]: Use 'modify-phases'.
2016-02-24 11:49:57 -05:00
Efraim Flashner fb197c0da4 gnu: libvpx: Update to 1.5.0.
* gnu/packages/video.scm (libvpx): Update to 1.5.0.
2016-02-24 11:49:57 -05:00
Efraim Flashner cda6aaf079 gnu: gst-plugins-base: Use 'modify-phases'.
* gnu/packages/gstreamer.scm (gst-plugins-base)[arguments]: Use
'modify-phases'.
2016-02-24 11:49:57 -05:00
宋文武 db12dac05c gnu: Add gst-plugins-bad.
* gnu/packages/gstreamer.scm (gst-plugins-bad): New variable.
2016-02-24 11:49:57 -05:00
宋文武 3673dace40 gnu: gst-libav: Update to 1.6.3.
* gnu/packages/gstreamer.scm (gst-libav): Update to 1.6.3.
2016-02-24 11:49:57 -05:00
宋文武 30d34785b8 gnu: gst-plugins-ugly: Update to 1.6.3.
* gnu/packages/gstreamer.scm (gst-plugins-ugly): Update to 1.6.3.
2016-02-24 11:49:57 -05:00
宋文武 48caecb7f7 gnu: gst-plugins-good: Update to 1.6.3.
* gnu/packages/gstreamer.scm (gst-plugins-good): Update to 1.6.3.
2016-02-24 11:49:57 -05:00
宋文武 8cf39f7f33 gnu: gst-plugins-base: Update to 1.6.3.
* gnu/packages/gstreamer.scm (gst-plugins-base): Update to 1.6.3.
2016-02-24 11:49:57 -05:00
宋文武 120469d2fc gnu: gstreamer: Update to 1.6.3.
* gnu/packages/gstreamer.scm (gstreamer): Update to 1.6.3.
2016-02-24 11:49:57 -05:00
Efraim Flashner 9dd61217c3 gnu: pulseaudio: Update to 8.0.
* gnu/packages/pulseaudio.scm (pulseaudio): Update to 8.0.
2016-02-24 11:49:57 -05:00
Ricardo Wurmus 6d415db23d gnu: r-topgo: Add missing input.
* gnu/packages/bioinformatics.scm (r-topgo)[propagated-inputs]: Add
  "r-graph".
2016-02-24 17:36:55 +01:00
Ricardo Wurmus d1dbde6ac1 gnu: Add r-graph.
* gnu/packages/bioinformatics.scm (r-graph): New variable.
2016-02-24 17:36:55 +01:00
Ricardo Wurmus e761beb9a9 gnu: Add r-org-mm-eg-db.
* gnu/packages/bioinformatics.scm (r-org-mm-eg-db): New variable.
2016-02-24 17:26:39 +01:00
Ricardo Wurmus 16c53a1e26 gnu: Add r-org-dm-eg-db.
* gnu/packages/bioinformatics.scm (r-org-dm-eg-db): New variable.
2016-02-24 17:26:39 +01:00
Ricardo Wurmus fefedf98cb gnu: Add r-org-ce-eg-db.
* gnu/packages/bioinformatics.scm (r-org-ce-eg-db): New variable.
2016-02-24 17:26:39 +01:00
Ricardo Wurmus 486da49143 gnu: Add r-org-hs-eg-db.
* gnu/packages/bioinformatics.scm (r-org-hs-eg-db): New variable.
2016-02-24 17:26:39 +01:00
Alex Kost 6caa4dfa37 Do not check package freshness during upgrade.
Fixes <http://bugs.gnu.org/22740>.
Reported by Andreas Enge <andreas@enge.fr>.

* gnu/packages.scm (waiting, ftp-open*, check-package-freshness): Remove.
* guix/scripts/package.scm (options->installable): Adjust accordingly.
* emacs/guix-main.scm (package->manifest-entry*): Likewise.
2016-02-24 18:24:16 +03:00
Ludovic Courtès 4d459d8734 publish: Move 'query-path-info' call where it belongs.
* guix/scripts/publish.scm (narinfo-string): Remove 'path-info'
parameter and add 'store' parameter.  Call 'query-path-info'.
(render-narinfo): Adjust accordingly.
2016-02-24 13:11:50 +01:00
Ludovic Courtès da35acf91d gnu: lsh: lshd now supports X11 forwarding.
Reported by myglc2 <myglc2@gmail.com>.

* gnu/packages/lsh.scm (lsh)[inputs]: Add XAUTH.
[arguments]: Modify 'XAUTH_PROGRAM' macro in 'server_x11.c'.
2016-02-24 13:11:50 +01:00
Ludovic Courtès 03b93ed70e gnu: lsh: Use 'modify-phases'.
* gnu/packages/lsh.scm (lsh)[arguments]: Use 'modify-phases' instead of
'alist-cons-before'.
2016-02-24 13:11:50 +01:00
Andy Wingo ea84bd88da gnu: services: Install policies for polkit service.
* gnu/services/desktop.scm (polkit-etc-files): Add the polkit package
  itself to the list of packages to scan for .policy files.  This add
  support for pkexec.
2016-02-24 10:16:54 +01:00
Efraim Flashner ebde7c7a9b mplayer: Use 'modify-phases'.
* gnu/packages/video.scm (mplayer)[arguments]: Use 'modify-phases'.
[source]: Use https.
[home-page]: Use https.
2016-02-24 10:33:05 +02:00
Efraim Flashner 778a6a8bf0 gnu: mplayer: Add codecs.
* gnu/packages/video.scm (mplayer)[inputs]: Add libass, libmpeg2,
  libvdpau, libx264, opus.
2016-02-24 09:43:51 +02:00
Efraim Flashner dec3e015eb gnu: dropbear: Update to 2015.71.
* gnu/packages/ssh.scm (dropbear): Update to 2015.71.
2016-02-24 09:18:14 +02:00
David Thompson dd90ed892a gnu: guile-next: Set correct native search paths.
* gnu/packages/guile.scm (guile-next): Use the "2.2" directory for the
  load paths.
2016-02-23 19:39:56 -05:00
Ludovic Courtès f2d8faff04 services: herd: Add missing newlines in error messages.
* gnu/services/herd.scm (report-action-error): Add missing newlines in
messages.
2016-02-23 13:03:23 +01:00
Ludovic Courtès 305b58c05c refresh: Remove unneeded import.
Reported by Leo Famulari <leo@famulari.name>
and Ben Woodcroft <b.woodcroft@uq.edu.au>
at <http://bugs.gnu.org/22752>.

* guix/scripts/refresh.scm: Remove unneeded and harmful import of (guix
import gem).
2016-02-23 12:58:25 +01:00
Ludovic Courtès 561360a589 doc: Add example of VCS-snapshot version numbers.
* doc/guix.texi (Version Numbers): Add example for VCS version numbers.
2016-02-23 12:45:25 +01:00
Andreas Enge 5a179844e7 gnu: Add xfce4-xkb-plugin.
* gnu/packages/xfce.scm (xfce4-xkb-plugin): New variable.
  (xfce)[propagated-inputs]: Add it.
2016-02-23 11:53:03 +01:00
Leo Famulari 8758efe0b0 gnu: telepathy-logger: Disable parallel tests.
* gnu/packages/freedesktop.scm (telepathy-logger)[arguments]: Disable parallel
tests.
2016-02-23 01:53:47 -05:00
Roel Janssen c1fc7a67e4 gnu: Add rdmd.
* gnu/packages/ldc.scm (rdmd): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-23 01:27:19 -05:00
Leo Famulari e9f68a647d gnu: modem-manager: Use HTTPS URL.
* gnu/packages/freedesktop.scm (modem-manager)[source]: Use HTTPS URL.
2016-02-23 00:15:05 -05:00
Leo Famulari fae58fe1d1 gnu: mpd: Update to 0.19.12.
* gnu/packages/mpd.scm (mpd): Update t0 0.19.12.
2016-02-22 20:16:25 -05:00
Leo Famulari a4c7c57c2c gnu: ncmpcpp: Udate to 0.7.3.
* gnu/packages/mpd.scm (ncmpcpp): Update to 0.7.3.
[inputs]: Add icu4c.
2016-02-22 20:16:25 -05:00
Leo Famulari 9913c78a09 gnu: ncmpcpp: Use 'modify-phases'.
* gnu/packages/mpd.scm (ncmpcpp)[arguments]: Use 'modify-phases'.
2016-02-22 20:16:25 -05:00
Christopher Allan Webber 944d2b17b5 vm: Only pass "-enable-kvm" to qemu if /dev/kvm is present.
Fixes <http://bugs.gnu.org/22633>.

* gnu/build/vm.scm (load-in-linux-vm): Only pass "-enable-kvm" flag to qemu
  if "/dev/kvm" is present.
* gnu/system/vm.scm (common-kvm-options): Same as above.
2016-02-22 13:28:58 -08:00
Ludovic Courtès 8b16a5e199 gnu: pkg-config: Add non-HTTPS alternate URL.
* gnu/packages/pkg-config.scm (%pkg-config)[source]: Add non-HTTPS URL.
2016-02-22 22:11:37 +01:00
Ludovic Courtès b0fef4d660 grafts: 'name' parameter of 'graft-derivation' is now optional.
* guix/grafts.scm (graft-derivation): Name 'name' a keyword parameter.
* guix/packages.scm (package-derivation, package-cross-derivation):
Adjust accordingly.
* tests/grafts.scm ("graft-derivation"): Likewise.
* tests/packages.scm ("package-derivation, indirect grafts"): Likewise.
2016-02-22 22:11:37 +01:00
Ludovic Courtès 7adf9b8469 derivations: Move grafts to (guix grafts).
* guix/derivations.scm (<graft>, graft-derivation, %graft?)
(set-grafting): Move to...
* guix/grafts.scm: ... here.  New file.
* guix/gexp.scm, guix/packages.scm, tests/packages.scm,
guix/scripts/build.scm: Use it.
* Makefile.am (MODULES): Add it.
(SCM_TESTS): Add tests/grafts.scm.
* tests/derivations.scm ("graft-derivation"): Move to...
* tests/grafts.scm: ... here.  New file.
2016-02-22 22:11:37 +01:00
Andreas Enge 3297deedd1 gnu: Remove python2-pyqt-4.
* gnu/packages/qt.scm (python2-pyqt-4): Delete variable. It depends on Qt 4,
  which does not receive security updates any more.
2016-02-22 21:33:29 +01:00
Andreas Enge dbbb45dd73 gnu: Remove KDE 4.
* gnu/packages/kde.scm (qjson): Move from here...
* gnu/packages/qt.scm (qjson): ...to here.
* gnu/packages/pumpio.scm: Drop inclusion of (gnu packages kde).
* gnu/packages/kde.scm: Delete file.
* gnu-system.am (GNU_SYSTEM_MODULES): Unregister it.
* gnu/packages/rdf.scm (soprano): Delete variable.

KDE 4 relies on Qt 4, which does not receive security updates any more.
2016-02-22 21:30:56 +01:00
Efraim Flashner 5ad87e5bb5 gnu: python-patsy: Define 'python2-variant'.
* gnu/packages/statistics.scm (python-patsy)[properties]: New field.
(python2-patsy): Use 'strip-python2-variant'.
2016-02-22 21:59:02 +02:00
Efraim Flashner f4cd2ceabd gnu: python-patsy: Update to 0.4.1.
* gnu/packages/statistics.scm (python-patsy, python2-patsy): Update to 0.4.1.
2016-02-22 21:59:02 +02:00
Alex Kost 260795b736 emacs: Do not allow a user to modify system profiles.
Fixes <http://bugs.gnu.org/22607>.
Reported by myglc2 <myglc2@gmail.com>.

Remove possibilities to install/delete packages to/from a system profile
both for "Package List" and "Package Info" buffers.

* emacs/guix-profiles.el (guix-system-profile-regexp): New variable.
(guix-system-profile?): New procedure.
* emacs/guix-ui-package.el (guix-package-info-insert-output): Do not
display "Install"/"Delete" button for a system profile.
(guix-package-assert-non-system-profile): New procedure.
(guix-package-execute-actions): Use it.
2016-02-22 22:36:35 +03:00
Alex Kost 0338132e65 emacs: Set 'guix-buffer-item' before displaying entries.
* emacs/guix-buffer.el (guix-buffer-set): Set 'guix-buffer-item' early,
  so that it can be used during displaying entries.  For example, this
  allows us to use a value of the current guix profile when package
  entries are inserted in a "List" or "Info" buffer.
2016-02-22 22:29:56 +03:00
Alex Kost cfb1c62aa9 emacs: Add 'M-x guix-installed-{user/system}-packages'.
* emacs/guix-ui-package.el (guix-installed-user-packages)
(guix-installed-system-packages): New commands.
* doc/emacs.texi (Emacs Commands): Document them.
2016-02-22 22:17:16 +03:00
Mark H Weaver 5879f0d649 gnu: qemu: Add fixes for CVE-2015-8619, CVE-2016-1981, CVE-2016-2197.
* gnu/packages/patches/qemu-CVE-2015-8619.patch,
  gnu/packages/patches/qemu-CVE-2016-1981.patch,
  gnu/packages/patches/qemu-CVE-2016-2197.patch,
  gnu/packages/patches/qemu-usb-ehci-oob-read.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/qemu.scm (qemu)[source]: Add patches.
2016-02-22 10:26:22 -05:00
Rene Saavedra b784b1a9ea gnu: Add gnome-screenshot.
* gnu/packages/gnome.scm (gnome-screenshot): New variable.
2016-02-22 19:57:35 +08:00
Roel Janssen 8b15f42c73 gnu: libotf: Use mirror:// URL.
* gnu/packages/fontutils.scm (libotf): Use mirror://savannah URL.
2016-02-22 19:57:35 +08:00
Efraim Flashner 066651d412 gnu: c-ares: Update to 1.11.0.
* gnu/packages/adns.scm (c-ares): Update to 1.11.0.
2016-02-22 10:43:17 +02:00
Leo Famulari 1034331a11 gnu: parallel: Update to 20160122.
* gnu/packages/parallel.scm (parallel): Update to 20160122.
2016-02-22 02:31:38 -05:00
Leo Famulari 50a7963aeb gnu: python-acme: Generate and install documentation.
* gnu/packages/tls.scm (acme)[arguments]: Add 'docs' phase.
[native-inputs]: Add python-sphinx, python-sphinxcontrib-programoutput,
python-sphinx-rtd-theme, python-setuptools, texinfo.
2016-02-22 00:40:25 -05:00
Leo Famulari f9263d9a90 gnu: letsencrypt: Generate and install documentation.
* gnu/packages/tls.scm (letsencrypt)[arguments]: Add 'docs' phase.
[native-inputs]: Add python2-sphinx, python2-sphinx-rtd-theme,
python2-sphinx-repoze-autointerface,
python2-sphinxcontrib-programoutput, texinfo.
2016-02-22 00:40:25 -05:00
Leo Famulari 548d716539 gnu: Add python-sphinx-repoze-autointerface.
* gnu/packages/python.scm (python-sphinx-repoze-autointerface,
python2-sphinx-repoze-autointerface): New variables.
2016-02-22 00:40:25 -05:00
Leo Famulari 0db71dd2d1 licenses: Add repoze license.
* guix/licenses.scm (repoze): New variable.
2016-02-22 00:40:25 -05:00
Leo Famulari 3276517cdc gnu: Add python-sphinxcontrib-programoutput.
* gnu/packages/python.scm (python-sphinxcontrib-programoutput,
python2-sphinxcontrib-programoutput): New variables.
2016-02-22 00:40:25 -05:00
Christopher Allan Webber 2de98febb3 gnu: python-apipkg: Remove unzip dependency.
Unzip was never used for this package.

* gnu/packages/python.scm (python-apipkg): Remove unzip dependency.
2016-02-21 19:02:26 -08:00
Christopher Allan Webber 0c3b90d478 gnu: Add python-editor.
* gnu/packages/python.scm (python-editor, python2-editor): New variables.
2016-02-21 19:01:16 -08:00
Christopher Allan Webber 97e32948ea gnu: Add python-translitcodec.
* gnu/packages/python.scm (python-translitcodec, python2-translitcodec):
  New variables.
2016-02-21 19:01:16 -08:00
Christopher Allan Webber 22df6419f8 gnu: Add python-celery.
* gnu/packages/python.scm (python-celery, python2-celery): New variables.
2016-02-21 19:01:16 -08:00
Christopher Allan Webber b6f0b9fb68 gnu: Add python-billiard.
* gnu/packages/python.scm (python-billiard, python2-billiard):
  New variables.
2016-02-21 19:01:16 -08:00
Christopher Allan Webber 7d38730507 gnu: Add python-kombu.
* gnu/packages/python.scm (python-kombu, python2-kombu): New variables.
2016-02-21 19:01:16 -08:00
Christopher Allan Webber 8dfceab779 gnu: Add python-amqp.
* gnu/packages/python.scm (python-amqp, python2-amqp): New variables.
2016-02-21 19:01:13 -08:00
Christopher Allan Webber 4cb122cd8d gnu: Add python-anyjson.
* gnu/packages/python.scm (python-anyjson, python2-anyjson): New variables.
2016-02-21 19:00:32 -08:00
Christopher Allan Webber aa6313d699 gnu: Add python-webtest.
* gnu/packages/python.scm (python-webtest, python2-webtest):
  New variables.
2016-02-21 18:59:39 -08:00
Christopher Allan Webber 1cf536521d gnu: Add python-pyquery.
* gnu/packages/python.scm (python-pyquery, python2-pyquery): New variables.
2016-02-21 18:59:39 -08:00
Christopher Allan Webber bb7518b1e8 gnu: Add python-pastedeploy.
* gnu/packages/python.scm (python-pastedeploy, python2-pastedeploy):
  New variables.
2016-02-21 18:59:39 -08:00
Christopher Allan Webber 778a284be5 gnu: Add python-wsgiproxy2.
* gnu/packages/python.scm (python-wsgiproxy2, python2-wsgiproxy2):
  New variables.
2016-02-21 18:59:39 -08:00
Christopher Allan Webber ae00a41feb gnu: Add python-waitress.
* gnu/packages/python.scm (python-waitress, python2-waitress): New variables.
2016-02-21 18:59:39 -08:00
Christopher Allan Webber b32a1e47a9 gnu: Add python-beautifulsoup4.
* gnu/packages/python.scm (python-beautifulsoup4, python2-beautifulsoup4):
  New variables.
2016-02-21 18:59:34 -08:00
Christopher Allan Webber 8fa58fc9a1 gnu: Add python-pytest-xdist.
* gnu/packages/python.scm (python-pytest-xdist, python2-pytest-xdist):
  New variables.
2016-02-21 18:59:30 -08:00
Christopher Allan Webber 16c84f9031 gnu: Add python2-execnet.
* gnu/packages/python.scm (python2-execnet): New variable.
2016-02-21 18:59:30 -08:00
Christopher Allan Webber e08739c3c6 gnu: Add python2-apipkg.
* gnu/packages/python.scm (python2-apipkg): New variable.
2016-02-21 18:59:30 -08:00
Christopher Allan Webber af5a460222 gnu: Add python-alembic.
* gnu/packages/python.scm (python-alembic, python2-alembic): New variables.
2016-02-21 18:59:29 -08:00
Ludovic Courtès 95001d4b46 download: Add 'url-fetch/tarbomb'.
Suggested by Federico Beffa.
Fixes <http://bugs.gnu.org/22676>.
Reported by Danny Milosavljevic <dannym@scratchpost.org>.

* gnu/packages/engineering.scm (broken-tarball-fetch): Remove.
(fastcap)[source](method): Use URL-FETCH/TARBOMB instead.
* gnu/packages/scheme.scm (broken-tarball-fetch): Remove.
(scmutils)[source](method): Use URL-FETCH/TARBOMB instead.
* guix/download.scm (url-fetch/tarbomb): New procedure, renamed from
'broken-tarball-fetch'.
2016-02-22 00:36:24 +01:00
Ludovic Courtès 49e0ca90bc doc: Add Texinfo HTML cross-reference file.
Fixes <http://bugs.gnu.org/22543>.

* doc/htmlxref.cnf: New file.
* doc.am (EXTRA_DIST): Add it.
2016-02-21 22:28:20 +01:00
Andy Wingo d5df6fc755 gnu: icu4c: Fetch from sourceforge.
* gnu/packages/icu4c.scm (icu4c): Download via sourceforge mirrors.  The
  previous URL,
  http://download.icu-project.org/files/icu4c/55.1/icu4c-55_1-src.tgz,
  redirects to sourceforge, which then fails because that redirects to
  https and as the original URL didn't start with HTTPS, gnutls wasn't
  included in the downloader.
2016-02-21 21:21:09 +01:00
Andy Wingo 5cc3096c73 Update all sources from freedesktop.org to use https
* gnu/packages/xorg.scm:
* gnu/packages/xdisorg.scm:
* gnu/packages/video.scm:
* gnu/packages/tls.scm:
* gnu/packages/python.scm:
* gnu/packages/pulseaudio.scm:
* gnu/packages/polkit.scm:
* gnu/packages/pdf.scm:
* gnu/packages/libcanberra.scm:
* gnu/packages/gtk.scm:
* gnu/packages/gstreamer.scm:
* gnu/packages/gnome.scm:
* gnu/packages/glib.scm:
* gnu/packages/ghostscript.scm:
* gnu/packages/freedesktop.scm:
* gnu/packages/fontutils.scm: Update all sources hosted on freedesktop
  to fetch tarballs via https.  freedesktop.org appears to have updated
  recently to redirect all http to https.  As an exception, we leave
  pkg-config like it is, because pkg-config is needed to build gnutls,
  and without gnutls we can't download https URLs.
2016-02-21 21:11:49 +01:00
Andreas Enge f2fadbc1ff Revert "doc: Drop documentation of deprecated procedures."
This reverts commit f5c6e77a7f.
2016-02-21 20:02:24 +01:00
Efraim Flashner 466a7d706d gnu: libx264: Update to 20160220-2245.
* gnu/packages/video.scm (libx264): Update to 20160220-2245.
2016-02-21 16:16:54 +02:00
Efraim Flashner 62fe2d4752 gnu: xvid: Use 'modify-phases'.
* gnu/packages/video.scm (xvid)[arguments]: Use 'modify-phases'.
2016-02-21 16:16:54 +02:00
Efraim Flashner e05035c70d gnu: xvid: Update to 1.3.4.
* gnu/packages/video.scm (xvid): Update to 1.3.4.
2016-02-21 16:16:54 +02:00
Ludovic Courtès 5c7dd5ac3a linux-modules: Use normalized module names for 'modprobe.blacklist'.
* gnu/build/linux-modules.scm (normalize-module-name): New procedure.
(file-name->module-name): Use it.
(module-black-list): Expound docstring.
2016-02-21 13:04:10 +01:00
Mark H Weaver 57a41bfb3c gnu: linux-libre: Update to 4.4.2.
* gnu/packages/linux.scm (linux-libre): Update to 4.4.2.
2016-02-21 03:05:24 -05:00
Leo Famulari 9eb05bc381 gnu: python-enum34: Remove python-setuptools from inputs.
* gnu/packages/python.scm (python-enum34)[inputs]: Remove
python-setuptools.
2016-02-21 02:46:23 -05:00
Leo Famulari 68f1cdecf1 gnu: Don't use python-enum34 when building with python-3.4.
* gnu/packages/docker.scm (docker-compose)[inputs]: Remove python-enum34.
* gnu/packages/python.scm (python-parse-type)[inputs]: Likewise.
(behave)[inputs]: Likewise.
(python-cryptography)[propagated-inputs]: Likewise.
(python2-cryptography)[propagated-inputs]: Add python2-enum34.
2016-02-21 02:46:23 -05:00
Leo Famulari 820acd1bc3 gnu: Add python2-enum34.
* gnu/packages/python.scm (python2-enum34): New variable.
2016-02-21 02:46:23 -05:00
Leo Famulari d39ae1e5c6 gnu: python-enum34: Update to 1.1.0.
* gnu/packages/python.scm (python-enum34): Update to 1.1.0.
[source]: Use pypi-uri.
2016-02-21 02:46:23 -05:00
Leo Famulari 7bac09f45a gnu: dvtm: Update to 0.15.
* gnu/packages/dvtm.scm (dvtm): Update to 0.15.
2016-02-21 02:04:59 -05:00
Leo Famulari b860bbd9ee gnu: abduco: Update to 0.5.
* gnu/packages/abduco.scm (abduco): Update to 0.5.
2016-02-21 02:04:10 -05:00
Mark H Weaver 065932966f Revert "gnu: coreutils: Update URI for tail-inotify-race.patch."
This reverts commit 1a51cbc825.
2016-02-20 19:58:19 -05:00
Mark H Weaver 1f7309a6d1 gnu: dmd: Update URI of dmd-user-group.patch.
* gnu/packages/admin.scm (dmd)[source]: Update URI of patch.
2016-02-20 18:41:34 -05:00
Mark H Weaver 1a51cbc825 gnu: coreutils: Update URI for tail-inotify-race.patch.
* gnu/packages/base.scm (coreutils)[source]: Update URI of patch.
2016-02-20 18:41:34 -05:00
Ricardo Wurmus eeabe5a186 gnu: wine: Update to 1.9.4.
* gnu/packages/wine.scm (wine): Update to 1.9.4.
[origin]: Remove snippet.
[arguments]: Set SHELL with make-flags.
2016-02-20 22:38:33 +01:00
Ben Woodcroft fbc5b815cc import: gem: Add updater.
* guix/import/gem.scm (guix-package->gem-name,
  gem-package?, latest-release): New procedures.
  (%gem-updater): New variable.
  (rubygems-fetch): Wrap body in
  'call-with-output-file' and 'with-error-to-port'.
* guix/scripts/refresh.scm (%updaters): Add %GEM-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention RubyGems.
2016-02-20 20:46:10 +10:00
宋文武 56f5f921b4 gnu: nix: Update to 1.11.2.
* gnu/packages/package-management.scm (nix): Update to 1.11.2.
2016-02-20 18:22:26 +08:00
Roel Janssen 6ef0ec7600 gnu: Add libotf.
* gnu/packages/fontutils.scm (libotf): New variable.
2016-02-20 08:41:51 +08:00
Leo Famulari 4e58a402ff gnu: cpio: Add fix for CVE-2016-2037.
* gnu/packages/patches/cpio-CVE-2016-2037.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/cpio.scm (cpio)[source]: Add patch.
2016-02-19 18:04:15 -05:00
Leo Famulari 6399941555 gnu: rxvt-unicode: Update source URL.
* gnu/packages/xdisorg.scm (rxvt-unicode)[source]: Update URL.
2016-02-19 01:49:30 -05:00
Mark H Weaver 3729ff4183 gnu: glibc: Add fix for CVE-2015-7547.
* gnu/packages/patches/glibc-CVE-2015-7547.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/base.scm (glibc)[source]: Add patch.
2016-02-19 00:42:10 -05:00
Christopher Baines 1c7f1fb133 gnu: Add perl-shell-command.
* gnu/packages/perl.scm (perl-shell-command): New variable.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2016-02-18 21:16:25 +01:00
Alex Sassmannshausen 3c98acb79b gnu: guile-config: Update to 0.1.1.
* gnu/packages/guile.scm (guile-config): Update to 0.1.1.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2016-02-18 20:40:12 +01:00
Efraim Flashner c8732e192e gnu: gccgo: Update to 4.9.
* gnu/packages/gcc.scm (gccgo): Update to 4.9.
2016-02-18 20:52:02 +02:00
Efraim Flashner 2a817081e2 gnu: aria2: Update to 1.20.0.
* gnu/packages/bittorrent.scm (aria2): Update to 1.20.0.
2016-02-18 19:47:49 +02:00
Efraim Flashner 723a6910ca gnu: glpk: Update to 4.58.
* gnu/packages/maths.scm (glpk): Update to 4.58.
2016-02-18 15:35:28 +02:00
Efraim Flashner f6b1a8f7be gnu: ykclient: Update to 2.15.
* gnu/packages/yubico.scm (ykclient): Update to 2.15.
2016-02-18 11:47:19 +02:00
Efraim Flashner 58c5fb76f5 gnu: libyubikey: Update to 1.13.
* gnu/packages/yubico.scm (libyubikey): Update to 1.13.
2016-02-18 11:47:19 +02:00
Efraim Flashner e095be68dd gnu: yasm: Update to 1.3.0.
* gnu/packages/yasm.scm (yasm): Update to 1.3.0.
2016-02-18 11:47:19 +02:00
宋文武 83f64925ae gnu: retroarch: Update to 1.3.1.
* gnu/packages/games.scm (retroarch): Update to 1.3.1.
2016-02-18 17:32:51 +08:00
Nils Gillmann e11d14fe55 gnu: Add emacs-popup.
* gnu/packages/emacs.scm (emacs-popup): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2016-02-18 11:59:03 +03:00
Rene Saavedra fdba447c62 gnu: Add gnome-backgrounds.
* gnu/packages/gnome.scm (gnome-backgrounds): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2016-02-18 11:59:03 +03:00
Rene Saavedra a10bf13915 licenses: Add CC-BY-SA and CC-BY.
* guix/licenses.scm (cc-by-sa2.0, cc-by2.0): New variables.

Signed-off-by: Alex Kost <alezost@gmail.com>
2016-02-18 11:59:03 +03:00
Alex Kost 19a9c6f47c emacs: Autoload hooks instead of putting them in 'guix-init'.
* emacs/guix-init.el: Move adding hooks to...
* emacs/guix-build-log.el: ... here.
* emacs/guix-devel.el: ... and here.
2016-02-18 11:59:03 +03:00
Alex Kost 5dccaffe64 system: Add iproute to '%base-packages'.
* gnu/system.scm (%base-packages): Add iproute.
2016-02-18 11:59:03 +03:00
Leo Famulari 42e92e069a gnu: letsencrypt and python-acme: Update to 0.4.0.
These packages should be updated together.

* gnu/packages/tls.scm (letsencrypt): Update to 0.4.0.
(python-acme, python2-acme): Update to 0.4.0.
2016-02-17 22:43:08 -05:00
David Thompson 50aaec25ca gnu: Add python-mako.
* gnu/packages/python.scm (python-mako, python2-mako): New variables.
2016-02-17 21:21:47 -05:00
Efraim Flashner 373dfe64a3 gnu: moe: Update to 1.8.
* gnu/packages/moe.scm (moe): Update to 1.8.
2016-02-17 16:25:46 +02:00
宋文武 972f4e5082 gnu: gnunet: Install NSS module.
* gnu/packages/gnunet.scm (gnunet)[arguments]: Pass '--with-nssdir'.
2016-02-17 20:57:55 +08:00
宋文武 dc05025165 gnu: Add gnome.
* gnu/packages/gnome.scm (gnome): New variable.
2016-02-17 20:57:55 +08:00
Fabian Harfert 7af1ca29f4 gnu: Add mate-menus.
* gnu/packages/mate.scm (mate-menus): New variable.
2016-02-17 13:39:41 +02:00
Fabian Harfert f2c7369abc gnu: Add libmateweather.
* gnu/packages/mate.scm (libmateweather): New variable.
2016-02-17 13:39:41 +02:00
Fabian Harfert 4b48a9fee0 gnu: Add mate-desktop.
* gnu/packages/mate.scm (mate-desktop): New variable.
2016-02-17 13:39:40 +02:00
Fabian Harfert cbfe494dd7 gnu: Add mate-themes.
* gnu/packages/mate.scm (mate-themes): New variable.
2016-02-17 12:14:02 +02:00
Fabian Harfert bb2fe79e6e gnu: Add mate-icon-theme.
* gnu/packages/mate.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/mate.scm (mate-icon-theme): New variable.
2016-02-17 12:14:02 +02:00
Alex Sassmannshausen 44a2bdf8e7 gnu: Add guile-config.
* gnu/packages/guile.scm (guile-config): New variable.
2016-02-16 11:24:08 -08:00
Efraim Flashner 1486d67ee8 gnu: qrencode: Update to 3.4.4.
* gnu/packages/aidc.scm (qrencode): Update to 3.4.4.
2016-02-16 19:28:00 +02:00
Andreas Enge 9bd9486df4 gnu: pari-gp: Build documentation.
* gnu/packages/algebra.scm (pari-gp)[native-inputs]: Add texlive-minimal.
  [arguments]: Modify make-flags to build documentation.
2016-02-16 17:11:28 +01:00
Andreas Enge 6b5eb8406c gnu: Add texlive-minimal.
* gnu/packages/texlive.scm (texlive-texmf-minimal, texlive-minimal):
  New variables.
2016-02-16 16:44:36 +01:00
Andreas Enge 3c192e4e1b doc: Add footnote on Guile-JSON.
* doc/guix.texi ("invoking guix import"): Add a footnote to the CPAN importer
  on the need for Guile-JSON.
2016-02-16 16:37:37 +01:00
Andreas Enge f5c6e77a7f doc: Drop documentation of deprecated procedures.
* doc/guix.texi ("build systems"): Drop documentation of
  BUILD-EXPRESSION->DERIVATION.
2016-02-16 16:37:37 +01:00
Andreas Enge c2c5dc79f1 doc: Use modify-phases syntax in example.
* doc/guix.texi ("build systems"): Use modify-phases syntax instead of
  alist-delete in example.
2016-02-16 16:37:37 +01:00
Andreas Enge 4d4c481601 doc: Move paragraphs in description of guix archive.
* doc/guix.texi ("invoking guix archive"): Move paragraph describing basic
  invocation from the end to the beginning of the section.
2016-02-16 16:37:37 +01:00
Efraim Flashner b736776255 gnu: hydrogen: Update to 0.9.6.1.
* gnu/packages/music.scm (hydrogen): Update to 0.9.6.1.
[build-system]: Switch to cmake-build-system.
[arguments]: Enable configure and tests, remove custom phases.
[native-inputs]: Remove python-2, scons. Add cppunit.
[inputs]: Add libarchive, lrdf.
2016-02-16 17:24:45 +02:00
Ricardo Wurmus 578b05d99e gnu: htseq: Add PySam to inputs.
* gnu/packages/bioinformatics.scm (htseq)[inputs]: Add "python2-pysam".
2016-02-16 15:32:15 +01:00
Ricardo Wurmus d15d981ea2 gnu: Add StringTie.
* gnu/packages/bioinformatics.scm (stringtie): New variable.
2016-02-16 14:51:10 +01:00
Ricardo Wurmus 469d6589e3 gnu: Add Augeas.
* gnu/packages/augeas.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2016-02-16 14:41:25 +01:00
Efraim Flashner c5a6e33b56 gnu: gpsbabel: Use 'modify-phases'.
* gnu/packages/gps.scm (gpsbabel)[arguments]: Use 'modify-phases'.
2016-02-16 12:13:01 +02:00
Efraim Flashner 6f1c3b806a gnu: gpsbabel: Update to 1.5.2.
* gnu/packages/gps.scm (gpsbabel): Update to 1.5.2.
[inputs]: Remove qt-4, add qt.
2016-02-16 11:10:45 +02:00
Efraim Flashner d694230abe gnu: librecad: Use 'modify-phases'.
* gnu/packages/engineering.scm (librecad)[arguments]: Use 'modify-phases'.
2016-02-16 09:30:40 +02:00
Efraim Flashner d8a4b93253 gnu: librecad: Update to 2.0.9.
* gnu/packages/engineering.scm (librecad): Update to 2.0.9.
[inputs]: Use qt instead of qt-4.
2016-02-16 08:53:18 +02:00
Leo Famulari d4e21fbbe0 gnu: iftop: Fix license.
* gnu/packages/admin.scm (iftop)[license]: Correct 'gpl3' to 'gpl2+'.
2016-02-15 21:37:07 -05:00
Leo Famulari 6ac2af78e0 gnu: shntool: Fix license.
* gnu/packages/audio.scm (shntool)[license]: Correct 'gpl3+' to 'gpl2+'
and add 'x11'.
2016-02-15 21:36:46 -05:00
Leo Famulari 8763fdf8a5 gnu: pioneers: Fix license.
* gnu/packages/games.scm (pioneers)[license]: Correct 'gpl3+' to 'gpl2+'.
2016-02-15 21:14:18 -05:00
Rodger Fox 7e2e115501 gnu: Add pioneers.
* gnu/packages/games.scm (pioneers): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-15 20:12:08 -05:00
Leo Famulari be6f30047e gnu: vdirsyncer: Update to 0.9.0.
* gnu/packages/dav.scm (vdirsyncer): Update to 0.9.0.
2016-02-15 18:48:36 -05:00
Leo Famulari a9da8fec62 gnu: python-click-log: Update to 0.1.3.
* gnu/packages/python.scm (python-click-log): Update to 0.1.3.
2016-02-15 18:48:36 -05:00
Leo Famulari c834cf82b6 gnu: python-atomicwrites: Update to 0.1.9.
* gnu/packages/python.scm (python-atomicwrites): Update to 0.1.9.
2016-02-15 18:48:36 -05:00
Leo Famulari 97bbc48023 gnu: python-lxml: Update to 3.5.0.
* gnu/packages/python.scm (python-lxml, python2-lxml): Update to 3.5.0.
[source]: Use pypi-uri.
2016-02-15 18:48:36 -05:00
Tobias Geerinckx-Rice 85a94d296e gnu: redshift: Update to 1.11.
* gnu/packages/xdisorg.scm (redshift): Update to 1.11.
2016-02-15 23:37:21 +01:00
Christopher Allan Webber a4ba286baf gnu: python-sqlalchemy: Update to 1.0.12.
* gnu/packages/python.scm (python-sqlalchemy): Update to 1.0.12.
2016-02-15 14:02:06 -08:00
Pjotr Prins 552f5c009e gnu: Add slurm.
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch:
  New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/parallel.scm: Introduce license name space.

Co-authored-by: Andreas Enge <andreas@enge.fr>
2016-02-15 22:47:47 +01:00
Ben Woodcroft e70f7a2306 gnu: prodigal: Update to 2.6.3.
* gnu/packages/bioinformatics.scm (prodigal): Update to 2.6.3.
2016-02-16 07:18:59 +10:00
Efraim Flashner 7fe8ad7616 gnu: polkit-qt: Build with qt-5.
*gnu/packages/polkit.scm (polkit-qt)[propagated-inputs]: Use qt.
2016-02-15 20:22:28 +02:00
Efraim Flashner d1cba090a8 gnu: bazaar: Update to 2.7.0.
* gnu/packages/version-control.scm (bazaar): Update to 2.7.0.
2016-02-15 19:53:27 +02:00
Ricardo Wurmus 258c0a365e gnu: r-annotationdbi: Update to 1.32.3.
* gnu/packages/bioinformatics.scm (r-annotationdbi): Update to 1.32.3.
2016-02-15 16:11:22 +01:00
Ricardo Wurmus 3d7a157c62 gnu: Add audit.
* gnu/packages/admin.scm (audit): New variable.
2016-02-15 16:06:09 +01:00
Efraim Flashner fdc1b2fd65 gnu: vera: Update to 1.23.
* gnu/packages/dictionaries.scm (vera): Update to 1.23.
2016-02-15 15:49:13 +02:00
Efraim Flashner e0ef3708f7 gnu: nano: Update to 2.5.2.
* gnu/packages/nano.scm (nano): Update to 2.5.2.
2016-02-15 15:49:13 +02:00
Efraim Flashner 4bc0c634b3 gnu: bitcoin-core: Update to 0.11.2.
* gnu/packages/finance.scm (bitcoin-core): Update to 0.11.2.
[native-inputs]: Use python-2 instead of python-wrapper.
2016-02-15 15:46:00 +02:00
Efraim Flashner 87062f75e4 gnu: owncloud-client: Update to 2.1.1.
* gnu/packages/owncloud.scm (owncloud-client): Update to 2.1.1.
2016-02-15 15:46:00 +02:00
Ben Woodcroft cf6edaba74 gnu: vsearch: Update to 1.10.0.
* gnu/packages/bioinformatics.scm (vsearch): Update to 1.10.0.
[origin]: Adapt to changes in bundling of cityhash.
2016-02-15 22:54:25 +10:00
Ben Woodcroft a64a8c465d gnu: cityhash: Install citycrc.h.
* gnu/packages/textutils.scm (cityhash)[arguments]: Install citycrc.h.
[version]: Use standardised format, increment to 1.1-2.
2016-02-15 22:54:12 +10:00
Mark H Weaver e86409c566 gnu: graphite2: Update to 1.3.5. Update home-page and source URI.
* gnu/packages/fontutils.scm (graphite2): Update to 1.3.5.
  [source, home-page]: Update to reflect upstream move to github.
2016-02-15 02:51:35 -05:00
Mark H Weaver 4373278ea5 gnu: libsndfile: Update to 1.0.26 [with follow-up fix CVE-2015-7805].
Note: The previous fix for CVE-2015-7805 was incomplete.

* gnu/packages/patches/libsndfile-CVE-2014-9496.patch,
  gnu/packages/patches/libsndfile-CVE-2015-7805.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/pulseaudio.scm (libsndfile): Update to 1.0.26.
  [source]: Remove patches.
2016-02-15 02:51:35 -05:00
Christopher Allan Webber ea79dbb240 gnu: libgcrypt: Update to 1.6.5 [fixes CVE-2015-7511].
* gnu/packages/gnupg.scm (libgcrypt): Update to 1.6.5.
2016-02-15 02:51:35 -05:00
Leo Famulari 68bcac6b62 gnu: btrfs-progs: Fix license.
Reported by Tobias Geerinckx-Rice <tobias.geerinckx.rice@gmail.com>

* gnu/packages/linux.scm (btrfs-progs)[license]: Add GPL2 to list of licenses.
2016-02-14 21:04:05 -05:00
Nils Gillmann acb381566c gnu: font-terminus: Update to 4.40
* gnu/packages/fonts.scm (font-terminus): Update to 4.40.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-14 20:46:49 -05:00
Andreas Enge b6b07d9de3 gnu: python-ly: Update to 0.9.3.
* gnu/packages/python.scm (python-ly): Update to 0.9.3.
2016-02-14 21:49:56 +01:00
Mark H Weaver b042bdc8fd gnu: lxqt: Update source URLs to use HTTPS.
* gnu/packages/lxqt.scm (libqtxdg, liblxqt, lxqt-common)
  (lxqt-session)[source]: Use HTTPS URLs.
2016-02-14 08:48:13 -05:00
Efraim Flashner 38b209110e gnu: openbox: Update to 3.6.1.
* gnu/packages/openbox.scm (openbox): Update to 3.6.1.
2016-02-14 09:51:47 +02:00
Efraim Flashner 8826fb241e gnu: postgresql: Update to 9.3.11. [fixes CVE-2015-{5288,5289},CVE-2016-{0766,0773}]
* gnu/packages/databases.scm (postgresql): Update to 9.3.11.
2016-02-14 09:34:27 +02:00
Jochem Raat 3c697ffda3 gnu: Add baobab.
* gnu/packages/gnome.scm (baobab): New variable.
2016-02-13 21:09:42 -05:00
Al McElrath aa0edd3f5b gnu: Add pianobar.
* gnu/packages/music.scm (pianobar): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-13 18:40:04 -05:00
Christopher Allan Webber cb34dc6c3e gnu: Add python-wtforms
* gnu/packages/python.scm (python-wtforms, python2-wtforms): New variables.
2016-02-13 15:03:10 -08:00
Andreas Enge f97c91757d doc: Correct typos.
* doc/guix.texi: Correct typos, grammar and stylistic points.
2016-02-13 19:58:22 +01:00
Alex Kost 75cd4b053e gnu: iproute: Update to 4.4.0.
* gnu/packages/linux.scm (iproute): Update to 4.4.0.
2016-02-13 20:39:34 +03:00
Alex Kost b53e44fb4e gnu: iproute: Use 'modify-phases'.
* gnu/packages/linux.scm (iproute)[arguments]: Use 'modify-phases'.
2016-02-13 20:39:34 +03:00
Andreas Enge a42d99f284 gnu: calibre: Update to 2.51.0.
* gnu/packages/ebook.scm (calibre): Update to 2.51.0.
2016-02-13 14:34:50 +01:00
Andreas Enge ec4130b7e7 gnu: gnuplot: Update to 5.0.2.
* gnu/packages/maths.scm (gnuplot): Update to 5.0.2.
2016-02-13 13:37:49 +01:00
Jan Nieuwenhuizen 8c1088bb0f gnu: lablgtk: Build cmxa libraries.
* gnu/packages/ocaml.scm (lablgtk)[arguments]: Add the make target "opt"
  to also build *.cmxa files.
2016-02-13 09:23:20 +01:00
Jan Nieuwenhuizen 6372e336a2 gnu: ocaml: Set search path.
* gnu/packages/ocaml.scm (ocaml): Register OCAMLPATH as a search path.
2016-02-13 09:21:58 +01:00
Jan Nieuwenhuizen a747baba00 gnu: Add ocaml-findlib.
* gnu/packages/ocaml.scm (ocaml-findlib): New variable.
* gnu/packages/patches/ocaml-findlib-make-install.patch: New file.
* gnu-system.am (dist_patch_DATA): Register it.
2016-02-13 09:15:55 +01:00
Mark H Weaver 3a7261bf96 gnu: gnupg: Add upstream fix for test failures on x86_64.
Fixes <https://debbugs.gnu.org/22558>.

* gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch: New
  file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gnupg.scm (gnupg)[source]: Add patch.
2016-02-12 21:02:24 -05:00
Jan Nieuwenhuizen 511539ae81 gnu: Add tclxml.
* gnu/packages/patches/tclxml-3.2-install.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/tcl.scm (tclxml): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-12 19:13:05 -05:00
Leo Famulari 6cefd53d3e gnu: Split acme into python-acme and python2-acme.
* gnu/packages/tls.scm (acme): Split variable into...
(python-acme, python2-acme): ...both Python variants.
(letsencrypt)[propagated-inputs]: Update user of renamed variable.
2016-02-12 18:50:32 -05:00
Leo Famulari 8ad4ae204f gnu: python-wheel: Define 'python2-variant'.
* gnu/packages/python.scm (python-wheel)[properties]: New field.
(python2-wheel): Use 'strip-python2-variant'.
(python2-requests): Take the result of 'package-with-python2' directly.
* gnu/packages/openstack.scm (python2-requests-mock): Likewise.
(python2-oslosphinx): Likewise.
2016-02-12 18:50:32 -05:00
Leo Famulari a14600ecfa gnu: python-jsonschema: Define 'python2-variant'.
* gnu/packages/python.scm (python-jsonschema)[properties]: New field.
(python2-jsonschema): Use 'strip-python2-variant'.
* gnu/packages/openstack.scm (python2-tempest-lib): Take the result of
'package-with-python2' directly.
2016-02-12 18:50:32 -05:00
Leo Famulari 519e2f4fde gnu: python-cryptography: Define 'python2-variant'.
* gnu/packages/python.scm (python-cryptography)[properties]: New field.
(python2-cryptography): Use 'strip-python2-variant'.
(python2-pyopenssl): Take the result of 'package-with-python2' directly.
2016-02-12 18:50:32 -05:00
Jan Nieuwenhuizen 50fe318c3c gnu: Add tcllib.
* gnu/packages/tcl.scm (tcllib): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-12 18:01:05 -05:00
Jan Nieuwenhuizen e4c38581f3 gnu: tcl: Use tcl/tk license.
* gnu/packages/tcl.scm (tcl)[license]: Use the tcl/tk license variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-12 18:01:05 -05:00
Jan Nieuwenhuizen d29f647077 licenses: Add tcl/tk license.
* guix/licenses.scm (tcl/tk): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-12 17:25:39 -05:00
David Thompson 779aa003fb scripts: environment: Build environments as profiles.
Fixes <http://bugs.gnu.org/19816>.

* guix/scripts/environment.scm (evaluate-input-search-paths)
(build-inputs): Delete.
(evaluate-profile-search-paths, strip-input-name)
(package-or-package+output?, package-environment-inputs)
(build-environment, inputs->profile-derivations): New procedures.
(create-environment, show-search-paths, launch-environment)
(launch-environment/container): Replace 'inputs' argument
with 'profile' argument.
(package+propagated-inputs): Strip off names off of input tuples.
(options/resolve-packages): Handle input tuples that specify an output
in expressions.
(guix-environment): Convert inputs into a profile to use in the
environment.  Remove non-package inputs such as origins from
environment inputs.
* doc/guix.texi ("invoking guix environment"): Document package+output
tuples for --expression option.
* tests/guix-environment.sh: Update tests.
* tests/guix-environment-container.sh: Likewise.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-02-12 22:02:06 +01:00
Ludovic Courtès e5f04c2dde profiles: Add #:system argument to profile-derivation.
Suggested by David Thompson <davet@gnu.org>.

* guix/profiles.scm (profile-derivation): Add #:system parameter and
honor it.
2016-02-12 21:54:25 +01:00
Ludovic Courtès 98a7b528d6 store: Add monadic access to '%current-system'.
* guix/store.scm (current-system, set-current-system): New procedures.
* tests/store.scm ("current-system"): New test.
2016-02-12 21:54:25 +01:00
Ricardo Wurmus 0d0bcaa08e gnu: macs: Update to 2.1.0.20151222.
* gnu/packages/bioinformatics.scm (macs): Update to 2.1.0.20151222.
2016-02-12 18:16:16 +01:00
Ricardo Wurmus 43ec07f17c gnu: macs: Use "pypi-uri".
* gnu/packages/bioinformatics.scm (macs)[source]: Use "pypi-uri" to
  build source URI.
2016-02-12 18:16:16 +01:00
Ricardo Wurmus b074e7d486 gnu: python2-fastlmm: Update to 0.2.21.
* gnu/packages/python.scm (python2-fastlmm): Update to 0.2.21.
2016-02-12 10:58:46 +01:00
Ricardo Wurmus 3f2e9675fb gnu: python2-pysnptools: Update to 0.3.5.
* gnu/packages/python.scm (python2-pysnptools): Update to 0.3.5.
2016-02-12 10:58:46 +01:00
Ricardo Wurmus ef9b4c04a4 gnu: python-numpy-bootstrap: Update to 1.10.4.
* gnu/packages/python.scm (python-numpy-bootstrap): Update to 1.10.4.
2016-02-12 10:58:46 +01:00
Ricardo Wurmus 1b96f069e6 gnu: python-pandas: Update to 0.16.2.
* gnu/packages/python.scm (python-pandas): Update to 0.16.2.
2016-02-12 10:58:46 +01:00
Ni* Gillmann 3ccdd4305e gnu: Add gnunet-gtk.
* gnu/packages/gnunet.scm (gnunet-gtk): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2016-02-12 10:17:05 +01:00
Ricardo Wurmus 1eb6bbd8c0 gnu: gnunet: Add gstreamer and plugins to inputs.
* gnu/packages/gnunet.scm (gnunet)[inputs]: Add "gstreamer" and
  "gst-plugins-base".
2016-02-12 08:09:19 +01:00
Tobias Geerinckx-Rice 3a9cfba879 install: Add btrfs-progs to the image.
* gnu/system/install.scm (installation-os)[packages]: Add BTRFS-PROGS.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-11 21:39:30 -05:00
Tobias Geerinckx-Rice fc686f9a19 gnu: Add btrfs-progs.
* gnu/packages/linux.scm (btrfs-progs): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-11 21:02:06 -05:00
Mark H Weaver e57127fbe1 Revert "gnu: nginx: Update to 1.9.11. [fixes CVE-2016-{0742, 0746, 0747}]"
This reverts commit 759246ad48.
2016-02-11 16:31:19 -05:00
Mark H Weaver 59d4cf1c58 gnu: icecat: Update bundled graphite2 to 1.3.5 for security fixes.
* gnu/packages/patches/icecat-update-graphite2.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch.  Add TODO
  comment about using the system graphite2 in the future.
2016-02-11 14:59:16 -05:00
Efraim Flashner 759246ad48 gnu: nginx: Update to 1.9.11. [fixes CVE-2016-{0742, 0746, 0747}]
* gnu/packages/web.scm (nginx): Update to 1.9.11.
2016-02-11 21:36:43 +02:00
Efraim Flashner d2ca99ccbd gnu: feh: Update to 2.14.1.
* gnu/packages/feh.scm (feh): Update to 2.14.1.
2016-02-11 12:46:55 +02:00
Efraim Flashner 9b719875be gnu: obs: Update to 0.13.1.
* gnu/packages/video.scm (obs): Update to 0.13.1.
2016-02-11 11:11:44 +02:00
Efraim Flashner 50beb63b7a gnu: fribidi: Update to 0.19.7.
* gnu/packages/fribidi.scm (fribidi): Update to 0.19.7.
2016-02-11 11:00:36 +02:00
Efraim Flashner 992b527d52 gnu: alsa-utils: Update to 1.1.0.
* gnu/packages/linux.scm (alsa-utils): Update to 1.1.0.
2016-02-11 09:26:55 +02:00
Ricardo Wurmus 138e76972a gnu: zynaddsubfx: Update to 2.5.3.
* gnu/packages/music.scm (zynaddsubfx): Update to 2.5.3.
2016-02-11 08:25:03 +01:00
Leo Famulari a2a06c51ab gnu: htop: Update to 2.0.0.
* gnu/packages/admin.scm (htop): Update to 2.0.0.
2016-02-11 00:31:10 -05:00
Al McElrath 8a75c589aa gnu: Add notmuch-addrlookup-c.
* gnu/packages/mail.scm (notmuch-addrlookup-c): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-10 17:08:24 -05:00
Ludovic Courtès dedb8d5ece doc: Provide more details about system installation.
* doc/guix.texi (System Installation): Turn all subsections into
individual nodes.
(Limitations): Update the number of packages.
(Preparing for Installation)[Keyboard Layout, Networking, Disk
Partitionning]: New subsections.  Move the 'cow-store' thing to...
(Proceeding with the Installation): ... here.  Describe things in more
detail.
(Base Services): Add index entry for "keyboard layout".

Co-authored-by: Petter <petter@mykolab.ch>.
2016-02-10 21:47:31 +01:00
Ludovic Courtès c96ba2cf5e install: Do not cache lookup failures.
Possibly fixes <http://bugs.gnu.org/22209>.

* gnu/system/install.scm (%nscd-minimal-caches)[negative-time-to-live]:
Set to zero.
2016-02-10 21:47:31 +01:00
Leo Famulari 8823ed4e12 gnu: Fix syntax error in postgresql-service.
Fixes <http://bugs.gnu.org/22618>.
Reported by Danny Milosavljevic <dannym@scratchpost.org>.

* gnu/services/databases.scm (%default-postgres-config): Add missing
quote in default configuration.
2016-02-10 15:34:11 -05:00
Mark H Weaver 16114c3494 gnu: mit-krb5: Update to 1.13.3; add fixes for CVE-2015-{8629,8630,8631}.
* gnu/packages/patches/mit-krb5-CVE-2015-2695-pt1.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2695-pt2.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2696.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2697.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2698-pt1.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2698-pt2.patch: Delete files.
* gnu/packages/patches/mit-krb5-CVE-2015-8629.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-8630.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-8631.patch,
  gnu/packages/patches/mit-krb5-init-context-null-spnego.patch: New files.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
* gnu/packages/mit-krb5.scm (mit-krb5): Update to 1.13.3.
  [source]: Update URI to download conventional .tar.gz file.  Add patches.
  [native-inputs]: Remove old patches-as-inputs.
  [arguments]: Remove hacks needed to cope with the older unconventional
  tarball that contained an inner source tarball and signature: Remove
  #:modules argument, and the custom 'unpack' and 'apply-patches' phases.
2016-02-10 10:41:11 -05:00
Mark H Weaver 42395bf514 gnu: nettle: Update to 3.2 [fixes CVE-2015-{8803,8804,8805}].
* gnu/packages/nettle.scm (nettle): Update to 3.2.
2016-02-10 10:41:11 -05:00
Ludovic Courtès 4ecbf6d282 gnu: haunt: Wrap 'haunt' command so that it finds its modules.
* gnu/packages/guile.scm (haunt)[arguments]: New field.
2016-02-10 15:15:17 +01:00
Ludovic Courtès f5582b2c1d system: Selected locale is automatically built.
Fixes <http://bugs.gnu.org/22572>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/system/locale.scm (%not-dot): New variable.
(denormalize-codeset, locale-name->definition): New procedures.
* gnu/system.scm (locale-name->definition*): New procedure.
(operating-system-locale-directory): Instead of raising an error, add
the missing locale.
* doc/guix.texi (Locales): Adjust accordingly.
2016-02-10 15:15:17 +01:00
Alex Kost 32e1611206 gnu: emacs-debbugs: Update to 0.9.
* gnu/packages/emacs.scm (emacs-debbugs): Update to 0.9.
[propagated-inputs]: Add 'emacs-async'.
2016-02-10 01:34:17 +03:00
Alex Kost b654de6da1 gnu: Add emacs-async.
* gnu/packages/emacs.scm (emacs-async): New variable.
2016-02-10 01:34:17 +03:00
Alex Kost 3db5ed11da gnu: magit: Update to 2.5.0.
* gnu/packages/emacs.scm (magit): Update to 2.5.0.
[propagated-inputs]: Add 'emacs-with-editor'.
[arguments]: Make with WITH_EDITOR_DIR.
2016-02-10 01:34:17 +03:00
Alex Kost 2b0e43003c gnu: Add emacs-with-editor.
* gnu/packages/emacs.scm (emacs-with-editor): New variable.
2016-02-10 01:34:17 +03:00
Alex Kost 2c04e2eec8 emacs: 'C-u M-x guix-edit' prompts for directory.
* emacs/guix-base.el (guix-read-directory): New procedure.
(guix-find-location, guix-edit): Add optional 'directory' argument.
* emacs/guix-ui-package.el (guix-package-list-edit)
(guix-output-list-edit): Likewise.
* doc/emacs.texi (Emacs Commands): Mention "C-u".
2016-02-10 01:31:19 +03:00
Pjotr Prins f1957fc145 gnu: Add munge.
* gnu/packages/admin.scm (munge): New variable.
2016-02-09 20:43:32 +01:00
Leo Famulari 9bee9d87dc gnu: acme: Disable egg compression.
* gnu/packages/python.scm (acme)[arguments]: Add
'disable-egg-compression' phase.
2016-02-08 23:45:06 -05:00
Leo Famulari 0c7320dc89 gnu: letsencrypt and acme: Update to 0.3.0.
These packages should be updated together.

* gnu/packages/tls.scm (letsencrypt): Update to 0.3.0.
(acme): Update to 0.3.0.
2016-02-08 23:04:07 -05:00
David Thompson fe65ef54c5 youtube-dl: Update to 2016.02.05.1.
* gnu/packages/video.scm (youtube-dl): Update to 2016.02.05.1.
2016-02-08 21:47:51 -05:00
Ludovic Courtès 939c5c31d6 system: Add Texinfo to '%base-packages'.
Fixes <http://bugs.gnu.org/22598>.
Reported by myglc2 <myglc2@gmail.com>.

* gnu/system.scm (%base-packages): Add TEXINFO.
2016-02-08 23:46:46 +01:00
Ludovic Courtès 1f1ff6a0e7 linux-container: Accept file systems with a UUID 'source'.
* gnu/system/linux-container.scm (containerized-operating-system)[user-file-systems]:
Check whether SOURCE is a string before calling 'string-prefix?'.
2016-02-08 23:46:46 +01:00
Ludovic Courtès 6eb439070a file-systems: Spawn a Bournish REPL upon fsck failure.
Fixes <http://bugs.gnu.org/22588>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/build/file-systems.scm (check-file-system): Pass
%BOURNISH-LANGUAGE as the argument to 'start-repl'.
* gnu/services.scm (activation-script): Add (guix build bournish).
* gnu/services/base.scm (file-system-shepherd-service)[imported-modules]:
Likewise.
* gnu/system/linux-container.scm (container-script): Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise.
2016-02-08 23:46:46 +01:00
Ludovic Courtès f2e4805b7e Add (guix build bournish) and use it in the initrd.
* guix/build/bournish.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/system/linux-initrd.scm (base-initrd): Add (guix build bournish)
and use it.
2016-02-08 23:46:46 +01:00
Nils Gillmann 423eef362b gnu: add lispf4
* gnu/packages/lisp.scm (lispf4): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-02-08 15:09:34 -05:00
Mark H Weaver 7fb51d9742 gnu: dbus: Use https source URL.
* gnu/packages/glib.scm (dbus)[source]: Use https URL.
2016-02-08 08:59:00 -05:00
Rene Saavedra 8b8775454b gnu: Add nautilus.
* gnu/packages/gnome.scm (nautilus): New variable.

Co-authored-by: 宋文武 <iyzsong@gmail.com>
2016-02-08 13:48:16 +08:00
Leo Famulari 16095d2729 gnu: python-pillow: Update to 3.1.1 [fixes CVE-2016-{0740, 0775}].
* gnu/packages/python.scm (python-pillow, python2-pillow): Update to 3.1.1.
2016-02-08 00:25:40 -05:00
Christopher Allan Webber 3d4f9d5cde gnu: Add assword.
* gnu/packages/password-utils.scm (assword): New variable.
2016-02-07 14:57:52 -08:00
Christopher Allan Webber 0bdc1671e4 gnu: Add python2-xdo.
* gnu/packages/python.scm (python2-xdo): New variable.
2016-02-07 14:57:52 -08:00
Ludovic Courtès 57b7b8cd60 gnu: python-matplotlib: Define 'python2-variant'.
* gnu/packages/python.scm (python2-numpy): Take the result of
'package-with-python2' directly.
(python2-scipy): Likewise.
(python-matplotlib)[properties]: New field.
(python2-matplotlib): Call 'strip-python2-variant'.
2016-02-07 23:46:01 +01:00
Ludovic Courtès 48b311b1b3 gnu: python-cython: Define 'python2-variant'.
* gnu/packages/python.scm (python-cython)[properties]: New field.
(python2-cython): Use 'strip-python2-variant'.
2016-02-07 23:46:01 +01:00
Ludovic Courtès 7ec42f1d8a gnu: python-pycairo: Define 'python2-variant'.
* gnu/packages/gtk.scm (python-pycairo)[properties]: New field.
(python2-pycairo): Use 'strip-python2-variant'.
2016-02-07 23:46:01 +01:00
Ludovic Courtès 00f2bf3433 gnu: python-pygobject: Define 'python2-variant'.
* gnu/packages/glib.scm (python-pygobject)[properties]: New field.
(python2-pygobject): Use 'strip-python2-variant'.
2016-02-07 23:46:01 +01:00
Ludovic Courtès 1be83341f6 build-system/python: Honor the 'python2-variant' property of packages.
Fixes <http://bugs.gnu.org/22437>.
Reported by Leo Famulari <leo@famulari.name> and others.

* guix/build-system/python.scm (package-with-explicit-python): Add
  #:variant-property and honor it.
(strip-python2-variant): New procedure.
2016-02-07 23:46:01 +01:00
Ludovic Courtès 5540929500 gnu: upower: Install man pages.
* gnu/packages/gnome.scm (upower)[native-inputs]: Add LIBXML2, LIBXSLT,
and DOCBOOK-XSL.
2016-02-07 23:46:01 +01:00
Efraim Flashner 17d2e86d49 gnu: keepassx: Update to 2.0.2.
* gnu/packages/password-utils.scm (keepassx): Update to 2.0.2.
2016-02-07 21:37:00 +02:00
Fabian Harfert 6366cef38d gnu: Add libcanberra-gtk2.
* gnu/packages/libcanberra.scm (libcanberra/gtk+-2): New variable.
2016-02-07 16:49:51 +01:00
Efraim Flashner fe476868df gnu: python2-pysqlite: Update to 2.8.1.
* gnu/packages/python.scm (python2-pysqlite): Update to 2.8.1.
[source]: Change to `pypi uri` syntax.
[home-page]: Update to new homepage.
2016-02-07 15:59:54 +02:00
Efraim Flashner f2d06d4697 gnu: python2-backport-ssl-match-hostname: Update to 3.5.0.1.
* gnu/packages/python.scm (python2-backport-ssl-match-hostname):
Update to 3.5.0.1.
[arguments]: Skip tests.
[synopsis]: Update for python version 3.5.x.
2016-02-07 15:24:43 +02:00
Efraim Flashner ce6c13ee8c gnu: python-cryptography: Update to 1.2.2.
* gnu/packages/python.scm (python-cryptography): Update to 1.2.2.
[source]: Change to `pypi uri` syntax.
[native-inputs]: Add python-pyasn1, python-pyasn1-modules,
python-hypothesis.
(python2-cryptography)[propagated-inputs]: Add
python2-backport-ssl-match-hostname
2016-02-07 14:26:57 +02:00
Efraim Flashner b39b33e8c8 gnu: python-cryptography-vectors: Update to 1.2.2.
* gnu/packages/python.scm (python-cryptography-vectors): Update to 1.2.2.
2016-02-07 13:57:44 +02:00
Efraim Flashner 6fb54e3bd4 gnu: python-pip: Update to 8.0.2.
* gnu/packages/python.scm (python-pip): Update to 8.0.2.
[source]: Change to `pypi uri` syntax.
2016-02-07 13:38:16 +02:00
Efraim Flashner 5b669ba1e3 gnu: python-gnupg: Update to 0.3.8.
* gnu/packages/gnupg.scm (python-gnupg): Update to 0.3.8.
[source]: Change to 'pypi uri` syntax.
2016-02-07 12:58:54 +02:00
Alex Kost 7c1b1ae24a doc: Document 'guix-edit' Emacs command.
* doc/emacs.texi (Emacs Commands): Document "M-x guix-edit".
* doc/guix.texi (Invoking guix edit): Mention it.
2016-02-07 11:24:35 +03:00
Alex Kost b3fee145df system: Fix EMACSLOADPATH.
After commit 13fe4891fa, Emacs package
includes "site-start.el", and it has a priority over
"/etc/emacs/site-start.el" on GuixSD because "/etc/emacs" is added to
the end of 'load-path'.

* gnu/system.scm (operating-system-environment-variables): Change
  EMACSLOADPATH to prepend "/etc/emacs" to 'load-path' instead of
  appending.
2016-02-07 11:24:35 +03:00
Alex Kost 004ea62955 emacs: Find Emacs packages in a system profile.
Fixes <http://bugs.gnu.org/22550>.
Reported by myglc2 <myglc2@gmail.com>.

* emacs/guix-emacs.el (guix-emacs-autoload-packages): Autoload Emacs
  packages installed in a system profile.
2016-02-07 11:24:35 +03:00
Alex Kost 09b634565d emacs: Move the code to load Emacs packages after installing.
This code should belong to "guix-backend" as it is run after a REPL
operation to check if new Emacs packages have been installed and to
autoload them if needed.

* emacs/guix-emacs.el (guix-emacs-activate-after-operation)
(guix-emacs-load-autoloads-maybe): Move and rename to...
* emacs/guix-backend.el (guix-emacs-activate-after-operation)
(guix-repl-autoload-emacs-packages-maybe): ... this.
(guix-after-repl-operation-hook): Adjust for the renaming.
2016-02-07 11:24:35 +03:00
Alex Kost abea77e3f0 emacs: Factorize searching for Emacs packages.
* emacs/guix-emacs.el: (guix-emacs-directories): New procedure.
(guix-emacs-find-autoloads-in-directory): Rename to...
(guix-emacs-find-autoloads): ... this.
(guix-emacs-load-autoloads): Remove.  Replace with...
(guix-emacs-autoload-packages): ... this.  New procedure.  At first,
find a list of directories with Emacs packages, then add them to
'load-path' and finally, load autoloads.
* doc/emacs.texi (Emacs Initial Setup): Adjust accordingly.
2016-02-07 11:24:35 +03:00
宋文武 6588c2834a gnu: curl: Use 'https' URL.
Reported by marusich on #guix.

* gnu/packages/curl.scm (curl)[source]: Use 'https' URL.
2016-02-07 10:41:40 +08:00
Christopher Allan Webber 6f74aecdb3 gnu: xdotools: Update to 3.20150503.1
* gnu/packages/xdisorg.scm (xdotools): Upgrade to 3.20150503.1.
* gnu/packages/patches/xdotool-fix-makefile.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2016-02-06 15:39:51 -08:00
Ludovic Courtès d9f0788ad2 gnu: guile-next: Update to 2.1.2.
* gnu/packages/guile.scm (guile-next): Update to 2.1.2.  Add 'snippet'.
2016-02-06 21:46:25 +01:00
Ludovic Courtès 8c4c2a983e gnu: Add Texinfo 6.1.
* gnu/packages/texinfo.scm (texinfo-6.1): New variable.
* gnu/packages/emacs.scm (emacs): Add comment about 'info.info'.
2016-02-06 21:46:25 +01:00
Christopher Allan Webber a05d1d82c0 gnu: Add python-pygpgme
* gnu/packages/gnupg.scm (python-pygpgme, python2-pygpgme): New variables.
* gnu/packages/patches/pygpgme-disable-problematic-tests.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2016-02-06 11:30:35 -08:00
Mark H Weaver 08cb746f08 gnu: icecat: Re-enable the Ephemeral Diffie-Hellman cipher suites.
* gnu/packages/patches/icecat-re-enable-DHE-cipher-suites.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patch.
2016-02-06 08:48:20 -05:00
Ludovic Courtès e7ad0d5862 services: elogind: Extend PAM to use 'pam_elogind.so'.
Thanks to Andy Wingo <wingo@igalia.com> for explaining this at
<https://lists.gnu.org/archive/html/guix-devel/2015-08/msg00439.html>.

* gnu/services/desktop.scm (pam-extension-procedure): New procedure.
(elogind-service-type): Extend PAM-ROOT-SERVICE-TYPE.
2016-02-06 12:01:42 +01:00
Ludovic Courtès 12c00bca92 system: pam: 'pam-root-service-type' can be extended with transformations.
* gnu/system/pam.scm (<pam-configuration>): New record type.
(/etc-entry): Change 'services' parameter' to 'config'.  Honor the
'transform' field of CONFIG.
(extend-configuration): New procedure.
(pam-root-service-type): Use EXTEND-CONFIGURATION as the 'extend'
field.
(pam-root-service): Add #:transform parameter.  Service value is a
<pam-configuration>.
2016-02-06 12:01:42 +01:00
Ludovic Courtès d7bce31c36 system: pam: Export accessors.
* gnu/system/pam.scm: Export <pam-service> and <pam-entry> accessors.
2016-02-06 12:01:42 +01:00
Fabian Harfert b7807bb2fa gnu: Add murrine.
* gnu/packages/gtk.scm (murrine): New variable.
2016-02-06 13:35:29 +08:00
Fabian Harfert 9ba5198c4c gnu: Add gtk-engines.
* gnu/packages/gtk.scm (gtk-engines): New variable.
2016-02-06 13:32:59 +08:00
Andreas Enge eb2afd000c gnu: r: Drop input lapack.
* gnu/packages/statistics.scm (r)[inputs]: Drop lapack, which is
  recommended by the manual.
  [arguments]: Adapt configure flags.
2016-02-05 23:20:43 +01:00
Ludovic Courtès 05c5b16585 services: elogind: Add elogind to the global profile.
* gnu/services/desktop.scm (elogind-service-type): Extend
PROFILE-SERVICE-TYPE.
2016-02-05 22:10:42 +01:00
Ludovic Courtès edc891fa76 services: upower: Add upower to the global profile.
* gnu/services/desktop.scm (upower-service-type): Extend
PROFILE-SERVICE-TYPE.
2016-02-05 22:10:42 +01:00
Ludovic Courtès 42c97811c9 gnu: vpnc: Make sure 'vpnc-script' finds the commands it needs.
* gnu/packages/vpn.scm (vpnc)[inputs]: Add NET-TOOLS and IPROUTE.
[arguments]: Use 'modify-phases'.  Wrap 'vpnc-script'.
2016-02-05 22:10:42 +01:00
Mark H Weaver a7d8c466db gnu: icecat: Update to 38.6.0-gnu1.
* gnu/packages/patches/icecat-bug-1146335-pt1.patch,
  gnu/packages/patches/icecat-bug-1146335-pt2.patch,
  gnu/packages/patches/icecat-limit-max-buffers-size-for-ANGLE.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt01.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt02.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt03.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt04.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt05.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt06.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt07.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt08.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt09.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt10.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt11.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt12.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt13.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt14.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt15.patch,
  gnu/packages/patches/icecat-CVE-2016-1935.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/gnuzilla.scm (icecat): Update to 38.6.0-gnu1.
  [source]: Remove patches.
2016-02-05 16:00:25 -05:00
Andreas Enge 95b754a17a gnu: r: Drop input openblas.
* gnu/packages/statistics.scm (r)[inputs]: Drop openblas.
  [arguments]: Adapt configure flags. This makes the build succeed
  on armhf-linux.
2016-02-05 20:51:39 +01:00
Efraim Flashner 22b0caa3ed gnu: glibmm: Update to 2.46.3.
* gnu/packages/glib.scm (glibmm): Update to 2.46.3.
2016-02-05 16:02:26 +02:00
Efraim Flashner 93e3be9abd gnu: gedit: Update to 3.18.3.
* gnu/packages/gnome.scm (gedit): Update to 3.18.3.
2016-02-05 16:02:26 +02:00
Efraim Flashner 7965a94a67 gnu: gtksourceview: Update to 3.18.2.
* gnu/packages/gtk.scm (gtksourceview): Update to 3.18.2.
2016-02-05 16:02:26 +02:00
Efraim Flashner 5b00397279 gnu: atkmm: Update to 2.24.2.
* gnu/packages/gtk.scm (atkmm): Update to 2.24.2.
2016-02-05 16:02:26 +02:00
Efraim Flashner f58219569c gnu: libxml++: Update to 3.0.0.
* gnu/packages/gnome.scm (libxml++): Update to 3.0.0.
2016-02-05 16:02:26 +02:00
Efraim Flashner 73836c7de8 gnu: ffmpeg: Update to 2.8.6.
* gnu/packages/video.scm (ffmpeg): Update to 2.8.6.
2016-02-05 16:02:26 +02:00
Efraim Flashner e267435787 gnu: vte: Update to 0.42.3.
* gnu/packages/gnome.scm (vte): Update to 0.42.3.
2016-02-05 16:02:26 +02:00
Andreas Enge 71ee51a057 gnu: libbluray: Drop unused inputs.
* gnu/packages/video.scm (libbluray)[inputs]: Remove doxygen, perl and
  texlive. The first one is checked during the configure phase, but no
  documentation is actually built anyway.
2016-02-05 14:42:13 +01:00
Ludovic Courtès 234ea8a71c service: shepherd: All of the config file is in 'call-with-error-handling'.
* gnu/services/shepherd.scm (shepherd-configuration-file)[config]: Wrap
all the body in 'call-with-error-handling'.
2016-02-05 14:01:46 +01:00
Ludovic Courtès 081bd3bd29 service: shepherd: Guard against exceptions raised by 'start'.
Fixes <http://bugs.gnu.org/22548>.
Reported by Albin <albin@fripost.org>, Mark H Weaver, and Alex Kost.

* gnu/services/shepherd.scm (shepherd-configuration-file)[config]: Guard
against 'service-error?'.
2016-02-05 14:01:46 +01:00
Ludovic Courtès 1d6b7d5847 guix system: Simply warn if we cannot talk to the shepherd.
Before that 'open-connection' would return #f, and thus
'current-services' would return a single #f value when its continuation
expects two.

Reported by calher on #guix.

* gnu/services/herd.scm (open-connection): Rethrow system-error
exceptions.
(with-shepherd): Expect CONNECTION to always be true; remove useless
'dynamic-wind'.
* guix/scripts/system.scm (warn-on-system-error): New macro.
(upgrade-shepherd-services): Wrap body in 'warn-on-system-error'.
2016-02-05 14:01:46 +01:00
Ludovic Courtès 6b55ee8889 gnu: net-tools: Update URLs.
Reported by Jookia <166291@gmail.com> and Leo Famulari <leo@famulari.name>.

* gnu/packages/linux.scm (net-tools)[home-page]: Switch to SourceForge.
[source]: Add SourceForge and ibiblio.org URLs.
2016-02-05 14:01:46 +01:00
Tobias Geerinckx-Rice 0f860464bd gnu: Add sdparm.
* gnu/packages/disk.scm (sdparm): New variable.
2016-02-05 09:30:29 +01:00
Mark H Weaver b9da375999 gnu: mplayer: Update to 1.2.1.
* gnu/packages/video.scm (mplayer): Update to 1.2.1.
2016-02-04 22:06:01 -05:00
Fabian Harfert ca9eb4898b licenses: Add the fdl1.1+.
* guix/licenses.scm (fdl1.1+): New variable.
2016-02-04 18:31:17 -05:00
Leo Famulari 90bcecc568 gnu: jasper: Add fixes for several security flaws.
* gnu/packages/patches/jasper-CVE-2007-2721.patch,
gnu/packages/patches/jasper-CVE-2008-3520.patch,
gnu/packages/patches/jasper-CVE-2011-4516-and-CVE-2011-4517.patch,
gnu/packages/patches/jasper-CVE-2014-8137.patch,
gnu/packages/patches/jasper-CVE-2014-8138.patch,
gnu/packages/patches/jasper-CVE-2014-8157.patch,
gnu/packages/patches/jasper-CVE-2014-8158.patch,
gnu/packages/patches/jasper-CVE-2014-9029.patch,
gnu/packages/patches/jasper-CVE-2016-1867.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/image.scm (jasper)[source]: Add patches.
2016-02-04 15:09:41 -05:00
Alex Kost e20f051ec4 emacs: Add missing (require 'guix-profiles).
Reported by Christopher Allan Webber <cwebber@dustycloud.org> on #guix.

Several modules use the code from 'guix-profiles' without requiring it.  It
was never noticed before commits e4e2154644
and 13fe4891fa, because 'guix-emacs' required
this module.  But now, when 'site-start.el' loads 'guix-emacs',
'guix-profiles' may not exist yet, so it may not be required.  This will
lead to an error when some of "M-x guix-..." commands will be used.  See
<https://gnunet.org/bot/log/guix/2016-02-03#T898859>.

* emacs/guix-base.el: Require 'guix-profiles'.
* emacs/guix-ui.el: Likewise.
* emacs/guix-ui-generation.el: Likewise.
* emacs/guix-ui-package.el: Likewise.
2016-02-04 15:31:43 +03:00
Ludovic Courtès 17c20385fb doc: Mention 'tzselect'.
* doc/guix.texi (operating-system Reference): Mention 'tzselect' and
invalid timezone strings.
2016-02-04 12:21:34 +01:00
Ludovic Courtès a6312f1dd0 install: Add glibc to the global profile.
Suggested by petter on #guix.

* gnu/system/install.scm (installation-os)[packages]: Add glibc.
2016-02-04 12:21:34 +01:00
Leo Famulari 202e2e412a gnu: harfbuzz: Update to 1.0.6 [fixes CVE-2016-2052].
* gnu/packages/gtk.scm (harfbuzz): Update to 1.0.6.
2016-02-04 00:15:21 -05:00
Mark H Weaver 5fb205c638 gnu: perl-io-socket-ssl: Add workaround for OpenSSL-1.0.2f.
* gnu/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/web.scm (perl-io-socket-ssl)[source]: Add patch.
2016-02-04 00:15:21 -05:00
Mark H Weaver 19f339526f gnu: openssl: Update to 1.0.2f [fixes CVE-2015-3197 and CVE-2016-0701].
* gnu/packages/tls.scm (openssl): Update to 1.0.2f.
  [arguments]: Remove the 'fix-broken-symlinks' phase.
2016-02-04 00:15:21 -05:00
Leo Famulari bdbb7c1852 gnu: curl: Update to 7.47.0 [fixes CVE-2016-0755].
* gnu/packages/curl.scm (curl): Update to 7.47.0.
2016-02-04 00:15:21 -05:00
Mark H Weaver dfb9001ad8 linux-initrd: Add serpent_generic and wp512 to the default set of modules.
Adds modules needed for encrypted root partitions using the Serpent cipher or
Whirlpool digest algorithms.

* gnu/system/linux-initrd.scm (base-initrd)[linux-modules]: Add
  "serpent_generic" and "wp512".
2016-02-03 16:48:06 -05:00
Mark H Weaver cc023e320e linux-initrd: Add hid-generic and hid-apple to the default set of modules.
Fixes keyboard of MacBook2,1 during early boot, e.g. for typing a password to
mount an encrypted root partition.

* gnu/system/linux-initrd.scm (base-initrd)[linux-modules]: Add "hid-generic"
  and "hid-apple".
2016-02-03 16:43:42 -05:00
Ludovic Courtès 37dd1e6a34 services: 'file-union' makes sure each source file exists.
Before that, specifying an invalid timezone in 'operating-system' would
lead to a dangling symlink in the 'etc' directory, which in turn would
lead to a kernel panic at boot time.

Reported by pizzaiolo on #guix.

* gnu/services.scm (file-union): Add 'stat' call for SOURCE.
2016-02-03 22:28:28 +01:00
Ludovic Courtès 240b57f0ca guix system: 'reconfigure' loads and starts new services.
Partly fixes <http://bugs.gnu.org/22039>.

* gnu/services/herd.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* gnu/services/shepherd.scm (shepherd-service-canonical-name): New
procedure.
(shepherd-service-file): Export.
* guix/scripts/system.scm (upgrade-shepherd-services): New procedure.
(switch-to-system): Use it.
* guix/ui.scm (info): New procedure.
* doc/guix.texi (Invoking guix system): Mention system services.
2016-02-03 22:28:28 +01:00
Efraim Flashner 98416109d5 gnu: libdvdcss: Update to 1.4.0.
* gnu/packages/video.scm (libdvdcss): Update to 1.4.0.
[source]: Change source url.
2016-02-03 22:20:56 +02:00
Efraim Flashner 321a0299a7 gnu: youtube-dl: Update to 2016.02.01.
* gnu/packages/video.scm (youtube-dl): Update to 2016.02.01.
2016-02-03 22:20:56 +02:00
Efraim Flashner dabd7c9b68 gnu: enlightenment: Update to 0.20.5.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.5.
2016-02-03 22:20:56 +02:00
Efraim Flashner e11e76b68e gnu: emotion-generic-players: Update to 1.17.0.
* gnu/packages/enlightenment.scm (emotion-generic-players): Update to 1.17.0.
2016-02-03 22:20:56 +02:00
Efraim Flashner da5e7616a0 gnu: evas-generic-loaders: Update to 1.17.0.
* gnu/packages/enlightenment.scm (evas-generic-loaders): Update to 1.17.0.
2016-02-03 22:20:56 +02:00
Efraim Flashner 58fc31670a gnu: elementary: Update to 1.17.0.
* gnu/packages/enlightenment.scm (elementary): Update to 1.17.0.
2016-02-03 22:20:56 +02:00
Efraim Flashner 7b2f2fbf08 gnu: efl: Update to 1.17.0.
* gnu/package/enlightenment.scm (efl): Update to 1.17.0.
2016-02-03 22:20:56 +02:00
Andreas Enge 37d6b0978c gnu: hwloc: Build without numactl support on armhf.
* gnu/packages/mpi.scm (hwloc)[inputs]: Drop numactl on armhf, where the
  package is not available.
2016-02-03 21:05:51 +01:00
Andreas Enge 35dfcdd753 gnu: numactl: Remove unsupported system armhf-linux.
* gnu/packages/linux.scm (numactl)[supported-systems]: Remove armhf.
2016-02-03 21:03:46 +01:00
Mark H Weaver d120b1d433 gnu: Remove linux-libre-4.2.5.
This series is no longer supported upstream.

* gnu/packages/linux.scm (linux-libre-4.2.5): Remove variable.
2016-02-03 14:26:57 -05:00
Andreas Enge 11b953a1b1 gnu: pius: Update to 2.2.2.
* gnu/packages/gnupg.scm (pius): Update to 2.2.2.
2016-02-03 15:49:07 +01:00
Andreas Enge cea18ab00b gnu: gnupg: Update to 2.1.11.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.11.
2016-02-03 15:49:07 +01:00
Efraim Flashner 35f6c4972e gnu: ao: Update to 1.2.0.
* gnu/packages/xiph.scm (ao): Update to 1.2.0.
2016-02-03 13:10:37 +02:00
Ludovic Courtès a220b262db syscalls: 'all-network-interface-names' accepts non-alphanumeric characters.
This fixes interfaces with a dash or other characters being ignored.
Suggested by Jookia <166291@gmail.com>.

* guix/build/syscalls.scm (%interface-line): Use [[:graph:]] instead
of [[:alnum:]].
2016-02-03 11:21:11 +01:00
Ludovic Courtès 2a5f0db4c4 system: /etc/profile reads /etc/environment for the sake of lshd.
Fixes <http://bugs.gnu.org/22175>.

* gnu/system.scm (operating-system-etc-service)[profile]: Add hack to
define variables from /etc/environment.
2016-02-03 11:21:11 +01:00
Federico Beffa 3a6a0f6013 gnu: Add Italian Aspell dictionary.
* gnu/packages/aspell.scm (aspell-dict-it): New variable.
2016-02-03 10:48:36 +01:00
Federico Beffa 05f5ce0c39 gnu: sbcl: Generate and install documentation.
* gnu/packages/lisp.scm (sbcl): Add 'doc' output.
  [arguments]: Add 'build-doc' and 'install-doc' phases.
  [native-inputs]: Add 'texlive' and 'texinfo'.
2016-02-03 10:48:36 +01:00
Federico Beffa 1ee131df42 gnu: sbcl: Convert to the 'modify-phases' syntax.
* gnu/packages/lisp.scm (sbcl): Do it.
2016-02-03 10:48:36 +01:00
Federico Beffa 85960693e4 gnu: Add emacs-slime.
* gnu/packages/emacs.scm (emacs-slime): New variable.
2016-02-03 10:48:36 +01:00
Federico Beffa f163c290f1 gnu: mit-scheme: Generate and install documentation.
* gnu/packages/scheme.scm (mit-scheme): Add 'doc' output.
  [arguments]: Add phases 'configure-doc, 'build-doc and 'install-doc.
  [native-inputs]: Add 'texlive'. Move 'texinfo' and 'm4' from inputs.
2016-02-03 10:48:36 +01:00
Federico Beffa af00e63352 gnu: mit-scheme: Convert to the 'modify-phases' syntax.
* gnu/packages/scheme.scm (mit-scheme): Do it.
2016-02-03 10:48:36 +01:00
Federico Beffa e5045f303a gnu: Add emacs-constants.
* gnu/packages/emacs.scm (emacs-constants): New variable.
* gnu/packages/patches/emacs-constants-lisp-like.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
2016-02-03 10:48:36 +01:00
Federico Beffa 58a7dc1340 gnu: Add emacs-mit-scheme-doc.
* gnu/packages/emacs.scm (emacs-mit-scheme-doc): New variable.
2016-02-03 10:47:21 +01:00
Federico Beffa aad4a48ab4 gnu: scmutils: Generate 'scmutils-autoloads.el' file.
* gnu/packages/scheme.scm (scmutils): Do it.
2016-02-03 10:47:21 +01:00
Federico Beffa e037a09f1d gnu: Add emacs-scheme-complete.
* gnu/packages/emacs.scm (emacs-scheme-complete): New variable.
* gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add the new patch.
2016-02-03 10:47:21 +01:00
Mark H Weaver fd9a5b0fc3 gnu: qemu: Update to 2.5.0; add fixes for security flaws.
* gnu/packages/patches/qemu-CVE-2015-6855.patch: Delete file.
* gnu/packages/patches/qemu-virtio-9p-use-accessor-to-get-thread-pool.patch,
  gnu/packages/patches/qemu-CVE-2015-8558.patch,
  gnu/packages/patches/qemu-CVE-2015-8567.patch,
  gnu/packages/patches/qemu-CVE-2015-8613.patch,
  gnu/packages/patches/qemu-CVE-2015-8701.patch,
  gnu/packages/patches/qemu-CVE-2015-8743.patch,
  gnu/packages/patches/qemu-CVE-2016-1568.patch,
  gnu/packages/patches/qemu-CVE-2016-1922.patch: New files.
* gnu-system.am (dist_patch_DATA): Remove 'qemu-CVE-2015-6855.patch'; add the
  new patches.
* gnu/packages/qemu.scm (qemu): Update to 2.5.0.
  [source]: Remove old patches and add new ones.
  [arguments]: Add 'disable-test-qga' phase.
  (%glib-memory-vtable-patch, %glib-duplicate-test-patch): Remove variables.
2016-02-03 00:05:22 -05:00
Mark H Weaver 80cc3a0a4a gnu: openssl: When computing URI, use 'string-trim-right' not 'string-take'.
* gnu/packages/tls.scm (openssl)[source]: When computing URI, use
  'string-trim-right' instead of 'string-take'.
2016-02-02 21:16:44 -05:00
宋文武 4c28ca1df4 gnu: yelp: Update to 3.18.1.
* gnu/packages/gnome.scm (yelp): Update to 3.18.1.
2016-02-03 09:54:14 +08:00
宋文武 6a203844c5 gnu: webkitgtk: Update to 2.10.7.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.10.7.
2016-02-03 09:37:47 +08:00
Efraim Flashner e81e5fa507 gnu: openssl: Add alternate url.
* gnu/packages/tls.scm (openssl)[source]: Add alternate url.
2016-02-02 23:23:24 +02:00
Ludovic Courtès 400ed6acdd gnu: eudev: Add variant that depends on libblkid.
This fixes a bug whereby /dev/disk/by-{label,id} would be missing on
GuixSD (/dev/disk/by-id would still contain device-mapped partitions
though.)

Reported by Mark H Weaver <mhw@netris.org>.

* gnu/packages/linux.scm (eudev-with-blkid): New variable.
* gnu/services/base.scm (udev-service): #:udev defaults to
EUDEV-WITH-BLKID.
* gnu/system.scm (%base-packages): Replace EUDEV with EUDEV-WITH-BLKID.
2016-02-02 21:16:59 +01:00
Federico Beffa 81fc64da7e gnu: aspell: Wrap binary to find dictionaries.
* gnu/packages/aspell.scm (aspell): Add 'wrap-aspell' phase.
* gnu/system.scm (operating-system-etc-service): Remove 'ASPELL_CONF'
definition.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-02-02 21:16:59 +01:00
Leo Famulari 8c44dabc5a gnu: vdirsyncer: Update to 0.8.1.
* gnu/packages/dav.scm (vdirsyncer): Update to 0.8.1.
[native-inputs]: Add python-hypothesis, python-pytest-subtesthack.
2016-02-02 14:49:26 -05:00
Leo Famulari 7517e73c75 gnu: Add python-pytest-subtesthack.
* gnu/packages/python.scm (python-pytest-subtesthack,
python2-pytest-subtesthack): New variables.
2016-02-02 14:49:26 -05:00
Leo Famulari aaa49e8c21 licenses: Add the Unlicense.
* guix/licenses.scm (unlicense): New variable.
2016-02-02 14:49:26 -05:00
Leo Famulari 6a44697d01 gnu: Add python-hypothesis.
* gnu/packages/python.scm (python-hypothesis, python2-hypothesis): New
variables.
2016-02-02 14:49:26 -05:00
David Thompson f861b8b8e0 gnu: Add awscli.
* gnu/packages/python.scm (awscli): New variable.
2016-02-02 09:24:17 -05:00
David Thompson 935fcd5cf6 gnu: Add python-botocore.
* gnu/packages/python.scm (python-botocore): New variable.
2016-02-02 09:23:00 -05:00
David Thompson ba9da248a6 gnu: Add python-jmespath.
* gnu/packages/python.scm (python-jmespath): New variable.
2016-02-02 09:23:00 -05:00
David Thompson a4af21ca6d gnu: Add python-tox.
* gnu/packages/python.scm (python-tox): New variable.
2016-02-02 09:23:00 -05:00
David Thompson c0aacfa5b9 gnu: Add python-pluggy.
* gnu/packages/python.scm (python-pluggy): New variable.
2016-02-02 09:23:00 -05:00
David Thompson f5bcec6e7d gnu: Add python-rsa.
* gnu/packages/python.scm (python-rsa, python2-rsa): New variables.
2016-02-02 09:23:00 -05:00
David Thompson 2b2f2fc179 gnu: Add python-colorama.
* gnu/packages/python.scm (python-colorama, python2-colorama): New
  variables.
2016-02-02 09:23:00 -05:00
Ben J. Woodcroft ce294c0445 gnu: Update sortmerna to 2.1.
* gnu/packages/bioinformatics.scm (sortmerna): Update to 2.1.
2016-02-02 22:42:38 +10:00
Leo Famulari 0889321b5e gnu: ntp: Update to 4.2.8p6.
Fixes CVE-2015-{7973, 7974, 7975, 7976, 7977, 7978, 7979, 8138, 8158}.

* gnu/packages/ntp.scm (ntp): Update to 4.2.8p6.
2016-02-02 03:14:41 -05:00
Mark H Weaver adddd5ba3b gnu: Add linux-libre-4.1.
* gnu/packages/linux-libre-4.1-i686.conf,
  gnu/packages/linux-libre-4.1-x86_64.conf: New files.
* Makefile.am (KCONFIGS): Add them.
* gnu/packages/linux.scm (linux-libre-4.1): New variable.
2016-02-02 03:12:29 -05:00
Mark H Weaver 17db07061f gnu: linux-libre: Generalize 'kernel-config' to support variants.
* gnu/packages/linux.scm (kernel-config): Rewrite to support optional
  #:variant keyword argument.
2016-02-02 03:12:29 -05:00
Mark H Weaver 5e764e2b6f gnu: linux-libre: Update to 4.4.1.
* gnu/packages/patches/linux-libre-CVE-2016-0728.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/linux.scm (linux-libre): Update to 4.4.1.
  [source]: Remove patch.
2016-02-01 23:47:35 -05:00
Leo Famulari 4efc8eb275 gnu: Update socat to 1.7.3.1.
* gnu/packages/networking.scm (socat): Update to 1.7.3.1.
2016-02-01 19:00:39 -05:00
Leo Famulari 2c5e497672 gnu: keepassx: Update to 2.0.1.
* gnu/packages/password-utils.scm (keepassx): Update to 2.0.1.
2016-02-01 18:26:41 -05:00
Eric Bavier 6009df6391 gnu: ccache: Update to 3.2.4.
* gnu/packages/ccache.scm (ccache): Update to 3.2.4.
2016-02-01 15:01:20 -06:00
Alex Kost 70fd33ea75 emacs: command: Disambiguate "w" key in build options.
This is a followup to commit 47c0f92c37.

* emacs/guix-command.el (guix-command-improve-common-build-argument):
  Use "W" key for '--with-input' option (leave "w" for '--with-source').
2016-02-01 21:23:38 +03:00
Ludovic Courtès 47c0f92c37 guix build: Add '--with-input'.
* guix/scripts/build.scm (transform-package-inputs): New procedure.
(%transformations): Add it.
(%transformation-options, show-transformation-options-help): Add
--with-input.
* tests/scripts-build.scm ("options->transformation, with-input"):
("options->transformation, with-input, no matches"): New tests.
* tests/guix-build.sh: Add tests.
* doc/guix.texi (Package Transformation Options): Document it.
2016-02-01 08:59:13 +01:00
Ludovic Courtès f0907d97d4 build-system/python: Use 'ensure-keyword-arguments'.
* guix/build-system/python.scm (package-with-explicit-python): Use
'ensure-keyword-arguments'.
2016-02-01 08:59:13 +01:00
Ludovic Courtès a4db2dd99f build: Remove semicolons from Guile warnings.
* build-aux/compile-all.scm (compile-file*):
Clear *CURRENT-WARNING-PREFIX*.
2016-02-01 08:59:13 +01:00
Ludovic Courtès 689b658db8 build: Really enable Guile warnings.
* build-aux/compile-all.scm (compile-options): Rename to...
(warnings): ... this.  Add 'unsupported-warning'.
(compile-file*): Pass '(#:warnings ...) as #:opts.
2016-02-01 08:59:13 +01:00
Ludovic Courtès b8638f0347 guix package: Support package transformation options.
* guix/scripts/package.scm (show-help): Call
'show-transformation-options-help'.
(%options): Append %TRANSFORMATION-OPTIONS.
(process-actions)[transform, transform-entry]: New procedures.
* doc/guix.texi (Invoking guix package): Mention package
transformations.
(Package Transformation Options): Mention 'guix package'.
2016-02-01 08:59:13 +01:00
Ludovic Courtès 88ad6deda6 guix build: Separate transformation options.
* guix/scripts/build.scm (%transformation-options): New variable.
(show-transformation-options-help): New procedure.
(show-help): Remove '--with-source' documentation and add
'show-transformation-options-help' call.
(%options): Remove "with-source" and append %TRANSFORMATION-OPTIONS.
* doc/guix.texi (Package Transformation Options): New node.  Document
'--with-source', moved from...
(Additional Build Options): ... here.
2016-02-01 08:59:13 +01:00
Ludovic Courtès ccd7158d2a doc: Add subsections to 'Invoking guix build'.
* doc/guix.texi (Invoking guix build): Add example.  Shuffle options in
the new subsections below.
(Common Build Options, Additional Build Options): New nodes.
(Invoking guix archive): Refer to "Common Build Options".
(Invoking guix environment): Likewise.
(Invoking guix system): Likewise.

fixlet
2016-02-01 08:59:13 +01:00
Ludovic Courtès 629a064f32 guix build: Transformations operate on single objects.
* guix/scripts/build.scm (transform-package-source): Return a procedure
that expects a single object rather than a list of packages.
(options->transformation): Rewrite to precompute the list of applicable
transformations and to return a procedure that expects a single object
rather than a list of objects.
(options->derivations): Adjust accordingly.
* tests/scripts-build.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2016-02-01 08:59:13 +01:00
Ludovic Courtès efdcb6f29c install: Make it clear that we refer to the root by label.
* gnu/system/install.scm (installation-os): Use (title 'label) for the
root file system.
2016-02-01 08:59:13 +01:00
Ludovic Courtès ff853a2a06 build: Use the right section and source for man pages.
* doc.am (HELP2MANFLAGS): New variable.
(gen_man): Use it.
2016-02-01 08:59:13 +01:00
Eric Bavier e3f755f44c gnu: Add pinball.
* gnu/packages/games.scm (pinball): New variable.
* gnu/packages/patches/pinball-const-fix.patch,
  gnu/packages/patches/pinball-cstddef.patch,
  gnu/packages/patches/pinball-missing-separators.patch,
  gnu/packages/patches/pinball-src-deps.patch,
  gnu/packages/patches/pinball-system-ltdl.patch: New patches.
* gnu-system.am (dist_patch_DATA): Add them.
2016-01-31 23:46:30 -06:00
Efraim Flashner 917708c276 gnu: python-apsw: Update to 3.9.2-r1.
* gnu/packages/python.scm (python-apsw): Update to 3.9.2-r1.
[source]: Change to pypi uri syntax.
2016-02-01 06:18:58 +02:00
Efraim Flashner 55ba649dfb gnu: wayland: Build documentation.
* gnu/packages/freedesktop.scm (wayland)[native-inputs]: Add graphviz.
2016-02-01 06:18:58 +02:00
Efraim Flashner f1d9231d9a gnu: python-pillow: Update to 3.1.0.
* gnu/packages/python.scm (python-pillow): Update to 3.1.0.
[source]: Change to pypi uri syntax.
2016-02-01 06:18:58 +02:00
David Thompson 2a068aecbf gnu: Add aseprite.
* gnu/packages/game-development.scm (aseprite): New variable.
2016-01-31 15:44:20 -05:00
David Thompson 154f6156c0 gnu: Add allegro-4.
* gnu/packages/game-development.scm (allegro-4): New variable.
2016-01-31 15:44:19 -05:00
David Thompson 921d9dc7f4 license: Add giftware.
* guix/licenses.scm (giftware): New variable.
2016-01-31 15:34:58 -05:00
David Thompson d1a0bba029 gnu: obs: Update to 0.13.0.
* gnu/packages/video.scm (obs): Upgrade to 0.13.0.
2016-01-31 15:32:18 -05:00
Efraim Flashner e5a2edeba0 gnu: perl-tk: Update to 804.033.
* gnu/packages/tcl.scm (perl-tk): Update to 804.033.
[source]: Remove patch.
* gnu/packages/patches/perl-tk-x11-discover.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove patch.
2016-01-31 14:36:08 +02:00
宋文武 39eefcee97 gnu: weechat: Update to 1.4.
* gnu/packages/weechat.scm (weechat): Update to 1.4.
2016-01-31 17:12:46 +08:00
Efraim Flashner 692bb77da9 gnu: pumpa: Update to 0.9.2.
* gnu/packages/pumpio.scm (pumpa): Update to 0.9.2.
[source]: Add 'file-name' field.
2016-01-30 22:39:05 +02:00
Eric Bavier 3662909752 build: Generate man pages after compiling Guile objects.
This reduces compilation time since scripts are not compiled twice.
When building with 'make -j4' from a clean repository on an Intel
i5-2540M, compilation time gets from:

real	4m48.708s
user	17m29.892s
sys	0m9.596s

down to:

real	2m23.399s
user	6m48.604s
sys	0m6.420s

* doc.am (subcommand-manual-target): Delete function.
(SUBCOMMANDS): Delete variable.
(sub_command_mans, gen_man): New variables.
(dist_man1_MANS): Add $(sub_commands_mans).
(doc/guix-%.1): New target for sub-commands man pages.  It ensures that
man pages are built only after compiling Guile objects.
(doc/guix-daemon.1): Use $(gen_man).  Build only if BUILD_DAEMON.
(doc/guix.1): Use $(gen_man).  Add $(sub_command_mans) prerequisite.

Co-authored-by: Mathieu Lirzin <mthl@gnu.org>
2016-01-29 23:45:34 +01:00
Alex Kost 171a0a13a4 Rename 'dmd' to 'shepherd' in comments and strings.
* build-aux/hydra/demo-os.scm (operating-system)[issue]: Point to
  shepherd instead of dmd.
* ROADMAP: Likewise.
* gnu/build/install.scm (directives): Adjust comment.
2016-01-29 20:21:54 +03:00
Alex Kost 710fa231f0 guix system: Rename 'dmd-graph' to 'shepherd-graph'.
* doc/images/dmd-graph.dot: Rename to...
* doc/images/shepherd-graph.dot: ... this.
* doc.am (DOT_FILES): Adjust accordingly.
* guix/scripts/system.scm (dmd-service-node-label)
  (dmd-service-node-type, export-dmd-graph): Rename to...
  (shepherd-service-node-label, shepherd-service-node-type)
  (export-shepherd-graph): ... this.
  (show-help, process-action, process-command): Rename 'dmd-graph' to
  'shepherd-graph'.
* emacs/guix-command.el (guix-command-additional-execute-arguments)
  (guix-command-special-executors): Likewise.
* doc/guix.texi: Likewise.
* doc/emacs.texi (Emacs Popup Interface): Likewise.
2016-01-29 20:21:54 +03:00
Alex Kost d4053c710b services: Rename 'dmd' services to 'shepherd'.
* gnu/services/shepherd.scm (dmd-root-service-type, %dmd-root-service)
  (dmd-service-type, <dmd-service>, dmd-service, dmd-service?)
  (make-dmd-service, dmd-service-documentation, dmd-service-provision)
  (dmd-service-requirement, dmd-service-respawn, dmd-service-start)
  (dmd-service-stop, dmd-service-auto-start?, dmd-service-modules)
  (dmd-service-imported-modules, dmd-service-file-name, dmd-service-file)
  (dmd-service-back-edges): Rename to...
  (shepherd-root-service-type, %shepherd-root-service, shepherd-service-type)
  (<shepherd-service>, shepherd-service, shepherd-service?)
  (make-shepherd-service, shepherd-service-documentation)
  (shepherd-service-provision, shepherd-service-requirement)
  (shepherd-service-respawn, shepherd-service-start)
  (shepherd-service-stop, shepherd-service-auto-start?)
  (shepherd-service-modules, shepherd-service-imported-modules)
  (shepherd-service-file-name, shepherd-service-file)
  (shepherd-service-back-edges): ...this
* gnu/services.scm: Adjust comments.
* gnu/services/avahi.scm (avahi-dmd-service): Rename to...
  (avahi-shepherd-service): ... this.
* gnu/services/base.scm (%root-file-system-dmd-service)
  (file-system->dmd-service-name, mapped-device->dmd-service-name)
  (dependency->dmd-service-name, file-system-dmd-service)
  (mingetty-dmd-service, nscd-dmd-service, guix-dmd-service)
  (guix-publish-dmd-service, udev-dmd-service, gpm-dmd-service): Rename to...
  (%root-file-system-shepherd-service)
  (file-system->shepherd-service-name, mapped-device->shepherd-service-name)
  (dependency->shepherd-service-name, file-system-shepherd-service)
  (mingetty-shepherd-service, nscd-shepherd-service, guix-shepherd-service)
  (guix-publish-shepherd-service, udev-shepherd-service)
  (gpm-shepherd-service): ... this.
* gnu/services/databases.scm (postgresql-dmd-service): Rename to...
  (postgresql-shepherd-service): ... this.
* gnu/services/desktop.scm (upower-dmd-service, elogind-dmd-service):
  Rename to...
  (upower-shepherd-service, elogind-shepherd-service): ... this.
* gnu/services/dbus.scm (dbus-dmd-service): Rename to...
  (dbus-shepherd-service): ... this.
* gnu/services/lirc.scm (lirc-dmd-service): Rename to...
  (lirc-shepherd-service): ... this.
* gnu/services/mail.scm (dovecot-dmd-service): Rename to...
  (dovecot-shepherd-service): ... this.
* gnu/services/networking.scm (ntp-dmd-service, tor-dmd-service)
  (bitlbee-dmd-service, wicd-dmd-service, network-manager-dmd-service): Rename to...
  (dbus-shepherd-service): ... this.
* gnu/services/ssh.scm (lsh-dmd-service): Rename to...
  (lsh-shepherd-service): ... this.
* gnu/services/web.scm (nginx-dmd-service): Rename to...
  (nginx-shepherd-service): ... this.
* gnu/services/xorg.scm (slim-dmd-service): Rename to...
  (slim-shepherd-service): ... this.
* gnu/system.scm (essential-services): Use '%shepherd-root-service'.
* gnu/system/install.scm (cow-store-service-type): Adjust accordingly.
* guix/scripts/system.scm (dmd-service-node-label, dmd-service-node-type)
  (export-dmd-graph): Likewise.
* tests/guix-system.sh: Likewise.
* tests/services.scm ("dmd-service-back-edges"): Rename to...
  ("shepherd-service-back-edges"): Adjust accordingly.
* doc/guix.texi: Likewise.
* doc/images/service-graph.dot: Use 'shepherd' service name.
2016-01-29 20:21:53 +03:00
Alex Kost 26b94866ad services: xorg: Use 'shepherd' instead of 'dmd'.
* gnu/services/xorg.scm (slim-configuration-dmd): Rename to...
  (slim-configuration-shepherd): ... this.
  (slim-shepherd-service): Adjust accordingly.
  (slim-service): Take 'shepherd' keyword argument.
2016-01-29 20:21:53 +03:00
Alex Kost fe1ad5f5db services: shepherd: Rename shepherd configuration file.
* gnu/services/shepherd.scm (dmd-configuration-file): Rename to...
  (shepherd-configuration-file): ... this.  Use "shepherd.conf" name.
  (dmd-boot-gexp): Use it.
2016-01-29 20:21:53 +03:00
Alex Kost 0190c1c02f Rename (gnu services dmd) to (gnu services shepherd).
* gnu/services/dmd.scm: Rename to...
* gnu/services/shepherd.scm: ... this.
* gnu/system.scm: Use it.
* gnu/system/install.scm: Likewise.
* gnu/services/xorg.scm: Likewise.
* gnu/services/web.scm: Likewise.
* gnu/services/ssh.scm: Likewise.
* gnu/services/networking.scm: Likewise.
* gnu/services/mail.scm: Likewise.
* gnu/services/lirc.scm: Likewise.
* gnu/services/desktop.scm: Likewise.
* gnu/services/dbus.scm: Likewise.
* gnu/services/databases.scm: Likewise.
* gnu/services/base.scm: Likewise.
* gnu/services/avahi.scm: Likewise.
* guix/scripts/system.scm: Likewise.
* tests/services.scm: Likewise.
* tests/guix-system.sh: Likewise.
* doc/guix.texi (Shepherd Services): Adjust accordingly.
* gnu-system.am (GNU_SYSTEM_MODULES): Likewise.
* po/guix/POTFILES.in: Likewise.
2016-01-29 20:21:53 +03:00
Alex Kost dd17bc3821 doc: Replace references to 'dmd' with 'shepherd'.
* doc/guix.texi: Use 'shepherd'/'herd' instead of 'dmd'/'deco'.  Fix
  info references.
2016-01-29 20:21:53 +03:00
Alex Kost b8c02c18b4 Rename '/root/etc/dmd' directory and 'do-not-kill' file.
* gnu/services/base.scm (%do-not-kill-file): Rename to
  "/etc/shepherd/do-not-kill".
* gnu/build/linux-boot.scm (mount-root-file-system): Rename
  "/root/etc/dmd" to "/root/etc/shepherd".
2016-01-29 20:20:19 +03:00
Alex Kost 34044d551f Use 'shepherd' instead of 'dmd' as init system.
* gnu/services/dmd.scm (dmd-boot-gexp): Use binary from 'shepherd' package.
  (dmd-root-service-type): Use 'shepherd' package.
  (%default-modules): Use (shepherd service) module.
* gnu/services/base.scm (%root-file-system-dmd-service): Use
  'stop-logging' procedure to close shepherd log.
2016-01-29 12:07:32 +03:00
Alex Kost d312a8328d gnu: elogind: Use 'shepherd' input.
* gnu/packages/freedesktop.scm (elogind)[inputs]: Replace 'dmd' with
  'shepherd'.
2016-01-29 12:07:32 +03:00
Alex Kost 6d97319c53 doc: Describe how Emacs packages are found.
* doc/guix.texi (Application Setup)[Emacs Packages]: New subsection.
2016-01-29 11:13:15 +03:00
Federico Beffa 13fe4891fa gnu: emacs: Find packages in "~/.guix-profile".
* gnu/packages/emacs.scm (emacs)[inputs]: Add 'guix-src' input.
  [arguments]: Add 'install-site-start' phase.

Co-authored-by: Alex Kost <alezost@gmail.com>
2016-01-29 11:13:15 +03:00
Alex Kost 2c776157ad gnu: guix: Update development snapshot to c3f29bc.
* gnu/packages/package-management.scm (guix-devel): Update to c3f29bc.
2016-01-29 11:13:15 +03:00
Rene Saavedra c3f29bc928 gnu: Add gtk-vnc.
* gnu/packages/gnome.scm (gtk-vnc): New variable.

Co-authored-by: 宋文武 <iyzsong@gmail.com>
2016-01-29 08:36:07 +08:00
Efraim Flashner f88f0d20e4 gnu: ffmpeg: Add hardware acceleration, opengl support.
* gnu/packages/video.scm (ffmpeg)[inputs]: Add libvdpau, libx11, mesa.
[arguments]: Add configure-flags '--enable-opengl' '--enable-x11grab'.
2016-01-28 18:14:58 +02:00
Mathieu Lirzin 8a76e5fff2 Update .gitignore.
* .gitignore: Sort lines.  Use globbing for "*.{eps,pdf,png,tar.xz}"
files.
2016-01-28 16:31:38 +01:00
Mathieu Lirzin e71ad29ddb build: Use 'GEN' and 'at' silent rules.
* daemon.am (nix/libstore/schema.sql.hh, etc/guix-daemon.service)
(etc/guix-daemon.conf): Use $(AM_V_GEN).
* doc.am (doc/os-config-%.texi, .png.eps): Likewise.
* Makefile.am (guix-binary.%.tar.xz, gen-ChangeLog, gen-AUTHORS):
Likewise.
(assert-binaries-available, assert-final-inputs-self-contained)
(assert-no-store-file-names, sync-descriptions): Use $(AM_V_at).
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 5452374835 build: Remove guix-autoloads.el from the distribution.
* emacs.am [HAVE_EMACS] (dist_lisp_DATA): Move $(AUTOLOADS) to ...
[HAVE_EMACS] (nodist_lisp_DATA): ... here.
(CLEANFILES) [HAVE_EMACS]: Add $(AUTOLOADS).
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 8dddedf778 build: Add 'HELP2MAN' silent rule.
* Makefile.am (AM_V_HELP2MAN, AM_V_HELP2MAN_, AM_V_HELP2MAN_0): New
variables.
* doc.am (subcommand-manual-target, doc/guix.1, doc/guix-daemon.1): Use
$(AM_V_HELP2MAN).
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 71ed439b68 build: Add 'EMACS' silent rule.
* Makefile.am (AM_V_EMACS, AM_V_EMACS_, AM_V_EMACS_0): New variables.
* emacs.am [HAVE_EMACS] ($(AUTOLOADS)): Use $(AM_V_EMACS).
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 4c48878de8 build: Add 'DOT' silent rule.
* Makefile.am (AM_V_DOT, AM_V_DOT_, AM_V_DOT_0): New variables.
* doc.am (.dot.png, .dot.pdf, .dot.eps): Use $(AM_V_DOT).
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 8c3d889456 build: Add 'DL' silent rule.
* Makefile.am (AM_V_DL, AM_V_DL_, AM_V_DL_0): New variables.
* gnu-system.am (gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz)
(gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz)
(gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz)
(gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz): Use $(AM_V_DL).
* build-aux/download.scm: Print a line break between target and origin.
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 74e667d149 packages: Use '@' in package record printers.
* guix/packages.scm <package>: Use '@' in record printer.
* guix/import/cabal.scm <cabal-package>: Likewise
* guix/import/elpa.scm <elpa-package>: Likewise.
* tests/packages.scm: Adapt to it.
2016-01-28 16:31:38 +01:00
Mathieu Lirzin f3044a4b7b lint: Rewrite 'check-patch-file-names'.
* guix/scripts/lint.scm (check-patch-file-names): Improve clarity by
reversing the logic.
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 90ca918668 lint: Remove an unneeded clause in 'check-patch-file-names'.
* guix/scripts/lint.scm (check-patch-file-names): Don't check if patches
start with the package full name since matching the package name (which
is a prefix of the full name) is sufficient.
2016-01-28 16:31:38 +01:00
Mathieu Lirzin 052d53df1f tests: Use 'dummy-origin' for lint tests when possible.
* guix/tests/lint.scm ("patches: file names", "patches: not found"): Use
'dummy-origin'.  'sha256' field was wrongly set to a string instead of a
bytevector.
2016-01-28 16:31:38 +01:00
Leo Famulari 03675cad53 gnu: icedtea-7: Update to 2.6.4.
Fixes CVE-2015-{7575, 8126, 8472} and CVE-2016-{0402, 0448, 0466, 0483,
0494}.

* gnu/packages/java.scm (icedtea-7): Update to 2.6.4.
2016-01-28 08:48:35 -05:00
Leo Famulari 559239af7a gnu: icedtea-6: Update to 1.13.10.
Fixes CVE-2015-{8126, 8472} and CVE-2016-{0402, 0448, 0466, 0483, 0494}.

* gnu/packages/java.scm (icedtea-6): Update to 1.13.10.
2016-01-28 08:48:35 -05:00
Mark H Weaver 593c366bde Merge branch 'core-updates' 2016-01-28 07:29:13 -05:00
Ludovic Courtès 133056bd74 gnu: shepherd: Update to 0.3.
* gnu/packages/admin.scm (shepherd): Update to 0.3.
2016-01-28 11:45:03 +01:00
Mark H Weaver 29a780147d gnu: icecat: Add fixes for CVE-2016-{1930,1935} and other bugs.
* gnu/packages/patches/icecat-CVE-2016-1930-pt01.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt02.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt03.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt04.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt05.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt06.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt07.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt08.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt09.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt10.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt11.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt12.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt13.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt14.patch,
  gnu/packages/patches/icecat-CVE-2016-1930-pt15.patch,
  gnu/packages/patches/icecat-CVE-2016-1935.patch,
  gnu/packages/patches/icecat-bug-1146335-pt1.patch,
  gnu/packages/patches/icecat-bug-1146335-pt2.patch,
  gnu/packages/patches/icecat-limit-max-buffers-size-for-ANGLE.patch: New
  files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patches.
2016-01-28 00:34:20 -05:00
Ludovic Courtès 9a8b9eb8de services: guix: Provide Guix via 'profile-service-type'.
* gnu/services/base.scm (guix-service-type): Extend
PROFILE-SERVICE-TYPE.
* gnu/system.scm (%base-packages): Remove GUIX.
2016-01-27 15:48:35 +01:00
Ludovic Courtès c273d81bfa services: dmd: Provide dmd via 'profile-service-type'.
* gnu/services/dmd.scm (dmd-root-service-type): Extend
PROFILE-SERVICE-TYPE.
* gnu/system.scm (%base-packages): Remove dmd.
2016-01-27 15:48:35 +01:00
Ludovic Courtès e932d371e5 gnu: Add snapshot of the GNU Shepherd.
* gnu/packages/admin.scm (shepherd): New variable.
2016-01-27 15:48:35 +01:00
Ben Woodcroft d114ceebac gnu: Add ruby-http-cookie.
* gnu/packages/ruby.scm (ruby-http-cookie): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 5799aadde4 gnu: Add ruby-domain-name.
* gnu/packages/ruby.scm (ruby-domain-name): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 3b44bcdfcd gnu: Add ruby-unf.
* gnu/packages/ruby.scm (ruby-unf): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 6f390716b6 gnu: Add ruby-shoulda.
* gnu/packages/ruby.scm (ruby-shoulda): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 3885c58b25 gnu: Add ruby-shoulda-matchers-2.
* gnu/packages/ruby.scm (ruby-shoulda-matchers-2): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft e4fea00896 gnu: Add ruby-shoulda-matchers.
* gnu/packages/ruby.scm (ruby-shoulda-matchers): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 4dfa39cc67 gnu: Add ruby-shoulda-context.
* gnu/packages/ruby.scm (ruby-shoulda-context): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 4fea500bb1 gnu: Add ruby-sqlite3.
* gnu/packages/ruby.scm (ruby-sqlite3): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft d39b606c88 gnu: Add ruby-mime-types.
* gnu/packages/ruby.scm (ruby-mime-types): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft eb5e0bd96e gnu: Add ruby-fivemat.
* gnu/packages/ruby.scm (ruby-fivemat): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 32d1c06ffa gnu: Add ruby-mime-types-data.
* gnu/packages/ruby.scm (ruby-mime-types-data): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft e582fa93a8 gnu: Add ruby-minitest-rg.
* gnu/packages/ruby.scm (ruby-minitest-rg): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft e07ef1d625 gnu: Add ruby-minitest-bonus-assertions.
* gnu/packages/ruby.scm (ruby-minitest-bonus-assertions): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 685d0d2fbe gnu: Add ruby-minitest-moar.
* gnu/packages/ruby.scm (ruby-minitest-moar): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 99fc5cd577 gnu: Add ruby-minitest-pretty-diff.
* gnu/packages/ruby.scm (ruby-minitest-pretty-diff): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 39dc0eb502 gnu: Add ruby-minitest-focus.
* gnu/packages/ruby.scm (ruby-minitest-focus): New variable.
2016-01-28 00:08:32 +10:00
Ben Woodcroft 8092e33376 gnu: Add ruby-turn.
* gnu/packages/ruby.scm (ruby-turn): New variable.
2016-01-28 00:08:32 +10:00
Efraim Flashner f66842dccc gnu: Add aria2.
* gnu/packages/bittorrent.scm (aria2): New variable.
2016-01-27 14:39:31 +02:00
Efraim Flashner cd44f1c1b0 gnu: c-ares: Move to adns.scm.
* gnu/packages/aria2.scm (c-ares): Move to...
* gnu/packages/adns.scm (c-ares): ... here.
* gnu/packages/aria2.scm: Remove file.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove aria2.scm.
2016-01-27 14:13:45 +02:00
Andreas Enge bb2120cd1d gnu: libressl: Update to 2.2.5.
* gnu/packages/tls.scm (libressl): Update to 2.2.5.
2016-01-26 21:40:35 +01:00
Leo Famulari 7432386adb gnu: nginx: Update to 1.8.1 [fixes CVE-2016-{0742,0746,0747}].
* gnu/packages/web.scm (nginx): Update to 1.8.1.
2016-01-26 15:27:58 -05:00
Leo Famulari 97d76250e1 doc: Show how to boot result of 'vm-image'.
* doc/guix.texi (Running GuixSD in a VM): New node.
(Invoking guix system): Add reference to 'Running GuixSD in a VM'.
2016-01-26 14:23:39 -05:00
Ricardo Wurmus 61eecd71cc gnu: alsa-modular-synth: Update to 2.1.2.
* gnu/packages/audio.scm (alsa-modular-synth): Update to 2.1.2.
2016-01-26 18:46:54 +01:00
Andreas Enge a394c60aa3 gnu: hop: Add input avahi.
gnu/packages/scheme.scm (hop)[inputs]: Add avahi.
2016-01-26 15:10:23 +01:00
Ben Woodcroft edf8caae6d gnu: Add ruby-ttfunk.
* gnu/packages/ruby.scm (ruby-ttfunk): New variable.
2016-01-26 16:27:40 +10:00
Ben Woodcroft acb6be4298 gnu: Add ruby-ascii85.
* gnu/packages/ruby.scm (ruby-ascii85): New variable.
2016-01-26 16:25:11 +10:00
Ben Woodcroft f3e085a8d5 gnu: Add ruby-afm.
* gnu/packages/ruby.scm (ruby-afm): New variable.
2016-01-26 16:22:17 +10:00
Ben Woodcroft 1f1d71e09f gnu: Add ruby-rc4.
* gnu/packages/ruby.scm (ruby-rc4): New variable.
2016-01-26 16:21:05 +10:00
Ben Woodcroft 72ccbfe314 gnu: Add ruby-hashery.
* gnu/packages/ruby.scm (ruby-hashery): New variable.
2016-01-26 16:19:41 +10:00
Ben Woodcroft 0832804ed5 gnu: Add ruby-rubytest-cli.
* gnu/packages/ruby.scm (ruby-rubytest-cli): New variable.
2016-01-26 16:17:01 +10:00
Ben Woodcroft 78bb471f37 gnu: Add ruby-lemon.
* gnu/packages/ruby.scm (ruby-lemon): New variable.
2016-01-26 16:15:24 +10:00
Ben Woodcroft 9273ee8f44 gnu: Add ruby-ae.
* gnu/packages/ruby.scm (ruby-ae): New variable.
2016-01-26 16:11:49 +10:00
Ben Woodcroft 120fc74b21 gnu: Add ruby-qed.
* gnu/packages/ruby.scm (ruby-qed): New variable.
2016-01-26 16:06:10 +10:00
Ben Woodcroft 90fcedf220 gnu: Add ruby-brass.
* gnu/packages/ruby.scm (ruby-brass): New variable.
2016-01-26 16:02:15 +10:00
Ben Woodcroft 7c8131c76b gnu: Add ruby-rubytest.
* gnu/packages/ruby.scm (ruby-rubytest): New variable.
2016-01-26 15:59:39 +10:00
Ben Woodcroft a78d62f432 gnu: sra-tools: Update to 2.5.7.
* gnu/packages/bioinformatics.scm (sra-tools): Update to 2.5.7.
2016-01-26 10:59:13 +10:00
Ben Woodcroft fe91666b79 gnu: ncbi-vdb: Update to 2.5.7.
gnu/packages/bioinformatics.scm (ncbi-vdb): Update to 2.5.7.
2016-01-26 10:59:13 +10:00
Ben Woodcroft d3b39bc231 gnu: ngs-sdk: Update to 1.2.3.
gnu/packages/bioinformatics.scm (ngs-sdk): Update to 1.2.3.
2016-01-26 10:59:13 +10:00
Andreas Enge 46854e99ca gnu: webkitgtk-2.4, webkitgtk/gtk+-2, qt: Disable parallel builds.
* gnu/packages/webkit.scm (webkitgtk-2.4, webkitgtk/gtk+-2):
  Disable parallel builds as suggested in
  https://lists.gnu.org/archive/html/guix-devel/2016-01/msg00837.html .
* gnu/packages/qt.scm (qt): Likewise.
2016-01-25 23:33:54 +01:00
Alex Kost 0833d0c025 gnu: aspell-dict-en: Update to 2016.01.19-0.
* gnu/packages/aspell.scm (aspell-dict-en): Update to 2016.01.19-0.
2016-01-25 22:11:47 +03:00
Alex Kost 687c9bc023 emacs: Add interface for licenses.
* emacs/guix-main.scm (%license-param-alist): New variable.
  (license->sexp, find-licenses, license-entries): New procedures.
* emacs/guix-license.el (guix-license-get-entries)
  (guix-license-get-display, guix-license-insert-packages-button)
  (guix-license-insert-comment, guix-license-list-describe)
  (guix-license-list-show-packages): New procedures.
  (guix-licenses): New command.
* doc/emacs.texi (Emacs Licenses): New node.
  (Emacs Interface): Add it.
* doc/guix.texi (Top): Add it.
* NEWS: Mention new interface.
2016-01-25 22:11:47 +03:00
Alex Kost 6dd460c856 emacs: list: Support displaying URL links.
* emacs/guix-list.el (guix-list-url): New face.
  (guix-list-get-url): New procedure.
2016-01-25 22:11:47 +03:00
Alex Kost 83aab70b2d emacs: Add 'guix-packages-by-license' command.
* emacs/guix-main.scm (packages-by-license): New procedure.
(%patterns-makers): Add 'license' search type.
* emacs/guix-messages.el (guix-message-packages-by-license): New procedure.
(guix-messages): Use it.
* emacs/guix-ui-package.el (guix-packages-by-license): New command.
* doc/emacs.texi (Emacs Commands): Document it.
2016-01-25 22:11:47 +03:00
Alex Kost cefb7aea9d emacs: Buttonize licenses in "Package Info".
* emacs/guix-ui-package.el (guix-package-license): New button type.
  (guix-package-info-format, guix-output-info-format): Use it.
* doc/emacs.texi (Emacs Info buffer): Mention it.
2016-01-25 22:11:47 +03:00
Alex Kost 71310ccc56 emacs: Add 'guix-browse-license-url' command.
* emacs/guix-main.scm (%licenses): New variable.
(licenses, license-names, lookup-license, lookup-license-uri): New
procedures.
* emacs/guix-read.el (guix-license-names, guix-read-license-name): New
procedures.
* emacs/guix-license.el: New file.
(guix-lookup-license-url): New procedure.
(guix-browse-license-url): New command.
* emacs.am (ELFILES): Add new file.
2016-01-25 22:11:47 +03:00
Alex Kost 0a2a2b3387 emacs: Rename 'file-path' to 'file-name'.
* emacs/guix-info.el (guix-info-file-path): Rename to...
  (guix-info-file-name): ... this.
* emacs/guix-list.el (guix-list-file-path): Rename to...
  (guix-list-file-name): ... this.
  (guix-list-get-file-path): Rename to...
  (guix-list-get-file-name): ... this.
* emacs/guix-ui-generation.el (guix-generation-list-format): Adjust
  accordingly.
* emacs/guix-ui-system-generation.el (guix-system-generation-list-format):
  Likewise.
* NEWS: Mention faces renaming.
2016-01-25 22:11:47 +03:00
Efraim Flashner 8581f4c195 gnu: Add python-efl.
* gnu/packages/enlightenment.scm (python-efl, python2-efl): New variables.
2016-01-25 11:41:23 +02:00
Efraim Flashner 2259442b15 gnu: cmocka: New variable.
* gnu/packages/check.scm (cmocka): New variable.
2016-01-25 11:39:42 +02:00
Ben Woodcroft 23f3cbb8de gnu: Add pixz.
* gnu/packages/compression.scm (pixz): New variable.
2016-01-25 18:45:33 +10:00
Mark H Weaver 412bee5e29 Merge branch 'master' into core-updates 2016-01-24 21:04:54 -05:00
Ludovic Courtès 880d647d0f doc: Add policy about version numbers for VCS snapshots.
* doc/guix.texi (Version Numbers): Add paragraphs about VCS snapshot
version numbers.
2016-01-25 00:11:22 +01:00
Ludovic Courtès 24a8ef3ba1 doc: Remove unneeded backslashes.
* doc/guix.texi (Networking Services): Remove unneeded backslashes.
2016-01-25 00:11:22 +01:00
Ludovic Courtès f6afc48008 gnu: grue-hunter: Use 'https' URL.
* gnu/packages/grue-hunter.scm (grue-hunter): Use 'https' URL.
2016-01-25 00:11:22 +01:00
Ludovic Courtès 9059b97dc3 doc: 'base-initrd' has #:virtio? default to #t.
This is a followup to e26d507.

* doc/guix.texi (Initial RAM Disk): #:virtio? defaults to #t.
2016-01-25 00:11:22 +01:00
Ben Woodcroft bcadaf0050 gnu: Add sortmerna.
* gnu/packages/bioinformatics.scm (sortmerna): New variable.
2016-01-25 08:35:11 +10:00
Andreas Enge 74273b6f2d doc: Fix typo in section on offloading.
* doc/guix.texi (Daemon Offload Setup): Fix quoting typo in command.
2016-01-24 23:25:38 +01:00
Andreas Enge 447f3ae7c1 gnu: calibre: Update to 2.49.0.
* gnu/packages/ebook.scm (calibre): Update to 2.49.0.
2016-01-24 20:12:05 +01:00
Ricardo Wurmus 541ed7b030 gnu: cross-gcc-arguments: Enable C++, disable building of libstdc++-v3.
* gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Disable
  building libstdc++-v3 and enable building C++ compiler.
2016-01-24 14:25:20 +01:00
Ricardo Wurmus a763ce7da9 gnu: Add Qtractor.
* gnu/packages/music.scm (qtractor): New variable.
2016-01-24 14:20:52 +01:00
Ricardo Wurmus 8ddc5d5723 gnu: yoshimi: Update to 1.3.8.2.
* gnu/packages/music.scm (yoshimi): Update to 1.3.8.2.
2016-01-24 14:19:29 +01:00
Efraim Flashner 6b6a62dd05 gnu: privoxy: Update to 3.0.24.
* gnu/packages/tor.scm (privoxy): Update to 3.0.24.
2016-01-24 09:20:55 +02:00
Efraim Flashner be866fb13e gnu: tor: Update to 0.2.7.6.
* gnu/packages/tor.scm (tor): Update to 0.2.7.6.
2016-01-24 07:21:33 +02:00
Efraim Flashner 17206f72ed gnu: myrepos: Update to 1.20160123.
* gnu/packages/version-control.scm (myrepos): Update to 1.20160123.
2016-01-24 07:04:05 +02:00
Efraim Flashner 4c73302739 gnu: nano: Update to 2.5.1.
* gnu/packages/nano.scm (nano): Update to 2.5.1.
2016-01-24 06:46:01 +02:00
Mark H Weaver c5184468f5 build: container: Make 'unprivileged-user-namespace-supported?' more robust.
* gnu/build/linux-container.scm (unprivileged-user-namespace-supported?): Only
  read and check the first character, to cope with a possible newline in the
  (pseudo-)file.
2016-01-23 18:44:03 -05:00
Leo Famulari fe17fb4a2c gnu: letsencrypt and acme: Update to 0.2.0.
These packages should be updated together.

* gnu/packages/tls.scm (letsencrypt): Update to 0.2.0.
(acme): Update to 0.2.0.
2016-01-23 17:39:08 -05:00
Efraim Flashner 21565719e5 gnu: claws-mail: Update to 3.13.2.
* gnu/packages/mail.scm (claws-mail): Update to 3.13.2.
2016-01-23 20:13:31 +02:00
Ricardo Wurmus 3a40a92c73 gnu: Add cufflinks.
* gnu/packages/bioinformatics.scm (cufflinks): New variable.
2016-01-23 09:15:11 +01:00
Ricardo Wurmus 94ce537eac gnu: Add TopHat.
* gnu/packages/bioinformatics.scm (tophat): New variable.
* gnu/packages/patches/tophat-build-with-later-seqan.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2016-01-23 08:53:10 +01:00
Ricardo Wurmus 3062d750b4 gnu: star: Update to 2.5.1b.
* gnu/packages/bioinformatics.scm (star): Update to 2.5.1b.
[source]: Remove bundled htslib sources and pre-built binaries.
[arguments]: Add phase "do-not-use-bundled-htslib".
[inputs]: Add "htslib".
2016-01-23 08:40:14 +01:00
Ricardo Wurmus c0266e8d03 gnu: star: Use "modify-phases" syntax.
* gnu/packages/bioinformatics.scm (star)[arguments]: Use "modify-phases"
  syntax.
2016-01-23 08:40:14 +01:00
Efraim Flashner ebf89f134c gnu: fuse: Update to 2.9.5 [fixes CVE-2016-1233].
* gnu/packages/linux.scm (fuse): Update to 2.9.5.
2016-01-22 09:00:34 +02:00
宋文武 6871628999 gnu: mozjs: Make milestone.pl compatible with Perl 5.22+.
* gnu/packages/gnuzilla.scm (mozjs, mozjs-24)[source]: Add snippet.
2016-01-22 14:42:10 +08:00
Eric Bavier b6d937d99e gnu: american-fuzzy-lop: Update to 1.96b.
* gnu/packages/debug.scm (american-fuzzy-lop): Update to 1.96b.
  [arguments]: Create symbolic link to custom qemu, rather than copying.
2016-01-21 23:54:48 -06:00
Eric Bavier 2d8211ab30 gnu: american-fuzzy-lop: Fix qemu configure flags.
Fixes regression introduced in 06da1a6.

* gnu/packages/debug.scm (american-fuzzy-lop)[qemu]: Override inherited
  #:configure-flags.
2016-01-21 23:54:48 -06:00
Eric Bavier 1022da10e1 gnu: texi2html: Disable tests.
* gnu/packages/texinfo.scm (texi2html): New 'arguments' field.
2016-01-21 22:09:42 -06:00
Leo Famulari 765973cd65 gnu: Add iftop.
* gnu/packages/admin.scm (iftop): New variable.
2016-01-21 20:21:19 -05:00
Leo Famulari c2af02602a Revert "gnu: Add iftop."
This reverts commit 45da8c6dd1.
2016-01-21 20:11:21 -05:00
Leo Famulari 45da8c6dd1 gnu: Add iftop.
* gnu/packages/admin.scm (iftop): New variable.
2016-01-21 18:11:12 -05:00
Ludovic Courtès c74f0cb2b8 tests: Prevent 'http_proxy' from breaking Web server tests.
* tests/lint.scm: Add call to 'unsetenv' to remove 'http_proxy'.
* tests/publish.scm: Likewise.
2016-01-22 00:02:52 +01:00
Ludovic Courtès c4847f49b3 doc: Fix typo in "Locales".
* doc/guix.texi (Locales): Add missing 's'.
2016-01-22 00:02:52 +01:00
Ludovic Courtès 6b779207ee system: grub: Search root device by label or UUID if possible.
Fixes <http://bugs.gnu.org/22281>.
Reported by Christopher Allan Webber <cwebber@dustycloud.org>.

* gnu/system/grub.scm (eye-candy): Add 'root-fs' parameter.  Replace
'search --file' command in the output with whatever 'grub-root-search'
returns.
(grub-root-search): New procedure.
(grub-configuration-file): Add 'store-fs' parameter.  Use
'grub-root-search' instead of hard-coded 'search --file' commands.
* gnu/system.scm (store-file-system,
operating-system-store-file-system): New procedures.
(operating-system-grub.cfg): Use it, and adjust call to
'grub-configuration-file'.
* tests/system.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2016-01-22 00:02:52 +01:00
Mark H Weaver 3738d8700f gnu: ffmpeg: Update to 2.8.5.
* gnu/packages/video.scm (ffmpeg): Update to 2.8.5.
2016-01-21 10:30:21 -05:00
Mark H Weaver 0c0207a93b gnu: gajim: Update to 0.16.5 [fixes CVE-2015-8688].
* gnu/packages/messaging.scm (gajim): Update to 0.16.5.
  [arguments]: Disable tests.
2016-01-21 10:24:44 -05:00
Ricardo Wurmus 6c92d8dd35 gnu: bind-utils: Build and install "nsupdate".
* gnu/packages/dns.scm (bind-utils)[arguments]: Build and install
  "nsupdate" executable.
2016-01-21 15:53:35 +01:00
Ricardo Wurmus bd0eb6672b gnu: bind-utils: Generalize "build" and "install" phases.
* gnu/packages/dns.scm (bind-utils)[arguments]: Generalize "build" and
  "install" phases.
2016-01-21 15:53:35 +01:00
Ricardo Wurmus b2844d8f14 gnu: bind-utils: Use "modify-phases" syntax.
* gnu/packages/dns.scm (bind-utils): Use "modify-phases" syntax.
2016-01-21 15:53:35 +01:00
Pjotr Prins 897092875e gnu: r-qtl: Update to 1.38-4.
* gnu/packages/bioinformatics.scm (r-qtl): Update to 1.38-4.
2016-01-21 11:16:12 +01:00
Mark H Weaver 1207a0c33e gnu: libxmp: Update to 4.3.10.
* gnu/packages/audio.scm (libxmp): Update to 4.3.10.
2016-01-21 00:44:46 -05:00
Mark H Weaver 86fa2ea92f gnu: libtiff: Update to 4.0.6. Add fixes for CVE-2015-{8665,8683}.
* gnu/packages/patches/libtiff-CVE-2015-8665+CVE-2015-8683.patch,
  gnu/packages/patches/libtiff-oob-accesses-in-decode.patch,
  gnu/packages/patches/libtiff-oob-write-in-nextdecode.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/image.scm (libtiff): Update to 4.0.6.
  [source]: Add patches.
2016-01-21 00:30:15 -05:00
Eric Bavier 7ed0145712 gnu: Add NQC.
* gnu/packages/lego.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2016-01-20 22:06:27 -06:00
Eric Bavier ea4a0e81cb gnu: licenses: Add Mozilla Public License 1.0.
* guix/licenses.scm (mpl1.0): New variable.
2016-01-20 22:06:27 -06:00
Leo Famulari feb767b23c gnu: Add transmission-remote-cli.
* gnu/packages/bittorrent.scm (transmission-remote-cli): New variable.
2016-01-20 20:19:46 -05:00
Eric Bavier a2190cccc2 gnu: Add dependencies on Perl modules as needed.
This is a follow-on to bb8afbf5.

* gnu/packages/language.scm (perl-lingua-en-inflect, perl-lingua-stem)
  (perl-snowball-norwegian, perl-snowball-swedish): Add 'native-inputs'
  field.
* gnu/packages/perl.scm (perl-aliased, perl-class-accessor-chained)
  (perl-datetime-set, perl-datetime-format-ical, perl-datetime-locale)
  (perl-error, perl-module-runtime, perl-module-runtime-conflicts)
  (perl-path-class, perl-posix-strftime-compiler, perl-readonly)
  (perl-test-differences, perl-test-pod, perl-test-trap)
  (perl-text-aligner, perl-text-glob, perl-text-table, perl-tie-ixhash)
  (perl-time-mock): Ditto.
  (perl-config-any): Add 'propagated-inputs' field.
  (perl-data-page, perl-datetime, perl-datetime-format-natural)
  (perl-moosex-getopt, perl-moosex-role-parameterized)
  (perl-moosex-types, perl-namespace-autoclean, perl-params-validate)
  (perl-tree-simple-visitorfactory)[native-inputs]: Add PERL-MODULE-BUILD.
  (perl-file-changenotify)[native-inputs]: Ditto.
  [propagated-inputs]: Add PERL-MODULE-PLUGGABLE.
  (perl-datetime-format-flexible, perl-test-writevariants)
  [propagated-inputs]: Ditto.
  (perl-test-mockobject): Add 'arguments' field.
* gnu/packages/mail.scm (perl-email-abstract)[propagated-inputs]: Ditto.
* gnu/packages/web.scm (perl-datetime-format-http, perl-io-socket-ip)
  (perl-plack-middleware-methodoverride, perl-uri-find)
  (perl-www-mechanize): Add 'native-inputs' field.
  (perl-html-template, perl-http-server-simple): Add 'propagated-inputs'
  field.
  (perl-apache-logformat-compiler, perl-html-tree)[native-inputs]:
  Add PERL-MODULE-BUILD.
  (perl-catalyst-runtime)[propagated-inputs]: Add PERL-MODULE-PLUGGABLE.
  (perl-finance-quote)[propagated-inputs]: Add PERL-CGI.
2016-01-20 17:45:31 -06:00
Eric Bavier 97b07aaa41 gnu: Add perl-module-pluggable.
This Perl module was moved out of Perl core in v5.19.0.

* gnu/packages/perl.scm (perl-module-pluggable): New variable.
* gnu/packages/patches/perl-module-pluggable-search.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
2016-01-20 17:45:31 -06:00
Eric Bavier 7b158c4ee2 gnu: Add perl-cgi.
The CGI module was removed from Perl core in v5.21.0.

* gnu/packages/web.scm (perl-cgi): New variable.
2016-01-20 17:45:31 -06:00
Ludovic Courtès aca738f3c6 doc: Explain how to make the Info manual visible.
Suggested by David Thompson <dthompson2@worcester.edu>
at <http://bugs.gnu.org/22402>.

* doc/guix.texi (Binary Installation): Explain how to make the Info
manual visible.
2016-01-21 00:22:34 +01:00
Ludovic Courtès 5d94ac5192 doc: Explain how to remove services from a list.
Suggested by <swedebugia@riseup.net>.

* doc/guix.texi (Using the Configuration System): Add
@unnumberedsubsubsec.  Explain how to remove services from a list.
Mention (gnu system).
2016-01-21 00:22:34 +01:00
Ludovic Courtès 893106cbbf services: avahi: Export service type.
* gnu/services/avahi.scm: Export 'avahi-service-type'.
2016-01-21 00:22:34 +01:00
Mark H Weaver 80b64ee2d8 gnu: isc-dhcp: Update bundled bind to 9.9.8-P3 [fixes CVE-2015-8704].
* gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.8-P3.
2016-01-20 14:58:40 -05:00
Mark H Weaver d912db5bc0 gnu: bind-utils: Update to 9.10.3-P3 [fixes CVE-2015-8704].
* gnu/packages/dns.scm (bind-utils): Update to 9.10.3-P3.
2016-01-20 14:57:06 -05:00
Mark H Weaver beed3af565 gnu: linux-libre: Add fix for CVE-2016-0728.
* gnu/packages/patches/linux-libre-CVE-2016-0728.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/linux.scm (linux-libre)[source]: Add patch.
2016-01-20 13:23:42 -05:00
David Thompson d4df203292 gnu: obs: Add support for webcams.
* gnu/packages/video.scm (obs)[inputs]: Add v4l-utils.
2016-01-20 11:46:45 -05:00
David Thompson 945d985aab gnu: Add v4l-utils.
* gnu/packages/video.scm (v4l-utils): New variable.
2016-01-20 11:46:45 -05:00
Andreas Enge f32ee38fcd gnu: arb: Correct patch.
* gnu/packages/patches/arb-ldconfig.patch: Correct erroneously committed file.

This is a follow-up to commit ffc8f34511.
2016-01-20 16:57:17 +01:00
Andreas Enge ffc8f34511 gnu: arb: Update to 2.8.1.
* gnu/packages/algebra.scm (arb)[source]: Update to 2.8.1. Add patch.
* gnu/packages/patches/arb-ldconfig.patch: New file.
* gnu-system.am (dist_patch_DATA): Register patch.
2016-01-20 16:33:34 +01:00
Andreas Enge 05944b3aa6 gnu: doxygen: Drop propagated input graphviz.
* gnu/packages/doxygen.scm (doxygen)[propagated-inputs]: Drop graphviz.
2016-01-20 13:23:25 +01:00
Andreas Enge 7c853c02b8 gnu: doxygen: Update to 1.8.11.
* gnu/packages/doxygen.scm (doxygen)[source]: Update to 1.8.11.
  Drop one patch.
  [build-system]: Switch to cmake-build-system, since gnu-build-system
  is not supported any more.
  [arguments]: Adapt.
  [native-inputs]: Drop unused perl.
* gnu/packages/patches/doxygen-tmake.patch: Remove file.
* gnu/packages/patches/doxygen-test.patch: Adapt.
* gnu-system.am (dist_patch_DATA): Unregister patch.
2016-01-20 13:19:48 +01:00
Ben Woodcroft a132f7d68f tests: Move beatify-description tests to import-tests.
Fixes <http://bugs.gnu.org/22391>.

* tests/cran.scm (beautify-description: use double spacing,
beautify-description: transform fragment into sentence). Move
from here ...
* tests/import-utils.scm: ... to here. New file.
* Makefile.am (SCM_TESTS): Add import-utils.
2016-01-20 22:06:25 +10:00
Ben Woodcroft e88d5fa9eb import: gem: Beautify only the description, not the synopsis.
* guix/import/gem.scm (make-gem-sexp): Add synopsis argument.
(gem->guix-package): Pass unbeautified synopsis to make-gem-sexp.
* tests/gem.scm: Adapt it.
2016-01-20 21:52:52 +10:00
Ricardo Wurmus d0bd632f89 import: Add Bioconductor importer and updater.
* guix/import/cran.scm (%bioconductor-updater,
latest-bioconductor-release, bioconductor-package?): New procedures.
(cran->guix-package): Support repositories other than CRAN.
(%bioconductor-url, %bioconductor-svn-url): New variables.
(description->package): Update signature to distinguish between packages
from different repositories.
(latest-release): Rename procedure ...
(latest-cran-release): ... to this.
(cran-package?): Do not assume all R packages are available on CRAN.
* tests/cran.scm: Update tests.
* guix/scripts/import/cran.scm: Add "--archive" option and default to
CRAN.
* guix/scripts/refresh.scm (%updaters): Add "%bioconductor-updater".
* doc/guix.texi: Document Bioconductor importer and updater.
2016-01-20 12:41:28 +01:00
Efraim Flashner 4c3d2b2a8f gnu: enlightenment: Update to 0.20.3.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.3.
2016-01-20 12:37:21 +02:00
Efraim Flashner 0568dbabe0 gnu: libshout: Update to 2.4.1.
* gnu/packages/xiph.scm (libshout): Update to 2.4.1.
2016-01-20 02:12:23 +02:00
Efraim Flashner 1c3d37e648 gnu: opusfile: Update to 0.7.
* gnu/packages/xiph.scm (opusfile): Update to 0.7.
2016-01-20 02:12:23 +02:00
Efraim Flashner 275cc09280 gnu: opus: Update to 1.1.2.
* gnu/packages/xiph.scm (opus): Update to 1.1.2.
2016-01-20 02:12:23 +02:00
Eric Bavier 252ddedd4b build-system/haskell: Fix package.conf parsing.
* guix/build/haskell-build-system.scm (register)[conf-depends]: Properly
  react to EOF while reading GHC package conf files.
2016-01-19 18:01:07 -06:00
Ludovic Courtès 55ca5e8095 gnu: lilypond: Double 'max-silent-time'.
Suggested by Mark H Weaver <mhw@netris.org>.

* gnu/packages/music.scm (lilypond)[properties]: New field.
2016-01-19 22:14:15 +01:00
Ludovic Courtès af46761302 hydra: Honor the 'max-silent-time' package property.
Suggested by Mark H Weaver <mhw@netris.org>.

* build-aux/hydra/gnu-system.scm (package->alist): Add
'max-silent-time' pair.
2016-01-19 22:12:11 +01:00
Ludovic Courtès f495301902 guix build: Add '--keep-going'.
* guix/scripts/build.scm (show-build-options-help)
(%standard-build-options): Add --keep-going.
* guix/scripts/build.scm (set-build-options-from-command-line): Honor
it.
* doc/guix.texi (Invoking guix build): Document it.
2016-01-19 21:59:58 +01:00
Ludovic Courtès 0e510971c3 derivations: Add test in keep-going mode.
* tests/derivations.scm ("derivation fails but keep going"): New test.
2016-01-19 21:59:58 +01:00
Christopher Allan Webber 16966d5b4d gnu: fdm: Adjust license link to point to web-accessible copy of command.c
* gnu/packages/mail.scm (fdm): Adjusted license field
2016-01-19 07:54:18 -08:00
Christopher Allan Webber 34dd26af49 gnu: Add fdm.
* gnu/packages/mail.scm (fdm): New variable.
2016-01-18 21:51:45 -08:00
Mark H Weaver afe9f40949 Merge branch 'master' into core-updates 2016-01-19 00:18:37 -05:00
Christopher Allan Webber 1348185ac2 gnu: Add linux-libre-4.2.5
* gnu/packages/linux.scm (linux-libre-4.2.5): New variable.
2016-01-18 15:10:38 -08:00
Ludovic Courtès aac783cac5 build: Remove traces of 'NIX_SETUID_HELPER'.
This is a followup to 0919f5f4.

* test-env.in: Remove occurrences of 'NIX_SETUID_HELPER'.
2016-01-18 23:52:13 +01:00
Efraim Flashner 26da7c2606 gnu: mpv: Update to 0.15.0.
* gnu/packages/video.scm (mpv): Update to 0.15.0.
2016-01-18 22:26:56 +02:00
Alex Kost 60edbe2297 gnu: magit: Update to 2.4.0.
* gnu/packages/emacs.scm (magit): Update to 2.4.0.
2016-01-18 22:40:33 +03:00
Alex Kost d44d60d211 gnu: sxiv: Update to 1.3.2.
* gnu/packages/sxiv.scm (sxiv): Update to 1.3.2.
2016-01-18 22:40:33 +03:00
Alex Kost 4c896c9195 gnu: manaplus: Update to 1.6.1.16.
* gnu/packages/games.scm (manaplus): Update to 1.6.1.16.
2016-01-18 22:40:33 +03:00
Ludovic Courtès e0c941fefa doc: Document 'http_proxy'.
* doc/guix.texi (Build Environment Setup, Substitutes): Document
'http_proxy'.
2016-01-18 17:41:16 +01:00
Ludovic Courtès 44ad33843a derivations: Add test for #:leaked-env-vars.
* tests/derivations.scm ("derivation #:leaked-env-vars"): New test.
2016-01-18 17:41:16 +01:00
Ludovic Courtès a887fd8d48 doc: Explain how to run a subset of the tests.
* doc/guix.texi (Running the Test Suite): Explain 'TESTS'.
2016-01-18 17:41:16 +01:00
Alex Kost 27a2e48337 emacs: Add 'guix-search-by-name'.
* emacs/guix-ui-package.el (guix-search-by-name): New command.
* doc/emacs.texi (Emacs Commands): Document it.
2016-01-18 19:11:46 +03:00
Alex Kost e119ba9008 emacs: Rename 'guix-search-by-name' to 'guix-packages-by-name'.
* emacs/guix-ui-package.el (guix-search-by-name): Rename to...
  (guix-packages-by-name): ... this.  Complete package name.
* doc/emacs.texi (Emacs Commands): Likewise.
2016-01-18 19:11:46 +03:00
Efraim Flashner 264ae686fa python2-jsonschema: Add python2-functools32 to inputs.
* gnu/packages/python.scm (python2-jsonschema)[inputs]: Add
python2-functools32.
(python2-wheel)[native-inputs]: Specify python2-jsonschema. Add
python2-functools32.
(python2-requests)[propagated-inputs]: Specify python2-wheel.
(python2-ipython)[inputs]: Specify python2-jsonschema, python2-requests.
(python2-rauth)[propagated-inputs]: Specify python2-requests.
* gnu/packages/openstack.scm (python2-requests-mock)[propagated-inputs]:
Specify python2-requests.
(python2-tempest-lib)[propagated-inputs]: Specify python2-jsonschema.
(python2-oslosphinx)[propagated-inputs]: Specify python2-requests.
(python2-keystoneclient)[porpagated-inputs]: Specify python2-requests.
[native-inputs]: Specify python2-oslosphinx, python2-requests-mock,
python2-tempest-lib.
(python2-swiftclient)[propagated-inputs]: Specify python2-requests,
python2-oslosphinx.
2016-01-18 17:23:37 +02:00
Efraim Flashner 058247efff gnu: datamash: Update to 1.1.0.
* gnu/packages/datamash.scm (datamash): Update to 1.1.0.
2016-01-18 12:14:20 +02:00
Taylan Ulrich Bayırlı/Kammer de6af32783 build: Speed up .go compilation.
* build-aux/compile-all.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(%.go, make-go): New rules.
2016-01-18 08:57:55 +01:00
Mark H Weaver 8047d13dcf gnu: mariadb: Update to 10.0.23.
* gnu/packages/databases.scm (mariadb): Update to 10.0.23.
2016-01-18 01:43:07 -05:00
Mark H Weaver 51a277d8e8 gnu: rsync: Update to 3.1.2.
* gnu/packages/rsync.scm (rsync): Update to 3.1.2.
2016-01-17 21:44:31 -05:00
Ricardo Wurmus e8309291a7 gnu: solfege: Build scores with Lilypond.
* gnu/packages/music.scm (solfege)[inputs]: Add "lilypond".
2016-01-17 22:57:58 +01:00
Ricardo Wurmus 18ef998bfc gnu: bristol: Remove SSE flags on platforms other than x86_64 and i686.
* gnu/packages/music.scm (bristol)[arguments]: Add phase
"remove-sse-flags" to remove unsupported optimizations on platforms
other than x86_64 and i686.
2016-01-17 22:57:58 +01:00
Ludovic Courtès b153f9f0a9 linux-initrd: Remove "usbkbd" from the default set of modules.
Reported by Ricardo Wurmus <rekado@elephly.net>
at <http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20433#39>.

* gnu/system/linux-initrd.scm (base-initrd): Remove "usbkbd".
2016-01-17 22:01:47 +01:00
Efraim Flashner e8d2168c27 gnu: Add git-annex-remote-hubic.
* gnu/packages/version-control.scm (git-annex-remote-hubic): New variable.
2016-01-17 22:37:04 +02:00
Efraim Flashner c18f636823 gnu: Add python-urllib3.
* gnu/packages/python.scm (python-urllib3, python2-urllib3): New variables.
2016-01-17 22:37:04 +02:00
Efraim Flashner e1ba074999 gnu: python-wheel: Clarify description.
* gnu/packages/python.scm (python-wheel): Do it.
2016-01-17 22:37:04 +02:00
Efraim Flashner 10468636ff gnu: python-pytest-cov: Clarify description.
* gnu/packages/python.scm (python-pytest-cov): Do it.
2016-01-17 22:37:04 +02:00
Efraim Flashner 1abe448d56 gnu: Add python2-functools32.
* gnu/packages/python.scm (python2-functools32): New variable.
2016-01-17 22:37:04 +02:00
Efraim Flashner 5988c299c4 gnu: Add python-pyasn1-modules.
* gnu/packages/python.scm (python-pyasn1-modules)
(python2-pyasn1-modules): New variables.
2016-01-17 22:37:04 +02:00
Efraim Flashner 81f7f29752 gnu: Add python-rauth.
* gnu/packages/python.scm (python-rauth, python2-rauth): New variables.
2016-01-17 22:37:04 +02:00
Efraim Flashner 8f0cc2ffce gnu: Add python-swiftclient.
* gnu/packages/openstack.scm (python-swiftclient, python2-swiftclient):
New variables.
2016-01-17 22:37:04 +02:00
Efraim Flashner 7a5b944eb5 gnu: Add python-futures.
* gnu/packages/python.scm (python-futures, python2-futures): New variables.
2016-01-17 22:37:04 +02:00
Efraim Flashner c9e330d001 gnu: Add python-keystoneclient.
* gnu/packages/openstack.scm (python-keystoneclient)
(python2-keystoneclient): New variables.
2016-01-17 22:37:04 +02:00
Ricardo Wurmus fb492b9a64 gnu: vmpk: Update to 0.6.2a.
* gnu/packages/music.scm (vmpk): Update to 0.6.2a.
2016-01-17 19:57:07 +01:00
Ricardo Wurmus cfac12723a gnu: drumstick: Update to 1.0.2.
* gnu/packages/music.scm (drumstick): Update to 1.0.2.
2016-01-17 19:57:00 +01:00
Efraim Flashner 81c29cccaa gnu: mpv: Add features.
* gnu/packages/video.scm (mpv)[inputs]: Add libvdpau.
[arguments]: Add gpl3 and zsh completion flags.
2016-01-17 20:43:51 +02:00
Efraim Flashner 3161d32d37 gnu: Add vdpauinfo.
* gnu/packages/video.scm (vdpauinfo): New variable.
2016-01-17 20:43:51 +02:00
Efraim Flashner d5650f86a7 gnu: Add libvdpau.
* gnu/packages/video.scm (libvdpau): New variable.
2016-01-17 20:43:51 +02:00
Ludovic Courtès bb8afbf5a1 gnu: Add dependency on Perl's 'Module::Build' as needed.
'Module::Build' was deprecated in Perl 5.20 and removed in 5.22.
Some packages need to explicitly depend on it now.

* gnu/packages/perl.scm (perl-class-factory-util):
(perl-date-manip, perl-devel-checkbin): Add 'native-inputs' field.
(perl-module-build)[description]: Mention that it used to be in Perl.
* gnu/packages/web.scm (perl-cgi-simple)[native-inputs]: Add
PERL-MODULE-BUILD.
2016-01-17 18:41:20 +01:00
Eric Bavier 2328b47c64 gnu: Add autojump.
* gnu/packages/admin.scm (autojump): New variable.
2016-01-17 01:44:15 -06:00
Eric Bavier f5a8491b69 gnu: hevea: Update to 2.28.
* gnu/packages/ocaml.scm (hevea): Update to 2.28.
  [arguments]: Add 'patch-/bin/sh phase.
2016-01-17 01:04:43 -06:00
Eric Bavier 90907a22bc gnu: unison: Add "doc" output.
* gnu/packages/ocaml.scm (unison)[source]: Use svn-fetch with snippet.
  [outputs]: New field.
  [native-inputs]: Add ghostscript, texlive, hevea, and lynx.
  [arguments]: Add 'install-doc phase.
2016-01-17 01:04:43 -06:00
Ricardo Wurmus 2309ed6862 gnu: samtools-0.1: Adapt to changes in "samtools" variable.
* gnu/packages/bioinformatics.scm (samtools-0.1)[arguments]: Add
  "LIBCURSES" make flag; delete "configure" phase; disable tests outside
  of "substitute-keyword-arguments".
2016-01-16 15:50:51 +01:00
Ludovic Courtès e90cf6c14a doc: Document command-line options honored by the initrd.
* doc/guix.texi (Initial RAM Disk): Document kernel command-line
options.
2016-01-16 14:45:47 +01:00
Ludovic Courtès 7ba903b6db linux-modules: Support 'modprobe.blacklist' on the command line.
* gnu/build/linux-modules.scm (file-name->module-name)
(module-black-list): New procedure.
* gnu/build/linux-modules.scm (load-linux-module*): Add #:black-list
parameter.
[black-listed?, load-dependencies]: New procedures.
Use them.
2016-01-16 14:45:47 +01:00
Alex Kost 67cedc4ba6 emacs: Add interface for system generations.
* emacs/guix-main.scm (system-generation-boot-parameters)
(system-generation-param-alist, system-generation-sexps): New procedures.
(entries): Add 'system-generation' entry type.
* emacs/guix-messages.el (guix-result-message): Use the same messages
  for 'generation' and 'system-generation' entry types.
* emacs/guix-ui-system-generation.el: New file.
* emacs.am (ELFILES): Add it.
* doc/emacs.texi (Emacs Commands): Document new commands.
* NEWS: Mention new interface.
2016-01-16 13:02:21 +03:00
Alex Kost 5672866848 emacs: Remove 'generation' search type.
Use 'installed' search type instead.

* emacs/guix-main.scm (%patterns-makers): Remove 'generation'.
  (package/output-sexps): Adjust accordingly.
* emacs/guix-ui-generation.el (guix-generation-info-insert-number):
  Replace 'generation' search with 'installed'.
  (guix-generation-list-show-packages): Likewise.
* emacs/guix-messages.el (guix-messages): Remove 'generation'.
2016-01-16 13:02:21 +03:00
Alex Kost 54c3c284d7 emacs: Replace 'generation-diff' search with 'profile-diff'.
* emacs/guix-main.scm (generation-package-specifications): Rename to...
  (profile-package-specifications): ... this.  Take a single 'profile'
  argument.
  (generation-difference): Rename to...
  (profile-difference): ... this.  Take profiles as arguments.
  (package/output-sexps): Adjust accordingly.
* emacs/guix-ui-generation.el (guix-generation-list-profiles-to-compare):
  New procedure.
  (guix-generation-list-show-added-packages)
  (guix-generation-list-show-removed-packages): Use it.
* emacs/guix-messages.el (guix-messages): Replace 'generation-diff' with
  'profile-diff'.
  (guix-message-outputs-by-diff): Adjust accordingly.
2016-01-16 13:02:21 +03:00
Alex Kost 2df17bd0ee emacs: Find packages in system profiles.
For a usual profile, packages are placed in a profile directory itself,
but for a system profile, packages are placed in 'profile'
sub-directory.  So we need to do some special cases for system profiles
to find packages there as well.

* emacs/guix-base.el (guix-packages-profile): New procedure.
  (guix-manifest-file): Use it.  Add optional 'system?' argument.
* emacs/guix-ui-generation.el (guix-system-generation?)
  (guix-generation-current-packages-profile):  New procedures.
  (guix-generation-packages, guix-generation-insert-packages): Remove
  'generation' argument.
  (guix-generation-packages-buffer): Add optional 'system?' argument.
  (guix-profile-generation-manifest-file)
  (guix-profile-generation-packages-buffer): Adjust accordingly.
* emacs/guix-main.scm (generation-package-specifications+paths): Rename to...
  (profile->specifications+paths): ... this.  Use a single 'profile' argument.
2016-01-16 13:02:21 +03:00
Alex Kost a0ad8ab01e emacs: profiles: Add 'guix-system-profile'.
* emacs/guix-profiles.el (guix-system-profile): New variable.
2016-01-16 13:02:21 +03:00
Alex Kost b8300494c0 Move <boot-parameters> to (gnu system).
* guix/scripts/system.scm (previous-grub-entries)
  (display-system-generation): Use accessors instead of matching
  <boot-parameters>.
  (boot-parameters, boot-parameters?, boot-parameters-label)
  (boot-parameters-root-device, boot-parameters-kernel)
  (boot-parameters-kernel-arguments, read-boot-parameters): Move to...
* gnu/system.scm: ... here. Export them.
2016-01-16 13:02:21 +03:00
宋文武 c3e919d7a0 gnu: Add python-hy.
* gnu/packages/python.scm (python-hy, python2-hy): New variables.
2016-01-16 08:18:37 +08:00
宋文武 e224b7d0bd gnu: Add python-rply.
* gnu/packages/python.scm (python-rply, python2-rply): New variables.
2016-01-16 08:18:37 +08:00
宋文武 4ecdeef8ae gnu: Add python-astor.
* gnu/packages/python.scm (python-astor, python2-astor): New variables.
2016-01-16 08:18:37 +08:00
宋文武 c06a3de93a gnu: Add python-clint.
* gnu/packages/python.scm (python-clint, python2-clint): New variables.
2016-01-16 08:17:04 +08:00
宋文武 2216e15cc3 gnu: Add python-args.
* gnu/packages.scm (python-args, python2-args): New variables.
2016-01-16 08:16:51 +08:00
Mark H Weaver ca3f9952d7 gnu: ffmpeg: Update to 2.8.5.
* gnu/packages/video.scm (ffmpeg): Update to 2.8.5.
2016-01-15 18:20:21 -05:00
Mark H Weaver 8d9bae4ed7 gnu: librsvg: Update to 2.40.13 [fixes CVE-2015-7558].
* gnu/packages/patches/librsvg-tests.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/gnome.scm (librsvg): Update to 2.40.13.
  [source]: Remove patch.
2016-01-15 18:03:02 -05:00
Leo Famulari 78e6c4a862 gnu: Add khal.
* gnu/packages/calendar.scm (khal): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari b97c1bfd56 gnu: python-urwid: Disable failing test test_remove_watch_file.
* gnu/packages/python.scm (python-urwid)[arguments]: Add
'disable-failing-test' phase.
[source]: Use pypi-uri.
2016-01-15 16:45:24 -05:00
Leo Famulari 226d333103 gnu: Update python-tzlocal to 1.2.
* gnu/packages/python.scm (python-tzlocal): Update to 1.2.
[source]: Use pypi-uri.
[arguments]: Remove the custom 'unpack phase.
[native-inputs]: Remove unzip, python-setuptools.
[propagated-inputs]: Add python-pytz.
2016-01-15 16:45:24 -05:00
Leo Famulari 6bbbb53eeb gnu: Add python-sphinxcontrib-newsfeed.
* gnu/packages/python.scm (python-sphinxcontrib-newsfeed): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 5c299bf016 gnu: Add python-icalendar.
* gnu/packages/python.scm (python-icalendar): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari a2f6a3d502 gnu: Add vdirsyncer.
* gnu/packages/dav.scm (vdirsyncer): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari f75bbb028a gnu: Add radicale.
* gnu/packages/dav.scm (radicale): New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2016-01-15 16:45:24 -05:00
Leo Famulari 89b8a5516f gnu: Add python-pytest-xprocess.
* gnu/packages/python.scm (python-pytest-xprocess): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 28cecbb7cc gnu: Add python-wsgi-intercept.
* gnu/packages/python.scm (python-wsgi-intercept): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari d7e729fe08 gnu: Add python-pytest-localserver.
* gnu/packages/python.scm (python-pytest-localserver): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 6720dbb49f gnu: Add python-pytest-cache.
* gnu/packages/python.scm (python-pytest-cache): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 848964fe11 gnu: Add python-execnet.
* gnu/packages/python.scm (python-execnet): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 7b3a4ee4c3 gnu: Add python-apipkg.
* gnu/packages/python.scm (python-apipkg): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 7b17cab902 gnu: Add python-click-log.
* gnu/packages/python.scm (python-click-log): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari d1deb90b3f gnu: Add python-click-threading.
* gnu/packages/python.scm (python-click-threading): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 561bb3cb1a gnu: Add python-requests-toolbelt.
* gnu/packages/python.scm (python-requests-toolbelt): New variable.
2016-01-15 16:45:24 -05:00
Leo Famulari 5c6eea2ad1 gnu: Add python-atomicwrites.
* gnu/packages/python.scm (python-atomicwrites): New variable.
2016-01-15 16:45:24 -05:00
Ricardo Wurmus f5ca44b86e gnu: glade: Update to 3.18.5.
* gnu/packages/gnome.scm (glade): Update to 3.18.5.
[arguments]: Disable tests; add "fix-docbook" phase.
[inputs]: Replace "gtk+-2" with "gtk+".
[native-inputs]: Add "itstool", "libxslt", "docbook-xml", "docbook-xsl";
replace "python" with "python-2".
2016-01-15 22:29:37 +01:00
Ludovic Courtès 89b48232f8 gnu: automake: Adjust to deal with Perl 5.22.
Fixes <http://bugs.gnu.org/22375>.

* gnu/packages/patches/automake-regexp-syntax.patch: New file.
* gnu/packages/autotools.scm (automake)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2016-01-15 14:23:46 +01:00
Mark H Weaver 45f2ffb48c gnu: openssh: Update to 7.1p2.
* gnu/packages/ssh.scm (openssh): Update to 7.1p2.
2016-01-15 02:46:12 -05:00
Mark H Weaver 1beec63ac8 Revert "gnu: openssh: Update to 7.1p2 [fixes CVE-0216-0778]."
This reverts commit 6d139e53b5.
2016-01-15 02:45:58 -05:00
Mark H Weaver 6d139e53b5 gnu: openssh: Update to 7.1p2 [fixes CVE-0216-0778].
* gnu/packages/ssh.scm (openssh): Update to 7.1p2.
2016-01-14 10:39:00 -05:00
David Thompson df1f1d6936 gnu: Add docker-compose.
* gnu/packages/docker.scm (docker-compose): New variable.
2016-01-14 09:17:12 -05:00
David Thompson b42c9c8124 gnu: Add python-dockerpty.
* gnu/packages/docker.scm (python-dockerpty): New variable.
2016-01-14 09:16:22 -05:00
David Thompson d020bfc2df gnu: Add python-docker-py.
* gnu/packages/docker.scm: New file.
* Makefile.am (GNU_SYSTEM_MODULES): Add it.
2016-01-14 09:16:22 -05:00
David Thompson 67c52bb3e7 gnu: Add python-websocket-client.
* gnu/packages/python.scm (python-websocket-client): New variable.
2016-01-14 09:12:23 -05:00
David Thompson 210bf49754 gnu: Add python-texttable.
* gnu/packages/python.scm (python-texttable, python2-texttable): New
variables.
2016-01-14 09:12:23 -05:00
David Thompson b3667afbd2 gnu: Update python-jsonschema to 2.5.1.
* gnu/packages/python.scm (python-jsonschema): Update to 2.5.1.
[inputs]: Add python-vcversioner.
2016-01-14 09:12:06 -05:00
David Thompson ea521b42c2 gnu: Add python-vcversioner.
* gnu/packages/python.scm (python-vcversioner, python2-vcversioner): New
variables.
2016-01-14 09:05:19 -05:00
David Thompson e90051808b gnu: Add version 2.7 variant of python-requests.
* gnu/packages/python.scm (python-requests-2.7): New variable.
2016-01-14 09:05:19 -05:00
Ricardo Wurmus 3141b83d4d gnu: r-go-db: Add missing input.
* gnu/packages/bioinformatics.scm (r-go-db)[propagated-inputs]: Add
  "r-annotationdbi".
2016-01-14 14:43:59 +01:00
Ricardo Wurmus d7786ce9b0 gnu: r-sparsem: Add missing "gfortran" input.
* gnu/packages/statistics.scm (r-sparsem)[inputs]: Add "gfortran".
2016-01-14 14:43:59 +01:00
Ricardo Wurmus 0047d26a22 gnu: bowtie: Update to 2.2.6.
* gnu/packages/bioinformatics.scm (bowtie): Update to 2.2.6.
[source]: Remove patch; do not set CC and CPP variables.
[inputs]: Add "tbb".
[arguments]: Pass "prefix" and "WITH_TBB" make flags; remove custom
"install" phase.
* gnu/packages/patches/bowtie-fix-makefile.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove patch file.
2016-01-14 14:43:25 +01:00
Efraim Flashner 2d12284d38 gnu: gnupg: Add TOFU support.
* gnu/packages/gnupg.scm (gnupg)[inputs]: Add sqlite.
2016-01-14 15:05:36 +02:00
Ben Woodcroft 869cda545d import: gem: Beautify description field.
* guix/import/gem.scm (gem->guix-package): Use 'beautify-description'.
2016-01-14 19:44:40 +10:00
Ben Woodcroft 2028a2c960 import: cran: Move beautify-description to utils module.
* guix/import/cran.scm (beautify-description): Move from here...
* guix/import/utils.scm: ... to here.
2016-01-14 19:44:36 +10:00
Ludovic Courtès 76002e54f2 gnu: gawk: Protect against random failures of the 'fts' test.
* gnu/packages/patches/gawk-fts-test.patch: New file.
* gnu/packages/gawk.scm (gawk)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2016-01-14 10:43:08 +01:00
Alex Kost 6b3a1ce8d7 emacs: Fix heading face in "Package Info".
Reported by Ludovic Courtès <ludo@gnu.org> on #guix.
This fixes a regression introduced in commit 7171d824.

'insert-text-button' procedure does not allow to override a button face,
so a specialized button type should be used instead.

* emacs/guix-ui-package.el (guix-package-heading): New button type.
  (guix-package-info-insert-heading): Use it.
2016-01-14 01:12:24 +03:00
Ben Woodcroft 6b6f7d6a0e gnu: orfm: Update to 0.5.3.
* gnu/packages/bioinformatics.scm (orfm): Update to 0.5.3.
[native-inputs]: Add inputs required for tests.
[description]: Add commas.
2016-01-14 08:00:10 +10:00
Ben Woodcroft 3d84a99e73 gnu: Add ruby-bio-commandeer.
* gnu/packages/ruby.scm (ruby-bio-commandeer): New variable.
2016-01-14 08:00:02 +10:00
Ben Woodcroft 7c033c4627 gnu: Add ruby-systemu.
* gnu/packages/ruby.scm (ruby-systemu): New variable.
2016-01-14 07:51:44 +10:00
Ricardo Wurmus ca7ef4d418 gnu: cross-gcc-arguments: Enable C++, disable building of libstdc++-v3.
* gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Disable
  building libstdc++-v3 and enable building C++ compiler.
2016-01-13 22:32:37 +01:00
Ludovic Courtès 724eaef1b2 tests: Use sed instead of grep as a package with no dependencies.
* tests/graph.scm ("node-edges"): Choose SED instead of GREP as the
example.
2016-01-13 18:19:01 +01:00
Ludovic Courtès 8c986ab120 Merge branch 'master' into core-updates 2016-01-13 18:18:48 +01:00
Ludovic Courtès 7a2eed3aac hydra: Add missing phase and inputs for 'make dist' job.
* build-aux/hydra/guix.scm (tarball-package): Inherit from 'guix-devel'
rather than 'guix'.  Pass #:phases to 'dist-package'.
2016-01-13 17:43:21 +01:00
Ludovic Courtès b8a35309f8 build-system/gnu: 'dist-package' can be passed the phases.
* guix/build-system/gnu.scm (dist-package): Add #:phases parameter and
honor it.
2016-01-13 17:43:21 +01:00
Ludovic Courtès 8c9ef2c3a2 monad-repl: Close connection when leaving the monad REPL.
* guix/monad-repl.scm (store-monad-language): Add 'store' parameter and
use it.  Remove call to 'open-connection'.
(enter-store-monad): Use 'with-store' and pass the store to
'store-monad-language.
2016-01-13 17:43:21 +01:00
Ricardo Wurmus e5a19fed19 gnu: julia: Update to 0.4.3.
* gnu/packages/julia.scm (julia): Update to 0.4.3.
(libuv-julia): Update to 07730c4bd595.
2016-01-13 17:05:38 +01:00
Alex Kost 6d268e5281 emacs: Move loading packages to "guix-emacs.el".
* emacs/guix-init.el: Move the code for auto-loading Emacs packages to...
  (guix-package-enable-at-startup): Move to...
* emacs/guix-emacs.el (guix-package-enable-at-startup): ... here.
2016-01-13 17:56:14 +03:00
Alex Kost e4e2154644 emacs: Make "guix-emacs.el" independent.
"guix-emacs.el" may be used just for "instructing" Emacs where to find
Emacs packages installed with Guix, so it should have as few
dependencies as possible.

See <http://lists.gnu.org/archive/html/guix-devel/2016-01/msg00022.html>.

* emacs/guix-emacs.el: Require 'guix-profiles' optionally.
  (guix-emacs-load-autoloads): Use 'guix-profile-prompt' only if it is
  available.
2016-01-13 17:56:14 +03:00
Alex Kost 08207339aa emacs: Complete --file in 'guix build' popup.
* emacs/guix-command.el (guix-command-improve-build-argument): Use
  'guix-read-file-name' to complete --file option.
2016-01-13 17:55:47 +03:00
Alex Kost 883fc5ed42 emacs: Add missing shell completions.
* emacs/guix-pcomplete.el (guix-pcomplete-complete-option-arg): Complete
  file name for '--install-from-file' option of 'guix package' command,
  and for '--file' and '--with-source' options of 'guix build' command.
2016-01-13 17:55:47 +03:00
Mark H Weaver 75418ae0fd gnu: isc-dhcp: Update to 4.3.3-P1 [fixes CVE-2015-8605].
* gnu/packages/admin.scm (isc-dhcp): Update to 4.3.3-P1.
2016-01-13 09:38:57 -05:00
Ricardo Wurmus c44734115a gnu: samtools: Update to 1.3.
* gnu/packages/bioinformatics.scm (samtools): Update to 1.3.
[arguments]: Enable tests for all architectures; set ncurses in
configure-flags instead of make-flags; simplify "patch-tests" phase;
restore "configure" phase.
2016-01-13 15:12:22 +01:00
Ludovic Courtès 93ce8a8e00 build: Use 127 as the Linux hash-bang limit.
Reported by taylanbayirli@gmail.com (Taylan Ulrich Bayırlı/Kammer).

* m4/guix.m4 (LINUX_HASH_BANG_LIMIT): Set to 127.
2016-01-13 11:13:34 +01:00
Ludovic Courtès 98f2339189 gnu: skribilo: Update to 0.9.3.
* gnu/packages/skribilo.scm (skribilo): Update to 0.9.3.
[native-inputs]: New field.
2016-01-13 11:13:34 +01:00
Leo Famulari 0917e80ea8 doc: Fix typo in "Build Systems".
* doc/guix.texi (Build Systems): Remove extra 's'.
2016-01-12 17:55:59 -05:00
Eric Bavier c91d3fb7f4 gnu: boost: Update to 1.60.0.
* gnu/packages/boost.scm (boost): Update to 1.60.0.
  [source]: Remove patch.
* gnu/packages/patches/boost-mips-avoid-m32.patch: Delete patch
* gnu-system.am (dist_patch_DATA): Remove patch.

Also fix dependent packages:

* gnu/packages/patches/csound-header-ordering.patch: New patch.
* gnu/packages/audio.scm (csound)[source]: Use it.
  [arguments]: Add 'set-flags phase.
* gnu/packages/patches/libcmis-fix-test-onedrive.patch: New patch.
* gnu/packages/libreoffice.scm (libcmis)[source]: Use it.
  (libreoffice)[arguments]: Add LDFLAGS to #:configure-flags.
  (librevenge)[inputs]: Move boost from here...
  [propogated-inputs]: to here.
  [arguments]: Add LDFLAGS to #:configure-flags.
* gnu/packages/patches/openimageio-boost-1.60.patch: New patch.
* gnu/packages/graphics.scm (openimageio): Use it.
* gnu-system.am (dist_patch_DATA): Add patches.
2016-01-12 21:07:53 +01:00
Eric Bavier 3abe8136fd gnu: boost: Use modify-phases.
* gnu/packages/boost.scm (boost)[arguments]: Use modify-phases.
2016-01-12 20:53:14 +01:00
Mark H Weaver 203795acea gnu: perl: Add fix for CVE-2015-8607.
* gnu/packages/patches/perl-CVE-2015-8607.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/perl.scm (perl)[source]: Add patch.
2016-01-12 13:12:07 -05:00
Mark H Weaver ce3ac6670c gnu: perl: Update to 5.22.1.
* gnu/packages/perl.scm (perl): Update to 5.22.1.
2016-01-12 13:10:05 -05:00
Ludovic Courtès bb25130764 build: 'make check' errors out if file name limits would be hit.
* Makefile.am (SCM_TESTS, SH_TESTS, TESTS, AM_TESTS_ENVIRONMENT)
(SCM_LOG_COMPILER, SH_LOG_COMPILER, AM_SCM_LOG_FLAGS)
(AM_SH_LOG_FLAGS): Move within 'if CAN_RUN_TESTS'.
(check-local) [!CAN_RUN_TESTS]: New target.
* daemon.am (AM_TESTS_ENVIRONMENT, TESTS): Ditto.
* m4/guix.m4 (GUIX_CHECK_FILE_NAME_LIMITS): Add parameter and set it.
2016-01-12 17:47:36 +01:00
Ludovic Courtès 27ab3cee75 build: Warn against long hash bang lines for tests.
* m4/guix.m4 (GUIX_TEST_HASH_BANG_LENGTH): New macro.
(GUIX_CHECK_FILE_NAME_LIMITS): Use it.  Warn against long hash bang
lines in tests.
2016-01-12 17:47:36 +01:00
Ludovic Courtès d33fa0c714 doc: Show bootstrapping at the package level.
* doc/images/bootstrap-packages.dot: New file.
* doc.am (DOT_FILES): Add it.
* doc/guix.texi (Bootstrapping): Show 'guix graph' commands.  Includes
'images/bootstrap-packages' and comment it.
2016-01-12 17:47:36 +01:00
Mark H Weaver 16aa649117 gnu: sudo: Add fix for CVE-2015-5602.
* gnu/packages/patches/sudo-CVE-2015-5602.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/admin.scm (sudo)[source]: Add patch.
2016-01-12 11:23:06 -05:00
Efraim Flashner 9d9951d6a6 gnu: global: Use modify-phases syntax.
* gnu/packages/code.scm (global)[arguments]: Use modify-phases syntax.
2016-01-12 14:47:10 +02:00
Efraim Flashner 94c3a6f1a6 gnu: global: Update to 6.5.2.
* gnu/packages/code.scm (global): Update to 6.5.2.
2016-01-12 14:39:15 +02:00
Ricardo Wurmus 9f40b1171b gnu: icedtea-6: Fix directory name in "unpack" phase.
* gnu/packages/java.scm (icedtea-6)[arguments]: Change the directory
  prefix in the "unpack" phase to "icedtea6-".
2016-01-12 11:39:21 +01:00
Mark H Weaver 6b0d24b17c gnu: linux-libre: Update to 4.4.
* gnu/packages/linux.scm (linux-libre): Update to 4.4.
* gnu/packages/linux-libre-i686.conf,
  gnu/packages/linux-libre-x86_64.conf: Update from
  <https://jxself.org/git/kernel-configs.git>.
2016-01-11 19:13:37 -05:00
Ben Woodcroft 81f3e0c1f3 gnu: Add fxtract.
* gnu/packages/bioinformatics.scm (fxtract): New variable.
2016-01-12 07:49:19 +10:00
Ben Woodcroft 65e84e3176 gnu: ruby: Update to 2.3.0.
* gnu/packages/ruby.scm (ruby): Update to 2.3.0.
[source]: Remove bundled libffi.
[arguments]: Use parallel tests.
(ruby-2.2): New variable.
2016-01-11 21:59:06 +10:00
Ben Woodcroft 9656b8bec5 gnu: ruby: Use modify-phases.
* gnu/packages/ruby.scm (ruby)[arguments]: Use modify-phases.
2016-01-11 21:59:06 +10:00
Ben Woodcroft 761e7042f6 ruby: Abstract out path to GEM_HOME.
Previously paths to the GEM_HOME of certain Ruby packages were
hard-coded, so packages failed to build when Ruby was updated to 2.3.0.

* guix/build/ruby-build-system.scm (gem-home): New procedure.
* gnu/packages/ruby.scm (ruby-metaclass, ruby-instantiator,
ruby-introspection, ruby-mocha, ruby-minitest-tu-shim): Use it.
2016-01-11 21:58:55 +10:00
Efraim Flashner ec70fec559 gnu: youtube-dl: Update to 2016.01.09.
* gnu/packages/video.scm (youtube-dl): Update to 2016.01.09.
2016-01-11 13:30:50 +02:00
Andreas Enge 4879d2ff66 gnu: gp2c: Update to 0.0.9pl5.
* gnu/packages/algebra.scm (gp2c): Update to 0.0.9pl5.
2016-01-11 11:24:52 +01:00
Andreas Enge 4a6635f353 gnu: texlive: Use modify-phases syntax.
* gnu/packages/texlive.scm (texlive-bin, texlive-texmf): Use modify-phases
  syntax.
2016-01-11 10:59:29 +01:00
Efraim Flashner a916c82649 gnu: man-pages: Update to 4.04.
* gnu/packages/man.scm (man-pages): Update to 4.04.
[source]: Add alternate location.
2016-01-11 09:37:50 +02:00
Taylan Ulrich Bayırlı/Kammer ce9a304251 build: Fix out-of-tree building of documentation.
* doc.am (.dot.png, .dot.pdf, .dot.eps): Put the generated files into
  $(srcdir).
2016-01-10 22:30:29 +01:00
Ben Woodcroft 9b9b7ffd8e gnu: bedtools: Update to 2.25.0.
* gnu/packages/bioinformatics.scm (bedtools): Update to 0.25.0.
[source]: Remove patch merged upstream.
[arguments]: Use 'modify-phases'.  Remove
'patch-makefile-SHELL-definition' phase.
* gnu/packages/patches/bedtools-32bit-compilation.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove it.
2016-01-11 00:36:13 +10:00
Ben Woodcroft 6573ac82ad gnu: bedtools: Use modify-phases.
* gnu/packages/bioinformatics.scm (bedtools)[arguments]: Use modify-phases.
2016-01-11 00:36:13 +10:00
Ben Woodcroft 048036aee5 gnu: ruby-yard: Disable failing test.
* gnu/packages/ruby.scm (ruby-yard)[arguments]: Disable test which fails on
Ruby 2.3.0.
2016-01-10 21:10:29 +10:00
Ben Woodcroft 3918146b61 gnu: ruby-power-assert: Update to 0.2.7.
* gnu/packages/ruby.scm (ruby-power-assert): Update to 0.2.7.
2016-01-10 21:09:37 +10:00
Andreas Enge 695bea9803 gnu: r: Update to 3.2.3.
* gnu/packages/statistics.scm (r): Update to 3.2.3.
2016-01-09 23:18:28 +01:00
Andreas Enge 13035f5a03 gnu: icecat: Update to 38.5.2-gnu1.
* gnu/packages/gnuzilla.scm (icecat): Update to 38.5.2-gnu1.
2016-01-09 22:51:28 +01:00
Ben Woodcroft 4c40fa0229 gnu: ruby-2.1: Update to 2.1.8.
* gnu/packages/ruby.scm (ruby-2.1): Update to 2.1.8.
2016-01-09 14:53:58 +10:00
Leo Famulari f32274a71e gnu: i2c-tools: Update source and home-page URLs.
* gnu/packages/linux.scm (i2c-tools)[source]: Update URL.
[home-page]: Update URL.
2016-01-08 16:42:27 -05:00
Leo Famulari 3a04d5d4e4 gnu: lm-sensors: Update source and home-page URLs.
* gnu/packages/linux.scm (lm-sensors)[source]: Update URL.
[home-page]: Update URL.
2016-01-08 16:42:27 -05:00
Mark H Weaver bea25ae83c gnu: nss: Update to 3.21 [fixes CVE-2015-7575].
* gnu/packages/gnuzilla.scm (nss): Update to 3.21.
  [arguments]: In configure phase, setenv CC=gcc.
* gnu/packages/patches/nss-pkgconfig.patch: Adapt to NSS 3.21.
2016-01-08 15:29:50 -05:00
Ludovic Courtès 17ad0a2714 build-system/python: 'pypi-uri' takes an optional file name extension.
Suggested by swedebugia <swedebugia@riseup.net>.

* guix/build-system/python.scm (pypi-uri): Add 'extension' parameter and
use it.
2016-01-08 19:06:26 +01:00
Ludovic Courtès 195f557ed5 gnu: attr: Update to 2.4.47.
* gnu/packages/attr.scm (attr): Update to 2.4.47.
2016-01-08 16:45:32 +01:00
Ludovic Courtès 20c620d0a4 gnu: attr: Use 'modify-phases'.
* gnu/packages/attr.scm (attr)[arguments]: Use 'modify-phases'.
2016-01-08 16:45:28 +01:00
Mathieu Lirzin 2409f37f28 gnu: Add missing (gnu packages gcc) import.
* gnu/packages/bioinformatics.scm: Use (gnu packages gcc). This is
required by 'r-impute' for 'gfortran'.
2016-01-08 14:18:46 +01:00
Mathieu Lirzin 9ef824c10e gnu: xterm: Update to 322.
* gnu/packages/xorg.scm (xterm): Update to 322.
2016-01-08 14:12:29 +01:00
宋文武 a65e26f091 gnu: epiphany: Update to 3.18.2.
* gnu/packages/gnome.scm (epiphany): Update to 3.18.2.
2016-01-08 17:34:08 +08:00
宋文武 19e5258d84 gnu: webkitgtk: Update to 2.10.4.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.10.4.
2016-01-08 17:34:08 +08:00
Efraim Flashner 209e09fa10 gnu: zlib: Update to 1.2.8.
* gnu/packages/compression.scm (zlib): Update to 1.2.8.
2016-01-08 06:39:12 +02:00
宋文武 c0a9589da2 doc: Document network-manager-service.
* doc/guix.texi (Networking Services): Document network-manager-service.
2016-01-08 08:06:40 +08:00
Ludovic Courtès b110869dd3 doc: Add elaborate package search example.
* doc/guix.texi (Invoking guix package): Add elaborate --search example
using recsel and sexes.
2016-01-08 00:09:50 +01:00
Pjotr Prins c8d969b58f gnu: Add Pfff.
* gnu/packages/textutils.scm (pfff): New variable.
2016-01-07 21:13:35 +01:00
Alex Kost fbbaa4dde8 gnu: mpv: Remove 'samba' input.
This is a heavy-weight and uncommon feature.  See
<http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00701.html>.

* gnu/packages/video.scm (mpv)[inputs]: Remove 'samba'.
2016-01-07 22:30:18 +03:00
Alex Kost 0a5ec7092d emacs: Display supported systems in "Package Info".
* emacs/guix-main.scm (%package-param-alist): Add 'systems'.
* emacs/guix-ui-package.el (guix-package-info-insert-systems): New
  procedure.
  (guix-package-info-format): Add it.
  (guix-output-info-format): Likewise.
  (guix-package-info-titles): Add "Supported systems" title.
2016-01-07 22:30:18 +03:00
Ricardo Wurmus cb933df6da gnu: Add genomation.
* gnu/packages/bioinformatics.scm (r-genomation): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus 03ea5a357e gnu: Add seqPattern.
* gnu/packages/bioinformatics.scm (r-seqpattern): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus c43a011de3 gnu: Add impute.
* gnu/packages/bioinformatics.scm (r-impute): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus c63cef6699 gnu: Add BSgenome.
* gnu/packages/bioinformatics.scm (r-bsgenome): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus fbf6045e33 gnu: Add plotly.
* gnu/packages/statistics.scm (r-plotly): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus a28d646b63 gnu: Add viridis.
* gnu/packages/statistics.scm (r-viridis): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus d547ce5e70 gnu: Add topGO.
* gnu/packages/bioinformatics.scm (r-topgo): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus e05c37da4a gnu: Add matrixStats.
* gnu/packages/statistics.scm (r-matrixstats): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus 3703ffb41f gnu: Add R.rsp.
* gnu/packages/statistics.scm (r-r-rsp): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus a63efbb453 gnu: Add R.cache.
* gnu/packages/statistics.scm (r-r-cache): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus 9c94b53b5b gnu: Add R.utils.
* gnu/packages/statistics.scm (r-r-utils): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus c8c75a8d88 gnu: Add R.oo.
* gnu/packages/statistics.scm (r-r-oo): New variable.
2016-01-07 17:18:17 +01:00
Ricardo Wurmus 8bfe007c9c gnu: Add R.methodsS3.
* gnu/packages/statistics.scm (r-r-methodss3): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus a69a593595 gnu: Add base64enc.
* gnu/packages/statistics.scm (r-base64enc): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus a8227e4ae9 gnu: Add DT.
* gnu/packages/statistics.scm (r-dt): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus d706257b5b gnu: Add SparseM.
* gnu/packages/statistics.scm (r-sparsem): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus fb25d8803f gnu: Add GO.db.
* gnu/packages/bioinformatics.scm (r-go-db): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 2fd7c04984 gnu: Add GenomicFeatures.
* gnu/packages/bioinformatics.scm (r-genomicfeatures): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 317755ff0f gnu: Add rtracklayer.
* gnu/packages/bioinformatics.scm (r-rtracklayer): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus d8a828af78 gnu: Add GenomicAlignments.
* gnu/packages/bioinformatics.scm (r-genomicalignments): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 6e76dda2d0 gnu: Add SummarizedExperiment.
* gnu/packages/bioinformatics.scm (r-summarizedexperiment): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus f8d74f7018 gnu: Add Rsamtools.
* gnu/packages/bioinformatics.scm (r-rsamtools): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus bf15935337 gnu: Add Biostrings.
* gnu/packages/bioinformatics.scm (r-biostrings): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus e91d362e48 gnu: Add BiocParallel.
* gnu/packages/bioinformatics.scm (r-biocparallel): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus c465fa72ed gnu: Add biomaRt.
* gnu/packages/bioinformatics.scm (r-biomart): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 8b7bce740d gnu: Add AnnotationDbi.
* gnu/packages/bioinformatics.scm (r-annotationdbi): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 555e3399dc gnu: Add Biobase.
* gnu/packages/bioinformatics.scm (r-biobase): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus bc899123e7 gnu: Add snow.
* gnu/packages/statistics.scm (r-snow): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 6b82f56cf9 gnu: Add futile.logger.
* gnu/packages/statistics.scm (r-futile-logger): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus b9ff33b50e gnu: Add futile.options.
* gnu/packages/statistics.scm (r-futile-options): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus ca65d387fd gnu: Add lambda.r.
* gnu/packages/statistics.scm (r-lambda-r): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 543ded3619 gnu: Add r-xml.
* gnu/packages/statistics.scm (r-xml): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus cefaa79c9e gnu: Add RCurl.
* gnu/packages/statistics.scm (r-rcurl): New variable.
2016-01-07 17:18:16 +01:00
Ricardo Wurmus 21e4d6a9cf gnu: Add RSQLite.
* gnu/packages/statistics.scm (r-rsqlite): New variable.
2016-01-07 17:18:15 +01:00
Ricardo Wurmus 34a75d35bb import: Rename "cran-fetch" to "fetch-description".
* guix/import/cran.scm (cran-fetch): Rename procedure ...
(fetch-description): ... to this.
2016-01-07 17:18:04 +01:00
Ricardo Wurmus d1c116089b import: Add package->upstream-name procedure.
* guix/import/cran.scm (package->upstream-name): New procedure.
2016-01-07 17:18:02 +01:00
Raimon Grau fe9451c50a gnu: Add xmlstarlet.
* gnu/packages/xml.scm (xmlstarlet): New variable.
2016-01-07 16:00:00 +01:00
宋文武 29e255ca83 gnu: zita-convolver: Drop the '-march=native' optimization.
* gnu/packages/audio.scm (zita-convolver)[source]: Add snippet.
2016-01-07 22:47:32 +08:00
宋文武 6dff495580 gnu: zita-resampler: Drop the '-march=native' optimization.
* gnu/packages/audio.scm (zita-resampler)[source]: Add snippet.
2016-01-07 22:47:32 +08:00
Ben Woodcroft 7d3a1a2dd2 gnu: Add ruby-ansi.
* gnu/packages/ruby.scm (ruby-ansi): New variable.
2016-01-07 15:36:05 +01:00
Efraim Flashner b24765139c gnu: sqlite: Update to 3.10.0.
* gnu/packages/databases.scm (sqlite): Update to 3.10.0.
2016-01-07 12:37:37 +02:00
Ricardo Wurmus 5dfd276602 gnu: edirect: Update to 3.50.
* gnu/packages/bioinformatics.scm (edirect): Update to 3.50.
[native-inputs]: Remove "unzip".
2016-01-07 11:25:24 +01:00
Leo Famulari 62339e2d49 gnu: w3m: Enable SSL, disable broken protocols and ciphers.
Fixes <http://bugs.gnu.org/16791>.

* gnu/packages/patches/w3m-force-ssl_verify_server-on.patch: New file.
* gnu/packages/patches/w3m-disable-sslv2-and-sslv3.patch: New file.
* gnu/packages/patches/w3m-disable-weak-ciphers.patch: New file.
* gnu/packages/w3m.scm (w3m)[source]: Add patches.
* gnu-system.am (dist_patch_DATA): Add the new files.
2016-01-07 02:35:38 -05:00
Leo Famulari e6352001c4 gnu: w3m: Update patch to use '-p1'.
* gnu/packages/patches/w3m-fix-compile.patch: Rename this file...
* gnu/packages/patches/w3m-libgc.patch: ...to this, and adjust patch
prefix level to '-p1'.
* gnu-system.am (dist_patch_DATA): Update patch name.
* gnu/packages/w3m.scm (w3m)[source]: Update patch name.
[source]: Drop patch flag -p0.
2016-01-07 02:35:38 -05:00
Efraim Flashner 93b3a8b0ee gnu: flex: Update to 2.6.0.
* gnu/packages/flex.scm (flex): Update to 2.6.0.
[source]: Remove flex-bison-tests.patch.
* gnu-system.am (dist_patch_DATA): Remove flex-bison-tests.patch.
* gnu/packages/patches/flex-bison-tests.patch: Remove it.
2016-01-07 08:42:15 +02:00
Ludovic Courtès d4aaf95401 build-system/gnu: Make 'package-with-explicit-inputs' idempotent.
* guix/build-system/gnu.scm (package-with-explicit-inputs): Use
  'ensure-keyword-arguments' instead of appending to ARGS.
* gnu/packages/commencement.scm (static-bash-for-glibc): Add missing
  #:guile argument.
2016-01-06 23:08:22 +01:00
Ludovic Courtès 6071122b71 utils: Add 'ensure-keyword-arguments'.
* guix/utils.scm (delkw, ensure-keyword-arguments): New procedures.
* tests/utils.scm ("ensure-keyword-arguments"): New test.
2016-01-06 23:08:22 +01:00
Ludovic Courtès 793a43f409 http-client: Work around <http://bugs.gnu.org/22273>.
* guix/http-client.scm (read-header-line): New procedure.  Use it.
2016-01-06 23:08:22 +01:00
Ludovic Courtès dff9141c5e gnu: guix: Update development snapshot to f888c0b.
* gnu/packages/package-management.scm (guix-devel): Update to f888c0b.
2016-01-06 23:08:22 +01:00
Ludovic Courtès 1c63dafce6 http-client: Fix erroneous comment.
* guix/http-client.scm: Fix Guile version number in comment for Guile
commit 5a10e41.
2016-01-06 23:08:22 +01:00
Efraim Flashner bfcb7bcb73 gnu: libffi: Update to 3.2.1.
* gnu/packages/libffi.scm (libffi): Update to 3.2.1.
2016-01-06 20:28:57 +02:00
Eric Bavier c7b08410de gnu: gmsh: Update to 2.11.0.
* gnu/packages/maths.scm (gmsh): Update to 2.11.0.
  [arguments]: Replace 'check phase.
2016-01-06 10:49:23 -06:00
Ludovic Courtès f888c0b120 lint: cve: Catch host name lookup errors.
* guix/scripts/lint.scm (package-vulnerabilities): Catch
'getaddrinfo-error'.
2016-01-06 15:54:12 +01:00
Ludovic Courtès 7b78f359d1 gnu: sudo: Use /var/run/sudo instead of /run/sudo.
* gnu/packages/admin.scm (sudo)[arguments]: Pass
--with-rundir=/var/run/sudo since /var/run is cleaned up at boot time on
GuixSD whereas /run is not.
2016-01-06 15:51:31 +01:00
Ludovic Courtès 3c4c8c3e06 services: cleanup-service: Catch 'system-error' instead of everything.
This makes sure that critical errors such as unbound-variable do not go
undetected.

* gnu/services.scm (cleanup-gexp): Introduce local 'fail-safe' macro and
use it.  Remove uses of 'false-if-exception'.
2016-01-06 14:49:48 +01:00
Ludovic Courtès 341ae58213 gnu: ldc: Fix license.
* gnu/packages/ldc.scm (ldc)[license]: Replace invalid use of
'license:x11-style' by LICENSE:BOOST1.0.
2016-01-06 14:21:53 +01:00
Ben Woodcroft 7266848ace build: ruby: Remove cached gem after install.
The .gem file stored in GEM_HOME after install is both redundant and an
archive that stores timestamped files which makes builds
non-deterministic, so delete it after 'gem install'.

* guix/build/ruby-build-system.scm (install): Remove cached gem after
  install.
2016-01-06 12:42:41 +01:00
Ricardo Wurmus a243e12aba gnu: icedtea7: Rename to icedtea-7.
* gnu/packages/java.scm (icedtea7): Rename variable to...
(icedtea-7): ...this.
(icedtea): Refer to "icedtea-7".
2016-01-06 11:38:50 +01:00
Ricardo Wurmus d028740622 gnu: icedtea6: Rename to icedtea-6.
* gnu/packages/java.scm (icedtea6): Rename variable to...
(icedtea-6): ...this.
2016-01-06 11:38:50 +01:00
Ricardo Wurmus 5452588c1a gnu: icedtea6, icedtea7: Rename package to "icedtea".
* gnu/packages/java.scm (icedtea6): Change package name to "icedtea".
(icedtea7): Inherit package name.
2016-01-06 11:38:50 +01:00
Ricardo Wurmus d2540f80c2 gnu: Add and use default IcedTea.
* gnu/packages/java.scm (icedtea): New variable.
(swt)[native-inputs]: Replace "icedtea6" with "icedtea".
* gnu/packages/bioinformatics.scm (htsjdk)[native-inputs]: Likewise.
(ngs-java)[inputs]: Likewise.
* gnu/packages/kodi.scm (kodi)[native-inputs]: Replace "icedtea7" with
"icedtea".
* gnu/packages/ruby.scm (ruby-rjb)[native-inputs]: Replace "icedtea7"
with "icedtea".
2016-01-06 11:38:50 +01:00
Ricardo Wurmus d91488908b gnu: icedtea6, icedtea7: Unpack to "openjdk.src".
* gnu/packages/java.scm (icedtea6)[arguments]: Unpack OpenJDK sources to
"openjdk.src".
(icedtea7)[arguments]: Inherit "--with-openjdk-src-dir" flag; refer to
"openjdk.src" in build phases; simplify "unpack" phase.
[native-inputs]: Rename "openjdk-drop" to "openjdk-src".
2016-01-06 11:38:50 +01:00
Ricardo Wurmus 43c565d2e7 gnu: Add Jellyfish.
* gnu/packages/bioinformatics.scm (jellyfish): New variable.
2016-01-06 11:10:46 +01:00
Ludovic Courtès 03cea32031 build: Bump version number.
* configure.ac: Change version to 0.9.1.
2016-01-05 23:55:26 +01:00
Michael Vetter f9b9a0330d doc: Remove double occurrence of words.
* doc/guix.texi: substitute 'the the' with 'the'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-01-05 23:55:26 +01:00
Taylan Ulrich Bayırlı/Kammer f07041f7d2 build: pull: Compile .scm files in one process.
* guix/build/pull.scm (call-with-process, report-build-progress)
(p-for-each): Remove.
(build-guix): Load and compile files in one process.
2016-01-05 23:30:30 +01:00
Andreas Enge 7d1f8d4f52 gnu: calibre: Update to 2.48.0.
* gnu/packages/ebook.scm (calibre): Update to 2.48.0.
2016-01-05 22:46:54 +01:00
Efraim Flashner e5f037624e gnu: gettext: Use "modify-phases" syntax.
* gnu/packages/gettext.scm (gettext)[arguments]: Use "modify-phases" syntax.
2016-01-05 21:13:57 +02:00
Efraim Flashner d99861d39d gnu: gettext: Update to 0.19.7.
* gnu/packages/gettext.scm (gettext): Update to 0.19.7.
2016-01-05 21:06:59 +02:00
Efraim Flashner 5a75865f9d gnu: gnutls: Update to 3.4.7.
* gnu/packages/tls.scm (gnutls): Update to 3.4.7.
[source]: Remove gnutls-doc-fix.patch.
[arguments]: Remove delete-prebuilt-unfixed-info-file phase.
[native-inputs]: Remove texinfo.
* gnu-system.am (dist_patch_DATA): Remove gnutls-doc-fix.patch
2016-01-05 21:06:59 +02:00
Efraim Flashner 3ea110b704 gnu: libtasn1: Update to 4.7.
* gnu/packages/tls.scm (libtan1): Update to 4.7.
[native-inputs]: Remove texinfo.
2016-01-05 21:06:59 +02:00
Roel Janssen a7ec569c98 gnu: Add LDC.
* gnu/packages/ldc.scm: New file.
* gnu/packages/patches/ldc-disable-tests.patch: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add ldc.scm.
  (dist_patch_DATA): Add patch file.
2016-01-05 16:24:57 +01:00
Ludovic Courtès 0beb65b450 build-system/gnu: Add 'set-SOURCE-DATE-EPOCH' phase.
This phase is inherited by other build systems, which ensures
'SOURCE_DATE_EPOCH' is always set in practice.

* guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Remove.
(%standard-phases): Don't add it.
* guix/build/gnu-build-system.scm (set-SOURCE-DATE-EPOCH): New
procedure.
(%standard-phases): Add it.
(gnu-build): Remove 'setenv' call for "SOURCE_DATE_EPOCH".
2016-01-05 15:52:42 +01:00
Ludovic Courtès e8e2e18b84 gnu: Read 'C_INCLUDE_PATH' instead of 'CPATH'.
This is a followup to 009b53fd.

* gnu/packages/cmake.scm (cmake)[arguments]: Use (getenv
"C_INCLUDE_PATH") instead of (getenv "CPATH").
* gnu/packages/package-management.scm (rpm)[arguments]: Likewise.
* gnu/packages/video.scm (avidemux)[arguments]: Likewise.
* gnu/packages/webkit.scm (webkitgtk)[arguments]: Likewise.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Likewise, and unset
'C_INCLUDE_PATH' and 'CPLUS_INCLUDE_PATH'.
2016-01-05 14:11:54 +01:00
Ludovic Courtès a2ab82db9a gnu: python: Honor 'C_INCLUDE_PATH'.
This is a followup to 009b53fd.

* gnu/packages/patches/python-3-search-paths.patch: Check
'C_INCLUDE_PATH' instead of 'CPATH'.
* gnu/packages/patches/python-2.7-search-paths.patch: Likewise.
2016-01-05 13:13:17 +01:00
Dmitry Bogatov 1075b43737 gnu: Add emacs-undo-tree.
* gnu/packages/emacs.scm (emacs-undo-tree): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-01-05 00:28:42 +01:00
Ludovic Courtès fe542b9762 gnu: emacs: Remove 'info.info'.
* gnu/packages/emacs.scm (emacs)[arguments]: Use 'modify-phases'.  Add
'remove-info.info' phase.
2016-01-05 00:28:42 +01:00
Ludovic Courtès fb74174958 linux-boot: Remove verbose output for module loads.
* gnu/build/linux-boot.scm (boot-system): Leave
'current-module-debugging-port' unchanged.
* gnu/build/linux-modules.scm (load-linux-module*): Update comment about
'mmap'.
2016-01-05 00:28:42 +01:00
Ludovic Courtès be7be9e8dd services: Move /tmp cleanup to a separate service.
* gnu/services.scm (compute-boot-script): Remove /tmp and /var/run
deletion code from here.
(cleanup-gexp): New procedure with /tmp and /var/run deletion code
formerly in 'compute-boot-script'.
(cleanup-service-type): New variable.
* gnu/system.scm (essential-services): Add an instance of
CLEANUP-SERVICE-TYPE.
2016-01-05 00:28:42 +01:00
Ludovic Courtès 94af9daa73 services: boot: Reinstate /tmp and /var/run deletion.
For some time /tmp and /var/run were not being deleted because
'delete-file-recursively' was unbound.

* gnu/services.scm (compute-boot-script)[%modules, modules, compiled]:
New variables.  Use them to augment the module search path.
2016-01-05 00:28:42 +01:00
Ludovic Courtès db5a94445f guix package: Allow multiple '--search' flags.
* guix/scripts/package.scm (find-packages-by-description): Change 'rx'
parameter to 'regexps'.
[matches-all?, matches-one?]: New procedures.
Use them.
(process-query): Collect regexps from all 'search' queries, and pass
them to 'find-packages-by-description'.
* tests/guix-package.sh: Add tests.
* doc/guix.texi (Invoking guix package): Document it.
2016-01-05 00:28:42 +01:00
Ludovic Courtès d28ef43937 ui: Update copyright year in '--version' output.
* guix/ui.scm (show-version-and-exit): Increment copyright year.
2016-01-05 00:28:42 +01:00
Ludovic Courtès 35a6dabcf1 git-download: Correctly implement recursive checkouts.
Previously, the 'git checkout' invocation would remove sub-modules that
had been initialized by 'git clone --recursive'.

* guix/build/git.scm (git-fetch): Never use "git clone --recursive".
Invoke "git submodule update --init --recursive" after "git checkout".
Remove '.git' directories as the last step.
2016-01-05 00:28:42 +01:00
Ricardo Wurmus 4828ff91ff gnu: gtk+: Add patch to support GUIX_GTK3_PATH.
* gnu/packages/patches/gtk3-respect-GUIX_GTK3_PATH: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gtk.scm (gtk+) [source]: Add patch.
[native-search-paths]: Add search path for GUIX_GTK3_PATH.
2016-01-04 16:11:10 -05:00
Ricardo Wurmus 2a6afac905 gnu: gtk+-2: Add patch to support GUIX_GTK2_PATH.
* gnu/packages/patches/gtk2-respect-GUIX_GTK2_PATH: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/gtk.scm (gtk+-2) [source]: Add patch.
[native-search-paths]: Add search path for GUIX_GTK2_PATH.
2016-01-04 16:11:10 -05:00
Efraim Flashner 4f2ca23493 gnu: libgcrypt: Update to 1.6.4.
* gnu/packages/gnupg.scm (libgcrypt): Update to 1.6.4.
2016-01-04 22:29:08 +02:00
Manolis Ragkousis 4478dbd58c gnu: libgpg-error: Update to 1.21.
* gnu/packages/gnupg.scm (libgpg-error): Update to 1.21.
2016-01-04 18:23:29 +02:00
Efraim Flashner 82cb8519bc gnu: tzdata: Update to 2015g.
* gnu/packages/base.scm (tzdata): Update to 2015g.
2016-01-04 16:59:13 +02:00
Ricardo Wurmus c2e87caaa6 gnu: julia: Update to 0.4.2.
* gnu/packages/patches/julia-0.3.10-fix-empty-array.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/julia.scm (julia): Update to 0.4.2.
[arguments]: Remove phase "fix-building-with-mcjit-llvm"; replace phase
"patch-include-path" with "fix-include-and-link-paths"; add phase
"hardcode-paths"; add missing make-flags.
[inputs]: Replace "pcre" with "pcre2"; replace "git" with "libgit2"; add
"coreutils"; add "libuv-julia"; add "wget"; add "which".
[native-inputs]: Remove "which".
2016-01-04 11:35:57 +01:00
Ricardo Wurmus 50b40d0709 gnu: Add libuv-julia.
* gnu/packages/julia.scm (libuv-julia): New variable.
2016-01-04 11:35:57 +01:00
Ricardo Wurmus f1e3a8aed2 gnu: utf8proc: Update to 1.3.1.
* gnu/packages/textutils.scm (utf8proc): Update to 1.3.1.
[arguments]: Remove custom "install" phase.
2016-01-04 11:35:57 +01:00
Leo Famulari 77553dff86 gnu: samba: Update to 4.3.3.
Fixes CVE-2015-{3223,5252,5299,5296,8467,5330}.

* gnu/packages/samba.scm (samba): Update to 4.3.3.
2016-01-03 14:59:49 -05:00
Leo Famulari f6cddbefcc gnu: ldb: Update to 1.1.24.
Required for samba-4.3.3 in order to fix CVE-2015-5330 and
CVE-2015-3223.

* gnu/packages/samba.scm (ldb): Update to 1.2.24.
2016-01-03 14:59:49 -05:00
Ludovic Courtès 53334dd6e9 Merge branch 'master' into core-updates 2016-01-03 14:53:03 +01:00
Ludovic Courtès 1575dcd134 gnu: grep: Skip timing-sensitive test.
This avoids failures on loaded machines as seen
at <http://hydra.gnu.org/build/906900/log/raw>.

* gnu/packages/patches/grep-timing-sensitive-test.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/base.scm (grep): Use it.
2016-01-03 14:50:29 +01:00
Ludovic Courtès dd1937d75d gnu: pkg-config: Update to 0.29.
* gnu/packages/pkg-config.scm (%pkg-config): Update to 0.29.
2016-01-03 14:44:22 +01:00
Eric Bavier 8d0801ab23 gnu: libgc: Enable C++ support.
* gnu/packages/bdw-gc.scm (libgc-7.2, libgc)[arguments]: Add
  --enable-cplusplus to #:configure-flags.
2016-01-02 16:06:11 -06:00
Eric Bavier 209778717a gnu: Add Asymptote.
* gnu/packages/bdw-gc.scm (libgc-for-c++): New variable.
* gnu/packages/plotutils.scm (asymptote): New variable.
* gnu/packages/patches/asymptote-gsl2.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2016-01-02 16:04:55 -06:00
Ludovic Courtès 51385362f7 graph: %BAG-WITH-ORIGINS-NODE-TYPE includes the origin's guile.
Before that it would include #f for most origins since that the default
value of 'origin-patch-guile'.

* guix/scripts/graph.scm (bag-node-edges): When 'origin-patch-guile'
returns #f, use (default-guile).
* tests/graph.scm ("bag DAG, including origins"): Check for an edge from
O to (default-guile).
2016-01-02 22:25:41 +01:00
Ludovic Courtès f88282af38 graph: %BAG-EMERGED-NODE-TYPE filters out origins.
Fixes <http://bugs.gnu.org/22280>.
Reported by Leo Famulari <leo@famulari.name>.

* guix/scripts/graph.scm (%bag-emerged-node-type)[edges]: Mimic
%BAG-NODE-TYPE.  This is a followup to 38b92da.
2016-01-02 22:25:41 +01:00
Alex Kost 1ae858f333 Update NEWS.
* NEWS: Mention Emacs interface for Hydra and changes in variables.
2016-01-02 17:25:35 +03:00
Alex Kost 5c8994d9d9 emacs: Use "B" key in "Package List" to display latest builds.
* emacs/guix-ui-package.el (guix-package-list-latest-builds): New
  procedure.
  (guix-package-list-mode-map): Bind "B" key to it.
  (guix-output-list-mode-map): Likewise.
* doc/emacs.texi (Emacs List buffer): Document it.
2016-01-02 17:25:35 +03:00
Alex Kost 32950fc846 emacs: Add Hydra interface.
* emacs/guix-utils.el (guix-hexify, guix-number->bool): New procedures.
  (guix-while-null): New macro.
* emacs/guix-hydra.el: New file.
* emacs/guix-hydra-build.el: New file.
* emacs/guix-hydra-jobset.el: New file.
* emacs.am (ELFILES): Add them.
* doc/emacs.texi (Emacs Hydra): New node.
  (Emacs Interface): Add it.
* doc/guix.texi (Top): Add it.
  (Substitutes): Mention Emacs interface.
2016-01-02 17:25:35 +03:00
Alex Kost 494a62f215 emacs: Add 'guix-ui-read-profile'.
* emacs/guix-ui.el (guix-ui-read-profile): New procedure.
* emacs/guix-ui-package.el (guix-search-by-name)
  (guix-search-by-regexp, guix-installed-packages)
  (guix-obsolete-packages, guix-all-available-packages)
  (guix-newest-available-packages): Use it.
* emacs/guix-ui-generation.el (guix-generations)
  (guix-last-generations, guix-generations-by-time): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 8ed2c92eb1 emacs: Add hierarchy of customization groups.
* emacs/guix-buffer.el (guix-define-groups, guix-define-entry-type)
  (guix-define-buffer-type): New macros.
  (guix-buffer-define-interface): Add parent groups for the generated
  custom groups.
* emacs/guix-info.el: Use 'guix-define-buffer-type' to generate custom
  groups.
* emacs/guix-list.el: Likewise.
* emacs/guix-ui.el: Use 'guix-define-groups' to generate custom groups.
  (guix-ui-define-entry-type): New macro.
* emacs/guix-ui-package.el: Use it.
* emacs/guix-ui-generation.el: Use it.
2016-01-02 17:25:35 +03:00
Alex Kost dc690c445e emacs: Return nil instead of "" in completing readers.
* emacs/guix-utils.el (guix-completing-read): New procedure.
  (guix-define-readers): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost ddf6948b22 emacs: Add 'guix-list-get-display-entries'.
* emacs/guix-list.el (guix-list-get-display-entries): New procedure.
* emacs/guix-ui-generation.el (guix-generation-get-display): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost e29d192484 emacs: Add 'list-single' variables.
* emacs/guix-list.el (guix-list-single-entry?): New procedure.
  (guix-list-define-interface): Add ':list-single?' key and generate
  'guix-ENTRY-TYPE-list-single' variables.
* emacs/guix-ui-package.el (guix-package-list-single): Remove.
2016-01-02 17:25:35 +03:00
Alex Kost c80ce104be emacs: Reorganize package/generation UI code.
Move the code for packages/generations interface from "guix-info.el",
"guix-list.el", "guix-base.el" and "guix.el" to "guix-ui-package.el" and
"guix-ui-generation.el".

* emacs/guix-base.el (guix-package-entry->name-specification)
  (guix-package-entries->name-specifications)
  (guix-package-id-and-output-by-output-id)
  (guix-package-installed-outputs, guix-process-package-actions)
  (guix-package-list-type, guix-package-info-type)
  (guix-continue-package-operation-p, guix-get-package-strings)
  (guix-insert-package-strings): Move to "guix-ui-package.el".
  (guix-generation-packages-buffer-name-function, guix-output-name-width)
  (guix-generation-packages-update-buffer, guix-generation-packages)
  (guix-generation-packages-buffer-name-default)
  (guix-generation-packages-buffer-name-long)
  (guix-generation-packages-buffer-name, guix-generation-packages-buffer)
  (guix-generation-insert-packages, guix-generation-insert-package)
  (guix-profile-generation-manifest-file, guix-delete-generations)
  (guix-profile-generation-packages-buffer, guix-switch-to-generation):
  Move to "guix-ui-generation.el".
* emacs/guix-info.el (guix-package-location, guix-package-name)
  (guix-package-source, guix-package-info-source)
  (guix-package-info-heading, guix-package-info-license)
  (guix-package-info-name, guix-package-info-name-button)
  (guix-package-info-version, guix-package-info-location)
  (guix-package-info-synopsis, guix-package-info-description)
  (guix-package-info-obsolete, guix-package-info-installed-outputs)
  (guix-package-info-uninstalled-outputs)
  (guix-package-info-insert-heading)
  (guix-package-info-define-insert-inputs)
  (guix-package-info-obsolete-string)
  (guix-package-info-insert-obsolete-text)
  (guix-package-info-insert-non-unique-text)
  (guix-package-info-insert-outputs, guix-package-info-insert-output)
  (guix-package-info-insert-action-button)
  (guix-package-info-auto-find-source)
  (guix-package-info-auto-download-source)
  (guix-package-info-download-buffer, guix-package-info-show-source)
  (guix-package-info-download-source, guix-package-info-insert-source)
  (guix-package-info-redisplay-after-download)
  (guix-output-info-insert-version, guix-output-info-insert-output):
  Move to "guix-ui-package.el".
  (guix-generation-info-number, guix-generation-info-current)
  (guix-generation-not-current, guix-generation-info-insert-number)
  (guix-generation-info-insert-current): Move to "guix-ui-generation.el".
* emacs/guix-list.el (guix-package-list-generation-marking-enabled)
  (guix-package-list-installed, guix-package-list-obsolete)
  (guix-package-list-get-name, guix-package-list-get-installed-outputs)
  (guix-package-list-marking-check, guix-package-list-mark-outputs)
  (guix-package-list-mark-install, guix-package-list-mark-delete)
  (guix-package-list-mark-upgrade, guix-package-list-mark-upgrades)
  (guix-list-mark-package-upgrades, guix-list-execute-package-actions)
  (guix-package-list-execute, guix-package-list-make-action)
  (guix-package-list-edit, guix-output-list-mark-install)
  (guix-output-list-mark-delete, guix-output-list-mark-upgrade)
  (guix-output-list-mark-upgrades, guix-output-list-make-action)
  (guix-output-list-describe, guix-output-list-edit): Move to
  "guix-ui-package.el".
  (guix-generation-list-get-current, guix-generation-list-switch)
  (guix-generation-list-generations-to-compare)
  (guix-generation-list-compare, guix-generation-list-show-packages)
  (guix-generation-list-show-added-packages)
  (guix-generation-list-show-removed-packages)
  (guix-generation-list-diff, guix-generation-list-diff-manifests)
  (guix-generation-list-ediff, guix-generation-list-ediff-manifests)
  (guix-generation-list-diff-packages)
  (guix-generation-list-ediff-packages)
  (guix-generation-list-mark-delete, guix-generation-list-execute): Move
  to "guix-ui-generation.el".
* emacs/guix.el: Remove.
  (guix, guix-faces, guix-edit): Move to "guix-base.el".
  (guix-list-single-package, guix-search-params, guix-search-history)
  (guix-get-show-packages, guix-search-by-name, guix-search-by-regexp)
  (guix-installed-packages, guix-obsolete-packages)
  (guix-all-available-packages, guix-newest-available-packages): Move
  to "guix-ui-package.el".
  (guix-get-show-generations, guix-generations, guix-last-generations)
  (guix-generations-by-time): Move to "guix-ui-generation.el".
* emacs.am (ELFILES): Remove "guix.el".  Add "guix-ui-package.el" and
  "guix-ui-generation.el".
* doc/emacs.texi (Emacs Appearance): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost b1990426fd emacs: Reorganize 'readers' code.
* emacs/guix-base.el (guix-graph-type-names, guix-refresh-updater-names)
  (guix-lint-checker-names, guix-package-names): Move to...
* emacs/guix-read.el: ... here.
  (guix-read-file-name, guix-define-reader, guix-define-readers): Move to...
* emacs/guix-utils.el: ... here.
2016-01-02 17:25:35 +03:00
Alex Kost 6c40b7b703 emacs: Generalize buffer interface.
Extract the code for defining buffer interface from "guix-base.el",
generalize it and move to "guix-buffer.el".

* emacs.am (ELFILES): Add "emacs/guix-buffer.el".
* emacs/guix-base.el (guix-profile, guix-entries, guix-buffer-type)
  (guix-entry-type, guix-search-type, guix-search-vals, guix-set-vars)
  (guix-get-symbol, guix-show-entries, guix-get-show-entries)
  (guix-set-buffer, guix-history-call, guix-make-history-item)
  (guix-get-params-for-receiving): Remove.
  (guix-switch-to-buffer): Rename to 'guix-buffer-display' and move to
  "guix-buffer.el".
  (guix-get-entries): Rename to 'guix-ui-get-entries' and move to
  "guix-ui.el".
  (guix-buffer-data, guix-buffer-value, guix-buffer-param-title)
  (guix-buffer-name, guix-buffer-history-size)
  (guix-buffer-revert-confirm?, guix-buffer-map, guix-buffer-revert)
  (guix-buffer-after-redisplay-hook, guix-buffer-redisplay)
  (guix-buffer-redisplay-goto-button): Move to...
* emacs/guix-buffer.el: ... here.  New file.
  (guix-buffer-item): New variable.
  (guix-buffer-with-item, guix-buffer-with-current-item)
  (guix-buffer-define-current-item-accessor)
  (guix-buffer-define-current-item-accessors)
  (guix-buffer-define-current-args-accessor)
  (guix-buffer-define-current-args-accessors): New macros.
  (guix-buffer-get-entries, guix-buffer-mode-enable)
  (guix-buffer-mode-initialize, guix-buffer-insert-entries)
  (guix-buffer-show-entries-default, guix-buffer-show-entries)
  (guix-buffer-message, guix-buffer-history-item, guix-buffer-set)
  (guix-buffer-display-entries-current)
  (guix-buffer-get-display-entries-current)
  (guix-buffer-display-entries, guix-buffer-get-display-entries): New
  procedures.
* emacs/guix-info.el: Adjust for the procedures renaming.
  (guix-info-define-interface): Add ':show-entries-function' keyword.
* emacs/guix-list.el: Likewise.
* emacs/guix-ui.el (guix-ui-define-interface): Generate
  'guix-ENTRY-TYPE-BUFFER-TYPE-get-entries' procedure based on
  'guix-ui-get-entries'.
* emacs/guix.el (guix-get-show-packages, guix-get-show-generations):
  Adjust for the procedures renaming.
2016-01-02 17:25:35 +03:00
Alex Kost 8103c22fea emacs: info: Get rid of syntactic fontification.
* emacs/guix-info.el (guix-info-mode-initialize): New procedure.  Set
  'font-lock-defaults' to avoid syntactic fontification.
  (guix-info-define-interface): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 8bff0c796e emacs: Generalize buffer naming.
* emacs/guix-base.el (guix-buffer-name): New procedure.
  (guix-buffer-define-interface): Make ':buffer-name' a required keyword.
  (guix-update-after-operation, guix-buffer-name-function)
  (guix-buffer-name-simple, guix-buffer-name-default, guix-buffer-name)
  (guix-buffer-p, guix-buffers, guix-update-buffer)
  (guix-update-buffers-maybe-after-operation): Adjust, move and rename to...
* emacs/guix-ui.el (guix-ui-update-after-operation)
  (guix-ui-buffer-name-function, guix-ui-buffer-name-simple)
  (guix-ui-buffer-name-default, guix-ui-buffer-name)
  (guix-ui-buffer?, guix-ui-buffers, guix-ui-update-buffer)
  (guix-ui-update-buffers-after-operation): ... this.
  (guix-ui-define-interface): Generate
  'guix-ENTRY-TYPE-BUFFER-TYPE-buffer-name' procedure and pass it as
  ':buffer-name' argument.
  (guix-ui): New custom group.
* emacs/guix-info.el: Specify ':buffer-name' for the defined interfaces.
* emacs/guix-list.el: Likewise.
* doc/emacs.texi (Emacs Appearance): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost 7171d824d7 emacs: info: Buttonize package name heading.
* emacs/guix-info.el (guix-package-info-insert-heading): Insert
  buttonized name specification.
2016-01-02 17:25:35 +03:00
Alex Kost fc7a28897c emacs: Improve messages for packages found by ID.
* emacs/guix-messages.el (guix-message-packages-by-id): New procedure.
  (guix-messages): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 87fe9ecae5 emacs: Generalize buffer reverting.
This is a partial revert of commit d2b299a91f.

* emacs/guix-base.el (guix-revert-buffer): Make it more general by
  removing the code specific to a particular search (a search for
  packages/outputs by ID).  Rename to...
  (guix-buffer-revert): ... this.
2016-01-02 17:25:35 +03:00
Alex Kost 819518d15a emacs: Generalize buffer redisplaying.
* emacs/guix-base.el (guix-buffer-after-redisplay-hook): New variable.
  (guix-redisplay-buffer): Use it.  Remove all arguments and the code
  for moving point to the next button.  Rename to...
  (guix-buffer-redisplay): ... this.
  (guix-buffer-redisplay-goto-button): New procedure.
* emacs/guix-info.el (guix-package-info-show-source): Use it.  Adjust
  accordingly.
  (guix-package-info-redisplay-after-download): Likewise.
2016-01-02 17:25:35 +03:00
Alex Kost e40b3c33f4 emacs: Split 'guix-root-map' keymap.
* emacs/guix-base.el: (guix-root-map): Split into...
  (guix-buffer-map): ... this and...
* emacs/guix-ui.el (guix-ui-map): ... this.
  (guix-ui-define-interface): Generate
  'guix-ENTRY-TYPE-BUFFER-TYPE-mode-map' keymaps inheriting them from
  'guix-ui-map' and 'guix-BUFFER-TYPE-mode-map'.
* emacs/guix-info.el (guix-info-mode-map): Use 'guix-buffer-map'.
* emacs/guix-list.el (guix-list-mode-map): Likewise.
* doc/emacs.texi (Emacs Keymaps): Document new keymaps.
2016-01-02 17:25:35 +03:00
Alex Kost c8e2666a8a emacs: Add wrappers for 'history-size' and 'revert-confirm'.
* emacs/guix-base.el (guix-buffer-history-size): New procedure.
  (guix-buffer-define-interface): Use it in the mode definition.
  (guix-buffer-revert-confirm?): New procedure.
  (guix-revert-buffer): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 574f6727b0 emacs: Split 'guix-param-titles' variable.
Generate 'guix-ENTRY-TYPE-BUFFER-TYPE-titles' variables for each
ENTRY-TYPE and BUFFER-TYPE instead.

* emacs/guix-base.el (guix-param-titles): Remove.
  (guix-buffer-data): New variable.
  (guix-buffer-value, guix-buffer-param-title): New procedures.
  (guix-buffer-define-interface): Add ':titles' keyword.
* emacs/guix-info.el (guix-info-param-title): Adjust accordingly.
* emacs/guix-list.el (guix-list-param-title): Likewise.
  (guix-list-column-titles): Remove.
* doc/emacs.texi (Emacs Appearance): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost 9193fb7c1d emacs: info: Split 'guix-info-format' variable.
* emacs/guix-info.el: Generate 'guix-ENTRY-TYPE-info-format' variables
  for 'package', 'installed-output', 'output' and 'generation' entry
  types.
  (guix-info-format): Remove.
  (guix-info-data): New variable.
  (guix-info-value): New procedure.
  (guix-info-define-interface): Add ':format' keyword.
* emacs/guix-base.el (guix-buffer-define-interface): Add ':reduced?'
  keyword.
* doc/emacs.texi (Emacs Appearance): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost 7735c503b5 emacs: Factorize macros for defining interfaces.
Make a root 'guix-buffer-define-interface' macro.  It should generate a
common code for any type of interface.  Inherit 'guix-info-define-interface'
and 'guix-list-define-interface' from it.  They should provide a general
'info'/'list' interface for any data.  Finally, make
'guix-ui-define-interface' for the common code for interfaces to Guix
packages and generations, and inherit 'guix-ui-info-define-interface' and
'guix-ui-list-define-interface' from it.

* emacs/guix-base.el (guix-define-buffer-type): Rename to...
  (guix-buffer-define-interface): ... this.  Rename internal
  variables ('buf-' -> 'buffer-').  Move ':required' keyword to
  'guix-ui-define-interface'.
* emacs/guix-info.el (guix-info-define-interface): New macro.
  (guix-info-font-lock-keywords): New variable.
* emacs/guix-list.el (guix-list-define-entry-type): Rename to...
  (guix-list-define-interface): ... this.
  (guix-list-font-lock-keywords): New variable.
  (guix-list-describe-ids): Move and rename to...
* emacs/guix-ui.el: New file.
  (guix-ui-list-describe): ... this.
  (guix-ui-define-interface, guix-ui-info-define-interface)
  (guix-ui-list-define-interface): New macros.
  (guix-ui-font-lock-keywords): New variable.
* emacs.am (ELFILES): Add "emacs/guix-ui.el"
2016-01-02 17:25:35 +03:00
Alex Kost 2c7ed388cf emacs: info: Generalize inserting and formatting.
* emacs/guix-info.el: Use a more flexible format for inserting any data.
  (guix-info-ignore-empty-vals): Rename to...
  (guix-info-ignore-empty-values): ... this.
  (guix-info-insert-methods): Merge this and...
  (guix-info-displayed-params): ... this into...
  (guix-info-format): ... this.  Change format specifications.
  (guix-info-title-aliases, guix-info-value-aliases): New variables.
  (guix-info-displayed-params): Adjust for the new format.
  (guix-info-insert-entry): Likewise.
  (guix-package-info-fill-heading): Replace with...
  (guix-info-fill): ... this.
  (guix-info-insert-param): Replace with...
  (guix-info-insert-entry-unit): ... this.
  (guix-info-insert-title-default): Replace with...
  (guix-info-insert-title-format): ... this.
  (guix-info-insert-val-default): Replace with...
  (guix-info-insert-value-format): ... this.
  (guix-info-insert-val-simple): Replace with...
  (guix-info-insert-value-indent): ... this.
  (guix-package-info-insert-source): Adjust accordingly.
  (guix-package-info-insert-heading): Insert only name and version.
  (guix-package-info-define-insert-inputs): Do not generate
  'guix-package-info-insert-ENTRY-TYPE-inputs' procedures.
  (guix-info-fill-column, guix-info-insert-entry-default)
  (guix-info-method-funcall, guix-info-insert-file-path)
  (guix-info-insert-url, guix-info-insert-package-function)
  (guix-info-insert-installed-function)
  (guix-info-insert-output-function)
  (guix-info-insert-generation-function)
  (guix-package-info-heading-params)
  (guix-package-info-insert-with-heading)
  (guix-package-info-insert-description)
  (guix-package-info-insert-location)
  (guix-package-info-insert-full-names)
  (guix-package-info-insert-source-url): Remove.
  (guix-info-fill-column, guix-info-param-title)
  (guix-info-title-function, guix-info-value-function)
  (guix-info-title-method->function)
  (guix-info-value-method->function)
  (guix-info-insert-value-simple): New procedures.
* emacs/guix-utils.el (guix-buttonize, guix-button-type?): New
  procedures.
  (guix-split-string): Split multi-line strings and ignore empty lines.
* doc/emacs.texi (Emacs Appearance): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost 25d2fe8bef emacs: list: Factorize "edit package" commands.
* emacs/guix-list.el: Use separate edit commands instead of a single one.
  (guix-list-for-each-line, guix-list-edit-package): Remove.
  (guix-package-list-edit, guix-output-list-edit): New procedures.
  (guix-package-list-mode-map, guix-output-list-mode-map): Use them.
2016-01-02 17:25:35 +03:00
Alex Kost cf910ceffc emacs: list: Split 'guix-list-format' variable.
* emacs/guix-list.el: Generate 'guix-ENTRY-TYPE-list-format' variables
  for 'package', 'output' and 'generation' entry types.
  (guix-list-format): Remove.
  (guix-list-define-entry-type): Add ':format' keyword.
* doc/emacs.texi (Emacs Appearance): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost 78fdbdc033 emacs: list: Add 'guix-list-mode-initialize'.
* emacs/guix-list.el (guix-list-mode-initialize): New procedure.
  (guix-list-define-entry-type): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 649df66705 emacs: list: Generalize 'sort-key' code.
* emacs/guix-list.el (guix-list-sort-key): New procedure.
  (guix-list-tabulated-sort-key): Use it.
  (guix-list-define-entry-type): Generate
  'guix-ENTRY-TYPE-list-sort-key' variables.
2016-01-02 17:25:35 +03:00
Alex Kost 7b31510f26 emacs: list: Generalize 'describe' code.
* emacs/guix-list.el (guix-list-describe-warning-count): Remove variable.
  (guix-list-define-entry-type): Generate
  'guix-ENTRY-TYPE-list-describe-warning-count' and
  'guix-ENTRY-TYPE-list-describe-function' variables.
  (guix-list-describe-maybe): Remove.  Move the code...
  (guix-list-describe): ... here.
  (guix-list-describe-warning-count, guix-list-describe-entries)
  (guix-list-describe-ids): New procedures.
  (guix-output-list-describe): Adjust accordingly.
  (guix-list-mode-map): Bind "i" key to 'guix-list-describe'.
  (guix-generation-list-mode-map): Remove "i" key.
2016-01-02 17:25:35 +03:00
Alex Kost f768e4b387 emacs: list: Generalize 'marks' code.
* emacs/guix-list.el (guix-list-mark-alist): Rename to...
  (guix-list-marks): ... this
  (guix-list-data, guix-list-default-marks): New variables.
  (guix-list-value, guix-list-additional-marks, guix-list-marks): New
  procedures.
  (guix-list-define-entry-type): Adjust accordingly.
2016-01-02 17:25:35 +03:00
Alex Kost d9c9f9a515 emacs: Add 'guix-alist-put'.
* emacs/guix-utils.el (guix-alist-put, guix-alist-put-1)
  (guix-alist-put!): New procedures.
2016-01-02 17:25:35 +03:00
Alex Kost 4ba476f949 emacs: Add 'guix-keyword-args-let'.
* emacs/guix-utils.el (guix-keyword-args-let): New macro.
  (guix-utils-font-lock-keywords): Add it.
* emacs/guix-base.el (guix-define-buffer-type): Use it.
* emacs/guix-list.el (guix-list-define-entry-type): Use it.
* emacs/guix-read.el (guix-define-readers): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 376af769f9 emacs: list: Configure format in one place.
* emacs/guix-list.el: (guix-list-column-format): Merge this and...
  (guix-list-column-value-methods): ... this into...
  (guix-list-format): ... this.  New variable.
  (guix-list-tabulated-vector): Adjust accordingly.
  (guix-list-tabulated-format): Likewise.
  (guix-list-tabulated-entry): Likewise.
* doc/emacs.texi (Emacs Appearance): Likewise.
2016-01-02 17:25:35 +03:00
Alex Kost 0b9cd3206a emacs: Rename internal procedures.
* emacs/guix-list.el (guix-list-get-param-title): Rename to...
  (guix-list-param-title): ... this.
  (guix-list-get-column-format): Rename to...
  (guix-list-format): ... this.
  (guix-list-get-displayed-params): Rename to...
  (guix-list-displayed-params): ... this.
  (guix-list-get-sort-key): Rename to...
  (guix-list-tabulated-sort-key): ... this.
  (guix-list-make-tabulated-vector): Rename to...
  (guix-list-tabulated-vector): ... this.
  (guix-list-get-list-format): Rename to...
  (guix-list-tabulated-format): ... this.
  (guix-list-get-tabulated-entries): Rename to...
  (guix-list-tabulated-entries): ... this.
  (guix-list-get-tabulated-entry): Rename to...
  (guix-list-tabulated-entry): ... this.
* emacs/guix-info.el (guix-info-get-displayed-params): Rename to...
  (guix-info-displayed-params): ... this.
* emacs/guix-base.el (guix-get-params-for-receiving): Adjust
  accordingly.
  (guix-get-name-spec): Rename to...
  (guix-package-name-specification): ... this.
  (guix-get-full-name): Merge this and...
  (guix-entry-to-specification): ... this into...
  (guix-package-entry->name-specification): ... this.
  (guix-get-installed-outputs): Rename to...
  (guix-package-installed-outputs): ... this.
  (guix-get-package-id-and-output-by-output-id): Rename to...
  (guix-package-id-and-output-by-output-id): ... this.
2016-01-02 17:25:35 +03:00
Alex Kost e86a43d471 emacs: list: Generate numerical sort predicates.
* emacs/guix-list.el: Generate predicates to sort tabulated list
  columns numerically.
  (guix-list-define-numerical-sorter)
  (guix-list-define-numerical-sorters): New macros
  (guix-list-column-format): Use 'guix-list-sort-numerically-0' for
  generation "Number" column.
2016-01-02 17:25:35 +03:00
Alex Kost ceea647c72 emacs: Simplify defining parameter titles.
* emacs/guix-utils.el (guix-symbol-title): New procedure.
* emacs/guix-base.el (guix-get-param-title): Use it.
  (guix-param-titles): Remove most titles as they are automatically
  defined by 'guix-symbol-title'.
2016-01-02 17:25:35 +03:00
Alex Kost 73ce3c19c4 emacs: Add API for 'guix-entry'.
* emacs/guix-info.el: Use new entry procedures.
* emacs/guix-list.el: Likewise.
* emacs/guix-base.el: Likewise.
  (guix-get-entry-by-id): Move and rename to ...
* emacs/guix-entry.el (guix-entry-by-id): ...this.  New file.
  (guix-entry-value, guix-entry-id, guix-entries-by-ids)
  (guix-replace-entry): New procedures.
* emacs.am (ELFILES): Add new file.
2016-01-02 17:25:35 +03:00
Alex Kost 36c00c61fa emacs: Add 'guix-with-indent'.
* emacs/guix-utils.el (guix-with-indent): New macro.
  (guix-memoized-font-lock-keywords): Rename to...
  (guix-utils-font-lock-keywords): ... this.  Add it.
* emacs/guix-info.el (guix-info-insert-entry-default): Use it.
2016-01-02 17:25:35 +03:00
Alex Kost 778437ed9f emacs: Use "cl-list*" instead of "apply #'list".
* emacs/guix-command.el (guix-run-view-build-log): Use cl-list*.
  (guix-run-view-size-map): Likewise.
* emacs/guix-external.el (guix-dot-arguments): Likewise.
2016-01-02 17:25:35 +03:00
Erik Edrosa b989390889 gnu: Add python-markdown.
* gnu/packages/python.scm (python-markdown, python2-markdown): New
variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-01-02 00:07:29 -05:00
宋文武 05d48c5243 gnu: love: Update to 0.10.0.
* gnu/packages/game-development.scm (love): Update to 0.10.0.
2016-01-02 10:31:53 +08:00
Ludovic Courtès 319007c507 gnu: guile-ssh: Update to 0.9.0.
* gnu/packages/ssh.scm (guile-ssh): Update to 0.9.0.
2016-01-01 22:59:20 +01:00
Ludovic Courtès f453f637d5 system: Allow the root file system to be named by UUID.
* gnu/build/file-systems.scm (canonicalize-device-spec)[canonical-title]:
Use 'string->uuid' to check whether SPEC is a UUID.
When SPEC is a string and CANONICAL-TITLE is 'uuid, call 'string->uuid'.
* gnu/system.scm (operating-system-grub.cfg): Add 'root-device'
variable and use it for the "--root=" argument.
2016-01-01 22:50:26 +01:00
Ludovic Courtès f8865db6a0 file-systems: Move 'string->uuid' to the build side.
* gnu/system/file-systems.scm (%uuid-rx, string->uuid): Move to...
* gnu/build/file-systems.scm (%uuid-rx, string->uuid): ... here.  New
variables.
2016-01-01 22:41:35 +01:00
Ludovic Courtès 29824d80ec system: Allow the root file system to have a UUID.
This is a followup to ab64483.

* gnu/system.scm (mapped-device-user): Check whether the title of FS is
'device before calling 'string=?'.
* gnu/system/vm.scm (virtualized-operating-system)[user-file-systems]:
Likewise.
2016-01-01 22:34:13 +01:00
Ludovic Courtès daa8922abc doc: Mention how to verify signatures.
* doc/guix.texi (Binary Installation): Be more precise about signature
verification.  Suggested by Carl Hansen <carlhansen1234@gmail.com>.
2016-01-01 19:01:05 +01:00
Ludovic Courtès e80d2555f5 gnu: findutils: Update to 4.6.0.
* gnu/packages/patches/findutils-absolute-paths.patch: Remove.
* gnu/packages/patches/findutils-test-xargs.patch: New file.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
* gnu/packages/base.scm (findutils): Update to 4.6.0.  Remove
'findutils-absolute-paths.patch' and add 'findutils-test-xargs.patch'.
2016-01-01 01:05:06 +01:00
Ludovic Courtès 7165a91c7d build-system/gnu: Use the long option name for deterministic archives.
This is a followup to 3eb34c6.

* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Use
"--enable-deterministic-archives" instead of "-D" to work around
Binutils bug <https://sourceware.org/bugzilla/show_bug.cgi?id=17671>.
* guix/build/gnu-build-system.scm (strip): Likewise.
2016-01-01 00:49:05 +01:00
Fabian Harfert 45147b0caa gnu: Add xaos.
* gnu/packages/maths.scm (xaos): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2015-12-31 11:29:43 +03:00
Leo Famulari 658212ebf7 gnu: Move cursynth to (gnu packages music).
* gnu/packages/cursynth.scm: Remove.
* gnu/packages/music.scm (cursynth): New variable, from cursynth.scm.
* gnu-system.am (GNU_SYSTEM_MODULES): Remove cursynth.scm.
2015-12-30 21:26:05 -05:00
Leo Famulari 2ef8bbc3ae gnu: libcue: Update source URL.
* gnu/packages/cdrom.scm (libcue)[source]: Update URL.
2015-12-30 19:59:58 -05:00
Efraim Flashner 34da7af4c1 gnu: python-mox3: Update to 0.13.0.
* gnu/packages/openstack.scm (python-mox3): Update to 0.13.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 13fcc6df37 gnu: python-fixtures: Update to 1.4.0.
* gnu/packages/python.scm (python-fixtures): Update to 1.4.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner af1ab77312 gnu: python-pyld: Update to 0.6.8.
* gnu/packages/python.scm (python-pyld): Update to 0.6.8.
2015-12-30 23:16:09 +02:00
Efraim Flashner 1780424035 gnu: python-virtualenv: Update to 13.1.2.
* gnu/packages/python.scm (python-virtualenv): Update to 13.1.2.
[arguments]: Custom test command.
[inputs]: Remove python-nose, add python-pytest.
2015-12-30 23:16:09 +02:00
Efraim Flashner ec89a25cad gnu: python-oslosphinx: Update to 4.2.0.
* gnu/packages/openstack.scm (python-oslosphinx): Update to 4.2.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner f66bb273de gnu: python-oslo.serialization: Update to 2.2.0.
* gnu/packages/openstack.scm (python-oslo.serialization): Update to 2.2.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 4768988887 gnu: python-os-testr: Update to 0.5.0.
* gnu/packages/openstack.scm (python-os-testr): Update to 0.5.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 45f4c28d80 gnu: python-stevedore: Update to 1.10.0.
* gnu/packages/openstack.scm (python-stevedore): Update to 1.10.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 622d21bba9 gnu: python-tempest-lib: Update to 0.12.0.
* gnu/packages/openstack.scm (python-tempest-lib): Update to 0.12.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 690e8c6637 gnu: python-passlib: Update to 1.6.5.
* gnu/packages/python.scm (python-passlib): Update to 1.6.5.
2015-12-30 23:16:09 +02:00
Efraim Flashner 03fd001cef gnu: python-libarchive-c: Update to 2.2.
* gnu/packages/python.scm (python-libarchive-c): Update to 2.2.
2015-12-30 23:16:09 +02:00
Efraim Flashner 99b00dc796 gnu: python-tlsh: Update to 3.4.4.
* gnu/packages/python.scm (python-tlsh): Update to 3.4.4.
2015-12-30 23:16:09 +02:00
Efraim Flashner b8834c219e gnu: python-webob: Update to 1.5.1.
* gnu/packages/python.scm (python-webob): Update to 1.5.1.
2015-12-30 23:16:09 +02:00
Efraim Flashner 1b99553317 gnu: python-flake8: Update to 2.5.1.
* gnu/packages/python.scm (python-flake8): Update to 2.5.1.
2015-12-30 23:16:09 +02:00
Efraim Flashner 2abc397225 gnu: python-pyflakes: Update to 1.0.0.
* gnu/packages/python.scm (python-pyflakes): Update to 1.0.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 3655ee76a6 gnu: python-pyzmq: Update to 15.1.0.
* gnu/packages/python.scm (python-pyzmq): Update to 15.1.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner f56777be0a gnu: python-psutil: Update to 3.3.0.
* gnu/packages/python.scm (python-psutil): Update to 3.3.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 38eb6919e1 gnu: python-pycparser: Update to 2.14.
* gnu/packages/python.scm (python-pycparser): Update to 2.14.
2015-12-30 23:16:09 +02:00
Efraim Flashner d9aa097b96 gnu: python-pyrfc3339: Update to 1.0.
* gnu/packages/python.scm (python-pyrfc3339): Update to 1.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner f7cb984133 gnu: python-nose: Update to 1.3.7.
* gnu/packages/python.scm (python-nose): Update to 1.3.7.
2015-12-30 23:16:09 +02:00
Efraim Flashner ec3bcbc7e4 gnu: python-rpy2: Update to 2.7.6.
* gnu/packages/python.scm (python-rpy2): Update to 2.7.6.
2015-12-30 23:16:09 +02:00
Efraim Flashner 11f97c27bc gnu: pelican: Update to 3.6.3.
* gnu/packages/python.scm (pelican): Update to 3.6.3.
2015-12-30 23:16:09 +02:00
Efraim Flashner e98149b3a4 gnu: python-jinja2: Update to 2.8.
* gnu/packages/python.scm (python-jinja2): Update to 2.8.
2015-12-30 23:16:09 +02:00
Efraim Flashner 8925d4f345 gnu: python-unidecode: Update to 0.04.18.
* gnu/packages/python.scm (python-unidecode): Update to 0.04.18.
2015-12-30 23:16:09 +02:00
Efraim Flashner 7fb9ff4dea gnu: python-blinker: Update to 1.4.
* gnu/packages/python.scm (python-blinker): Update to 1.4.
2015-12-30 23:16:09 +02:00
Efraim Flashner c2a9c1c0bc gnu: python-dateutil: Update to 2.4.2.
* gnu/packages/python.scm (python-dateutil): Update to 2.4.2.
2015-12-30 23:16:09 +02:00
Efraim Flashner 2c3d13fe1b gnu: isync: Update to 1.2.1.
* gnu/packages/mail.scm (isync): Update to 1.2.1.
2015-12-30 23:16:09 +02:00
Efraim Flashner aadf46253a gnu: getmail: Update to 4.48.0.
* gnu/packages/mail.scm (getmail): Update to 4.48.0.
2015-12-30 23:16:09 +02:00
Efraim Flashner 866fade9e5 gnu: notmuch: Update to 0.21.
* gnu/packages/mail.scm (notmuch): Update to 0.21.
2015-12-30 23:16:09 +02:00
Efraim Flashner 70e9d258c4 gnu: youtube-dl: Update to 2015.12.29.
* gnu/packages/video.scm (youtube-dl): Update to 2015.12.29.
2015-12-30 23:16:09 +02:00
Efraim Flashner 31e98ca63f gnu: offlineimap: Update to 6.6.1.
* gnu/packages/mail.scm (offlineimap): Update to 6.6.1.
2015-12-30 23:16:09 +02:00
Ricardo Wurmus 3d5fd24090 gnu: Add Fritzing.
* gnu/packages/engineering.scm (fritzing): New variable.
2015-12-30 20:41:33 +01:00
Ricardo Wurmus b7fa2f9321 licenses: Add CC BY SA 3.0.
* guix/licenses.scm (cc-by-sa3.0): New variable.
2015-12-30 20:41:33 +01:00
Ludovic Courtès 0084aaf3d4 gnu: Add lcov.
* gnu/packages/code.scm (lcov): New variable.
2015-12-30 19:14:04 +01:00
Alex Vong 0c1910ed03 gnu: ladspa: Update URLs.
* gnu/packages/audio.scm (ladspa): Update source and home page url.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-30 18:18:38 +01:00
Ludovic Courtès 223d793903 guix build: Augment %PATCH-PATH when -L is passed.
Fixes <http://bugs.gnu.org/22259>.
Reported by Nikolay Merinov <nikolay.merinov@member.fsf.org>.

* guix/scripts/build.scm (%standard-build-options) <-L>: Augment
%PATCH-PATH.
* tests/guix-package.sh: Add test.
2015-12-30 18:15:54 +01:00
Ludovic Courtès 7a57c96a10 daemon: Build in /tmp/guix-build-*.
* nix/libstore/build.cc (DerivationGoal::startBuilder): Use "guix-build"
instead of "nix-build" for TMPDIR.
* doc/guix.texi (Build Environment Setup): Adjust accordingly.
2015-12-30 18:01:01 +01:00
Andreas Enge f95dad899b gnu: texlive: Patch texmfcnf.lua.
* gnu/packages/texlive.scm (texlive): Patch texmfcnf.lua to point to the
  absolute texlive-texmf tree.
2015-12-30 11:24:26 +01:00
Mark H Weaver 826244f01a gnu: fuse: Fix source URI.
This is a followup to commit b7e7d1b9d3.

* gnu/packages/linux.scm (fuse)[source]: Fix source URI.
2015-12-29 22:25:02 -05:00
Ben Woodcroft 19f4554c94 gnu: Add fraggenescan.
* gnu/packages/bioinformatics.scm (fraggenescan): New variable.
2015-12-29 20:14:03 -05:00
Leo Famulari 6819a8ddd6 gnu: Add shntool.
* gnu/packages/audio.scm (shntool): New variable.
2015-12-29 19:55:21 -05:00
Leo Famulari 6da16993eb gnu: Add cuetools.
* gnu/packages/audio.scm (cuetools): New variable.
2015-12-29 19:55:21 -05:00
Ludovic Courtès 20b978192e daemon: Remove unused 'RemoteStore' class.
* nix/libstore/remote-store.cc, nix/libstore/remote-store.hh: Remove.
* nix/libstore/store-api.cc (readStorePath, readStorePaths): New
functions, formerly in remote-store.cc.
(openStore): Remove reference to 'RemoteStore'.
* daemon.am (libstore_a_SOURCES): Remove remote-store.cc.
(libstore_headers): Remote remote-store.hh.
2015-12-30 01:20:41 +01:00
Efraim Flashner 11afbbc651 gnu: enlightenment: Update to 0.20.2.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.2.
2015-12-29 22:52:20 +02:00
Leo Famulari 6959a13271 gnu: sshfs-fuse: Update source URL.
* gnu/packages/linux.scm (sshfs-fuse)[source]: Update URL.
2015-12-29 14:20:55 -05:00
Leo Famulari b7e7d1b9d3 gnu: fuse: Update to 2.9.4.
* gnu/packages/patches/fuse-CVE-2015-3202.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
* gnu/packages/linux.scm (fuse): Update to 2.9.4.
  [source]: Remove patch.
2015-12-29 14:20:55 -05:00
Efraim Flashner c7d0bf0071 gnu: youtube-dl: Update to 2015.12.23.
* gnu/packages/video.scm (youtube-dl): Update to 2015.12.23.
2015-12-29 09:33:10 +02:00
Ricardo Wurmus 6da2e99e2e gnu: tuxguitar: Set missing GCJFLAGS.
* gnu/packages/music.scm (tuxguitar)[arguments]: Set compiler flags
  "-fsource=1.4" and "-fPIC".
2015-12-29 07:52:19 +01:00
Ricardo Wurmus 5f1c949866 gnu: tuxguitar: Use "modify-phases" syntax.
* gnu/packages/music.scm (tuxguitar)[arguments]: Use "modify-phases"
  syntax.
2015-12-29 07:52:19 +01:00
Leo Famulari c1ff0f2fed gnu: irssi: Update source URL.
* gnu/packages/irssi.scm (irssi)[source]: Update URL.
2015-12-27 17:39:03 -05:00
Efraim Flashner 85d42329b3 gnu: elementary: Update to 1.16.1.
* gnu/packages/enlightenment.scm (elementary): Update to 1.16.1.
2015-12-27 15:33:20 +02:00
Efraim Flashner c1a064c96e gnu: efl: Update to 1.16.1.
* gnu/packages/enlightenment.scm (efl): Update to 1.16.1.
2015-12-27 14:44:29 +02:00
Efraim Flashner e21338bec5 gnu: python-decorator: Update to 4.0.6.
* gnu/packages/python.scm (python-decorator): Update to 4.0.6.
2015-12-26 23:10:53 +02:00
Efraim Flashner 2a2d098195 gnu: python-exif-read: Update to 2.1.2.
* gnu/packages/python.scm (python-exif-read): Update to 2.1.2.
2015-12-26 23:10:53 +02:00
Efraim Flashner 82a3c582a3 gnu: python-coverage: Update to 4.0.3.
* gnu/packages/python.scm (python-coverage): Update to 4.0.3.
2015-12-26 23:10:53 +02:00
Efraim Flashner 9f44228512 gnu: python-pygments: Update to 2.0.2.
* gnu/packages/python.scm (python-pygments): Update to 2.0.2.
2015-12-26 23:10:53 +02:00
Efraim Flashner 2d3a437c79 gnu: python-cffi: Update to 1.4.2.
* gnu/packages/python.scm (python-cffi): Update to 1.4.2.
2015-12-26 23:10:53 +02:00
Efraim Flashner 71c8a804b9 gnu: python-py: Update to 1.4.31.
* gnu/packages/python.scm (python-py): Update to 1.4.31.
2015-12-26 23:10:53 +02:00
Leo Famulari b8ae816b0e gnu: tinyproxy: Update source URL.
* gnu/packages/web.scm (tinyproxy)[source]: Update URL.
2015-12-26 11:47:42 -05:00
Leo Famulari 4beb9f3a3b gnu: zsh: Add alternate source URL.
* gnu/packages/zsh.scm (zsh)[source]: Add alternate URL.
2015-12-26 11:26:57 -05:00
Leo Famulari 7b10135386 gnu: znc: Update to 1.6.2.
* gnu/packages/messaging.scm (znc): Update to 1.6.2.
2015-12-26 11:24:55 -05:00
Leo Famulari eb2371bcdd gnu: znc: Update source URL.
* gnu/packages/messaging.scm (znc)[source]: Update URL.
2015-12-26 11:24:55 -05:00
Mark H Weaver ce755b609d gnu: libpng: Update to 1.5.26 [fixes CVE-2015-8472 and CVE-2015-8540].
* gnu/packages/image.scm (libpng): Update to 1.5.26.
2015-12-26 11:01:01 -05:00
Efraim Flashner fe08b6e1eb gnu: gdk-pixbuf: Update to 2.32.3. (fixes CVE-2015-4491)
* gnu/packages/gtk.scm (gdk-pixbuf): Update to 2.32.3.
2015-12-26 11:01:01 -05:00
Efraim Flashner 4d6b8da717 gnu: cups-filters: Update to 1.4.0. (fixes CVE-2015-8560)
* gnu/packages/cups.scm (cups-filters): Update to 1.4.0.
2015-12-26 11:01:01 -05:00
Leo Famulari 75bae747cc gnu: xlockmore: Update to 5.46.
* gnu/packages/xdisorg.scm (xlockmore): Update to 5.46.
2015-12-26 02:22:20 -05:00
Leo Famulari 20c043587a gnu: xlockmore: Add alternate URL.
* gnu/packages/xdisorg.scm (xlockmore)[source]: Add alternate URL.
2015-12-26 02:17:46 -05:00
Leo Famulari d642053386 gnu: wmctrl: Update source URL.
* gnu/packages/xdisorg.scm (wmctrl)[source]: Update URL.
2015-12-26 01:55:14 -05:00
Leo Famulari 3759bfad32 gnu: colordiff: Update to 1.0.16.
* gnu/packages/patchutils.scm (colordiff): Update to 1.0.16.
2015-12-26 00:10:32 -05:00
Leo Famulari 8d479d27ca gnu: colordiff: Update source URL.
* gnu/packages/patchutils.scm (colordiff)[source]: Update URL.
2015-12-26 00:10:09 -05:00
Leo Famulari 97a79b19d1 gnu: opus-tools: Update source URL.
* gnu/packages/xiph.sch (opus-tools)[source]: Update URL.
2015-12-26 00:00:21 -05:00
Leo Famulari 5b0bcecdd1 gnu: moreutils: Update to 0.57.
* gnu/packages/moreutils.scm (moreutils): Update to 0.57.
2015-12-25 23:59:26 -05:00
Leo Famulari d4ec43392b gnu: lynx: Update source URL.
* gnu/packages/lynx.scm (lynx)[source]: Update URL.
2015-12-25 23:58:33 -05:00
Leo Famulari 4150ac88bc gnu: libsodium: Add alternate URL.
* gnu/packages/crypto.scm (libsodium)[source]: Add alternate URL.
2015-12-25 23:56:15 -05:00
Leo Famulari 8fa16f63e7 gnu: libev: Update source URL.
* gnu/packages/libevent.scm (libev)[source]: Update URL.
2015-12-25 23:51:08 -05:00
Leo Famulari 8f26f23926 gnu: hevea: Update URL.
* gnu/packages/ocaml.scm (hevea)[source]: Update URL.
2015-12-25 23:46:55 -05:00
Leo Famulari 513f8ab4f3 gnu: exim: Update to 4.86.
* gnu/packages/mail.scm (exim): Update to 4.86.
2015-12-25 23:42:17 -05:00
Leo Famulari fc6fdc05cb gnu: exim: Add alternate URL.
* gnu/packages/mail.scm (exim)[source]: Add alternate URL.
2015-12-25 23:42:17 -05:00
Leo Famulari e1921a384c gnu: eudev: Update home-page URL.
* gnu/packages/linux.scm (eudev)[home-page]: Add up-to-date URL.
2015-12-25 23:40:32 -05:00
Leo Famulari 38fa30eb95 guix package: Fix typo in comment.
* guix/scripts/package.scm: Fix typo.
2015-12-25 23:36:42 -05:00
Ricardo Wurmus 9625029401 gnu: Add Bristol.
* gnu/packages/music.scm (bristol): New variable.
2015-12-24 19:39:17 +01:00
Ricardo Wurmus 398abcf81a gnu: lilypond: Update to 2.19.33.
* gnu/packages/music.scm (lilypond): Update to 2.19.33.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus 409be57b09 gnu: lilypond: Build info pages with images.
* gnu/packages/music.scm (lilypond)[arguments]: Set "conf" and "out" to
  "www"; rename phase "hardcode-path-to-gs" to "fix-path-references";
  fix reference to "/bin/sh"; add phase "install-info".
2015-12-24 10:10:40 +01:00
Ricardo Wurmus c493679f9a gnu: Add Yoshimi.
* gnu/packages/music.scm (yoshimi): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus 6a91494898 gnu: Add XML::Compile::WSDL11.
* gnu/packages/xml.scm (perl-xml-compile-wsdl11): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus baeab9b8b9 gnu: Add XML::Compile::SOAP.
* gnu/packages/xml.scm (perl-xml-compile-soap): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus c1d41b5df3 gnu: Add XML::Compile::Cache.
* gnu/packages/xml.scm (perl-xml-compile-cache): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus f7c4dc2f55 gnu: Add XML::LibXML::Simple.
* gnu/packages/xml.scm (perl-xml-libxml-simple): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus 8aad646637 gnu: Add File::Slurp::Tiny.
* gnu/packages/perl.scm (perl-file-slurp-tiny): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus a05996e000 gnu: Add HTML::Template.
* gnu/packages/web.scm (perl-html-template): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus b494a5f1bd gnu: Add XML::Compile.
* gnu/packages/xml.scm (perl-xml-compile): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus 649e1676bc gnu: Add XML::Compile::Tester.
* gnu/packages/xml.scm (perl-xml-compile-tester): New variable.
2015-12-24 10:10:40 +01:00
Ricardo Wurmus dd686c0838 gnu: Add Log::Report.
* gnu/packages/perl.scm (perl-log-report): New variable.
2015-12-24 10:10:39 +01:00
Ricardo Wurmus fc2448bf89 gnu: Add Log::Report::Optional.
* gnu/packages/perl.scm (perl-log-report-optional): New variable.
2015-12-24 10:10:39 +01:00
Ricardo Wurmus c47b85de0c gnu: Add String::Print.
* gnu/packages/perl.scm (perl-string-print): New variable.
2015-12-24 10:10:39 +01:00
Ricardo Wurmus e92468d803 gnu: Add Unicode::LineBreak.
* gnu/packages/perl.scm (perl-unicode-linebreak): New variable.
2015-12-24 10:10:39 +01:00
Ricardo Wurmus 55932aeee1 gnu: Add MIME::Charset.
* gnu/packages/perl.scm (perl-mime-charset): New variable.
2015-12-24 10:10:39 +01:00
Leo Famulari 8f1640ed8f gnu: gusb: Update home-page.
* gnu/packages/gnome.scm (gusb)[home-page]: Update home-page.
2015-12-24 02:16:57 -05:00
Mark H Weaver 097190417f gnu: icecat: Update to 38.5.0-gnu1.
* gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch,
  gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch,
  gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch,
  gnu/packages/patches/icecat-CVE-2015-7205.patch,
  gnu/packages/patches/icecat-CVE-2015-7210.patch,
  gnu/packages/patches/icecat-CVE-2015-7212.patch,
  gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch,
  gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch,
  gnu/packages/patches/icecat-CVE-2015-7214.patch,
  gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch,
  gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch,
  gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch,
  gnu/packages/patches/icecat-freetype-2.6.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/gnuzilla.scm (icecat): Update to 38.5.0-gnu1.
  [source]: Remove patches.
2015-12-23 18:19:59 -05:00
Mark H Weaver bba5de0e43 gnu: nss: Update to 3.20.2.
* gnu/packages/gnuzilla.scm (nss): Update to 3.20.2.
2015-12-23 18:19:59 -05:00
Ben Woodcroft 1b9d4e2e20 gnu: ruby-nokogiri: Upgrade to 1.6.7.1.
* gnu/packages/ruby.scm (ruby-nokogiri): Upgrade to 1.6.7.1.
2015-12-23 14:02:10 -05:00
Ben Woodcroft d000fc92b1 gnu: Add ruby-mini-portile-2.
* gnu/packages/ruby.scm (ruby-mini-portile-2): New variable.
2015-12-23 14:02:06 -05:00
Ricardo Wurmus 4de7aede50 gnu: icedtea7: Update to 2.6.3.
* gnu/packages/java.scm (icedtea7): Update to 2.6.3.
2015-12-23 14:57:58 +01:00
Ricardo Wurmus e7173df87a gnu: icedtea6: Update to 1.13.9.
* gnu/packages/java.scm (icedtea6): Update to 1.13.9.
2015-12-23 14:57:58 +01:00
Ludovic Courtès 05f1e95638 gnu: guile-2.0: Add "lib/guile/2.0/ccache" to the search path.
* gnu/packages/guile.scm (guile-2.0)[native-search-paths]: Add
"lib/guile/2.0/ccache" to GUILE_LOAD_COMPILED_PATH.
2015-12-22 22:29:34 +01:00
Ludovic Courtès 64cb064c0c gnu: python-wrapper: Append "-wrapper" to the underlying package name.
Reported by Federico Beffa <beffa@ieee.org>.

* gnu/packages/python.scm (wrap-python3): Change the default value of
'name' to include the name of PYTHON.  This disambiguates between
'python-minimal-wrapper' and 'python-wrapper'.
2015-12-22 22:24:41 +01:00
Efraim Flashner a9257a873f gnu: libmicrohttpd: Update to 0.9.48.
* gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.48.
2015-12-22 22:50:58 +02:00
Efraim Flashner 0877ef4342 gnu: parallel: Update to 20151222.
* gnu/packages/parallel.scm (parallel): Update to 20151222.
2015-12-22 22:47:44 +02:00
Efraim Flashner 419fa59b17 gnu: sipwitch: Update to 1.9.15.
* gnu/packages/telephony.scm (sipwitch): Update to 1.9.15.
2015-12-22 22:45:41 +02:00
Efraim Flashner 99e6f9c828 gnu: ucommon: Update to 7.0.0.
* gnu/packages/telephony.scm (ucommon): Update to 7.0.0.
[inputs]: Add gnutls.
2015-12-22 22:39:48 +02:00
Mark H Weaver e54465ff85 gnu: isc-dhcp: Disable parallel build.
* gnu/packages/admin.scm (isc-dhcp)[arguments]: Disable parallel build.
2015-12-22 10:45:13 -05:00
Mark H Weaver 6548b1e122 gnu: isc-dhcp: Update to 4.3.3; update bundled bind to 9.9.8-P2.
Fixes CVE-2015-8000 and CVE-2015-8461.

* gnu/packages/admin.scm (isc-dhcp): Update to 4.3.3.
  [inputs]: Add 'bind-source-tarball'.
  [arguments]: Use modify-phases.  Add 'replace-bundled-bind' phase.
  In 'post-configure' phase, avoid hard-coding version numbers of
  bundled bind.
2015-12-21 19:47:27 -05:00
Mark H Weaver f9a5b18897 gnu: bind-utils: Update to 9.10.3-P2.
* gnu/packages/dns.scm (bind-utils): Update to 9.10.3-P2.
  [source]: Use HTTP URI instead of FTP.
2015-12-21 19:47:26 -05:00
Ludovic Courtès ab64483f64 file-systems: The 'device' field can be a UUID (bytevector).
Previously a wrong-type-arg error would be raised when a file system
with a UUID (bytevector) field was encountered.

* gnu/system.scm (other-file-system-services)[device-mappings]: Check
whether FS's device is a string.
2015-12-22 00:29:43 +01:00
Ludovic Courtès be21979d85 file-systems: Add a 'mount?' field.
Fixes <http://bugs.gnu.org/22176>.
Reported by Florian Paul Schmidt <mista.tapas@gmx.net>.

* gnu/system/file-systems.scm (<file-system>)[mount?]: New field.
(file-system->spec): Adjust accordingly.
* gnu/services/base.scm (file-system-dmd-service): Return the empty list
when FILE-SYSTEM has 'mount?' set to false.
(user-processes-service): Select the subset of FILE-SYSTEMS that matches
'file-system-mount?'.
* doc/guix.texi (File Systems): Document it.
2015-12-22 00:29:21 +01:00
Ludovic Courtès e43e84ba7a services: Add 'fstab-service-type'.
* gnu/services/base.scm (file-system->fstab-entry)
(file-systems->fstab): New procedures.
(fstab-service-type): New variable.
* gnu/services/base.scm (file-system-dmd-service): New procedure, taken
from...
(file-system-service-type): ... here.
* gnu/system.scm (essential-services): Add FSTAB-SERVICE-TYPE instance.
2015-12-22 00:04:36 +01:00
Ricardo Wurmus 12d38e8d43 build: Add bioconductor-uri procedure.
* guix/build-system/r.scm (bioconductor-uri): New procedure.
2015-12-21 22:32:01 +01:00
Ricardo Wurmus 8e92cfb101 gnu: Add vmpk.
* gnu/packages/music.scm (vmpk): New variable.
2015-12-21 22:09:47 +01:00
Ricardo Wurmus bf76d7802c gnu: Add drumstick.
* gnu/packages/music.scm (drumstick): New variable.
2015-12-21 22:09:47 +01:00
Leo Famulari ef9006451f gnu: letsencrypt and acme: Update to 0.1.1.
These packages should be updated together.

* gnu/packages/tls.scm (letsencrypt): Update to 0.1.1.
[source]: Use pypi-uri.
* gnu/packages/tls.scm (acme): Update to 0.1.1.
[source]: Use pypi-uri.
2015-12-21 14:35:58 -05:00
Efraim Flashner 704989660f gnu: ffmpeg: Update to 2.8.4.
* gnu/packages/video.scm (ffmpeg): Update to 2.8.4.
2015-12-21 21:30:46 +02:00
Leo Famulari d12717cba0 doc: Be more explicit in example of file-systems configuration.
* gnu/system/examples/bare-bones.tmpl (file-systems): Change device
label.
* gnu/system/examples/desktop.tmpl (file-systems): Likewise.
2015-12-21 13:12:07 -05:00
Leo Famulari dd81635571 doc: Explain significance of partition labels.
* doc/guix.texi (Preparing for Installation): Point out relationship
between partition labels and the file-system configuration.
2015-12-21 12:53:12 -05:00
Leo Famulari f0150f8724 gnu: grub: Add fix for CVE-2015-8730.
* gnu/packages/patches/grub-CVE-2015-8370.patch: New file.
* gnu-system.am (dist_patch_DATA): Register patch.
* gnu/packages/grub.scm: Apply patch.
2015-12-21 12:33:55 -05:00
Ricardo Wurmus e2cd1d0fb9 gnu: Add GenomicRanges.
* gnu/packages/bioinformatics.scm (r-genomicranges): New variable.
2015-12-21 17:22:16 +01:00
Ricardo Wurmus 0e7d5560de gnu: Add XVector.
* gnu/packages/bioinformatics.scm (r-xvector): New variable.
2015-12-21 17:22:16 +01:00
Ricardo Wurmus bf7764b74f gnu: Add GenomeInfoDb.
* gnu/packages/bioinformatics.scm (r-genomeinfodb): New variable.
2015-12-21 17:22:16 +01:00
Ricardo Wurmus 78addcb0eb gnu: Add IRanges.
* gnu/packages/bioinformatics.scm (r-iranges): New variable.
2015-12-21 17:22:16 +01:00
Ricardo Wurmus 7485129e4f gnu: Add S4Vectors.
* gnu/packages/bioinformatics.scm (r-s4vectors): New variable.
2015-12-21 17:22:16 +01:00
Ricardo Wurmus d29b25c490 gnu: Add BiocGenerics.
* gnu/packages/bioinformatics.scm (r-biocgenerics): New variable.
2015-12-21 17:22:16 +01:00
Ricardo Wurmus 9fba89e829 gnu: Add r-acsnminer.
* gnu/packages/bioinformatics.scm (r-acsnminer): New variable.
2015-12-21 17:21:26 +01:00
Ricardo Wurmus 9e47f30b08 gnu: Add r-gridextra.
* gnu/packages/statistics.scm (r-gridextra): New variable.
2015-12-21 17:21:26 +01:00
Ricardo Wurmus b73751c8ff gnu: Add r-gtable.
* gnu/packages/statistics.scm (r-gtable): New variable.
2015-12-21 17:21:26 +01:00
Ricardo Wurmus 77bdb276e9 gnu: Add r-rmarkdown.
* gnu/packages/statistics.scm (r-rmarkdown): New variable.
* gnu/packages/haskell.scm: Do not select libxml2 from the xml module to
  prevent circular package module imports.
2015-12-21 17:13:44 +01:00
Ricardo Wurmus 4c1f2705b5 gnu: Add r-catools.
* gnu/packages/statistics.scm (r-catools): New variable.
2015-12-21 17:13:44 +01:00
Ricardo Wurmus bb6d2dadf7 gnu: Add r-bitops.
* gnu/packages/statistics.scm (r-bitops): New variable.
2015-12-21 17:13:44 +01:00
Ricardo Wurmus 8406138b72 gnu: Add AdaptiveSparsity.
* gnu/packages/machine-learning.scm (r-adaptivesparsity): New variable.
2015-12-21 16:05:38 +01:00
Ricardo Wurmus e22d4ca4c4 gnu: Add r-rcpparmadillo.
* gnu/packages/maths.scm (armadillo-for-rcpparmadillo): New variable.
* gnu/packages/statistics.scm (r-rcpparmadillo): New variable.
2015-12-21 16:05:37 +01:00
Ricardo Wurmus b15e47f9e6 gnu: Add armadillo.
* gnu/packages/maths.scm (armadillo): New variable.
2015-12-21 15:47:40 +01:00
Ricardo Wurmus b1186502a4 doc: Fix outdated claim about CRAN importer.
* doc/guix.texi: The CRAN importer no longer extracts information from
  the HTML package description but from the package's DESCRIPTION file.
2015-12-21 15:25:10 +01:00
Ricardo Wurmus be036757bd import: Drop empty list items.
* guix/import/cran.scm (listify): Remove empty strings from result list.
2015-12-21 15:24:54 +01:00
Ricardo Wurmus 0cb5bc2cff http-client: Support basic authentication.
* guix/http-client.scm (http-fetch): Add Authorization header to request
  when the URI contains userinfo.
2015-12-21 15:24:44 +01:00
Ricardo Wurmus 086e498bcf gnu: Add libgit2.
* gnu/packages/version-control.scm (libgit2): New variable.
2015-12-21 15:22:14 +01:00
Ben Woodcroft 02f35bb5a7 gnu: mafft: Update to 7.267.
* gnu/packages/bioinformatics.scm (mafft): Update to 7.267.
[arguments]: Don't include mafft-homologs manpage.
[inputs]: Add gawk and grep.
[propagated-inputs]: Add coreutils.
2015-12-21 15:16:01 +01:00
Mathieu Lirzin 1ef3f91a70 gnu: rxvt-unicode: Install the terminal capability data.
This provides the necessary terminal capability data, which are required
by ncurses-based applications.

* gnu/packages/xdisorg.scm (rxvt-unicode)[native-inputs]: Add ncurses.
[arguments]: Set the destination of the terminfo files.
[native-search-path]: New field.  Make them automatically available to
the user.
2015-12-21 13:35:34 +01:00
Efraim Flashner 72d8b5baf4 gnu: msmtp: Update to 1.6.3.
* gnu/packages/mail.scm (msmtp): Update to 1.6.3.
[inputs]: Add libsecret.
2015-12-21 09:36:15 +02:00
Efraim Flashner ec92806ae5 gnu: claws-mail: Update to 3.13.1.
* gnu/packages/mail.scm (claws-mail): Update to 3.13.1.
2015-12-21 09:17:47 +02:00
Efraim Flashner 56918e26cf gnu: python-cython: Update to 0.23.4.
* gnu/packages/python.scm (python-cython): Update to 0.23.4.
2015-12-21 06:55:13 +02:00
David Thompson e99711af22 gnu: ruby: Update to 2.2.4.
This version fixes CVE-2015-7551.

* gnu/packages/ruby.scm (ruby): Update to 2.2.4.
2015-12-20 22:40:53 -05:00
Ludovic Courtès c5b303c57f lint: The CPE name of GRUB is "grub2".
Reported by Leo Famulari.

* guix/scripts/lint.scm (package-name->cpe-name): Add "grub".
2015-12-20 22:34:22 +01:00
Ludovic Courtès 724a7d9c74 packages: Remove now redundant graph procedures.
These procedures are now redundant with those in (guix graph) and are no
longer used since commit a51cbecb.

* gnu/packages.scm (vhash-refq, package-dependencies)
(package-direct-dependents, package-transitive-dependents)
(package-covering-dependents): Remove.
2015-12-20 22:34:22 +01:00
Ludovic Courtès ccda8f7d7f profiles: Honor search paths of propagated inputs.
Fixes <http://bugs.gnu.org/22073>.
Reported by Federico Beffa <beffa@ieee.org>.

* guix/profiles.scm (package->manifest-entry): Use
'package-transitive-native-search-paths' when computing
'search-paths' field.
* tests/profiles.scm ("package->manifest-entry, search paths"): New test.
2015-12-20 22:34:22 +01:00
Ludovic Courtès aa8e051532 packages: Add 'package-transitive-native-search-paths'.
* guix/packages.scm (package-transitive-native-search-paths): New
procedure.
* tests/packages.scm ("package-transitive-native-search-paths"): New
test.
2015-12-20 22:34:22 +01:00
Efraim Flashner 54b7f63a72 gnu: offlineimap: Update to 6.6.0.
* gnu/packages/mail.scm (offlineimap): Update to 6.6.0.
2015-12-20 21:39:18 +02:00
Efraim Flashner b5d47a5a53 gnu: gnupg: Update to 1.4.20.
* gnu/packages/gnupg.scm (gnupg-1): Update to 1.4.20.
2015-12-20 20:07:31 +02:00
宋文武 a4df575631 gnu: Add gnome-shell.
* gnu/packages/gnome.scm (gnome-shell): New variable.
2015-12-20 18:59:22 +08:00
宋文武 b645146f00 gnu: Add gnome-control-center.
* gnu/packages/gnome.scm (gnome-control-center): New variable.
2015-12-20 18:59:22 +08:00
宋文武 b96c42605b gnu: Add gnome-bluetooth.
* gnu/packages/gnome.scm (gnome-bluetooth): New variable.
2015-12-20 18:59:22 +08:00
宋文武 8e1dd04f45 gnu: Add libgtop.
* gnu/packages/gnome.scm (libgtop): New variable.
2015-12-20 18:59:21 +08:00
宋文武 e682327976 gnu: Add colord-gtk.
* gnu/packages/freedesktop.scm (colord-gtk): New variable.
2015-12-20 18:59:21 +08:00
宋文武 6976e7d2ff gnu: Add telepathy-logger.
* gnu/packages/freedesktop.scm (telepathy-logger): New variable.
2015-12-20 18:59:21 +08:00
Efraim Flashner ff80b96378 gnu: tilda: Update to 1.3.1.
* gnu/packages/terminals.scm (tilda): Update to 1.3.1.
2015-12-20 09:40:56 +02:00
Ludovic Courtès 604d20a251 gnu: Add tlsdate.
* gnu/packages/ntp.scm (tlsdate): New variable.
2015-12-19 23:16:18 +01:00
宋文武 04dc6c9992 gnu: mpv: Update to 0.14.0.
* gnu/packages/video.scm (mpv): Update to 0.14.0.
2015-12-19 12:21:59 +08:00
宋文武 599fd84227 gnu: mpv: Fix build by using pkg-config for smbclient.
This is a followup to commit 710964d.

* gnu/packages/video.scm (mpv)[arguments]: Remove 'patch-wscript' phase.
2015-12-19 12:15:59 +08:00
Ludovic Courtès 7db0799dc9 gnu: agg: Update URLs.
* gnu/packages/graphics.scm (agg)[source, home-page]: Add up-to-date
URLs.
2015-12-19 00:42:10 +01:00
Ludovic Courtès 3ac732715d gnu: Use #:prefix when importing (guix licenses).
This works around a problem with #:hide, whereby Guile would report
'zlib', 'openssl', and/or 'expat as colliding bindings at run time
despite the #:hide.

* gnu/packages/linux.scm: Use #:prefix license for (guix licenses).
* gnu/packages/haskell.scm: Likewise.
2015-12-19 00:34:00 +01:00
Ludovic Courtès 793bcc1933 gnu: Do not #:select from (gnu packages …) modules.
This is to avoid <http://bugs.gnu.org/15540>.

* gnu/packages/bittorrent.scm: Do not #:select from (gnu packages
compression).
* gnu/packages/dictionaries.scm: Likewise.
* gnu/packages/disk.scm: Likewise.
* gnu/packages/gimp.scm: Likewise.
* gnu/packages/haskell.scm: Likewise.
2015-12-19 00:22:42 +01:00
Ludovic Courtès 53088d0045 gnu: commencement: Build Bison deterministically.
Before that entries in liby.a would contain the build time.

* gnu/packages/commencement.scm (bison-boot1): Add #:make-flags.
2015-12-19 00:02:37 +01:00
Ludovic Courtès 3eb34c631a build-system/gnu: Always pass "-D" to strip/objcopy.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Add "-D" to
  #:strip-flags.
* guix/build/gnu-build-system.scm (strip): Likewise.  Also pass "-D" to
  OBJCOPY-COMMAND.
2015-12-18 23:58:51 +01:00
Ludovic Courtès f1e0c85ad2 gnu: commencement: Build the final Bash with "bison-boot1".
This removes a round of Bison + Flex + M4 + Perl rebuild.

* gnu/packages/commencement.scm (bash-final): Add 'native-inputs'
field pointing to BISON-BOOT1.
2015-12-18 23:57:11 +01:00
Ludovic Courtès 32243bfb57 gnu: commencement: Avoid redundant Perl rebuild.
This removes a redundant (yet different) "perl-boot0" node from the
early derivation graph.

* gnu/packages/commencement.scm (bison-boot1): Move 'native-inputs'
field to the final package.  Previously PERL-BOOT0 got rebuilt with
%BOOT0-INPUTS, leading to a different derivation.
(static-bash-for-glibc): Likewise.
2015-12-18 23:53:00 +01:00
Ludovic Courtès 09964b4fc6 gnu: commencement: Add "-boot0" to early packages.
* gnu/packages/commencement.scm (diffutils-boot0)[name]: New field.
* gnu/packages/commencement.scm (findutils-boot0, file-boot0,
perl-boot0): Change 'name' field to include "-boot0".
2015-12-18 22:19:07 +01:00
Ludovic Courtès 009b53fd1c gnu: gcc: Prefer language-specific variables over 'CPATH'.
Suggested by Andy Wingo <wingo@igalia.com>.
Fixes <http://bugs.gnu.org/22186>.

* gnu/packages/gcc.scm (gcc-4.7)[native-search-paths]: Remove 'CPATH';
add 'C_INCLUDE_PATH' and 'CPLUS_INCLUDE_PATH' instead.
* gnu/packages/gcc.scm (custom-gcc): Add 'search-paths' parameter and
honor it.
(%generic-search-paths): New variable.
(gfortran-4.8, gfortran-4.9, gfortran, gfortran-5, gccgo-4.8): Pass
%GENERIC-SEARCH-PATHS to 'custom-gcc'.
(gcj)[native-search-paths]: New field.
(gcc-objc-4.8, gcc-objc++-4.8): Use 'OBJC_INCLUDE_PATH' and
'OBJCPLUS_INCLUDE_PATH', respectively.
2015-12-18 21:38:49 +01:00
Ludovic Courtès 8309c3899a gnu: commencement: Use GMP 6.0.0a for bootstrapping.
* gnu/packages/multiprecision.scm (gmp-6.0): New variable.
* gnu/packages/commencement.scm (gcc-boot0, gcc-final): Use it.
* gnu/packages/patches/gmp-arm-asm-nothumb.patch: New file, reinstated
from before e414a7d.
* gnu-system.am (dist_patch_DATA): Add it.
2015-12-18 18:38:22 +01:00
Ludovic Courtès bf46f74160 gnu: key-mon: Remove unnecessary propagated inputs.
* gnu/packages/key-mon.scm (key-mon)[propagated-inputs]: Rename to...
[inputs]: ... this.  Propagated was unnecessary since the 'key-mon'
program is wrapped.
2015-12-18 11:04:22 +01:00
Ludovic Courtès 594e7b479a gnu: python2-pygtk: Add "doc" output.
* gnu/packages/gtk.scm (python2-pygtk)[outputs]: New field.
[arguments]: Add 'set-gtk-doc-directory' phase.
2015-12-18 11:04:22 +01:00
Ludovic Courtès ae115bc75a gnu: python2-pygtk: Use 'modify-phases'.
* gnu/packages/gtk.scm (python2-pygtk)[arguments]: Use 'modify-phases'.
2015-12-18 11:04:22 +01:00
Ludovic Courtès be4fbbe01b gnu: gimp: Add "doc" output.
* gnu/packages/gimp.scm (gimp)[outputs, arguments]: New fields.
2015-12-18 11:04:22 +01:00
Ludovic Courtès 72a06d3e32 gnu: goffice: Add "doc" output.
* gnu/packages/gnome.scm (goffice)[outputs, arguments]: New fields.
(goffice-0.8)[arguments]: Append arguments from GOFFICE.
2015-12-18 11:04:22 +01:00
Andy Wingo d8c18af834 gnu: Add dovecot service
* gnu/services/mail.scm: New file.
(&dovecot-configuration-error, dovecot-configuration-error?)
(dovecot-service, dovecot-configuration, dict-configuration)
(passdb-configuration, userdb-configuration)
(unix-listener-configuration, fifo-listener-configuration)
(inet-listener-configuration, service-configuration)
(protocol-configuration, plugin-configuration, mailbox-configuration)
(namespace-configuration, opaque-dovecot-configuration): New public
variables.

* gnu-system.am (GNU_SYSTEM_MODULES): Add (gnu services mail).

* doc/guix.texi (Mail Services): New node.
2015-12-18 09:24:27 +01:00
Andy Wingo fd5c70f867 gnu: dovecot: Add linux-pam to inputs.
* gnu/packages/mail.scm (dovecot): Add linux-pam to inputs, enabling the
  PAM auth driver.
2015-12-18 09:24:27 +01:00
David Thompson 6a51e95b66 gnu: sdl-image: Add libwebp input.
* gnu/packages/sdl.scm (sdl-image)[propagated-inputs]: Add libwebp.
2015-12-17 22:32:05 -05:00
David Thompson d3f6a1defb gnu: Add sdl2-ttf.
* gnu/packages/sdl.scm (sdl2-ttf): New variable.
2015-12-17 22:01:49 -05:00
David Thompson 855e293981 gnu: Add sdl2-mixer.
* gnu/packages/sdl.scm (sdl2-mixer): New variable.
2015-12-17 22:01:49 -05:00
David Thompson 6813f70a5c gnu: Add sdl2-image.
* gnu/packages/sdl.scm (propagated-inputs-with-sdl2): New procedure.
(sdl2-image): New variable.
2015-12-17 22:01:48 -05:00
宋文武 710964d179 gnu: samba: Update to 4.3.2.
* gnu/packages/samba.scm (samba): Update to 4.3.2.  Add more inputs.
[arguments]: Remove #:modules and #:imported-modules.  Remove 'chdir'
and 'add-lib-to-runpath' from #:phases.  Use 'modify-phases' syntax.
2015-12-18 10:30:17 +08:00
宋文武 52513595ad gnu: Add ldb.
* gnu/packages/samba.scm (ldb): New variable.
2015-12-18 10:30:17 +08:00
宋文武 0674b3c96d gnu: Add tevent.
* gnu/packages/samba.scm (tevent): New variable.
2015-12-18 10:30:17 +08:00
宋文武 095da02342 gnu: talloc: Update to 2.1.5.
* gnu/packages/samba.scm (talloc): Update to 2.1.5.
[arguments]: Modify wscript to skip the 'magic_differs' test.
2015-12-18 10:30:17 +08:00
宋文武 960ae0cde4 gnu: talloc: Use 'modify-phases' syntax.
* gnu/packages/samba.scm (talloc)[arguments]: Use 'modify-phases' syntax.
2015-12-18 10:30:17 +08:00
宋文武 c2fb20761a gnu: Add libpwquality.
* gnu/packages/password-utils.scm (libpwquality): New variable.
2015-12-18 10:30:16 +08:00
宋文武 72029c8bf1 gnu: Add cracklib.
* gnu/packages/password-utils.scm (cracklib): New variable.
2015-12-18 10:30:16 +08:00
David Thompson f464016d60 gnu: Add obs.
* gnu/packages/video.scm (obs): New variable.
2015-12-17 15:01:08 -05:00
Mark H Weaver 3faf214a0b gnu: icecat: Add fixes for several security flaws.
* gnu/packages/patches/icecat-CVE-2015-7201-pt1.patch,
  gnu/packages/patches/icecat-CVE-2015-7201-pt2.patch,
  gnu/packages/patches/icecat-CVE-2015-7201-pt3.patch,
  gnu/packages/patches/icecat-CVE-2015-7205.patch,
  gnu/packages/patches/icecat-CVE-2015-7210.patch,
  gnu/packages/patches/icecat-CVE-2015-7212.patch,
  gnu/packages/patches/icecat-CVE-2015-7213-pt1.patch,
  gnu/packages/patches/icecat-CVE-2015-7213-pt2.patch,
  gnu/packages/patches/icecat-CVE-2015-7214.patch,
  gnu/packages/patches/icecat-CVE-2015-7222-pt1.patch,
  gnu/packages/patches/icecat-CVE-2015-7222-pt2.patch,
  gnu/packages/patches/icecat-CVE-2015-7222-pt3.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patches.
2015-12-17 14:12:06 -05:00
Mark H Weaver cbbe1a1c2c gnu: subversion: Update to 1.8.15 [fixes CVE-2015-5343].
* gnu/packages/version-control.scm (subversion): Update to 1.8.15.
2015-12-17 14:12:06 -05:00
Ricardo Wurmus b809cc9add gnu: ruby-unf-ext: Build extension.
* gnu/packages/ruby.scm (ruby-unf-ext)[arguments]: Add phase "build-ext"
  to build "unf_ext.so".
2015-12-17 14:26:21 +01:00
Eric Bavier 44157e9f3c gnu: Add cpulimit.
* gnu/packages/admin.scm (cpulimit): New variable.
2015-12-16 20:57:51 -06:00
Ludovic Courtès c5b65f7e2b gnu: glibc: Remove timestamp from 'nscd' binary.
This makes libc bit-for-bit reproducible per '--rounds=2'.

* gnu/packages/base.scm (glibc)[arguments] <pre-configure>: Remove
__DATE__ and __TIME__ from nscd_stat.c.
2015-12-16 22:05:30 +01:00
Mark H Weaver 8ae95578a7 gnu: linux-libre: Update to 4.3.3.
* gnu/packages/linux.scm (linux-libre): Update to 4.3.3.
2015-12-16 10:47:15 -05:00
Ludovic Courtès 6042f40bfa gnu: pcre: Add "doc" output.
* gnu/packages/pcre.scm (pcre)[outputs]: New field.
2015-12-15 23:35:09 +01:00
Ludovic Courtès 0573bb5e61 gnu: util-linux: Do not build static libraries.
* gnu/packages/linux.scm (util-linux)[arguments]: Pass --disable-static.
2015-12-15 23:28:29 +01:00
Ludovic Courtès d7170f449c gnu: gettext: Add "doc" output.
* gnu/packages/gettext.scm (gnu-gettext)[outputs]: New field.
2015-12-15 23:12:20 +01:00
Ludovic Courtès 27ec9624ca gnu: ncurses: Add "doc" output.
* gnu/packages/ncurses.scm (ncurses)[outputs]: New field.
[arguments] <configure>: Replace standard 'configure' phase.
<remove-shebang-phase>: Remove "mandir=" line from 'ncursesw6-config'.
2015-12-15 23:02:51 +01:00
Ludovic Courtès de6d9f4553 gnu: ncurses: Add 'TERMINFO_DIRS' search path variable.
* gnu/packages/ncurses.scm (ncurses)[native-search-paths]: New field.
2015-12-15 22:27:31 +01:00
Ludovic Courtès 4d28b97c46 gnu: bash: Add "doc" output.
* gnu/packages/bash.scm (bash)[outputs]: Add "doc" output.
2015-12-15 22:22:59 +01:00
Alex Kost 1ccdc7f0be emacs: Use socket instead of port.
Suggested by Florian Paul Schmidt.

* emacs/guix-backend.el (guix-default-port): Remove.
  (guix-repl-socket-file-name-function, guix-repl-current-socket): New
  variables.
  (guix-repl-socket-file-name, guix-repl-delete-socket-maybe): New
  procedures.
  (guix-get-guile-program): Take socket as an optional argument.
  (guix-start-repl-maybe): Adjust accordingly.
2015-12-15 21:35:35 +03:00
Alex Kost 7ccb3ad3c1 emacs: 'node-type' is in (guix graph) now.
This is a followup to commit 8fb583714f.

* emacs/guix-main.scm (graph-type-names): Use 'node-type-name'
  from (guix graph) module.
2015-12-15 21:35:35 +03:00
Federico Beffa fceac88039 gnu: python-ipython: Patch 'ctypes' bug.
* gnu/packages/patches/python-ipython-inputhook-ctype.patch: New patch.
* gnu/packages/python.scm (python-ipython): Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2015-12-15 18:05:42 +01:00
Ludovic Courtès 304e4f5135 gnu: grep: Add missing dependency on Perl.
* gnu/packages/base.scm (grep)[native-inputs]: New field.
* gnu/packages/commencement.scm (grep-final): Likewise.
2015-12-15 18:04:28 +01:00
Ludovic Courtès a2a9bba43c gnu: bash: Update to patch level 42.
* gnu/packages/bash.scm (%patch-series-4.3): Add patches 40 to 42.
2015-12-15 17:59:49 +01:00
Efraim Flashner 5bd88cf1e3 gnu: python-click: Update to 6.2.
* gnu/packages/python.scm (python-click): Update to 6.2.
[source]: Change to pypi syntax.
2015-12-15 18:31:13 +02:00
Efraim Flashner 664e6c3a95 gnu: python-keyring: Update to 5.7.1.
* gnu/packages/python.scm (python-keyring): Update to 5.7.1.
[source]: Change to pypi syntax.
[native-inputs]: Add python-setuptools-scm.
[arguments]: Remove argument to replace unpack with unzip.
2015-12-15 18:31:13 +02:00
宋文武 ba3cb5ab5c gnu: gnome-session: Add input gsettings-desktop-schemas.
* gnu/packages/gnome.scm (gnome-session)[build-system]: Switch to
  GLIB-OR-GTK-BUILD-SYSTEM.
[inputs]: Add gsettings-desktop-schemas.
2015-12-15 21:44:03 +08:00
宋文武 9a3a8b8edd gnu: clutter-gtk: Propagate inputs.
* gnu/packages/gnome.scm (clutter-gtk): Move clutter and gtk+ to 'propagated-inputs'.
2015-12-15 21:42:02 +08:00
宋文武 ca473fc21d gnu: tdb: Update to 1.3.8.
* gnu/packages/databases.scm (tdb): Update to 1.3.8.
[source]: Switch to https URI.
2015-12-15 21:16:42 +08:00
Alex Vong 2ad9515c50 gnu: youtube-dl: Install man pages and completion files.
* gnu/packages/video.scm (youtube-dl) [arguments]: Add
fix-the-data-directories phase.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-15 13:45:20 +01:00
Ludovic Courtès e0508b6bf7 doc: Give another example use of 'propagated-inputs'.
Suggested by Leo Famulari <leo@famulari.name>.

* doc/guix.texi (package Reference): Explain 'propagated-inputs' for
non-C languages.
2015-12-15 13:43:27 +01:00
Efraim Flashner 75f52fca95 gnu: enlightenment: Update to 0.20.1.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.1.
2015-12-15 11:45:44 +02:00
Leo Famulari a036e59da7 gnu: tmux: Update to 2.1.
* gnu/packages/tmux.scm (tmux): Update to 2.1.
2015-12-14 23:23:00 -05:00
Ludovic Courtès 9d3994f700 gexp: 'local-file' resolves relative file names.
* guix/gexp.scm (<local-file>): Rename constructor to '%%local-file'.
Add 'absolute' field.
(%local-file, extract-directory, absolute-file-name): New procedures.
(current-source-directory): New macro.
(local-file): Adjust call to '%local-file'.
(local-file-absolute-file-name): New procedure.
(local-file-compiler): Force the 'absolute' field.
* tests/guix-system.sh: Test whether 'local-file' canonicalization
works.
* doc/guix.texi (G-Expressions): Adjust.
2015-12-14 19:57:42 +01:00
Ludovic Courtès 4fef1e850e profiles: Silence Info installation.
* guix/profiles.scm (info-dir-file)[build]: Pass --silent to
'install-info'.
2015-12-14 19:57:42 +01:00
Ricardo Wurmus 0c4e762570 gnu: Add ruby-redcloth.
* gnu/packages/ruby.scm (ruby-redcloth): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus d56ff88b6c gnu: Add ruby-sanitize.
* gnu/packages/ruby.scm (ruby-sanitize): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus ac09beba84 gnu: Add ruby-pygmentize.
* gnu/packages/ruby.scm (ruby-pygmentize): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 0c80451e81 gnu: Add ruby-cutest.
* gnu/packages/ruby.scm (ruby-cutest): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus ad686ef3fc gnu: Add ruby-clap.
* gnu/packages/ruby.scm (ruby-clap): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus c2c4e5b2ee gnu: Add ruby-nokogumbo.
* gnu/packages/ruby.scm (ruby-nokogumbo): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus e1c63590ef gnu: Add Gumbo Parser.
* gnu/packages/web.scm (gumbo-parser): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 3996f0aadc gnu: Add ruby-crass.
* gnu/packages/ruby.scm (ruby-crass): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus f60f500222 gnu: Add ruby-nokogiri-diff.
* gnu/packages/ruby.scm (ruby-nokogiri-diff): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 2632a06712 gnu: Add ruby-tdiff.
* gnu/packages/ruby.scm (ruby-tdiff): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 3a6989ce3a gnu: Add ruby-unf-ext.
* gnu/packages/ruby.scm (ruby-unf-ext): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 5799bc2b1f gnu: Add ruby-netrc.
* gnu/packages/ruby.scm (ruby-netrc): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 051deeb79d gnu: Add ruby-guard.
* gnu/packages/ruby.scm (ruby-guard): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus cf1a01f48c gnu: ruby-listen: Add rb-fsevent to inputs.
* gnu/packages/ruby.scm (ruby-listen)[propagated-inputs]: Add
  "ruby-rb-fsevent".
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 16b324cdf4 gnu: Add ruby-rb-fsevent.
* gnu/packages/ruby.scm (ruby-rb-fsevent): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus b004fb6a8a gnu: Add ruby-saikuro-treemap.
* gnu/packages/ruby.scm (ruby-saikuro-treemap): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 763624f566 gnu: Add ruby-json-pure.
* gnu/packages/ruby.scm (ruby-json-pure): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 53239b5f96 gnu: Add ruby-utils.
* gnu/packages/ruby.scm (ruby-utils): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 6e376ca46a gnu: Add ruby-pstree.
* gnu/packages/ruby.scm (ruby-pstree): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus fd83a212bc gnu: Add ruby-term-ansicolor.
* gnu/packages/ruby.scm (ruby-term-ansicolor): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus d8cafe29df gnu: Add ruby-minitest-tu-shim.
* gnu/packages/ruby.scm (ruby-minitest-tu-shim): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus bc8277e458 gnu: Add ruby-gem-hadar.
* gnu/packages/ruby.scm (ruby-gem-hadar): New variable.
2015-12-14 14:06:29 +01:00
Ricardo Wurmus 1db6e09fa9 gnu: Add ruby-minitest-4.
* gnu/packages/ruby.scm (ruby-minitest-4): New variable.
2015-12-14 14:06:29 +01:00
Efraim Flashner 9c1c2a7f8d gnu: bluez: Update to 5.36.
* gnu/packages/linux.scm (bluez): Update to 5.36.
[source]: Remove patch.
* gnu/packages/patches/bluez-tests.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove it.
2015-12-14 11:06:20 +02:00
Efraim Flashner ebacb0de4c gnu: powertop: Update to 2.8.
* gnu/packages/linux.scm (powertop): Update to 2.8.
2015-12-14 11:06:20 +02:00
Chris Marusich 03f964a511 gnu: Add python-contextlib2.
* gnu/packages/python.scm (python-contextlib2, python2-contextlib2):
  New variables.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-14 09:43:24 +01:00
Efraim Flashner b431e3a08d gnu: gcc-5: Update to 5.3.0.
* gnu/packages/gcc.scm (gcc-5): Update to 5.3.0.
2015-12-14 07:32:01 +02:00
Florian Paul Schmidt 6645753b46 gnu: Add redshift.
* gnu/packages/xdisorg.scm (redshift): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-14 00:31:36 +01:00
Ludovic Courtès 88d5858f55 graph: Add synthetic test.
* tests/graph.scm ("node-transitive-edges, no duplicates"): New test.
2015-12-13 21:41:52 +01:00
Ludovic Courtès 20464dde13 guix build: Gracefully handle type errors in -e and -f.
* guix/scripts/build.scm (options->things-to-build)[validate-type]: New
procedure.
[ensure-list]: Use it.
2015-12-13 21:13:16 +01:00
Ludovic Courtès ee2a7e3fd2 guix build: Remove dead code.
* guix/scripts/build.scm (options->things-to-build): Remove unused
'match' clause.
2015-12-13 21:04:56 +01:00
Ludovic Courtès ecf84b7c48 daemon: Add '--rounds'.
* nix/nix-daemon/guix-daemon.cc (GUIX_OPT_BUILD_ROUNDS): New macro.
(options): Add --rounds.
(parse_opt): Honor it.
* doc/guix.texi (Invoking guix-daemon): Document it.
2015-12-13 19:20:01 +01:00
Eelco Dolstra f3ff1da424 daemon: Better distinguish build statuses.
In Nix itself, the new 'BuildResult' type is returned by the new
'buildDerivation' method, which we don't have and need.

* nix/libstore/build.cc (Goal)[cancel]: Remove.
[timeOut]: New pure virtual method.
(DerivationGoal)[result]: New field.
[cancel]: Remove.
[timedOut, getResult, done]: New methods.
(DerivationGoal::cancel): Remove.
(DerivationGoal::timedOut): New method.
(DerivationGoal::haveDerivation): Call 'done' instead of 'amDone'.
(DerivationGoal::outputsSubstituted): Ditto.
(DerivationGoal::inputsRealised): Ditto.
(DerivationGoal::buildDone): Ditto.
(DerivationGoal::handleChildOutput): Call 'timedOut' instead of
'cancel'.
(DerivationGoal::done): New method.
(SubstitutionGoal)[cancel]: Remove.
[timedOut]: New method.
(SubstitutionGoal::cancel): Remove.
(SubstitutionGoal::timedOut): New method.
(Worker::waitForInput): Use it.
* nix/libstore/store-api.hh (BuildResult): New struct.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-13 19:20:01 +01:00
宋文武 1509a1dc82 gnu: Add modem-manager.
* gnu/packages/freedesktop.scm (modem-manager): New variable.
2015-12-13 23:26:28 +08:00
宋文武 5302c5ffd1 gnu: Add libqmi.
* gnu/packages/freedesktop.scm (libqmi): New variable.
2015-12-13 23:26:28 +08:00
宋文武 f3ad149057 gnu: Add libmbim.
* gnu/packages/freedesktop.scm (libmbim): New variable.
2015-12-13 23:26:28 +08:00
宋文武 df12f04a0c gnu: Add gdm.
* gnu/packages/gnome.scm (gdm): New variable.
2015-12-13 23:26:28 +08:00
Amirouche BOUBEKKI dec1e2b352 gnu: Add g-wrap.
* gnu/packages/guile.scm (g-wrap): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-13 15:20:44 +01:00
Ludovic Courtès 5568151f5b gnu: wireless-regdb: Build sequentially.
Fixes <http://bugs.gnu.org/22126>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/packages/linux.scm (wireless-regdb)[source]: Add 'snippet'.
[arguments]: Add #:parallel-build?.
2015-12-13 15:20:44 +01:00
Ludovic Courtès 70650c684a doc: Reword description of 'inputs' & co.
* doc/guix.texi (package Reference): Reword explanation of 'inputs',
'native-inputs', and 'propagated-inputs'.  Add example.
2015-12-13 15:20:44 +01:00
Ludovic Courtès f7e4ae7f45 doc: Fix typo in "Setuid Programs".
* doc/guix.texi (Setuid Programs): Remove extra 's'.
2015-12-13 15:20:44 +01:00
Efraim Flashner b1b9ca8e01 gnu: adwaita-icon-theme: Update to 3.18.0.
* gnu/packages/gnome.scm (adwaita-icon-theme): Update to 3.18.0.
2015-12-13 14:19:06 +02:00
Efraim Flashner 5d73ac0688 gnu: eog: Update to 3.18.1.
* gnu/packages/gnome.scm (eog): Update to 3.18.1.
2015-12-13 13:51:13 +02:00
Efraim Flashner 3acae17019 gnu: devhelp: Update to 3.18.1.
* gnu/packages/gnome.scm (devhelp): Update to 3.18.1.
2015-12-13 13:40:30 +02:00
Efraim Flashner bcff53e03f gnu: aisleriot: Update to 3.18.2.
* gnu/packages/gnome.scm (aisleriot): Update to 3.18.2.
2015-12-13 13:35:11 +02:00
Efraim Flashner daee4191e1 gnu: gnome-mines: Update to 3.18.2.
* gnu/packages/gnome.scm (gnome-mines): Update to 3.18.2.
2015-12-13 13:18:57 +02:00
Efraim Flashner 34b979b903 gnu: seahorse: Add support for keyservers, gnupg2 and ldap.
* gnu/packages/gnome.scm (seahorse): Do it.
[inputs]: Remove gnupg-1, add gnupg, openldap, libsoup.
2015-12-13 13:02:14 +02:00
Efraim Flashner 017d779c22 gnu: seahorse: Update to 3.18.0.
* gnu/packages/gnome.scm (seahorse): Update to 3.18.0.
2015-12-13 13:00:08 +02:00
Efraim Flashner 2e221beed5 gnu: gnome-terminal: Update to 3.18.2.
* gnu/packages/gnome.scm (gnome-terminal): Update to 3.18.2.
2015-12-13 12:40:04 +02:00
Ludovic Courtès 775e6fe456 gnu: commencement: Initial Texinfo uses initial Perl.
* gnu/packages/commencement.scm (texinfo-boot0)[inputs]: Use
PERL-BOOT0.
2015-12-13 11:35:53 +01:00
Efraim Flashner 1a0b2d8241 gnu: gnome-keyring: Update to 3.18.3.
* gnu/packages/gnome.scm (gnome-keyring): Update to 3.18.3.
[inputs]: Add linux-pam.
2015-12-13 12:34:29 +02:00
Ludovic Courtès 4187fe750f gnu: perl: Build deterministically, and make byproducts deterministic.
With this, a --rounds=2 build passes, and timestamps in POD files can be
controlled with 'SOURCE_DATE_EPOCH'.

* gnu/packages/patches/perl-deterministic-ordering.patch,
gnu/packages/patches/perl-no-build-time.patch,
gnu/packages/patches/perl-source-date-epoch.patch: New files.
* gnu/packages/perl.scm (perl)[source]: Use them.
* gnu-system.am (dist_patch_DATA): Add them.
2015-12-13 11:28:54 +01:00
Ludovic Courtès 4de3507483 gnu: perl: Update to 5.22.0.
* gnu/packages/perl.scm (perl)[source]: Update to 5.22.0.  Remove
"perl-module-pluggable-search.patch" since Module::Pluggable appears to
be gone.
[arguments] <configure-phase>: Adjust Cwd.pm file name.  Replace
-std=c89 with -std=gnu89.
* gnu/packages/commencement.scm (perl-boot0): Add 'disable-pthreads'
phase.
* gnu/packages/patches/perl-no-sys-dirs.patch: Update.
* gnu/packages/patches/perl-module-pluggable-search.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
2015-12-13 11:28:54 +01:00
Efraim Flashner e0b6e26403 gnu: gnome-klotski: Update to 3.18.2.
* gnu/packages/gnome.scm (gnome-klotski): Update to 3.18.2.
2015-12-13 12:24:47 +02:00
Efraim Flashner af83490d7e gnu: gnome-common: Update to 3.18.0.
* gnu/packages/gnome.scm (gnome-common): Update to 3.18.0.
2015-12-13 12:21:15 +02:00
Efraim Flashner 506959552f gnu: yelp-tools: Update to 3.18.0.
* gnu/packages/gnome.scm (yelp-tools): Update to 3.18.0.
2015-12-13 12:16:38 +02:00
Efraim Flashner ccdb0181c1 gnu: yelp-xsl: Update to 3.18.1.
* gnu/packages/gnome.scm (yelp-xsl): Update to 3.18.1.
2015-12-13 12:12:46 +02:00
Efraim Flashner 9bffc630cf gnu: file-roller: Update to 3.16.4.
* gnu/packages/gnome.scm (file-roller): Update to 3.16.4.
2015-12-13 12:03:03 +02:00
Efraim Flashner d45d35288e gnu: gnome-settings-daemon: Update to 3.18.2.
* gnu/packages/gnome.scm (gnome-settings-daemon): Update to 3.18.2.
2015-12-13 10:58:35 +02:00
Efraim Flashner 6d320ca693 gnu: geocode-glib: Update to 3.18.0.
* gnu/packages/gnome.scm (geocode-glib): Update to 3.18.0.
2015-12-13 10:38:34 +02:00
Efraim Flashner f05c809f8f gnu: dconf: Update to 0.24.0.
* gnu/packages/gnome.scm (dconf): Update to 0.24.0.
2015-12-13 10:24:16 +02:00
Efraim Flashner c0925c7a29 gnu: totem: Update to 3.18.1.
* gnu/packages/gnome.scm (totem): Update to 3.18.1.
2015-12-13 10:10:10 +02:00
Efraim Flashner 47b7d7bf98 gnu: grilo-plugins: Update to 0.2.16.
* gnu/packages/gnome.scm (grilo-plugins): Update to 0.2.16.
2015-12-13 08:06:42 +02:00
Efraim Flashner c725dc4da1 gnu: grilo: Update to 0.2.14.
* gnu/packages/gnome.scm (grilo): Update to 0.2.14.
2015-12-13 07:38:31 +02:00
Efraim Flashner c79595178c gnu: clutter-gst: Update to 3.0.14.
* gnu/packages/gnome.scm (clutter-gst): Update to 3.0.14.
2015-12-13 07:21:03 +02:00
Efraim Flashner b6b53a874d gnu: libchamplain: Update to 0.12.12.
* gnu/packages/gnome.scm (libchamplain): Update to 0.12.12.
2015-12-13 06:58:50 +02:00
Efraim Flashner f0b0a5de87 gnu: clutter-gtk: Update to 1.6.6.
* gnu/packages/gnome.scm (clutter-gtk): Update to 1.6.6.
2015-12-12 23:22:03 +02:00
Efraim Flashner 5021f9d340 gnu: owncloud-client: Update to 2.1.0.
* gnu/packages/owncloud.scm (owncloud-client): Update to 2.1.0.
2015-12-12 22:52:48 +02:00
Andreas Enge 4165fda29d gnu: gmp: Disable parallel tests.
* gnu/packages/multiprecision.scm (gmp)[arguments]: Disable parallel tests.
2015-12-12 14:40:37 +01:00
Ludovic Courtès 7dda44a6b9 build: Add missing patches to the distribution.
* gnu-system.am (dist_patch_DATA): Add glibc-hurd-extern-inline.patch
and plink-1.07-unclobber-i.patch.
2015-12-12 11:50:59 +01:00
Ludovic Courtès e82e55e58c Merge branch 'master' into core-updates 2015-12-12 11:48:46 +01:00
Andreas Enge e35dff9733 gnu: numactl: Update to 2.0.11.
* gnu/packages/linux.scm (numactl)[source]: Update to 2.0.11.
  [native-inputs]: Drop autotools.
  [arguments]: Drop phase calling autogen.sh.
2015-12-12 10:20:30 +01:00
Mark H Weaver 798697f673 gnu: wget: Update to 1.17.1.
* gnu/packages/wget.scm (wget): Update to 1.17.1.
2015-12-11 18:31:50 -05:00
Ludovic Courtès 98bd851ee8 gnu: gcc: Use the system zlib.
* gnu/packages/gcc.scm (gcc-4.7) <configure-flags>: Pass
'--with-system-zlib'.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Remove
'--with-system-zlib' from the configure flags.
* gnu/packages/commencement.scm (zlib-final): New variable.
(gcc-final)[arguments]: Add ZLIB-FINAL to #:allowed-references.
Pass -L and -Wl,-rpath for zlib in LDFLAGS, as a configure flag.
[inputs]: Add LD-WRAPPER-BOOT3 and ZLIB-FINAL.
2015-12-11 23:49:10 +01:00
Ludovic Courtès 52cfd8cb54 gnu: gcc-final: Remove unnecessary CPPFLAGS.
* gnu/packages/commencement.scm (gcc-final)[arguments]: Remove
unnecessary CPPFLAGS from #:make-flags.
2015-12-11 23:42:39 +01:00
Ricardo Wurmus f7f55db8f6 gnu: Move sparsehash to datastructures module.
* gnu/packages/crypto.scm (sparsehash): Move variable to...
* gnu/packages/datastructures.scm: ...new file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-12-11 15:59:20 +01:00
Ricardo Wurmus ca3476cd6c gnu: Add r-lattice.
* gnu/packages/statistics.scm (r-lattice): New variable.
2015-12-11 15:44:07 +01:00
Ricardo Wurmus 2a40f76389 gnu: Add r-gridbase.
* gnu/packages/statistics.scm (r-gridbase): New variable.
2015-12-11 15:44:07 +01:00
Ricardo Wurmus 60a9d3d0ac gnu: Add r-plotrix.
* gnu/packages/statistics.scm (r-plotrix): New variable.
2015-12-11 15:44:07 +01:00
Ricardo Wurmus 03af370f6e gnu: Add r-readr.
* gnu/packages/statistics.scm (r-readr): New variable.
2015-12-11 15:44:07 +01:00
Ricardo Wurmus 62141c07f7 gnu: Rename r-data.table to r-data-table.
* gnu/packages/statistics.scm (r-data.table): Rename variable ...
(r-data-table): ... to this.
[description]: Clarify relation to data.frame.
[license]: Use correct license.
2015-12-11 15:44:07 +01:00
Ricardo Wurmus 0f6b9e9828 import: cran: Parse DESCRIPTION instead of HTML.
* guix/import/cran.scm (description->alist, listify,
  beautify-description, description->package): New procedures.
(table-datum, downloads->url, nodes->text, cran-sxml->sexp): Remove
proceduces.
(latest-release): Use parsed DESCRIPTION instead of SXML.
* tests/cran.scm: Rewrite to match importer.
2015-12-11 15:35:07 +01:00
Ricardo Wurmus b6a222757b import: cran: Match more license strings.
* guix/import/cran.scm (string->license): Match more license strings to
  license symbols.
2015-12-11 15:35:07 +01:00
Ben Woodcroft 5f7e17bef7 gnu: Add snap-aligner.
* gnu/packages/bioinformatics.scm (snap-aligner): New variable.
2015-12-11 14:34:51 +01:00
Efraim Flashner 9a41f4439d gnu: python-certifi: Update to 2015.11.20.1.
* gnu/packages/python.scm (python-certifi): Update to 2015.11.20.1.
[source]: Change to pypi syntax.
2015-12-11 15:12:39 +02:00
Efraim Flashner 2e4c54573f gnu: gnumeric: Add python scripting support.
* gnu/packages/gnome.scm (gnumeric): Do it.
[inputs]: Add python2, python2-pygobject-2.
2015-12-11 14:18:10 +02:00
Efraim Flashner 7bcbd40dc8 gnu: gnumeric: Update to 1.12.24.
* gnu/packages/gnome.scm (gnumeric): Update to 1.12.24.
[inputs]: Add librsvg, libxslt.
[arguments]: Use "modify-phases" syntax.
2015-12-11 14:18:10 +02:00
Efraim Flashner 8cabd349b4 gnu: goffice: Update to 0.10.24.
* gnu/packages/gnome.scm (goffice): Update to 0.10.24.
2015-12-11 14:18:10 +02:00
Efraim Flashner 24a78aa600 gnu: gvfs: Update to 1.26.2.
* gnu/packages/gnome.scm (gvfs): Update to 1.26.2.
[inputs]: Add gcr.
2015-12-11 14:18:10 +02:00
Alex Kost 98f4a9004b emacs: Handle compiled autoloads.
* emacs/guix-emacs.el (guix-emacs-autoloads-regexp): New variable.
  (guix-emacs-find-autoloads-in-directory): Return a list of autoloads
  without extensions.
2015-12-11 14:34:03 +03:00
Mark H Weaver 7534370435 gnu: linux-libre: Update to 4.3.2.
* gnu/packages/linux.scm (linux-libre): Update to 4.3.2.
  [native-inputs]: Add openssl.
* gnu/packages/linux-libre-x86_64.conf,
  gnu/packages/linux-libre-i686.conf: Update for 4.3.x,
  based on <https://jxself.org/git/kernel-configs.git>.
2015-12-11 00:30:38 -05:00
Efraim Flashner 5d69165797 gnu: python-requests: Update to 2.8.1.
* gnu/packages/python.scm (python-requests): Update to 2.8.1.
[native-inputs]: Move python-setuptools here.
[inputs]: Remove python-certifi.
[propagated-inputs]: Add python-py, python-pytest, python-pytest-cov,
python-wheel.
[arguments]: Enable tests.
2015-12-10 20:24:11 +02:00
Efraim Flashner addc808ddc gnu: Add python-wheel.
* gnu/packages/python.scm (python-wheel, python2-wheel): New variables.
2015-12-10 20:24:11 +02:00
Efraim Flashner 358c3d612b gnu: Add python-pytest-cov.
* gnu/packages/python.scm (python-pytest-cov, python2-pytest-cov): New
variables.
2015-12-10 20:24:11 +02:00
Roel Janssen e522d84035 gnu: Add libconfig.
* gnu/packages/textutils.scm (libconfig): New variable.
2015-12-10 16:27:50 +01:00
Efraim Flashner b01bbbcf3d gnu: python-pytz: Update to 2015.7.
* gnu/packages/python.scm (python-pytz): Update to 2015.7.
[source]: Change uri to pypi's location.
[home-page]: Change to new website.
[license]: Change to expat.
2015-12-10 16:09:16 +02:00
Ricardo Wurmus 16414017f3 gnu: ghc-cryptonite: Update description.
* gnu/packages/haskell.scm (ghc-cryptonite)[description]: Shorten overly
  technical package description.
2015-12-10 14:40:18 +01:00
Ben Woodcroft e815c094f7 gnu: python-biopython, python2-biopython: Update to 1.66.
* gnu/packages/bioinformatics.scm (python-biopython, python2-biopython): Update to 1.66.
[source]: Use PyPi instead of biopython.org.
2015-12-10 14:35:56 +01:00
Ricardo Wurmus 85538709f1 gnu: Add ghc-pandoc.
* gnu/packages/haskell.scm (ghc-pandoc): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus ac2607a0ce gnu: Add ghc-http-client-tls.
* gnu/packages/haskell.scm (ghc-http-client-tls): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 86dd2ce0b2 gnu: Add ghc-connection.
* gnu/packages/haskell.scm (ghc-connection): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus dcc5cf1d41 gnu: Add ghc-socks.
* gnu/packages/haskell.scm (ghc-socks): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 4f7f06e1a2 gnu: Add ghc-tls.
* gnu/packages/haskell.scm (ghc-tls): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus f664cbb3bf gnu: Add ghc-x509-system.
* gnu/packages/haskell.scm (ghc-x509-system): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 1c649948c9 gnu: Add ghc-x509-validation.
* gnu/packages/haskell.scm (ghc-x509-validation): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 282f11420b gnu: Add ghc-x509-store.
* gnu/packages/haskell.scm (ghc-x509-store): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus e24e053eda gnu: Add ghc-x509.
* gnu/packages/haskell.scm (ghc-x509): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 4dc2deb920 gnu: Add ghc-memory.
* gnu/packages/haskell.scm (ghc-memory): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 2763952b9c gnu: Add ghc-cryptonite.
* gnu/packages/haskell.scm (ghc-cryptonite): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 76e2fa7529 gnu: Add ghc-tasty-kat.
* gnu/packages/haskell.scm (ghc-tasty-kat): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 9d3c5d3859 gnu: Add ghc-asn1-parse.
* gnu/packages/haskell.scm (ghc-asn1-parse): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 8078327341 gnu: Add ghc-asn1-encoding.
* gnu/packages/haskell.scm (ghc-asn1-encoding): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus d4ce416a5c gnu: Add ghc-asn1-types.
* gnu/packages/haskell.scm (ghc-asn1-types): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus ed8924c0d7 gnu: Add ghc-pem.
* gnu/packages/haskell.scm (ghc-pem): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 45813e67e0 gnu: Add ghc-hourglass.
* gnu/packages/haskell.scm (ghc-hourglass): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 51c05fcf20 gnu: Add ghc-byteable.
* gnu/packages/haskell.scm (ghc-byteable): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus c3cb9fa67c gnu: Add ghc-http-client.
* gnu/packages/haskell.scm (ghc-http-client): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus b12d4f23e0 gnu: Add ghc-mime-types.
* gnu/packages/haskell.scm (ghc-mime-types): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus ac5d633a96 gnu: Add ghc-hslua.
* gnu/packages/haskell.scm (ghc-hslua): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 27f3949086 gnu: Add ghc-sha.
* gnu/packages/haskell.scm (ghc-sha): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 12676ce8be gnu: Add ghc-juicypixels.
* gnu/packages/haskell.scm (ghc-juicypixels): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 348519e1bf gnu: Add ghc-mmap.
* gnu/packages/haskell.scm (ghc-mmap): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus fcacbec34e gnu: Add ghc-filemanip.
* gnu/packages/haskell.scm (ghc-filemanip): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 132133c1ae gnu: Add ghc-yaml.
* gnu/packages/haskell.scm (ghc-yaml): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 9efdbb72af gnu: Add ghc-mockery.
* gnu/packages/haskell.scm (ghc-mockery): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 1c17529fd5 gnu: Add ghc-logging-facade.
* gnu/packages/haskell.scm (ghc-logging-facade): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus b55630a3a8 gnu: Add ghc-conduit.
* gnu/packages/haskell.scm (ghc-conduit): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 1300634bf1 gnu: Add ghc-hspec-contrib.
* gnu/packages/haskell.scm (ghc-hspec-contrib): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus cb31771f84 gnu: Add ghc-aeson-qq.
* gnu/packages/haskell.scm (ghc-aeson-qq): New variable.
2015-12-10 14:34:51 +01:00
Ricardo Wurmus 3611fc7bff gnu: Add ghc-haskell-src-meta.
* gnu/packages/haskell.scm (ghc-haskell-src-meta): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 2e67725150 gnu: Add ghc-th-orphans.
* gnu/packages/haskell.scm (ghc-th-orphans): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 536b84a832 gnu: Add ghc-th-reify-many.
* gnu/packages/haskell.scm (ghc-th-reify-many): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 25101be9dc gnu: Add ghc-th-expand-syns.
* gnu/packages/haskell.scm (ghc-th-expand-syns): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 1777e1f2cb gnu: Add ghc-th-lift.
* gnu/packages/haskell.scm (ghc-th-lift): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 74d9f72e02 gnu: Add ghc-packedstring.
* gnu/packages/haskell.scm (ghc-packedstring): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 5de6eedc60 gnu: Add ghc-enclosed-exceptions.
* gnu/packages/haskell.scm (ghc-enclosed-exceptions): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 25b20a9c7a gnu: Add ghc-executable-path.
* gnu/packages/haskell.scm (ghc-executable-path): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 31be270b93 gnu: Add ghc-cmark.
* gnu/packages/haskell.scm (ghc-cmark): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 66c480b6c8 gnu: Add ghc-highlighting-kate.
* gnu/packages/haskell.scm (ghc-highlighting-kate): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 05245dc9ff gnu: Add ghc-diff.
* gnu/packages/haskell.scm (ghc-diff): Add variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus a54d11b58f gnu: Add ghc-regex-pcre-builtin.
* gnu/packages/haskell.scm (ghc-regex-pcre-builtin): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus ef2861b1d9 gnu: Add ghc-texmath.
* gnu/packages/haskell.scm (ghc-texmath): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 8164d58ec7 gnu: Add ghc-pandoc-types.
* gnu/packages/haskell.scm (ghc-pandoc-types): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 4cbd9f5993 gnu: Add ghc-deepseq-generics.
* gnu/packages/haskell.scm (ghc-deepseq-generics): New variable.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 6ff4a50d75 gnu: ghc-aeson: Propagate input.
* gnu/packages/haskell.scm (ghc-aeson)[inputs]: Move
  "ghc-unordered-containers" from here ...
[propagated-inputs]: ... to here.
2015-12-10 14:34:50 +01:00
Ricardo Wurmus 172bb3b86d gnu: ghc-haskell-src-exts: Propagate some inputs.
* gnu/packages/haskell.scm (ghc-haskell-src-exts)[inputs]: Remove field.
[propagated-inputs]: Move "cpphs", "ghc-mtl", "ghc-happy", and "ghc-syb"
from inputs field here.
[native-inputs]: Move "ghc-smallcheck", "ghc-tasty",
"ghc-tasty-smallcheck", and "ghc-tasty-golden" from inputs field here.
2015-12-10 14:34:50 +01:00
Ludovic Courtès 557b5557d8 gnu: commencement: Restrict allowed references for libstdc++.
* gnu/packages/commencement.scm (libstdc++)[arguments]: Add
  #:allowed-references.
2015-12-10 11:54:57 +01:00
Alex Kost 2e74b9f4cf gnu: emacs-w3m: Update to 1.4.538+0.20141022.
* gnu/packages/emacs.scm (emacs-w3m): Update to 1.4.538+0.20141022.
  [arguments]: Use '--without-compress-install' configure flag.
2015-12-10 13:24:49 +03:00
Alex Kost 932ece6553 gnu: emacs-w3m: Use 'modify-syntax'.
* gnu/packages/emacs.scm (emacs-w3m)[arguments]: Use 'modify-syntax'.
2015-12-10 13:23:50 +03:00
Ludovic Courtès 135065853f gnu: texinfo: Remove unneeded dependency on xz.
The impetus for this is that XZ 5.2.2 requires pthreads.  However, when
using the bootstrap GCC, using '-pthread' doesn't work because it tries
to refer to /nix/store/eeeeee-glibc-2.18.  XZ eventually fails to build
with undefined references to pthread symbols.

* gnu/packages/texinfo.scm (texinfo)[inputs]: Remove XZ, which was
unneeded.
2015-12-10 11:02:09 +01:00
Ludovic Courtès 6a4db3f361 gnu: libarchive: Fix test failure on SELinux systems.
Reported by Jan Synáček <jan.synacek@gmail.com>
at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00522.html>.

* gnu/packages/patches/libarchive-bsdtar-test.patch: New file.
* gnu/packages/backup.scm (libarchive)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2015-12-09 23:10:10 +01:00
Alex Sassmannshausen dcb7119a6d doc: rephrase code of conduct.
* doc/contributing.texi (Contributing): Rephrase 'code of conduct'
  section.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-09 22:18:47 +01:00
Ludovic Courtès 873d0ff2cd gnu-maintenance: Really find the latest GNOME releases.
Reported by Efraim Flashner <efraim@flashner.co.il>
at <https://lists.gnu.org/archive/html/guix-devel/2015-12/msg00202.html>.

* guix/gnu-maintenance.scm (latest-ftp-release): Call KEEP-FILE? on
directories too.
(latest-gnome-release)[even-minor-version?]: Protect again MINOR being
false; change pattern to match VERSION with two or more numbers.  Remove
use of 'version-major+minor'.
[even-numbered-tarball?]: Rename to...
[even-numbered?]: ... this.  Use 'package-name->name+version'.  When
VERSION is #f, check NAME.
2015-12-09 22:18:47 +01:00
Ludovic Courtès cd48eae560 build: Always check for gzip/bzip2/xz.
This allows (guix config) to contain valid values of %GZIP et al. even
when configured with --disable-daemon.

* config-daemon.ac: Move 'AC_PATH_PROG' invocations for
gzip & co. to...
* configure.ac: ... here.
2015-12-09 22:18:47 +01:00
Efraim Flashner 6b6a0b143d gnu: youtube-dl: Update to 2015.12.09.
* gnu/packages/video.scm (youtube-dl): Update to 2015.12.09.
[native-inputs]: Move python-setuptools here.
2015-12-09 23:05:54 +02:00
Efraim Flashner fa09215342 gnu: vte: Update to 0.42.1.
* gnu/packages/gnome.scm (vte): Update to 0.42.1.
2015-12-09 22:57:57 +02:00
Efraim Flashner 896dcbc77c gnu: libsecret: Update to 0.18.3.
* gnu/packages/gnome.scm (libsecret): Update to 0.18.3.
2015-12-09 22:48:39 +02:00
Efraim Flashner 5e8aec2cf3 gnu: libgnome-keyring: Update to 3.12.0.
* gnu/packages/gnome.scm (libgnome-keyring): Update to 3.12.0.
2015-12-09 22:48:39 +02:00
Alex Kost 1ae15c3646 emacs: Fix '--rounds' option in command popups.
* emacs/guix-command.el (guix-command-improve-common-build-argument):
  Use "R" key for '--rounds' option to avoid conflicts with "r" key in
  'build' popup (--root) and 'package' popup (--remove).
2015-12-09 19:55:04 +03:00
Alex Kost dcb00c0ad5 emacs: Add 'guix-build-log-find-file'.
* emacs/guix-build-log.el (guix-build-log-find-file): New procedure.
* emacs/guix-command.el (guix-run-view-build-log): Use it.
2015-12-09 19:54:19 +03:00
Alex Kost d7a58c60d6 emacs: list: Fontify time stamps.
* emacs/guix-list.el (guix-list-time): New face.
  (guix-list-get-time): Use it.
2015-12-09 19:54:19 +03:00
Alex Kost d84018b5b1 emacs: info: Add 'guix-info-heading' face.
* emacs/guix-info.el (guix-info-heading): New face.
  (guix-package-info-heading): Inherit it.
2015-12-09 19:54:19 +03:00
Ludovic Courtès e15fcdd149 Add "Contributor Covenant".
* CODE-OF-CONDUCT: New file, adapted from
  <http://contributor-covenant.org/version/1/3/0/code_of_conduct.txt>.
* doc/contributing.texi (Contributing): Mention it.
* Makefile.am (EXTRA_DIST): Add it.
2015-12-09 14:29:41 +01:00
Eelco Dolstra cb9601029e daemon: Use deterministic $TMPDIR in chroot.
Rather than using $<host-TMPDIR>/nix-build-<drvname>-<number>, the
temporary directory is now always /tmp/nix-build-<drvname>-0. This
improves bitwise-exact reproducibility for builds that store $TMPDIR
in their build output. (Of course, those should still be fixed...)

* nix/libstore/build.cc (DerivationGoal)[tmpDirInSandbox]: New field.
(DerivationGoal::startBuilder): Initialize 'useChroot' earlier.  Compute
'tmpDirInSandbox', and use it when populating 'dirsInChroot'.
* doc/guix.texi (Build Environment Setup): Document it.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-09 14:29:41 +01:00
Ludovic Courtès a8d65643fb guix build: Add '--check'.
* guix/derivations.scm (build-derivations): Add optional 'mode'
parameter.
* guix/scripts/build.scm (%default-options): Add 'build-mode'.
(show-help, %options): Add '--check'.
(guix-build): Honor 'build-mode' key of OPTS.  Pass it to
'show-what-to-build' and 'build-derivations'.
* doc/guix.texi (Invoking guix build): Document it.
(Substitutes): Mention it.
2015-12-09 14:29:41 +01:00
Ludovic Courtès 58c08df054 derivations: Determine what's built in 'check' mode.
* guix/derivations.scm (substitution-oracle): Add #:mode parameter and
honor it.
(derivation-prerequisites-to-build): Likewise.
[derivation-built?]: Take it into account.
* guix/ui.scm (show-what-to-build): Add #:mode parameter.  Pass it to
'substitute-oracle' and 'derivations-prerequisites-to-build'.
* tests/derivations.scm ("derivation-prerequisites-to-build in 'check'
mode"): New test.
2015-12-09 14:29:41 +01:00
Efraim Flashner cc9553562c gnu: gmime: Update to 2.6.20.
* gnu/packages/mail.scm (gmime): Update to 2.6.20.
[arguments]: Use modify-phases syntax.
2015-12-09 15:21:34 +02:00
Ludovic Courtès 8d5e7ad29a gnu: guile-sly: Use HTTPS URL.
* gnu/packages/guile.scm (guile-sly)[source]: Use 'https'.  Failing to
do that, we get redirected to 'https', which fails because GnuTLS is
missing.
2015-12-08 23:58:12 +01:00
Ludovic Courtès 5b74fe065b guix build: Add '--rounds'.
* guix/scripts/build.scm (show-build-options-help)
(%standard-build-options): Add --rounds.
(set-build-options-from-command-line): Honor it.
* doc/guix.texi (Invoking guix build): Document it.
* doc/contributing.texi (Submitting Patches): Mention it.
2015-12-08 23:58:12 +01:00
Ludovic Courtès 2fba87ac7c store: Allow clients to request multiple builds.
* guix/store.scm (set-build-options): Add #:rounds parameter and honor it.
* tests/store.scm ("build multiple times"): New test.
2015-12-08 23:58:12 +01:00
Eelco Dolstra b23b4d394a daemon: Allow builds to be repeated.
This makes it easy to detect non-deterministic builds.

* nix/libstore/build.cc (DerivationGoal): Remove 'InodesSeen'; add
'curRound', 'nrRound', and 'prevInfos'.
(DerivationGoal::inputsRealised): Initialize 'nrRound'.
(NotDeterministic): New error type.
(DerivationGoal::buildDone): Check whether we need to repeat.
(DerivationGoal::startBuilder): Adjust message.
(DerivationGoal::registerOutputs): Check whether we get the same result.
* nix/libstore/globals.cc (Settings::get(const string & name, int def)):
New method.
* nix/libstore/globals.hh (Settings): Add it.
* nix/libstore/store-api.hh (ValidPathInfo): Add operator ==.
* nix/nix-daemon/nix-daemon.cc (performOp): Allow "build-repeat" for
"untrusted" users.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-08 23:58:12 +01:00
Andreas Enge 7fbee931a5 gnu: python-pillow: Update to 3.0.0.
* gnu/packages/python.scm (python-pillow, python2-pillow): Update to 3.0.0.
2015-12-08 23:16:37 +01:00
Andreas Enge b00150641a gnu: numactl: Update to 2.0.10.
* gnu/packages/linux.scm (numactl)[source]: Update to 2.0.10.
  [arguments]: Adapt phases to use the autotools machinery.
  [native-inputs]: Add autotools packages.
2015-12-08 23:09:59 +01:00
Ludovic Courtès c499125704 gnu-maintenance: Exclude development releases from GNOME update candidates.
Suggested by Efraim Flashner <efraim@flashner.co.il>.

* guix/gnu-maintenance.scm (latest-ftp-release): Add #:keep-file?
parameter and honor it.
(latest-gnome-release)[%not-dot]: New variable.
[even-minor-version?, even-numbered-tarball?]: New procedures.
Pass EVEN-NUMBERED-TARBALL? as #:keep-file? argument.
2015-12-08 16:09:33 +01:00
Efraim Flashner f714d9fe04 gnu: glade3: Update to 3.8.5.
* gnu/packages/gnome.scm (glade3): Update to 3.8.5.
2015-12-08 15:05:25 +02:00
Efraim Flashner 20a1a4c322 gnu: autogen: Update to 5.18.7.
* gnu/packages/autogen.scm (autogen): Update to 5.18.7.
2015-12-08 14:30:29 +02:00
Ludovic Courtès 6efa6f7645 gnu-maintenance: ftp.gnome.org does not provide signatures.
* guix/gnu-maintenance.scm (latest-ftp-release): Add #:file->signature
parameter.  Honor it.
(latest-gnome-release): Pass #:file->signature.
* guix/upstream.scm (coalesce-sources): Keep 'signature-urls' as #f
unless both sources provide it.
2015-12-07 23:57:20 +01:00
Ludovic Courtès e80c0f85ba gnu-maintenance: Add GNOME updater.
* guix/gnu-maintenance.scm (ftp-server/directory)[quirks]: Remove glib.
(false-if-ftp-error): New macro.
(latest-release*): Use it.
(non-emacs-gnu-package?): Rename to...
(pure-gnu-package?): ... this.  Add call to 'gnome-package?'.
(%gnu-updater): Adjust accordingly.
(gnome-package?, latest-gnome-release): New procedures.
(%gnome-updater): New variable.
* guix/scripts/refresh.scm (%updaters): Add %GNOME-UPDATER.
* doc/guix.texi (Invoking guix refresh): Mention it.
2015-12-07 23:32:01 +01:00
Ludovic Courtès e946f2ec92 gnu-maintenance: Generalize 'latest-ftp-release'.
* guix/gnu-maintenance.scm (latest-release): Rename to...
(latest-ftp-release): ... this.  Add #:server and #:directory
parameters.
(latest-release): New procedure.
2015-12-07 23:32:01 +01:00
Ludovic Courtès fba607b129 refresh: Bail out when asked for a nonexistent updater.
* guix/scripts/refresh.scm (lookup-updater): Call 'leave' when 'find'
returns #f.
2015-12-07 23:32:01 +01:00
Ludovic Courtès e3cc793e7c gnu-maintenance: Do not look for releases in "w32" sub-directories.
* guix/gnu-maintenance.scm (latest-release): Filter out "w32"
directories.
2015-12-07 23:32:01 +01:00
Ludovic Courtès 202440e07a gnu-maintenance: Add tests for 'release-file?'.
* tests/gnu-maintenance.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* guix/gnu-maintenance.scm (release-file?): Export.
2015-12-07 23:32:01 +01:00
Ludovic Courtès fa04a04f18 gnu-maintenance: Properly handle TeXmacs.
* guix/gnu-maintenance.scm (ftp-server/directory): Add comment.
(release-file?): Use 'string-ci=?' instead of 'equal?' when comparing
project names.
2015-12-07 23:32:01 +01:00
Ludovic Courtès f00dccf441 gnu-maintenance: Adjust tarball regexp for IceCat tarballs.
* guix/gnu-maintenance.scm (%tarball-rx): Tweak to match IceCat tarball
patterns.
2015-12-07 23:32:01 +01:00
Ludovic Courtès b6124f00b8 gnu-maintenance: Fix URLs returned by 'latest-release' for deep trees.
With this, (latest-release "gcc") returns an <upstream-source> with URL:

  ftp://ftp.gnu.org/gnu/gcc/gcc-5.3.0/gcc-5.3.0.tar.gz

Previous it would omit "gcc-5.3.0/" from the URL.

Fixes a regression introduced in 0a7c5a0.

* guix/gnu-maintenance.scm (latest-release)[file->url, file->source]:
Add 'directory' parameter.  Update users.
2015-12-07 23:32:01 +01:00
Ludovic Courtès 56b6befb50 doc: 'guix environment --container' does not create '/env'.
* doc/guix.texi (Invoking guix environment): Remove outdated mention of
'/env' for '--container'.
2015-12-07 23:32:01 +01:00
David Thompson 1eca745b44 gnu: node: Do not use bundled dependencies.
The Node build system was previously building its own copies of
OpenSSL (yikes!), libuv, and zlib.

* gnu/packages/node.scm (node)[inputs]: Add openssl, libuv, and zlib.
  [arguments]: Add configure flags for using system libraries.  Use
  'modify-phases' syntax.
2015-12-07 17:05:34 -05:00
Leo Famulari 437d728632 gnu: util-linux: Make description more descriptive.
* gnu/packages/linux.scm (util-linux)[description]: Give some more
  information about the package.

Signed-off-by: Andreas Enge <andreas@enge.fr>
2015-12-07 21:11:21 +01:00
Mark H Weaver dae36ca558 gnu: pcre: Update to 8.38.
* gnu/packages/pcre.scm (pcre): Update to 8.38.  Add source URI for
  main FTP site.
2015-12-07 09:54:01 -05:00
Mark H Weaver 821060f3f6 gnu: libxml2: Update to 2.9.3.
* gnu/packages/patches/libxml2-CVE-2015-1819.patch,
  gnu/packages/patches/libxml2-CVE-2015-7941-pt1.patch,
  gnu/packages/patches/libxml2-CVE-2015-7941-pt2.patch,
  gnu/packages/patches/libxml2-CVE-2015-7942-pt1.patch,
  gnu/packages/patches/libxml2-CVE-2015-7942-pt2.patch,
  gnu/packages/patches/libxml2-CVE-2015-8035.patch,
  gnu/packages/patches/libxml2-bug-737840.patch,
  gnu/packages/patches/libxml2-bug-738805.patch,
  gnu/packages/patches/libxml2-bug-746048.patch,
  gnu/packages/patches/libxml2-bug-747437.patch,
  gnu/packages/patches/libxml2-bug-751603.patch,
  gnu/packages/patches/libxml2-bug-751631.patch,
  gnu/packages/patches/libxml2-bug-754946.patch,
  gnu/packages/patches/libxml2-bug-754947.patch,
  gnu/packages/patches/libxml2-bug-755857.patch,
  gnu/packages/patches/libxml2-fix-catalog-corruption.patch,
  gnu/packages/patches/libxml2-id-attrs-in-xmlSetTreeDoc.patch,
  gnu/packages/patches/libxml2-node-sort-order-pt1.patch,
  gnu/packages/patches/libxml2-node-sort-order-pt2.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/xml.scm (libxml2): Update to 2.9.3.  Remove patches.
2015-12-07 09:54:01 -05:00
Mark H Weaver 86c8f1daf8 gnu: openssl: Update to 1.0.2e [fixes CVE-2015-{3193,3194,3195}].
* gnu/packages/tls.scm (openssl): Update to 1.0.2e.
  [arguments]: Rename 'fix-man-dir' phase to 'patch-Makefile.org',
  and patch SHELL in Makefile.org.  Add 'fix-broken-symlinks' phase.
  Return #t from 'patch-tests' phase.
2015-12-07 09:54:01 -05:00
Efraim Flashner e5be0e01f2 gnu: keepassx: Update to 2.0.
* gnu/packages/password-utils.scm (keepassx): Update to 2.0.
[source]: Change to official release location.
2015-12-07 13:07:18 +02:00
Efraim Flashner 044176621e gnu: python2-zope-security: Use python2-zope-testrunner.
* gnu/packages/python.scm (python2-zope-security): Do it.
2015-12-07 12:31:56 +02:00
Efraim Flashner b847618f65 gnu: help2man: Update to 1.47.3.
* gnu/packages/man.scm (help2man): Update to 1.47.3.
2015-12-07 10:59:54 +02:00
Efraim Flashner 5f47e71343 gnu: libmicrohttpd: Update to 0.9.47.
* gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.47.
2015-12-07 10:40:05 +02:00
Alex Vong f8f8897f7e gnu: mp3info: Update URL.
* gnu/packages/mp3.scm (mp3info): Update source URL.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-06 23:12:12 +01:00
Ludovic Courtès 91726b6a3b nls: Add Polish translation. 2015-12-06 23:02:32 +01:00
Kyle Meyer e92b8599f7 gnu: Add myrepos.
* gnu/packages/version-control.scm (myrepos): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-06 22:44:17 +01:00
Kyle Meyer 1872f1bb79 gnu: Add python-docopt.
* gnu/packages/python.scm (python-docopt, python2-docopt): New
  variables.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-12-06 22:38:32 +01:00
Efraim Flashner 07ab3b8ecc gnu: gajim: Update to 0.16.4.
* gnu/packages/messaging.scm (gajim): Update to 0.16.4.
2015-12-06 22:18:01 +02:00
Efraim Flashner d1d75c6a67 gnu: pinentry: Update to 0.9.6.
* gnu/packages/gnupg.scm (pinentry): Update to 0.9.6.
[inputs]: Add libsecret.
2015-12-06 22:18:01 +02:00
Efraim Flashner 231dd02337 gnu: gpgme: Update to 1.6.0.
* gnu/packages/gnupg.scm (gpgme): Update to 1.6.0.
2015-12-06 22:18:01 +02:00
Efraim Flashner b65249cc2b gnu: gnupg: Update to 2.1.10.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.10.
[inputs]: Add adns.
2015-12-06 22:18:01 +02:00
Efraim Flashner 7b40296fc0 gnu: gnupg-2.0: Update to 2.0.29.
* gnu/packages/gnupg.scm (gnupg-2.0): Update to 2.0.29.
[inputs]: Add adns.
2015-12-06 22:18:01 +02:00
Efraim Flashner b682a77669 gnu: libassuan: Update to 2.4.2.
* gnu/packages/gnupg.scm (libassuan): Update to 2.4.2.
2015-12-06 22:18:01 +02:00
Mathieu Lirzin d7e92b8752 gnu: Move pkg-config to native inputs.
* gnu/packages/glib.scm (gobject-introspection)[native-inputs]: Move
pkg-config from inputs.
* gnu/packages/pulseaudio.scm (libsndfile, libsamplerate)
(pulseaudio)[native-inputs]: Likewise.
2015-12-06 17:25:13 +01:00
Mathieu Lirzin d4fe27fe2c gnu: Move pkg-config to native inputs.
* gnu/packages/xiph.scm (ao)[native-inputs]: Move pkg-config from
inputs.
* gnu/packages/xorg.scm (xf86-video-geode)[native-inputs]: Likewise.
2015-12-06 17:23:26 +01:00
Mathieu Lirzin cd08fe4259 edit: Don't assume that an emacs daemon is running.
* guix/scripts/edit.scm (%editor): Use Emacs as a default value.
2015-12-06 17:23:25 +01:00
Mathieu Lirzin b16dbd1311 edit: Allow command line arguments in $VISUAL and $EDITOR.
* guix/scripts/edit.scm (guix-edit): Fix the assumption that %editor is
a one word command.
2015-12-06 17:23:21 +01:00
Efraim Flashner 2f52ad7413 gnu: nano: Update to 2.5.0.
* gnu/packages/nano.scm (nano): Update to 2.5.0.
2015-12-06 16:49:41 +02:00
Efraim Flashner ff21fa8b63 gnu: gdb: Update to 7.10.1.
* gnu/packages/gdb.scm (gdb): Update to 7.10.1.
2015-12-06 15:57:33 +02:00
Alex Kost 7edf242967 gnu: manaplus: Update to 1.5.12.5.
* gnu/packages/games.scm (manaplus): Update to 1.5.12.5.
2015-12-06 12:46:10 +03:00
Alex Kost f5688801b2 emacs: info: Show a message after copying button label.
* emacs/guix-info.el (guix-info-button-copy-label): Use
  'guix-copy-as-kill' to display a message with what was killed.
2015-12-06 12:46:10 +03:00
Alex Kost 9ff175655c emacs: Complete --profile in 'guix package' popup.
* emacs/guix-command.el (guix-command-improve-package-argument): Use
  'guix-read-file-name' to complete --profile option.
2015-12-06 12:46:10 +03:00
Alex Kost a65f007524 emacs: 'guix-emacs-load-autoloads' takes a profile.
* emacs/guix-emacs.el (guix-emacs-load-autoloads): Use 'profile'
  as an optional argument.
  (guix-emacs-load-autoloads-maybe): Adjust accordingly.
* emacs/guix-init.el: Likewise.
2015-12-06 12:46:10 +03:00
Alex Kost c67e344f21 emacs: Fix 'guix-pull'.
* emacs/guix-base.el (guix-pull): Handle prefix argument when it is run
  interactively.  Use 'guix-command' instead of 'guix-pull' to prevent
  REPL exit if 'leave' happens.
2015-12-06 12:46:10 +03:00
Alex Kost 957b73382b emacs: Fix 'guix-apply-manifest'.
* emacs/guix-base.el (guix-apply-manifest): Use 'guix-command' instead
  of 'guix-package' to prevent REPL exit if 'leave' happens.  Expand
  profile and manifest file names, as relative file names lead to an
  error.
2015-12-06 12:46:10 +03:00
Ludovic Courtès e2e3600fe8 gnu: pius: Update to 2.2.1.
* gnu/packages/gnupg.scm (pius): Update to 2.2.1.  Change URL to
github.com.
[arguments]: Update pattern for 'gpg' command.
2015-12-05 23:38:02 +01:00
David Thompson 9fd0838b28 gnu: Add letsencrypt.
* gnu/packages/tls.scm (letsencrypt): New variable.
2015-12-05 09:44:38 -05:00
Leo Famulari 7890e3baf3 gnu: Add acme.
* gnu/packages/tls.scm (acme): New variable.
2015-12-05 09:44:38 -05:00
Leo Famulari 38b8f9b21b gnu: Add python2-parsedatetime.
* gnu/packages/python.scm (python2-parsedatetime): New variable.
2015-12-05 09:44:38 -05:00
Leo Famulari 4df1e30da8 gnu: python-parsedatetime: Update to 1.5.
* gnu/packages/python.scm (python-parsedatetime): Update to 1.5.
  [arguments]: Enable tests.
2015-12-05 09:44:38 -05:00
Leo Famulari ab41f9799f gnu: Add python-ndg-httpsclient.
* gnu/packages/python.scm (python-ndg-httpsclient,
  python2-ndg-httpsclient): New variables.
2015-12-05 09:44:38 -05:00
Leo Famulari 79e8a2916d gnu: Add python-configargparse.
* gnu/packages/python.scm (python-configargparse,
  python2-configargparse): New variables.
2015-12-05 09:44:37 -05:00
Leo Famulari b5f218be26 gnu: Add python2-pythondialog.
* gnu/packages/python.scm (python2-pythondialog): New variable.
2015-12-05 09:44:37 -05:00
Leo Famulari 44298269ba gnu: Add dialog.
* gnu/packages/python.scm (dialog): New variable.
2015-12-05 09:44:37 -05:00
Leo Famulari 99fffa8ae0 gnu: Add python-configobj.
* gnu/packages/python.scm (python-configobj, python2-configobj): New
  variables.
* gnu/packages/patches/python-configobj-setuptools.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-12-05 09:44:37 -05:00
Leo Famulari 5eea200518 gnu: Add python-werkzeug.
* gnu/packages/python.scm (python-werkzeug, python2-werkzeug): New
  variables.
2015-12-05 09:44:37 -05:00
Leo Famulari 3859ac12d6 gnu: Add python-pyrfc3339.
* gnu/packages/python.scm (python-pyrfc3339, python2-pyrfc3339): New variables.
2015-12-05 09:44:37 -05:00
Leo Famulari a6b61b271b gnu: Add python-zope-component.
* gnu/packages/python.scm (python-zope-component,
  python2-zope-component): New variables.
2015-12-05 09:44:37 -05:00
Leo Famulari d4b77f3662 gnu: Add python-zope-security.
* gnu/packages/python.scm (python-zope-security,
  python2-zope-security): New variables.
2015-12-05 09:44:37 -05:00
Leo Famulari f404b5ea6e gnu: Add python-zope-location.
* gnu/packages/python.scm (python-zope-location, python2-zope-location):
  New variables.
2015-12-05 09:44:37 -05:00
Leo Famulari 2ad520866f gnu: Add python-zope-proxy.
* gnu/packages/python.scm (python-zope-proxy, python2-zope-proxy): New
  variables.
2015-12-05 09:44:37 -05:00
Leo Famulari fbac9b178e gnu: Add python-zope-configuration.
* gnu/packages/python.scm (python-zope-configuration,
  python2-zope-configuration): New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 71fb09f326 gnu: Add python-zope-schema.
* gnu/packages/python.scm (python-zope-schema, python2-zope-schema): New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 6a5c710c40 gnu: Add python-zope-i18nmessageid.
* gnu/packages/python.scm (python-zope-i18nmessageid,
  python2-zope-i18nmessageid): New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 01614c4fea gnu: Add python-zope-testrunner.
* gnu/packages/python.scm (python-zope-testrunner,
  python2-zope-testrunner): New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 900e3c0e0e gnu: Add python-zope-testing.
* gnu/packages/python.scm (python-zope-testing, python2-zope-testing):
  New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 81f2373cd4 gnu: Add python-zope-exceptions.
* gnu/packages/python.scm (python-zope-exceptions,
  python2-zope-exceptions): New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 97abe268ab gnu: Add python-zope-interface.
* gnu/packages/python.scm (python-zope-interface,
  python2-zope-interface): New variables.
2015-12-05 09:44:36 -05:00
Leo Famulari 2fc5f18680 gnu: Add python-zope-event.
* gnu/packages/python.scm (python-zope-event, python2-zope-event): New
  variables.
2015-12-05 09:44:36 -05:00
宋文武 6bad7524a6 system: Add /etc/environment.
* gnu/system.scm: (operating-system-environment-variables): New procedure.
Adapted and moved environment variables from /etc/profile.
(operating-system-etc-service): Adjust accordingly.
(essential-services): Add an instance of SESSION-ENVIRONMENT-SERVICE-TYPE.
2015-12-05 10:51:49 +08:00
宋文武 af9908ff56 system: pam: Honor /etc/environment.
* gnu/system/pam.scm (unix-pam-service): Add pam_env module to the session group.
2015-12-05 10:51:49 +08:00
宋文武 e10964efd2 services: Add 'session-environment-service'.
* gnu/services/base.scm (session-environment-service): New procedure.
(session-environment-service-type): New variable.
(environment-variables->environment-file): New procedure.
2015-12-05 10:51:49 +08:00
Ludovic Courtès 2aacd9179c profiles: Silence GTK+ icon cache creation.
Suggested by Ricardo Wurmus <rekado@elephly.net>.

* guix/profiles.scm (gtk-icon-themes)[build]: Pass --quiet to
'gtk-update-icon-cache'.
2015-12-04 23:12:02 +01:00
Ludovic Courtès 4bddf74ef2 profiles: Silence GTK+ icon theme union.
Suggested by Ricardo Wurmus <rekado@elephly.net>.

* guix/profiles.scm (gtk-icon-themes)[build]: Pass 'union-build' a
  #:log-port argument.
2015-12-04 23:12:02 +01:00
Mark H Weaver b9fa245fcd gnu: icecat: Update to 38.4.0-gnu1.
* gnu/packages/patches/icecat-CVE-2015-4513-pt01.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt02.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt03.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt04.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt05.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt06.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt07.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt08.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt09.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt10.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt11.patch,
  gnu/packages/patches/icecat-CVE-2015-7188.patch,
  gnu/packages/patches/icecat-CVE-2015-7189.patch,
  gnu/packages/patches/icecat-CVE-2015-7193.patch,
  gnu/packages/patches/icecat-CVE-2015-7194.patch,
  gnu/packages/patches/icecat-CVE-2015-7196.patch,
  gnu/packages/patches/icecat-CVE-2015-7197.patch,
  gnu/packages/patches/icecat-CVE-2015-7198.patch,
  gnu/packages/patches/icecat-CVE-2015-7199.patch: Delete files.
* gnu-system.am (dist_patch_DATA): Remove them.
* gnu/packages/gnuzilla.scm (icecat): Update to 38.4.0-gnu1.  Remove the
  obsolete patches.
2015-12-04 15:52:16 -05:00
Ludovic Courtès 2734cbb895 store: 'build-things' now supports older daemon protocols.
This is a followup to d203d3d.

* guix/store.scm (build-things): Add 'build/old'.  Use it when STORE's
minor version is less than 15.
2015-12-04 11:34:18 +02:00
Ludovic Courtès 07e70f4846 store: Add mode parameter to 'build-paths'.
* guix/store.scm (%protocol-version): Set minor to 15.
(build-mode): New enumerate type.
(build-things): Add 'mode' parameter; pass it to the RPC.
* tests/store.scm ("build-things, check mode"): New check.
2015-12-03 19:09:53 +02:00
Ludovic Courtès d203d3d4cb store: Update to the new daemon protocol.
* guix/store.scm (%protocol-version): Set minor to 14.
(open-connection): Add 'cpu-affinity' parameter and honor it.
2015-12-03 19:09:53 +02:00
Ludovic Courtès df7393b93c gnu: Add findnewest.
* gnu/packages/version-control.scm (findnewest): New variable.
2015-12-03 19:09:53 +02:00
Federico Beffa dab8ebd925 gnu: python2-seaborn: Use custom 'python2-' packages.
* gnu/packages/python.scm (python2-seaborn): Use customized 'python2-'
  versions of 'matplotlib', 'pandas' and 'scipy'.
2015-12-03 12:49:32 +01:00
Efraim Flashner d1e08856e0 gnu: openssh: Update to 7.1p1.
* gnu/packages/ssh.scm (openssh): Update to 7.1p1.
2015-12-03 13:14:11 +02:00
Alex Kost c181b870f1 gnu: paredit: Update to 24.
* gnu/packages/emacs.scm (paredit): Update to 24.
2015-12-03 13:39:26 +03:00
Alex Kost 509a0c2700 gnu: magit: Update to 2.3.1.
* gnu/packages/emacs.scm (magit): Update to 2.3.1.
2015-12-03 13:39:26 +03:00
Alex Kost fae2a30f13 gnu: emacs-dash: Update to 2.12.1.
* gnu/packages/emacs.scm (emacs-dash): Update to 2.12.1.
2015-12-03 13:39:26 +03:00
Alex Kost eccd0b57a1 gnu: emacs-pdf-tools: Update to 0.70.
* gnu/packages/emacs.scm (emacs-pdf-tools): Update to 0.70.
2015-12-03 13:39:26 +03:00
Efraim Flashner dfbddf81be gnu: libass: Update to 0.13.1.
* gnu/packages/video.scm (libass): Update to 0.13.1.
2015-12-03 11:37:28 +02:00
Efraim Flashner 877a6466a6 gnu: xmlto: Update to 0.0.28.
* gnu/packages/xml.scm (xmlto): Update to 0.0.28.
2015-12-03 11:37:28 +02:00
Efraim Flashner f673552c13 gnu: vapoursynth: Update to 28.
* gnu/packages/video.scm (vapoursynth): Update to 28.
2015-12-03 11:37:28 +02:00
Federico Beffa d9bc0bf8fa gnu: python2-scikit-image: Use custom 'python2-' packages.
* gnu/packages/python.scm (python2-scikit-image): Use customized 'python2-'
  versions of 'matplotlib', 'numpy' and 'scipy'.
2015-12-03 09:22:30 +01:00
Federico Beffa 3cbe7d5e52 gnu: python2-pandas: Use custom 'python2-numpy'.
* gnu/packages/python.scm (python2-pandas): Do it.
2015-12-03 09:22:30 +01:00
Federico Beffa 5587253a87 gnu: python2-ipython: Use custom 'python2-numpy'.
* gnu/packages/python.scm (python2-ipython): Do it.
2015-12-03 09:22:30 +01:00
Mark H Weaver 084e41c1ac gnu: ffmpeg: Update to 2.8.3 [fixes CVE-2015-{8216,8217,8218,8219}].
* gnu/packages/video.scm (ffmpeg): Update to 2.8.3.
2015-12-02 22:39:12 -05:00
Andreas Enge e414a7dec3 gnu: gmp: Drop patch included in release 6.1.0.
* gnu/packages/multiprecision.scm (gmp)[source]: Drop patch.
* gnu/packages/patches/gmp-arm-asm-nothumb.patch: Remove patch.
* gnu-system.am (dist_patch_DATA): Unregister patch.
2015-12-02 20:03:51 +01:00
Efraim Flashner 7e006b6899 gnu: freeipmpi: Update to 1.5.1.
* gnu/packages/freeipmi.scm (freeipmi): Update to 1.5.1.
2015-12-02 20:32:30 +02:00
Ludovic Courtès 708d907000 daemon: Add 'buildMode' parameter to 'buildPaths' RPC.
* nix/libstore/worker-protocol.hh (PROTOCOL_VERSION): Bump to 0x10f.
* nix/libstore/remote-store.cc (RemoteStore::buildPaths): Send the
BUILDMODE when the daemon supports it.  Reject invalid values of
BUILDMODE for old daemons.
* nix/nix-daemon/nix-daemon.cc (performOp) <wopBuildPaths>: Read the
build mode when the client supports it.
2015-12-02 19:37:59 +02:00
Eelco Dolstra e134baae77 daemon: optimizePath: Detect some .links corruptions.
If automatic store optimisation is enabled, and a hard-linked file in
the store gets corrupted, then the corresponding .links entry will
also be corrupted. In that case, trying to repair with --repair or
--repair-path won't work, because the new "good" file will be replaced
by a hard link to the corrupted file. We can catch most of these cases
by doing a sanity-check on the file sizes.
2015-12-02 19:37:59 +02:00
Eelco Dolstra 14fb686a21 daemon: Fix namespace issue. 2015-12-02 19:37:59 +02:00
Eelco Dolstra 29d3242e5c daemon: Support SHA-512 hashes.
Fixes #679.

Note: on x86_64, SHA-512 is considerably faster than SHA-256 (198 MB/s
versus 131 MB/s).

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2015-12-02 19:37:59 +02:00
Eelco Dolstra 79aa1a8305 daemon: int2String -> std::to_string. 2015-12-02 19:37:59 +02:00
Eelco Dolstra 60c7c364f8 daemon: Filter build-chroot-dirs entries that conflict with derivation outputs.
Fixes https://github.com/NixOS/nixpkgs/issues/9504.

Note that this means we may have a non-functional /bin/sh in the
chroot while rebuilding Bash or one of its dependencies. Ideally those
packages don't rely on /bin/sh though.
2015-12-02 19:37:59 +02:00
Eelco Dolstra 538684d0c4 daemon: Prevent .chroot from being GC'ed when using LocalStore::buildDerivation()
Fixes #616.
2015-12-02 19:37:59 +02:00
Federico Beffa 18b3151613 gnu: python-matplotlib: Adjust path to figures in 'info' file.
* gnu/packages/python.scm (python-matplotlib): Do it.
2015-12-02 18:21:14 +01:00
Federico Beffa 5d26e542ee gnu: python-ipython: Don't use the bootstrap version of 'python-numpy'.
* gnu/packages/python.scm (python-ipython): Do it.
2015-12-02 18:21:13 +01:00
Federico Beffa 1bbc659fd2 gnu: python-matplotlib: Add 'TkAgg' backend and update to version '1.4.3'.
* gnu/packages/python.scm (python-matplotlib, python2-matplotlib): Do it.
* gnu/packages/patches/matplotlib-setupext-tk.patch: New file.
* gnu-system.am (dist_patch_DATA): Add the new patch.
2015-12-02 18:21:13 +01:00
Efraim Flashner 214ed6a39b gnu: opus: Update to 1.1.1.
* gnu/packages/xiph.scm (opus): Update to 1.1.1.
2015-12-02 13:31:06 +02:00
Efraim Flashner 59eef6f284 gnu: libbluray: Update to 0.9.2.
* gnu/packages/video.scm (libbluray): Update to 0.9.2.
2015-12-02 13:27:53 +02:00
Ludovic Courtès 85dce718cb import: pypi: Updater silently ignores packages without source.
Reported by Andreas Enge <andreas@enge.fr>
at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00764.html>.

* guix/import/pypi.scm (&missing-source-error): New error type.
(latest-source-release): Raise it instead of using 'error'.
(pypi->guix-package): Guard against it and use 'leave' to report the
error.
(latest-release): Guard against it and return #f when caught.
2015-12-01 23:18:48 +01:00
Efraim Flashner b6ab89efb2 gnu: python-six: Update to 1.10.0.
* gnu/packages/python.scm (python-six): Update to 1.10.0.
[source]: Change uri to pypi format.
2015-12-01 21:10:55 +02:00
Efraim Flashner b850a6d82d gnu: python-babel: Update to 2.1.1.
* gnu/packages/python.scm (python-babel): Update to 2.1.1.
[source]: Change uri to pypi format.
2015-12-01 20:55:06 +02:00
Efraim Flashner 94ce6b4959 gnu: python-oslo.utils: Update to 3.0.0.
* gnu/packages/openstack.scm (python-oslo.utils): Update to 3.0.0.
[source]: Change uri to pypi format.
2015-12-01 19:52:08 +02:00
Efraim Flashner 278c0efd0a gnu: python-oslo.serialization: Update to 2.0.0.
* gnu/packages/openstack.scm (python-oslo.serialization): Update to 2.0.0.
[source]: Change uri to pypi format.
2015-12-01 19:13:25 +02:00
Efraim Flashner 5788b4b6d1 gnu: python-oslo.i18n: Update to 3.0.0.
* gnu/packages/openstack.scm (python-oslo.i18n): Update to 3.0.0.
[source]: Change uri to pypi format.
2015-12-01 18:14:56 +02:00
Efraim Flashner e9af5adfd5 gnu: python-oslo.context: Update to 1.0.0.
* gnu/packages/openstack.scm (python-oslo.context): Update to 1.0.0.
[source]: Change uri to pypi format.
2015-12-01 17:33:29 +02:00
Efraim Flashner 3bc810a89b gnu: python-tempest-lib: Update to 0.11.0.
* gnu/packages/openstack.scm (python-tempest-lib): Update to 0.11.0.
2015-12-01 16:19:58 +02:00
Efraim Flashner 2d531d4efd gnu: python-stevedore: Update to 1.9.0.
* gnu/packages/openstack.scm (python-stevedore): Update to 1.9.0.
[source]: Change uri to pypi format.
2015-12-01 16:19:58 +02:00
Efraim Flashner bd52842d3d gnu: python-requests-mock: Update to 0.7.0.
* gnu/packages/openstack.scm (python-requests-mock): Update to 0.7.0.
[source]: Change uri to pypi format.
2015-12-01 16:19:58 +02:00
Efraim Flashner a5ff52f8a6 gnu: python-os-client-config: Update to 1.12.0.
* gnu/packages/openstack.scm (python-os-client-config): Update to 1.12.0.
[source]: Change uri to pypi format.
2015-12-01 16:19:53 +02:00
Efraim Flashner 56c7ead2f8 gnu: python-debtcollector: Update to 1.0.0.
* gnu/packages/openstack.scm (python-debtcollector): Update to 1.0.0.
[source]: Change uri to pypi format.
2015-12-01 16:19:22 +02:00
Efraim Flashner d4e817b1db gnu: python-mox3: Update to 0.12.0.
* gnu/packages/openstack.scm (python-mox3): Update to 0.12.0.
[source]: Change uri to pypi format.
2015-12-01 16:19:16 +02:00
Efraim Flashner df372f96a3 gnu: enlightenment: Update to 0.20.0.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.20.0.
[arguments]: Add '--enable-mount-eeze' to configure-flags.
2015-12-01 10:26:06 +02:00
Ludovic Courtès 64ec0e2912 guix build: Modularize transformation handling.
* guix/scripts/build.scm (options/resolve-packages): Remove.
(options->things-to-build, transform-package-source): New procedure.
(%transformations): New variable.
(options->transformation): New procedure.
(options->derivations): Rewrite to use 'options->things-to-build' and
'options->transformation'.
2015-12-01 00:02:54 +02:00
Ludovic Courtès 27b91d7851 guix package: Refactor 'options->installable'.
* guix/scripts/package.scm (options->upgrade-predicate)
(store-item->manifest-entry): New procedures.
* guix/scripts/package.scm (options->installable): Use them.  Remove the
'packages-to-upgrade' and 'packages-to-install' variables by getting rid
of a level of indirection.
2015-12-01 00:02:54 +02:00
Ludovic Courtès 6e37017506 guix package: Move 'process-actions' out of sight.
* guix/scripts/package.scm (process-actions): New procedure, moved
from...
(guix-package): ... here.  Adjust accordingly.
2015-12-01 00:02:54 +02:00
Ludovic Courtès dfdb15d9c2 build: Fix detection of ARM systems.
Reported by Andreas Enge <andreas@enge.fr>.
This fixes a regression introduced in 968ae903.

* m4/guix.m4 (GUIX_SYSTEM_TYPE): Add extra square braquets around
armv[7-9] pattern.
2015-12-01 00:02:54 +02:00
Ludovic Courtès 590558953b guix package: Formalize the list of actions.
* guix/scripts/package.scm (roll-back-action, switch-generation-action)
(delete-generations-action, manifest-action): New procedures.
(%actions): New variable.
* guix/scripts/package.scm (guix-package)[process-action]: Rewrite to
traverse %ACTIONS.
2015-12-01 00:02:54 +02:00
Ludovic Courtès 50dc193e27 nls: Update 'de' translation. 2015-12-01 00:02:54 +02:00
Ludovic Courtès d1ac5c0775 guix package: Move 'build-and-use-profile' out of sight.
* guix/scripts/package.scm (build-and-use-profile): New procedure.
Adapted and moved from...
(guix-package)[process-actions]: ... here.  Adjust call sites.
2015-12-01 00:02:54 +02:00
Ludovic Courtès 2cc10077f3 guix package: Move a couple of procedures out of sight.
* guix/scripts/package.scm (ensure-default-profile, process-query): New
procedures, moved from...
(guix-package): ... here.
2015-12-01 00:02:54 +02:00
Ludovic Courtès 0993f94267 guix package: Remove unnecessary use of (%store).
* guix/scripts/package.scm (delete-matching-generations): Use STORE
instead of (%store).
2015-12-01 00:02:54 +02:00
Efraim Flashner ccd20fcb7d gnu: python-pbr: Update to 1.8.1.
* gnu/packages/openstack.scm (python-pbr): Update to 1.8.1.
2015-11-30 23:20:35 +02:00
Efraim Flashner 5466700fa2 gnu: parallel: Update to 20151122.
* gnu/packages/parallel.scm (parallel): Update to 20151122.
2015-11-30 23:11:35 +02:00
Efraim Flashner 44e30a7647 gnu: python2-keyring: Use python2-pycrypto.
* gnu/packages/python.scm (python2-keyring)[inputs]: Force building
with python2-pycrypto.
2015-11-30 20:09:12 +02:00
Efraim Flashner 1c0059da41 gnu: python2-pycrypto: Use python2.
* gnu/packages/python.scm (python2-pycrypto)[inputs]: Force building
with python2.
2015-11-30 19:06:13 +02:00
Ricardo Wurmus 36f26211bb gnu: openssh: Install ssh-copy-id.
* gnu/packages/ssh.scm (openssh)[arguments]: Install "ssh-copy-id" and
  documentation.

Fixes <http://bugs.gnu.org/22024>.
Reported by Florian Paul Schmidt <mista.tapas@gmx.net>.
2015-11-30 14:58:44 +01:00
Ricardo Wurmus a9ee11d5ab gnu: openssh: Use modify-phases syntax.
* gnu/packages/ssh.scm (openssh)[arguments]: Use modify-phases syntax.
2015-11-30 14:58:43 +01:00
Ricardo Wurmus 70b002aa1d gnu: Add ruby-tins.
* gnu/packages/ruby.scm (ruby-tins): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus d3b20a02c8 gnu: Add ruby-sdoc.
* gnu/packages/ruby.scm (ruby-sdoc): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus a75bdfcec3 gnu: Add ruby-pry-editline.
* gnu/packages/ruby.scm (ruby-pry-editline): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus 2f9e0b68e1 gnu: Add ruby-ci-reporter.
* gnu/packages/ruby.scm (ruby-ci-reporter): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus fe1ddad54a gnu: Add ruby-atoulme-saikuro.
* gnu/packages/ruby.scm (ruby-atoulme-saikuro): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus a84fa2ad42 gnu: Add ruby-simplecov.
* gnu/packages/ruby.scm (ruby-simplecov): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus b0cf606f75 gnu: Add sparsehash.
* gnu/packages/crypto.scm (sparsehash): New variable.
2015-11-30 14:41:48 +01:00
Ricardo Wurmus 0149354d21 gnu: Add cereal.
* gnu/packages/serialization.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-30 14:41:48 +01:00
Efraim Flashner dbd3a91f54 gnu: xorriso: Update to 1.4.2.
* gnu/packages/cdrom.scm (xorriso): Update to 1.4.2.
2015-11-30 10:41:19 +02:00
Ludovic Courtès 02f0c3b28e gnu: python: Move tkinter to "tk" output.
* gnu/packages/python.scm (python-2)[outputs]: New field.
[arguments]: Add 'move-tk-inter' phase.
(python2-minimal, python-minimal, wrap-python3)[outputs]: New field.
2015-11-29 22:59:28 +01:00
Ludovic Courtès d2cc9c7cfd gnu: python: Clarify and shorten the list of built-time modules.
* gnu/packages/python.scm (python-2)[arguments]: Make the #:modules list
  shorter.
2015-11-29 22:59:28 +01:00
Ludovic Courtès 5b4e2791ef gnu: python: Do not record configure flags.
This reduces the number of run-time dependencies of python-2 from 25 to
15, corresponding only to ~4 MiB.

* gnu/packages/python.scm (python-2)[arguments]: Add
  'do-not-record-configure-flags' phase.
2015-11-29 22:59:28 +01:00
Ludovic Courtès c5a05e3143 gnu: python: Factorize configure flags with minimal variants.
* gnu/packages/python.scm (python2-minimal, python-minimal)[arguments]:
  Reuse the inherited configure flags, and just add
  --without-system-ffi.
2015-11-29 22:59:28 +01:00
Ludovic Courtès 9820a6d4a0 gnu: python: Make 'sys.version' deterministic.
* gnu/packages/patches/python-2-deterministic-build-info.patch,
  gnu/packages/patches/python-3-deterministic-build-info.patch: New
  files.
* gnu/packages/python.scm (python-2, python): Use them.
* gnu-system.am (dist_patch_DATA): Add them.
2015-11-29 22:59:28 +01:00
Ludovic Courtès a665996f58 gnu: python: Set SOURCE_DATE_EPOCH to 1 instead of 0.
* gnu/packages/python.scm (python-2)[arguments]: Set SOURCE_DATE_EPOCH
  to 1 to match what the daemon does.
* guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): Likewise.
2015-11-29 22:59:28 +01:00
Ludovic Courtès dedc832070 gnu: python-2: Honor 'SOURCE_DATE_EPOCH'.
* gnu/packages/patches/python-2.7-source-date-epoch.patch: New file.
* gnu/packages/python.scm (python-2)[source]: Use it.
  [arguments]: Set SOURCE_DATE_EPOCH in 'patch-lib-shells' phase.
* guix/build/python-build-system.scm (set-SOURCE-DATE-EPOCH): New
  procedure.
  (%standard-phases): Add it.
* gnu-system.am (dist_patch_DATA): Add patch.
2015-11-29 22:59:28 +01:00
Ludovic Courtès f8e7fdc416 gnu: tcl: Produce 'tclIndex' files deterministically.
* gnu/packages/patches/tcl-mkindex-deterministic.patch: New patch.
* gnu/packages/tcl.scm (tcl)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-29 22:59:28 +01:00
宋文武 79c8a071e7 tk: Hardcode path to TK_LIBRARY.
Fixes <http://bugs.gnu.org/20889>.

* gnu/packages/patches/tk-find-library.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/tcl.scm (tk)[source]: Add patch.
2015-11-29 22:59:28 +01:00
Ludovic Courtès 26059753ae refresh: Check updater availability at run time.
This is a followup to b68d2db, which added a check for updaters at
macro-expansion time.  The problem is that, when running 'guix pull',
Guile-JSON is found, so the PyPi updater (say) is added to %UPDATERS,
but then at run time Guile-JSON might be missing.

Reported by orbea on #guix.

* guix/scripts/refresh.scm (maybe-updater): Rewrite as 'syntax-rules'.
Produce code that checks conditions at run time.
(list-updaters): Update docstring.
2015-11-29 22:56:29 +01:00
Ricardo Wurmus 4b7857a48b gnu: Add perl-dbd-mysql.
* gnu/packages/databases.scm (perl-dbd-mysql): New variable.
2015-11-29 20:52:10 +01:00
Ricardo Wurmus 11d4800aa2 gnu: Add Rakarrack.
* gnu/packages/audio.scm (rakarrack): New variable.
2015-11-29 20:45:06 +01:00
Ricardo Wurmus eac26c3b09 services: Add pkexec to setuid programs.
* gnu/services/desktop.scm (polkit-setuid-programs): Add pkexec to
  list of setuid programs.
2015-11-29 20:33:35 +01:00
Ricardo Wurmus 25a21c7ff6 gnu: xfce-session: Enable shutdown/reboot menu entries.
* gnu/packages/xfce.scm (xfce-session)[inputs]: Add upower and polkit.
[source]: Replace paths to "shutdown" with "halt" and "restart".
2015-11-29 20:33:35 +01:00
Ludovic Courtès cb7bd0cff5 gnu: weechat: Dynamically link against libpython2.7.so.
* gnu/packages/patches/weechat-python.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/weechat.scm (weechat)[source]: Use it.
2015-11-29 19:17:33 +01:00
Ludovic Courtès 25d188ce12 http-client: 'http-fetch' converts strings to URIs.
* guix/http-client.scm (http-fetch): Use 'string->uri' if URI is a
string.  Fixes a regression introduced in 8a5063f.
2015-11-29 17:46:11 +01:00
Ludovic Courtès 841cb43c6b guix build: Factorize build log query.
* guix/scripts/build.scm (show-build-log): New procedure.
(guix-build): New variable 'items'.  Use it and 'show-build-log'.
2015-11-29 17:42:01 +01:00
Ludovic Courtès 4eae798075 gnu: guile-next: Update to 2.1.1.
* gnu/packages/guile.scm (guile-next)[source]: Update to 2.1.1.
[arguments, native-inputs]: Move to...
(guile-for-guile-emacs): ... here.  New fields.
2015-11-29 17:37:00 +01:00
Ludovic Courtès e946b609b2 ld-wrapper: Compute the library search path globally.
Fixes <http://bugs.gnu.org/21941>.

* gnu/packages/ld-wrapper.in (library-search-path): New procedure.
(library-files-linked): Add 'library-path' parameter.  Use it.  Do not
thread it in 'fold'.
(ld-wrapper): Add call to 'library-search-path' and pass the result to
'library-files-linked'.  When debugging, print the value of PATH.
2015-11-28 22:11:12 +01:00
Ludovic Courtès 471cdfdb19 environment: Set build options early on.
This fixes a bug whereby some options, such as #:substitute-urls, would
be passed to the daemon too late to have an effect.

* guix/scripts/environment.scm (build-inputs): Remove call to
'set-build-options-from-command-line*'.
(guix-environment): Add call to 'set-build-options-from-command-line' as
early as possible.
2015-11-28 21:53:51 +01:00
Ludovic Courtès f79a576e77 gnu: jasper: Patch CVE-2008-3522.
* gnu/packages/patches/jasper-CVE-2008-3522.patch: New file.
* gnu/packages/image.scm (jasper)[source]: Use it.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-28 16:29:11 +01:00
Ludovic Courtès 4e70fe4d0e lint: Do not report already-patched vulnerabilities.
* guix/scripts/lint.scm (patch-file-name): New procedure.
(check-vulnerabilities): Use it to filter out patched vulnerabilities.
* tests/lint.scm ("cve: one patched vulnerability"): New test.
2015-11-28 16:15:31 +01:00
Ludovic Courtès f6c9fb1b38 doc: Mention 'specification->package'.
Suggested by Florian Paul Schmidt <mista.tapas@gmx.net>.

* doc/guix.texi (Using the Configuration System): Mention
'specification->package'.
2015-11-28 15:28:44 +01:00
Ludovic Courtès ae4427e3f3 substitute: Warn upon store prefix mismatches.
Suggested by Hynek Urban <hynek.urban@gmail.com>.

* guix/scripts/substitute.scm (fetch-narinfos): Move body to...
[do-fetch]: ... here.  New procedure.
Emit a warning when CACHE-INFO's prefix does not match.
2015-11-28 00:02:23 +01:00
Ludovic Courtès 6629099a63 services: tor: Store private data under /var/lib/tor.
* gnu/services/networking.scm (tor-configuration->torrc): Add
'DataDirectory' clause.  Change 'HiddenServiceDir' to
/var/lib/tor/hidden-services/NAME.
(tor-hidden-service-activation): Create /var/lib/tor.
(tor-hidden-service): Adjust docstring.
* doc/guix.texi (Networking Services): Adjust accordingly.
2015-11-27 23:29:51 +01:00
Ludovic Courtès 5ee35eb747 services: tor: Write to syslog.
* gnu/services/networking.scm (tor-configuration->torrc): Add "Log
notice syslog".
(tor-dmd-service): Add 'syslogd' to 'requirement'.
2015-11-27 23:08:00 +01:00
Ludovic Courtès 6331bde73f services: Add 'tor-hidden-service'.
* gnu/services/networking.scm (<tor-configuration>, <hidden-service>):
New record types.
(tor-configuration->torrc): New procedure.
(tor-dmd-service): Use it.
(tor-hidden-service-activation): New procedure.
(tor-service-type)[extensions]: Extend ACTIVATION-SERVICE-TYPE.
[compose, extend]: New fields.
(tor-service): Use 'tor-configuration'.
(tor-hidden-service-type): New variable.
(tor-hidden-service): New procedure.
2015-11-27 23:04:49 +01:00
Ludovic Courtès fde40c98f9 services: lsh: Correctly handle #:interfaces option.
* gnu/services/ssh.scm (lsh-dmd-service)[lsh-command]: Pass a series of
--interface flags instead of the nonexistent --interfaces option.
2015-11-27 22:46:27 +01:00
Ludovic Courtès 4331f558d7 gnu: tor: Update to 0.2.7.5.
* gnu/packages/tor.scm (tor): Update to 0.2.7.5.
2015-11-27 15:06:15 +01:00
Ludovic Courtès ef8742ea69 gnu: eigen: Really run tests in verbose mode.
Suggested by Gaël Guennebaud <gael.guennebaud@inria.fr>.

* gnu/packages/algebra.scm (eigen)[arguments]: Remove #:test-target.
Rename 'build-tests' phase to 'check', and have it run 'ctest -V'.
2015-11-27 11:04:17 +01:00
Andreas Enge 08c28b6d5a gnu: gp2c: Update to 0.0.9pl4.
* gnu/packages/algebra.scm (gp2c): Update to 0.0.9pl4.
2015-11-27 02:44:21 +01:00
Mario Daniel Ruiz Saavedra ad227484c3 Add 'guix-daemon.conf' job for Upstart.
* etc/guix-daemon.conf.in: New file.
* daemon.am (CLEANFILES): Add etc/guix-daemon.conf.
  (upstartjobdir, nodist_upstartjob_DATA): New variables.
  (EXTRA_DIST): Add etc/guix-daemon.conf.in.
* doc/guix.texi (Binary Installation, Build Environment Setup): Mention
  'guix-daemon.conf'.

Signed-off-by: Mario Daniel Ruiz Saavedra <desiderantes@rocketmail.com>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-11-26 23:21:09 +01:00
Ludovic Courtès 5432734b00 lint: Add "cve" checker.
Fixes <http://bugs.gnu.org/21289>.

* guix/scripts/lint.scm (package-name->cpe-name, package-vulnerabilities)
(check-vulnerabilities): New procedures.
* guix/scripts/lint.scm (%checkers): Add "cve" checker.
* tests/lint.scm ("cve", "cve: one vulnerability"): New tests.
* doc/guix.texi (Invoking guix lint): Mention it.
2015-11-26 23:04:19 +01:00
Ludovic Courtès 0eef755130 Add (guix cve).
* guix/cve.scm, tests/cve-sample.xml, tests/cve.scm: New files.
* Makefile.am (MODULES): Add guix/cve.scm.
(SCM_TESTS): Add tests/cve.scm.
(EXTRA_DIST): Add tests/cve-sample.scm.
2015-11-26 22:35:01 +01:00
Ludovic Courtès 8a5063f777 http-client: 'http-fetch' and 'http-fetch/cached' support HTTPS.
* guix/http-client.scm (http-fetch): Use 'open-connection-for-uri', to
support HTTPS.
2015-11-26 21:07:25 +01:00
Federico Beffa d8c66da7c1 import: hackage: Assume current 'ghc' package version.
* guix/scripts/import/hackage.scm (%default-options): Do it.
  (ghc-default-version): New variable.
2015-11-26 18:17:23 +01:00
Federico Beffa d3c827e419 import: hackage: Add new tests.
* tests/hackage.scm (eval-test-with-cabal): Add optional argument.
  (test-cabal-3): New variable and test.
  (test-read-cabal-1): Exercise more parsing variants.
2015-11-26 18:17:23 +01:00
Federico Beffa 96018e21e7 import: hackage: Handle CRLF end of line style.
* guix/import/hackage.scm (hackage-fetch, hackage->guix-package): Use
  'canonical-newline-port'.
2015-11-26 18:17:23 +01:00
Federico Beffa c8be6f0d4a utils: Add 'canonical-newline-port'.
* guix/utils.scm (canonical-newline-port): New procedure.
* tests/utils.scm ("canonical-newline-port"): New test.
2015-11-26 18:17:23 +01:00
Federico Beffa 94abc84887 import: hackage: Make parsing of tests and fields more flexible.
* guix/import/cabal.scm (is-test): Allow spaces between keyword and
  parentheses.
  (is-id): Add argument 'port'.  Allow spaces between keyword and column.
  (lex-word): Adjust call to 'is-id'.
2015-11-26 18:17:23 +01:00
Federico Beffa 876fd23ab6 import: hackage: Make it resilient to missing final newline.
* guix/import/cabal.scm (peek-next-line-indent): Check for missing final
  newline.
2015-11-26 18:17:23 +01:00
Federico Beffa 9be54eb1b1 import: hackage: Imporve parsing of tests.
* guix/import/cabal.scm (lex-word): Add support for tests with no spaces.
  (impl): Rewrite.
2015-11-26 18:17:23 +01:00
Federico Beffa 7716f55c83 import: hackage: Add recognition of 'true' and 'false' symbols.
* guix/import/cabal.scm (is-true, is-false, lex-true, lex-false): New procedures.
  (lex-word): Use them.
  (make-cabal-parser): Add TRUE and FALSE tokens.
  (eval): Add entries for 'true and 'false symbols.
2015-11-26 18:17:22 +01:00
Efraim Flashner b72a44100e gnu: python-pickleshare: Add python-setuptools to native-inputs.
* gnu/packages/python.scm (python-pickleshare)[native-inputs]: Add
python-setuptools.
2015-11-26 15:28:31 +02:00
Efraim Flashner 553b709ba1 gnu: python-pathpy: Add python-setuptools to native-inputs.
* gnu/packages/python.scm (python-pathpy)[native-inputs]: Add
python-setuptools.
2015-11-26 15:26:18 +02:00
Efraim Flashner 0066de6f3a gnu: python2-oauthlib: Override python2-cryptography in inputs.
* gnu/packages/python.scm (python2-oauthlib)[inputs]: Override inherited
"python2-cryptography" in inputs.
2015-11-26 12:03:45 +02:00
宋文武 7234ad4f54 services: Add network-manager-service.
* gnu/services/networking.scm (network-manager-service): New procedure.
(network-manager-service-type, %network-manager-activation): New variables.
(network-manager-dmd-service): New procedure.
2015-11-26 13:50:13 +08:00
Efraim Flashner bde2171d4d gnu: python-oauthlib: Update to 1.0.3.
* gnu/packages/python.scm (python-oauthlib): Update to 1.0.3.
[native-inputs]: Move python-setuptools, python-nose, python mock here.
Add python-coverage.
[inputs]: Add python-blinker, python-cryptography, python-pyjwt.
2015-11-25 20:42:06 +02:00
Efraim Flashner 7957fe6c10 gnu: python2-unittest2: Use python2-setuptools.
* gnu/packages/python.scm (python2-unittest2)[inputs]: Switch from
python-setuptools to python2-setuptools.
2015-11-25 20:42:05 +02:00
David Thompson 4b7513e043 services: xorg: Export additional symbols.
'slim-configuration' and 'slim-service-type' are needed if one wishes to
use 'modify-services' on a service list that includes the slim service.

* gnu/services/xorg.scm: Export 'slim-configuration' and
  'slim-service-type'.
2015-11-25 12:47:58 -05:00
David Thompson 34f5618bca gnu: Add kodi.
* gnu/packages/kodi.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-25 11:44:11 -05:00
David Thompson b0b23e52a3 gnu: Add jasper.
* gnu/packages/image.scm (jasper): New variable.
2015-11-25 11:44:11 -05:00
David Thompson 33ae9107d8 gnu: Add tinyxml.
* gnu/packages/xml.scm (tinyxml): New variable.
* gnu/packages/patches/tinyxml-use-stl.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-25 11:44:11 -05:00
Ludovic Courtès 968ae90318 build: Reject ARMv6 systems.
Fixes <http://bugs.gnu.org/21987>.
Reported by Martin Vahi <martin.vahi@softf1.com>.

* m4/guix.m4 (GUIX_SYSTEM_TYPE): Restrict ARM systems to arm|armv[7-9].
2015-11-25 17:01:02 +01:00
Leo Famulari 13ef3e997b gnu: Add eyeD3.
* gnu/packages/mp3.scm (eyed3): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-11-25 17:01:02 +01:00
Ricardo Wurmus 1c207a7658 gnu: Add Ragel.
* gnu/packages/ragel.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-25 15:21:47 +01:00
Ludovic Courtès b9c7ed71b1 services: dmd: Spawn a REPL upon failure to load a service definition.
Fixes <http://bugs.gnu.org/19779>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/services/dmd.scm (dmd-configuration-file)[config]: Wrap
'primitive-load' calls in 'call-with-error-handling'.
2015-11-25 11:59:54 +01:00
Ludovic Courtès 3177149797 doc: Remove mention of monadic services.
* doc/guix.texi (Base Services): Remove mention of a list of monadic
services.
2015-11-25 11:59:54 +01:00
Ludovic Courtès 479b417b54 services: dmd: Strip the default list of modules.
* gnu/services/dmd.scm (%default-imported-modules): Remove (gnu build
file-systems).
(%default-modules): Likewise, and remove (ice-9 ftw).
* gnu/services/base.scm (file-system-service-type): Add 'modules' and
'imported-modules' fields.
2015-11-25 11:59:54 +01:00
Ludovic Courtès fae685b9cc services: dmd: Add 'modules' and 'imported-modules' fields.
* gnu/services/dmd.scm (%default-imported-modules, %default-modules):
New variables.
* gnu/services/dmd.scm (<dmd-service>)[modules, imported-modules]: New
field.
* gnu/services/dmd.scm (dmd-service-file-name, dmd-service-file): New
procedures.
(dmd-configuration-file)[modules]: Compute based on the
'imported-modules' field of SERVICES.
(dmd-configuration-file): Remove 'use-modules' form.  Use
'dmd-service-file', and call 'primitive-load' on each file.
* doc/guix.texi (dmd Services): Document the new fields.
2015-11-25 11:59:54 +01:00
Ludovic Courtès 851b6f6283 gexp: Build text derivations locally.
* guix/gexp.scm (gexp->file): Pass #:substitutable? #f.
(text-file*): Likewise, and #:local-build? #t.
2015-11-25 11:59:54 +01:00
Ludovic Courtès b6094b1f0a gnu: dico: Sort entries in .a files deterministically.
* gnu/packages/patches/dico-libtool-deterministic.patch: New file.
* gnu/packages/dico.scm (dico)[source]: Use it.
[arguments]: Add #:make-flags.
* gnu-system.am (dist_patch_DATA): Add the patch.
2015-11-25 11:59:54 +01:00
Andreas Enge 90c59e970e gnu: gmp: Update to 6.1.0.
* gnu/packages/multiprecision.scm (gmp): Update to 6.1.0.
2015-11-25 04:20:56 +01:00
Leo Famulari 39570137e5 gnu: libreoffice: Update to 5.0.3.2 [fixes CVE-2015-5214].
* gnu/packages/libreoffice.scm (libreoffice): Update to 5.0.3.2
2015-11-24 22:00:34 -05:00
Ludovic Courtès c9e34a6a77 gnu: Add GNU Dico.
* gnu/packages/dico.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-24 23:54:30 +01:00
Ludovic Courtès 2d2651e781 services: dmd: Error out upon unmet dmd requirements.
* gnu/services/dmd.scm (assert-no-duplicates): Rename to...
(assert-valid-graph): ... this.
[provisions]: New variable.
[assert-satisfied-requirements]: New procedure.
Use it.
* tests/guix-system.sh: Add test with unmet dmd requirements.
2015-11-24 23:54:30 +01:00
Efraim Flashner eb31d4b4f1 gnu: python-pyjwt: Update to 1.4.0.
* gnu/packages/python.scm (python-pyjwt): Update to 1.4.0.
[native-inputs]: Move python-setuptools here, add python-pytest-runner.
2015-11-24 22:30:09 +02:00
Efraim Flashner d50d097d58 gnu: python-pytest-runner: Add python-setuptools as native-input.
* gnu/packages/python.scm (python-pytest-runner)[native-input]: Add
  python-setuptools.
2015-11-24 21:44:58 +02:00
Efraim Flashner 383af6b096 gnu: python-setuptools-scm: Update to 1.9.0.
* gnu/packages/python.scm (python-setuptools-scm): Update to 1.9.0.
[native-inputs]: Add python-setuptools.
2015-11-24 20:08:14 +02:00
Eric Bavier 97003b5ccc gnu: gnuplot: Update to 5.0.1.
* gnu/packages/maths.scm (gnuplot): Update to 5.0.1.
  (native-inputs): 'texlive' -> 'texlive-bin'.
2015-11-24 11:41:46 -06:00
Ludovic Courtès cc3de1da41 guix package: Reduce startup time by ~50%.
As measured with:

  time sh -c 'for i in `seq 1 10` ; do guix package --search-paths ; done'

On my machine, when running:

  strace -o ,,s guix package --search-paths

the number returned by:

  grep -E '^(open|l?stat).*\.go' ,,s | wc -l

drops from 1610 to 837.

* guix/scripts/package.scm: Remove two unnecessary #:use-module forms.
Autoload (gnu packages ...) modules.
2015-11-24 18:19:25 +01:00
Ricardo Wurmus 8b749cf3cb gnu: ruby-simplecov-html: Fix hash and disable tests.
* gnu/packages/ruby.scm (ruby-simplecov-html)[source]: Replace incorrect
  hash.
[arguments]: Disable tests.
2015-11-24 16:39:30 +01:00
Ludovic Courtès 5ca2b3c245 build: Add rsem patch to the distribution.
This file was added in commit 66e3eff1.

* gnu-system.am (dist_patch_DATA): Add rsem-makefile.patch.
2015-11-24 13:15:38 +01:00
Ludovic Courtès 38b92daa81 graph: Add '%bag-with-origins-node-type'.
* guix/scripts/graph.scm (bag-node-edges): Remove 'filter' call.  Add
case for 'origin'.
(%bag-node-type)[edges]: Add filtering here.
(%bag-with-origins-node-type): New variable.
(%node-types): Add it.
* tests/graph.scm ("bag DAG, including origins"): New test.
* tests/guix-graph.sh: Add 'bag-with-origins'.
* doc/guix.texi (Invoking guix graph): Document it.
2015-11-23 23:34:15 +01:00
Ludovic Courtès 961d0d2d22 doc: Mention the 'NIX_REMOTE' variable for 'guix import nix'.
Suggested by rgrau on #guix.

* doc/guix.texi (Invoking guix import): Document 'NIX_REMOTE'.
2015-11-23 23:20:41 +01:00
Ludovic Courtès 2d7fc7daf1 refresh: Add '--expression'.
* guix/scripts/refresh.scm (%options, show-help): Add --expression.
(guix-refresh): Honor it.
* doc/guix.texi (Invoking guix refresh): Document it.
2015-11-23 17:48:35 +01:00
Ludovic Courtès 160b0ef3fd Thank Jan. 2015-11-23 17:48:35 +01:00
Ludovic Courtès 86cdfc451b guix download: Fail when more than one URL is passed.
* guix/scripts/download.scm (guix-download)[parse-option]: Call 'leave'
when passed an extra argument.
* tests/guix-download.sh: Add test.
2015-11-23 17:48:35 +01:00
Ludovic Courtès 71ae18ee52 guix download: Gracefully handle missing arguments.
Fixes <http://bugs.gnu.org/21991>.
Reported by Jan Synáček <jan.synacek@gmail.com>.

* guix/scripts/download.scm (guix-download): Call 'leave' when OPTS does
not contain an 'argument' key.
2015-11-23 17:48:35 +01:00
Taylan Ulrich Bayırlı/Kammer bbee7bd765 gnu: enca: Add file-name field to source.
* gnu/packages/textutils.scm (enca): Add file-name field to source.
2015-11-23 13:46:31 +01:00
Taylan Ulrich Bayırlı/Kammer 6f323b0773 gnu: recode: Add file-name field to source.
* gnu/packages/textutils.scm (recode): Add file-name field to source.
2015-11-23 12:05:55 +01:00
Ludovic Courtès 821f4dc287 gnu: Fix a few 'source-file-name' lint warnings.
* gnu/packages/firmware.scm (ath9k-htc-firmware)[source](file-name): New
field.
* gnu/packages/gnunet.scm (guile-gnunet)[source](file-name): New field.
* gnu/packages/guile.scm (guile-next)[source](file-name): New field.
(guile-minikanren)[source](file-name): New field
(guile-gdbm-ffi)[source](file-name): New field.
* gnu/packages/ssh.scm (guile-ssh)[source](file-name): New field.
2015-11-23 10:52:32 +01:00
Alex Kost 59dc56390d emacs: Expand 'guix-load-path'.
Reported by Mathieu Lirzin <mthl@gnu.org> at
<http://lists.gnu.org/archive/html/guix-devel/2015-11/msg00585.html>.

* emacs/guix-backend.el (guix-start-repl): Expand 'guix-load-path' to
  avoid a potentially relative directory name in Guile %load-path.
2015-11-23 11:33:55 +03:00
Ludovic Courtès 862d2479f6 ftp-client: Default port for 'ftp-open' is now "ftp".
* guix/ftp-client.scm (ftp-open): Change default #:port to "ftp".
* guix/scripts/lint.scm (probe-uri): Remove 'port' parameter to
'ftp-open'.
2015-11-22 14:35:28 +01:00
Ludovic Courtès d6d33984df ftp-client: Fix off-by-one when trying addresses in 'ftp-open'.
* guix/ftp-client.scm (ftp-open): Change to use 'match' instead of
car/cdr, and fix off-by-one (was '(null? addresses)' instead of
'(null? (cdr addresses))'.)
2015-11-22 14:16:36 +01:00
Ludovic Courtès 5fb95cc592 doc: Mention 'guix environment guix'.
* doc/contributing.texi (Building from Git): Mention 'guix environment
guix'.  Remove outdated description of ./bootstrap.  Clarify a few
things.
2015-11-22 14:14:25 +01:00
Ludovic Courtès 82e64fc14e environment: Correctly handle abnormal exits.
Fixes <http://bugs.gnu.org/21958>.

* guix/scripts/environment.scm (status->exit-code): New procedure.
(exit/status, primitive-exit/status): Use it.
* tests/guix-environment-container.sh: Add test.
2015-11-21 22:26:13 +01:00
Ludovic Courtès 6493fd0458 tests: Skip 'guix-container-environment.sh' when support is missing.
Fixes <http://bugs.gnu.org/21410>.
Reported by Alex Vong <alexvong1995@gmail.com>.

* tests/guix-environment-container.sh: Exit with 77 when
'((@@ (guix scripts environment) assert-container-features))' fails.
2015-11-21 22:26:13 +01:00
Ludovic Courtès aabe6d3801 doc: Remove extraneous "See."
* doc/contributing.texi (Building from Git): Remove extra "See" and use
@xref instead of @pxref.
2015-11-21 22:26:13 +01:00
Efraim Flashner 92d9a36e97 gnu: tig: Update to 2.1.1.
* gnu/packages/version-control.scm (tig): Update to 2.1.1.
2015-11-21 23:03:11 +02:00
Efraim Flashner 7fbbd3e7a0 gnu: cvs: Use external zlib.
* gnu/packages/version-control.scm (cvs)[arguments]: add configure flag
  --with-exernal-zlib.
2015-11-21 21:43:11 +02:00
Efraim Flashner f94f481988 gnu: nano: Update to 2.4.3.
* gnu/packages/nano.scm (nano): Update to 2.4.3.
2015-11-21 20:56:08 +02:00
Ludovic Courtès a51cbecb44 refresh: Rewrite '--list-dependent' in terms of (guix graph).
* guix/scripts/refresh.scm (all-packages, list-dependents): New
procedures.
(guix-refresh): Use it.
2015-11-21 16:27:34 +01:00
Ludovic Courtès 923d846c4d graph: Add procedures to query a node's edges.
* guix/graph.scm (%node-edges, node-edges, node-back-edges)
(node-transitive-edges): New procedures.
* tests/graph.scm ("node-edges")
("node-transitive-edges + node-back-edges"): New tests.
2015-11-21 16:26:43 +01:00
Ludovic Courtès 8fb583714f Add (guix graph).
* guix/scripts/graph.scm (<node-type>, <graph-backend>, emit-prologue)
(emit-epilogue, emit-node, emit-edge, %graphviz-backend, export-graph):
Move to...
* guix/graph.scm: ... here.  New file.
* guix/scripts/system.scm, tests/graph.scm: Use it.
* Makefile.am (MODULES): Add it.
2015-11-21 16:26:43 +01:00
Mathieu Lirzin 1b933e62dc gnu: parted: Update to 3.2.
* gnu/packages/disk.scm (parted): Update to 3.2.
[inputs]: Add lvm2 and remove check.  Replace readline-6.2 with its
latest version.
[native-inputs]: Add perl and python for the tests.
[arguments]: Use `modify-phases' and adapt to the new tests.
[home-page]: Use https.
2015-11-21 13:10:27 +01:00
Ludovic Courtès 06da1a6b4f gnu: Add qemu-minimal.
* gnu/packages/qemu.scm (qemu): Exchange with former QEMU-HEADLESS.
(qemu-headless): Rename to...
(qemu-minimal): ... this.  New variable.  Pass --target-list.
* gnu/packages/debug.scm (qemu-2.3.0): Inherit from QEMU-MINIMAL.
* gnu/packages/grub.scm (qemu-for-tests): Likewise.
* gnu/system/vm.scm (expression->derivation-in-linux-vm, qemu-image):
Update to name change.
2015-11-21 00:36:23 +01:00
Alex Kost bb38ece458 doc: Fix 'geiser-guile-load-path' example.
Reported by marusich on #guix.

* doc/contributing.texi (The Perfect Setup): Wrap modifying
  'geiser-guile-load-path' into 'with-eval-after-load'.
2015-11-21 02:19:04 +03:00
Ricardo Wurmus 56215e4154 gnu: Add Synfig Studio.
* gnu/packages/animation.scm (synfigstudio): New variable.
2015-11-20 20:23:03 +01:00
Ricardo Wurmus 7775a18690 gnu: Add Synfig.
* gnu/packages/animation.scm (synfig): New variable.
* gnu/packages/patches/synfig-build-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-20 20:23:03 +01:00
Ricardo Wurmus c1fbc66a77 gnu: Add ETL.
* gnu/packages/animation.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-20 20:23:03 +01:00
Ricardo Wurmus 307ad140db gnu: Add MLT.
* gnu/packages/video.scm (mlt): New variable.
2015-11-20 20:23:03 +01:00
Ricardo Wurmus 561965941c gnu: Add libxml++.
* gnu/packages/gnome.scm (libxml++): New variable.
2015-11-20 20:23:03 +01:00
Eric Bavier 9cf5245497 gnu: slepc: Update to 3.6.2.
* gnu/packages/maths.scm (slepc): Update to 3.6.2.
  [arguments]: Append "/lib" to arpack configure flag.  Use 'inputs'
  rather than '%build-inputs' in 'configure phase.
2015-11-20 11:58:40 -06:00
Eric Bavier 32187d99bb gnu: petsc: Update to 3.6.2.
* gnu/packages/maths.scm (petsc): Update to 3.6.2.
2015-11-20 11:58:40 -06:00
Eric Bavier c69fa4380a gnu: mumps: Update to 5.0.1.
* gnu/packages/maths.scm (mumps): Update to 5.0.1.
2015-11-20 11:58:40 -06:00
Eric Bavier ac356fd6ab gnu: openmpi: Update to 1.10.1.
* gnu/packages/mpi.scm (openmpi): Update to 1.10.1.
  [arguments]: Remove now-unsupported configure flags.  Add
  --enable-builtin-atomics.  Remove development-oriented
  --enable-debug.
2015-11-20 11:58:40 -06:00
Eric Bavier 2f5b6a1f18 gnu: hwloc: Update to 1.11.1.
* gnu/packages/mpi.scm (hwloc): Update to 1.11.1.
  [source]: Remove patch.
* gnu/packages/patches/hwloc-gather-topology-lstopo.patch: Delete it.
* gnu-system.am (dist_patch_DATA): Remove it.
2015-11-20 11:58:40 -06:00
Ricardo Wurmus 0297966495 gnu: guitarix: Update to 0.34.0.
* gnu/packages/audio.scm (guitarix): Update to 0.34.0.
[source]: Remove patch.
[inputs]: Add webkitgtk/gtk+-2.
* gnu/packages/patches/guitarix-c++11: Remove file.
* gnu-system.am (dist_patch_DATA): Remove it.
2015-11-20 18:19:30 +01:00
David Thompson a907d9973a gnu: services: Fix typo in gpm-dmd-service.
* gnu/services/base.scm (gpm-dmd-service): s/dmd/gpm/
2015-11-20 09:56:41 -05:00
David Thompson 3307c7877e gnu: Add emulation-station.
* gnu/packages/games.scm (emulation-station): New variable.
2015-11-20 09:27:15 -05:00
Ricardo Wurmus b49c5a58dc gnu: preseq: Update to 2.0.
* gnu/packages/bioinformatics.scm (preseq): Update to 2.0.
[source]: Add file-name field, remove patches.
[arguments]: Remove unused build phases, add make flags.
[inputs]: Add smithlab-cpp.
* gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch: Remove file.
* gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch: Remove
  file.
* gnu-system.am (dist_patch_DATA): Remove them.
2015-11-20 15:22:06 +01:00
Ricardo Wurmus c6a24d6e92 gnu: Add smithlab-cpp.
* gnu/packages/bioinformatics.scm (smithlab-cpp): New variable.
2015-11-20 15:22:06 +01:00
Ricardo Wurmus 3d51ec919e gnu: edirect: Update home page.
* gnu/packages/bioinformatics.scm (edirect)[home-page]: Append trailing
  slash to home page.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus c52a382c4a gnu: sra-tools: Update to 2.5.4.
* gnu/packages/bioinformatics.scm (sra-tools): Update to 2.5.4.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 9e5ef614aa gnu: ncbi-vdb: Update to 2.5.4.
* gnu/packages/bioinformatics.scm (ncbi-vdb): Update to 2.5.4.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 614a8977cb gnu: ngs-java: Update to 1.2.2.
* gnu/packages/bioinformatics.scm (ngs-java): Update to 1.2.2.
[arguments]: Remove build phase "fix-java-symlink-installation".
2015-11-20 15:21:24 +01:00
Ricardo Wurmus d6a1cd7cae gnu: ngs-sdk: Update to 1.2.2.
* gnu/packages/bioinformatics.scm (ngs-sdk): Update to 1.2.2.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 2c84ba7e11 gnu: Add ruby-net-ssh.
* gnu/packages/ruby.scm (ruby-net-ssh): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 4f2a52aeb5 gnu: Add ruby-mocha.
* gnu/packages/ruby.scm (ruby-mocha): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus d93062fd5c gnu: Add ruby-redcarpet.
* gnu/packages/ruby.scm (ruby-redcarpet): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 97aee8d3eb gnu: Add ruby-introspection.
* gnu/packages/ruby.scm (ruby-introspection): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 4016ba3fd0 gnu: Add ruby-instantiator.
* gnu/packages/ruby.scm (ruby-instantiator): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 21f7b7bd80 gnu: Add ruby-blankslate.
* gnu/packages/ruby.scm (ruby-blankslate): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 25d6d49b3e gnu: Add ruby-metaclass.
* gnu/packages/ruby.scm (ruby-metaclass): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 3383f5bdab gnu: Add ruby-test-unit.
* gnu/packages/ruby.scm (ruby-test-unit): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus cc5aeb8c7d gnu: Add ruby-packnga.
* gnu/packages/ruby.scm (ruby-packnga): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus c1f52261e2 gnu: Add ruby-gettext.
* gnu/packages/ruby.scm (ruby-gettext): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus e2333ea391 gnu: Add ruby-text.
* gnu/packages/ruby.scm (ruby-text): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 347eb21e1d gnu: Add ruby-locale.
* gnu/packages/ruby.scm (ruby-locale): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus f88bacaf6f gnu: Add ruby-power-assert.
* gnu/packages/ruby.scm (ruby-power-assert): New variable.
2015-11-20 15:21:24 +01:00
Ricardo Wurmus 9641a89957 gnu: bless: Build only for x86_64.
* gnu/packages/bioinformatics.scm (bless): Add supported-systems field.
2015-11-20 11:32:32 +01:00
Ricardo Wurmus 0536727efe gnu: htseq: Propagate numpy.
* gnu/packages/bioinformatics.scm (htseq)[inputs]: Move python2-numpy
  from here ...
[propagated-inputs]: ... to here.
2015-11-20 11:32:32 +01:00
Ricardo Wurmus dffdef0f0f gnu: ant: Update to 1.9.6.
* gnu/packages/java.scm (ant): Update to 1.9.6.
2015-11-20 11:32:32 +01:00
Ludovic Courtès b2a72238b9 gnu: guix: Update development snapshot to 5c36edc.
* gnu/packages/package-management.scm (guix-devel): Update to 5c36edc.
2015-11-19 22:33:01 +01:00
Ludovic Courtès 5c36edc818 doc: Mention fonts for Asian languages.
Suggested by Alex Vong <alexvong1995@gmail.com>.

* doc/guix.texi (Application Setup): Explain how to install X11 fonts
  for Asian languages.
2015-11-19 17:39:48 +01:00
Ludovic Courtès 28d939af0e doc: Update documentation of the 'services' field.
* doc/guix.texi (operating-system Reference): The 'services' field now
  contains a list of service objects.
2015-11-19 17:39:48 +01:00
Ricardo Wurmus bc8bf605fc gnu: jack-2: Fix jack_control script.
* gnu/packages/audio.scm (jack-2)[inputs]: Add python2-dbus.
[arguments]: Use python-2 and add build phase to wrap jack_control
Python script.
2015-11-19 16:10:52 +01:00
Ricardo Wurmus 80e6f37e30 services: Add udev-rule procedure.
* gnu/services/base.scm (udev-rule): New procedure.
(kvm-udev-rule): Rewrite as variable in terms of udev-rule.
2015-11-19 16:10:52 +01:00
Eric Bavier c3c61a781c gnu: ghc-unordered-containers: Enable tests.
* gnu/packages/haskell.scm (ghc-unordered-containers)
  [arguments]: Remove.
  [inputs]: Add ghc-chasingbottoms, ghc-test-framework,
  ghc-test-framework-hunit, and ghc-test-framework-quickcheck2.
2015-11-19 03:13:20 -06:00
Eric Bavier 4eca62be49 gnu: Add ghc-chasingbottoms.
* gnu/packages/haskell.scm (ghc-chasingbottoms): New variable.
2015-11-19 03:13:20 -06:00
Eric Bavier 19206f5eb8 gnu: ghc-attoparsec: Enable tests.
* gnu/packages/haskell.scm (ghc-attoparsec)[arguments]: Remove.
  [inputs]: Add ghc-quickcheck, ghc-quickcheck-unicode,
  ghc-test-framework, and ghc-test-framework-quickcheck2.
2015-11-19 03:13:19 -06:00
Eric Bavier ab715ec9ae gnu: Add ghc-test-framework-quickcheck2.
* gnu/packages/haskell.scm (ghc-test-framework-quickcheck2): New
  variable.
2015-11-19 03:13:19 -06:00
Eric Bavier e1c1b71c38 gnu: ghc-async: Enable tests.
* gnu/packages/haskell.scm (ghc-async)[arguments]: Remove.
  [inputs]: Add ghc-hunit, ghc-test-framework, and
  ghc-test-framework-hunit.
2015-11-19 03:13:19 -06:00
Eric Bavier 0eeaa169a0 gnu: ghc-regex-posix: Propagate inputs.
* gnu/packages/haskell.scm (ghc-regex-posix): Propagate ghc-regex-base
  input.
2015-11-19 03:13:19 -06:00
Eric Bavier 1fe25c573a gnu: Add ghc-test-framework-hunit.
* gnu/packages/haskell.scm (ghc-test-framework-hunit): New variable.
2015-11-19 03:13:19 -06:00
Eric Bavier 09655c676b gnu: Add ghc-test-framework.
* gnu/packages/haskell.scm (ghc-test-framework): New variable.
2015-11-19 03:13:19 -06:00
Eric Bavier 1472ba2546 gnu: Add ghc-libxml.
* gnu/packages/haskell.scm (ghc-libxml): New variable.
2015-11-19 03:13:19 -06:00
Eric Bavier ccd7b30872 gnu: Add ghc-hostname.
* gnu/packages/haskell.scm (ghc-hostname): New variable.
2015-11-19 03:13:19 -06:00
Efraim Flashner d2a5210844 gnu: tilda: Update to 1.3.0.
* gnu/packages/terminals.scm (tilda): Update to 1.3.0.
[inputs]: Switch vte from 0.36 to 0.40, remove zip.
2015-11-19 14:45:45 +02:00
Efraim Flashner e30be98653 gnu: youtube-dl: Update to 2015.11.18.
* gnu/packages/video.scm (youtube-dl): Update to 2015.11.18.
2015-11-19 09:48:41 +02:00
Mark H Weaver 3470fe002c gnu: libsndfile: Add fixes for CVE-2014-9496 and CVE-2015-7805.
* gnu/packages/patches/libsndfile-CVE-2014-9496.patch,
  gnu/packages/patches/libsndfile-CVE-2015-7805.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/pulseaudio.scm (libsndfile)[source]: Add patches.
2015-11-18 17:47:40 -05:00
Mark H Weaver b4a88dc25f gnu: libxslt: Add fix for CVE-2015-7995.
* gnu/packages/patches/libxslt-CVE-2015-7995.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/xml.scm (libxslt)[source]: Add patch.
2015-11-18 17:47:40 -05:00
Mark H Weaver ee6bb0cc76 gnu: libxml2: Add fixes for CVE-2015-{1819,7941,7942,8035} and other bugs.
* gnu/packages/patches/libxml2-CVE-2015-1819.patch,
  gnu/packages/patches/libxml2-CVE-2015-7941-pt1.patch,
  gnu/packages/patches/libxml2-CVE-2015-7941-pt2.patch,
  gnu/packages/patches/libxml2-CVE-2015-7942-pt1.patch,
  gnu/packages/patches/libxml2-CVE-2015-7942-pt2.patch,
  gnu/packages/patches/libxml2-CVE-2015-8035.patch,
  gnu/packages/patches/libxml2-bug-737840.patch,
  gnu/packages/patches/libxml2-bug-738805.patch,
  gnu/packages/patches/libxml2-bug-746048.patch,
  gnu/packages/patches/libxml2-bug-747437.patch,
  gnu/packages/patches/libxml2-bug-751603.patch,
  gnu/packages/patches/libxml2-bug-751631.patch,
  gnu/packages/patches/libxml2-bug-754946.patch,
  gnu/packages/patches/libxml2-bug-754947.patch,
  gnu/packages/patches/libxml2-bug-755857.patch,
  gnu/packages/patches/libxml2-fix-catalog-corruption.patch,
  gnu/packages/patches/libxml2-id-attrs-in-xmlSetTreeDoc.patch,
  gnu/packages/patches/libxml2-node-sort-order-pt1.patch,
  gnu/packages/patches/libxml2-node-sort-order-pt2.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/xml.scm (libxml2)[source]: Add patches.
2015-11-18 17:47:40 -05:00
Mark H Weaver 328a14e869 gnu: libpng: Update to 1.5.24 [fixes CVE-2015-8126].
* gnu/packages/image.scm (libpng): Update to 1.5.24.
2015-11-18 17:47:40 -05:00
Mark H Weaver 21ef9843e4 Revert "gnu: libpng: Use 1.5.24 as a replacement [fixes CVE-2015-8126]."
This reverts commit 1b076e630f.
2015-11-18 17:47:17 -05:00
Ricardo Wurmus c797fabe79 services: Export udev-configuration procedures.
* gnu/services/base.scm (udev-configuration, udev-configuration?,
  udev-configuration-rules): Export.
2015-11-18 22:04:48 +01:00
Ludovic Courtès 7be4a4b0ae gnu: weechat: Fix patching of assignments to 'python2_bin'.
Fixes a regression introduced in a9346fa.

* gnu/packages/weechat.scm (weechat)[arguments]: Make sure PYTHON2_BIN
  can be freed with 'free'.
2015-11-18 18:01:50 +01:00
Ludovic Courtès b567abcf1a gnu: weechat: Encode as UTF-8.
* gnu/packages/weechat.scm: Reencode as UTF-8.
2015-11-18 18:01:30 +01:00
Ludovic Courtès a9346faee6 gnu: weechat: Record the absolute file name of 'python'.
Fixes <http://bugs.gnu.org/21879>.
Reported by Luis Felipe López Acevedo <felipe.lopez@openmailbox.org>.

* gnu/packages/weechat.scm (weechat)[arguments]: Add
  'set-python-file-name' phase.
2015-11-18 17:47:09 +01:00
Ludovic Courtès e33cf9a69a gnu: weechat: Use 'modify-phases'.
* gnu/packages/weechat.scm (weechat)[arguments]: Use 'modify-phases'.
  Remove 'fix-file' phase.
2015-11-18 17:47:09 +01:00
Mark H Weaver f4a4a71885 gnu: python-tornado: Use the preferred home-page.
* gnu/packages/python.scm (python-tornado)[home-page]: Use the preferred
  one.
2015-11-18 09:45:47 -05:00
Mark H Weaver 7f51b663b0 gnu: python-cryptography: Update to 1.0.2.
* gnu/packages/python.scm (python-cryptography): Update to 1.0.2.
2015-11-18 09:30:01 -05:00
Mark H Weaver 3698a77588 gnu: python-cryptography-vectors: Update to 1.0.2.
* gnu/packages/python.scm (python-cryptography-vectors): Update to 1.0.2.
2015-11-18 09:30:01 -05:00
Ricardo Wurmus f836fb8d0c gnu: zynaddsubfx: Update to 2.5.2.
* gnu/packages/music.scm (zynaddsubfx): Update to 2.5.2.
2015-11-18 14:07:14 +01:00
Erik Edrosa f7d17ac756 gnu: Add python-pystache.
* gnu/packages/python.scm (python-pystache, python2-pystache): New
  variables.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-11-18 12:21:45 +01:00
Efraim Flashner 49846012f0 Revert "gnu: wget: Update to 1.17."
This reverts commit 4ca0234069.
2015-11-18 08:36:27 +02:00
宋文武 4d62a9d304 gnu: Add network-manager-applet.
* gnu/packages/gnome.scm (network-manager-applet): New variable.
2015-11-18 09:16:31 +08:00
宋文武 ba5dd1055f gnu: Add network-manager.
* gnu/packages/gnome.scm (%network-manager-glib-duplicate-test-patch)
(network-manager): New variables.
2015-11-18 09:16:31 +08:00
Efraim Flashner b494d198cd gnu: youtube-dl: Update to 2015.11.15.
* gnu/packages/video.scm (youtube-dl): Update to 2015.11.15.
2015-11-17 21:32:58 +02:00
Ludovic Courtès 87450b1274 Thank Chris. 2015-11-17 09:44:52 +01:00
Ludovic Courtès b7f4677999 ftp-client: Restrict to TCP/IP connections.
Fixes <http://bugs.gnu.org/21925>.
Regression introduced in 279ec1d.
Reported by Chris Marusich <cmmarusich@gmail.com>.

* guix/ftp-client.scm (ftp-open): Restrict sockets to
  SOCK_STREAM/IPPROTO_IP.
2015-11-17 09:44:52 +01:00
Ricardo Wurmus 3279b7ec47 gnu: Add Scribus.
* gnu/packages/scribus.scm: New file
* gnu/packages/patches/scribus-qobject.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES, dist_patch_DATA): Add them.
2015-11-17 08:43:32 +01:00
Ricardo Wurmus ac838d0f8e gnu: Add GraphicsMagick.
* gnu/packages/imagemagick.scm (graphicsmagick): New variable.
2015-11-17 08:43:32 +01:00
Ricardo Wurmus bf50f7b587 gnu: Add prefix to license imports in (gnu packages imagemagick).
* gnu/packages/imagemagick.scm: Import (guix licenses) with prefix
  "license:".
2015-11-17 08:43:32 +01:00
宋文武 ae916e02cb gnu: Add ppp.
* gnu/packages/samba.scm (ppp): New variable.
2015-11-17 10:01:00 +08:00
Efraim Flashner 4ca0234069 gnu: wget: Update to 1.17.
* gnu/packages/wget.scm (wget): Update to 1.17.
2015-11-17 00:46:21 +02:00
Mark H Weaver 9832ecf09a gnu: dovecot: Update to 2.2.19.
* gnu/packages/mail.scm (dovecot): Update to 2.2.19.
2015-11-16 13:57:09 -05:00
Ludovic Courtès d3a33fe28d gnu: eigen: Run 'ctest' in verbose mode.
* gnu/packages/algebra.scm (eigen)[arguments]: Add "-V" in
  'EIGEN_CTEST_ARGS'.
2015-11-16 16:44:39 +01:00
Ludovic Courtès 354f4fe292 gnu: eigen: Use 'modify-phases'.
* gnu/packages/algebra.scm (eigen)[arguments]: Use 'modify-phases'
  instead of 'alist-cons-before'.
2015-11-16 16:44:39 +01:00
Ludovic Courtès a4eb83b709 gnu: eigen: Fix 'Cflags' value in 'eigen3.pc'.
* gnu/packages/algebra.scm (eigen)[source]: Augment snippet to address
  <http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1114>.
2015-11-16 16:44:39 +01:00
David Thompson 83a4a70b50 gnu: Add love.
* gnu/packages/game-development.scm (love): New variable.
2015-11-16 08:47:23 -05:00
David Thompson 3aab2c839f gnu: Add devil.
* gnu/packages/image.scm (devil): New variable.
* gnu/packages/patches/devil-fix-libpng.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-16 08:47:23 -05:00
Ludovic Courtès 333c376c45 graft: Graft files in parallel.
* guix/build/graft.scm (rewrite-directory): Use 'n-par-for-each' instead
  of 'for-each'.
2015-11-16 14:22:58 +01:00
Ludovic Courtès 9c88f655e6 graft: Graft files in a deterministic order.
* guix/build/graft.scm (rewrite-directory)[rewrite-leaf]: Change to take
  a single parameter.  Add call to 'lstat'.  Factorize result of
  'destination'.
  Use 'find-files' instead of 'file-system-fold'.
2015-11-16 14:22:58 +01:00
Efraim Flashner 6a7e1a180b gnu: Add tilda.
* gnu/packages/terminals.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-16 15:22:37 +02:00
Efraim Flashner 2776d72c7c gnu: vte: Provide 0.36.5.
* gnu/packages/gnome.scm (vte): Add version 0.36.5.
2015-11-16 15:22:37 +02:00
Efraim Flashner 782770d1c2 gnu: mpv: Remove lua configure hack.
* gnu/packages/video.scm (mpv)[arguments]: Remove obsolete code that
  helped configure find lua.
2015-11-16 15:18:30 +02:00
Efraim Flashner 54567afa13 gnu: mpv: Update to 0.13.0.
* gnu/packages/video.scm (mpv): Update to 0.13.0.
2015-11-16 15:04:34 +02:00
Ricardo Wurmus d6e21589af gnu: Add r-devtools.
* gnu/packages/statistics.scm (r-devtools): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 81a4228b18 gnu: Add r-rstudioapi.
* gnu/packages/statistics.scm (r-rstudioapi): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 035711f1f5 gnu: Add r-git2r.
* gnu/packages/statistics.scm (r-git2r): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 681e03c12d gnu: Add r-httr.
* gnu/packages/statistics.scm (r-httr): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 167c988263 gnu: Add r-roxygen2.
* gnu/packages/statistics.scm (r-roxygen2): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 13d083af59 gnu: Add r-brew.
* gnu/packages/statistics.scm (r-brew): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 1a77eccd0e gnu: Add r-whisker.
* gnu/packages/statistics.scm (r-whisker): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 6140747f06 gnu: Add r-rversions.
* gnu/packages/statistics.scm (r-rversions): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 67a167fdf7 gnu: Add r-xml2.
* gnu/packages/statistics.scm (r-xml2): New variable.
2015-11-16 11:09:49 +01:00
Ricardo Wurmus 5f4621de1f gnu: Add r-curl.
* gnu/packages/web.scm (r-curl): New variable.
2015-11-16 11:09:49 +01:00
Ludovic Courtès f106b0e970 emacs: 'display-search-paths' now takes a list of profiles.
Fixes a regression introduced in fc2d233.

* emacs/guix-main.scm (process-package-actions): Make second argument to
  'display-search-paths' a list.
2015-11-16 10:54:23 +01:00
Amirouche Boubekki fcc43c1f7b gnu: images: Add jpegoptim 1.4.3
* gnu/packages/images.scm (jpegoptim): New variable jpegoptim

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-11-16 10:03:49 +01:00
Ludovic Courtès 1b076e630f gnu: libpng: Use 1.5.24 as a replacement [fixes CVE-2015-8126].
Reported by Leo Famulari <leo@famulari.name>.

* gnu/packages/image.scm (libpng-urls): New procedure.
  (libpng)[source]: Use it.
  [replacement]: New field.
  (libpng-1.5.24): New variable.
2015-11-16 09:51:44 +01:00
宋文武 0cc2284819 gnu: procps: Update to 3.3.11.
procps-ng is the new upstream.

* gnu/packages/procps.scm (procps): Update to 3.3.11.
  [source]: Adjust formatting.  Remove patches.
  [home-page]: Update URL.
* gnu/packages/patches/procps-make-3.82.patch: Remove file.
* gnu-system.am (dist_patch_DATA): Remove it.
2015-11-16 16:06:49 +08:00
宋文武 b85d098410 gnu: file: Update to 5.25.
* gnu/packages/file.scm (file): Update to 5.25.
2015-11-16 16:06:49 +08:00
Andreas Enge b6bbebbcab gnu: gnucash: Update to 2.6.9.
* gnu/packages/gnucash.scm (gnucash): Update to 2.6.9.
  [home-page]: Update.
2015-11-16 04:15:02 +01:00
Andreas Enge 000e36f2ee gnu: pari-gp: Update to 2.7.5.
* gnu/packages/algebra.scm (pari-gp): Update to 2.7.5.
2015-11-16 03:51:34 +01:00
Efraim Flashner 5de56b611c gnu: enlightenment: Update to 0.19.13.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.19.13.
2015-11-15 11:03:03 +02:00
Efraim Flashner 90b5741869 gnu: evas-generic-loaders: Update to 1.16.0.
* gnu/packages/enlightenment.scm (evas-generic-loaders): Update to
  1.16.0.
2015-11-15 10:25:16 +02:00
Efraim Flashner 96479cf10d gnu: emotion-generic-players: Update to 1.16.0.
* gnu/packages/enlightenment.scm (emotion-generic-players): Update to
  1.16.0.
2015-11-15 10:22:11 +02:00
Efraim Flashner 5fbf590a90 gnu: elementary: Update to 1.16.0.
* gnu/packages/enlightenment.scm (elementary): Update to 1.16.0.
2015-11-15 09:46:50 +02:00
Efraim Flashner 1c8a70a350 gnu: efl: Update to 1.16.0.
* gnu/packages/enlightenment.scm (efl): Update to 1.16.0.
2015-11-15 09:27:46 +02:00
Efraim Flashner 19a696ed72 gnu: youtube-dl: Update to 2015.11.13.
* gnu/packages/video.scm (youtube-dl): Update to 2015.11.13.
2015-11-15 00:07:38 +02:00
Alex Kost 6f4b23e674 gnu: emacs: Honor 'SOURCE_DATE_EPOCH'.
Suggested by Ludovic Courtès <ludo@gnu.org>.

* gnu/packages/patches/emacs-source-date-epoch.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/emacs.scm (emacs)[source]: Use it.
2015-11-14 21:59:37 +03:00
Alex Kost f7dbeb376b build-system/gnu: Set 'SOURCE_DATE_EPOCH'.
Suggested by Ludovic Courtès <ludo@gnu.org>.

* guix/build/gnu-build-system.scm (gnu-build): Set SOURCE_DATE_EPOCH for
  deterministic builds.
2015-11-14 21:59:37 +03:00
Ludovic Courtès 511495fb24 gnu: sudo: Build sequentially.
Possibly fixes <http://bugs.gnu.org/21918>.

* gnu/packages/admin.scm (sudo)[arguments]: Add #:parallel-build? #f.
2015-11-14 16:50:21 +01:00
David Thompson 5649c8cd89 gnu: Add guile-sly.
* gnu/packages/guile.scm (guile-sly): New variable.
2015-11-14 07:55:34 -05:00
Ricardo Wurmus 73cea74dda gnu: calf: Update tarball URL.
* gnu/packages/audio.scm (calf)[source]: Use tarball from new project
  website instead of sourceforge.
2015-11-14 10:07:56 +01:00
Ludovic Courtès 2abcc935ce gnu: eigen: Update to 3.2.7.
* gnu/packages/algebra.scm (eigen): Upgrade to 3.2.7.
  [source]: Add 'file-name' field.
2015-11-13 22:47:39 +01:00
Mark H Weaver ff45a00e79 gnu: mit-krb5: Add fixes for CVE-2015-{2695,2696,2697,2698}.
* gnu/packages/patches/mit-krb5-CVE-2015-2695-pt1.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2695-pt2.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2696.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2697.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2698-pt1.patch,
  gnu/packages/patches/mit-krb5-CVE-2015-2698-pt2.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/mit-krb5.scm (mit-krb5)[native-inputs]: Add patches.
2015-11-13 12:42:47 -05:00
Mark H Weaver 4d53c29e6c gnu: mit-krb5: Refactor build code; support multiple patches.
* gnu/packages/mit-krb5.scm (mit-krb5)[source]: Use version-major+minor.
  [arguments]: Use modify-phases.  Split and rewrite 'unpack' phase into
  'unpack', 'apply-patches', and 'enter-source-directory' phases.  Add a
  'pre-check' phase instead of replacing the 'check' phase.  Combine
  substitutions on the same file.  In the 'unpack' phase, find
  native-inputs with names starting with "patch/" and apply them all.
  Print a message for each patch applied.  Do not rely on the result of
  'chdir', which is unspecified.  Determine the names of the inner tar
  file and the directory in a more robust way.  Add (ice-9 ftw),
  (ice-9 match) and (srfi srfi-1) to #:modules.
2015-11-13 12:42:47 -05:00
Mark H Weaver 9715df7fbe gnu: mit-krb5: Update to 1.13.2.
* gnu/packages/mit-krb5.scm (mit-krb5): Update to 1.13.2.
  [native-inputs]: Remove "patch/init-fix".
* gnu/packages/patches/mit-krb5-init-fix.patch: Delete file.
* gnu-system.am (dist_patch_DATA): Remove it.
2015-11-13 12:42:47 -05:00
宋文武 a124bbd2f4 gnu: Adjust formatting as recommended by 'guix lint'.
* gnu/packages/aidc.scm (barcode, qrencode),
  gnu/packages/bash.scm (bash, bash-completion),
  gnu/packages/busybox.scm (busybox),
  gnu/packages/cdrom.scm (cdparanoia),
  gnu/packages/cmake.scm (cmake),
  gnu/packages/conkeror.scm (conkeror),
  gnu/packages/cook.scm (cook),
  gnu/packages/curl.scm (curl),
  gnu/packages/docbook.scm (docbook-xsl),
  gnu/packages/enlightenment.scm (enlightenment),
  gnu/packages/games.scm (abbaye),
  gnu/packages/geeqie.scm (exiv2),
  gnu/packages/gimp.scm (gegl),
  gnu/packages/gl.scm (glu, freeglut, ftgl),
  gnu/packages/glib.scm (glib),
  gnu/packages/gnome.scm (orbit2, gconf, geocode-glib),
  gnu/packages/gstreamer.scm (gstreamer, gst-plugins-base),
  gnu/packages/linux.scm (util-linux),
  gnu/packages/lisp.scm (gcl, ecl),
  gnu/packages/maths.scm (gnuplot, hdf5),
  gnu/packages/ssh.scm (dropbear),
  gnu/packages/web.scm (json-c): Remove tabulations and trailing
  white spaces or reformat to fit within 80 columns.
* gnu/packages/audio.scm (aubio),
  gnu/packages/emacs.scm (emacs-s),
  gnu/packages/engineering.scm (geda-gaf),
  gnu/packages/games.scm (dosbox),
  gnu/packages/gnome.scm (gusb),
  gnu/packages/gtk.scm (gtk+),
  gnu/packages/guile.scm (guile-wisp),
  gnu/packages/hurd.scm (hurd-headers),
  gnu/packages/wm.scm (i3-wm): Adjust synopsis or description.
2015-11-13 23:45:55 +08:00
宋文武 d777e048b5 gnu: upower: Update to 0.99.3.
* gnu/packages/gnome.scm (upower): Update to 0.99.3.
2015-11-13 17:59:50 +08:00
宋文武 ebeabe2d35 gnu: upower: Enable GObject introspection.
* gnu/packages/gnome.scm (upower)[native-inputs]: Add gobject-introspection.
2015-11-13 17:59:50 +08:00
宋文武 2af4f5b051 gnu: gcr: Update to 3.18.0, enable introspection.
* gnu/packages/gnome.scm (gcr): Update to 3.18.0.
  [native-inputs]: Add gobject-introspection and libxslt.
2015-11-13 17:59:50 +08:00
宋文武 9083788a29 gnu: nix: Don't propagate Perl libraries.
* gnu/packages/package-management.scm (nix): Move perl-www-curl,
  perl-dbi and perl-dbd-sqlite from 'propagated-inputs' to 'inputs'.
  [arguments]: Add #:configure-flags.
2015-11-13 12:56:50 +08:00
宋文武 f888502cfa gnu: nix: Update to 1.10.
* gnu/packages/package-management.scm (nix): Update to 1.10.
2015-11-13 12:56:50 +08:00
Ludovic Courtès bd7e1ffae6 lint: Have connections time out after 3 seconds.
* guix/scripts/lint.scm (probe-uri): Add #:timeout parameter.  Pass it
  to 'open-connection-for-uri' and 'ftp-open'.
  (validate-uri): Pass #:timeout 3 to 'probe-uri'.
2015-11-12 23:47:01 +01:00
Ludovic Courtès 1b9aefa394 download: Always use AI_ADDRCONFIG when resolving host names.
* guix/build/download.scm (open-socket-for-uri): Always pass
  AI_ADDRCONFIG to 'getaddrinfo' as recommended in the fine Guile
  manual.
* guix/ftp-client.scm (ftp-open): Ditto.
2015-11-12 23:47:01 +01:00
Ludovic Courtès 60fd51222f download: Add timeout parameter for connections.
* guix/build/download.scm (ensure-uri): New procedure.
(current-http-proxy): New variable.
(open-socket-for-uri): Copy from Guile commit aaea5b2, but add #:timeout
parameter and use 'connect*' instead of 'connect'.
(open-connection-for-uri): Add #:timeout parameter and pass it to
'open-socket-for-uri'.
2015-11-12 23:47:00 +01:00
Ludovic Courtès 4856700698 ftp-client: Add timeout parameter to 'ftp-open'.
* guix/ftp-client.scm (catch-EINPROGRESS): New macro.
(connect*): New procedure.
(ftp-open): Add #:timeout parameter.  Use 'connect*' instead of
'connect' and pass it TIMEOUT.
2015-11-12 23:47:00 +01:00
Ludovic Courtès 279ec1df20 ftp-client: Restrict to TCP connections.
* guix/ftp-client.scm (ftp-open): Force SOCK_STREAM as the socket type
  to avoid calling 'connect' on a datagram socket.
2015-11-12 23:47:00 +01:00
Alex Kost 8b341eb05d emacs: Adjust 'guix environment' popup.
* emacs/guix-command.el (guix-command-improve-environment-argument): Use
  "E" for '--expose' and "S" for '--share' to distinguish them from
  '--expression' and '--system' accordingly.  Make '--ad-hoc' an option
  taking packages instead of a simple switch.
  (guix-command-rest-argument): Complete shell command instead of
  packages for '--' argument.
  (guix-command-additional-arguments): Add fake 'packages' argument.
  New variable.
  (guix-command-additional-arguments): Use it.
  (guix-command-post-process-environment-packages,
  guix-command-post-process-environment-ad-hoc): New functions.
  (guix-command-post-processors): Add "environment" command with the new
  argument processors.
2015-11-12 21:22:35 +03:00
Alex Kost cfa548b4ea emacs: Adjust 'guix container' popup.
* emacs/guix-command.el (guix-command-improve-action-argument): Use "C"
  key for 'container' action to distinguish it from 'challenge'.
  (guix-command-rest-argument): Add positional arguments.
2015-11-12 21:22:35 +03:00
Alex Kost 959c78f69a emacs: Improve post processing of popup arguments.
* emacs/guix-command.el (guix-command-switches,
  guix-command-rest-arg-regexp): New variables.
  (guix-command-post-processors,
  guix-command-post-process-matching-args,
  guix-command-post-process-rest-single,
  guix-command-post-process-rest-multiple,
  guix-command-post-process-rest-multiple-leave,
  guix-command-post-process-package-args): New functions.
  (guix-command-post-process-rest-multiple): Take 2 arguments.
  (guix-command-define-popup-action): Adjust accordingly.
* emacs/guix-utils.el (guix-modify): New function.
2015-11-12 21:22:35 +03:00
Efraim Flashner 4f8f15cd5c Revert "gnu: libvpx: Update to 1.5.0."
This reverts commit fb3f69394a.
2015-11-12 19:59:42 +02:00
Taylan Ulrich Bayırlı/Kammer bff3c670c2 gnu: mupen64plus-core: Add comment.
* gnu/packages/games.scm (mupen64plus-core): Comment the reason for the
  supported-systems field.
2015-11-12 17:25:40 +01:00
Taylan Ulrich Bayırlı/Kammer 9c9be34871 gnu: mupen64plus-core: Specify supported-systems.
* gnu/packages/games.scm (mupen64plus-core): Specify supported-systems.
2015-11-12 16:00:52 +01:00
Roel Janssen 2f1531f008 gnu: Add inklingreader.
* gnu/packages/inklingreader.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2015-11-12 15:57:02 +01:00
Efraim Flashner 0534dd93ce gnu: gsl: Update to 2.1.
* gnu/packages/maths.scm (gsl): Update to 2.1.
2015-11-12 16:53:43 +02:00
Efraim Flashner 0137992a38 gnu: Add c-ares.
* gnu/packages/aria2.scm: New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-12 16:21:00 +02:00
Efraim Flashner b2e93b9e45 gnu: Add owncloud-client.
* gnu/packages/owncloud.scm (owncloud-client): New variable.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
2015-11-12 16:14:42 +02:00
Efraim Flashner 9e81af9e72 gnu: Add qtkeychain.
* gnu/packages/qt.scm (qtkeychain): New variable.
2015-11-12 16:14:42 +02:00
Efraim Flashner fb3f69394a gnu: libvpx: Update to 1.5.0.
* gnu/packages/video.scm (libvpx): Update to 1.5.0.
2015-11-12 14:56:55 +02:00
Ricardo Wurmus 029d9f77ab gnu: mosaik: Build only on x86_64.
* gnu/packages/bioinformatics.scm (mosaik)[supported-systems]: Add
  field.
2015-11-12 12:36:40 +01:00
Ludovic Courtès 0086ec733c gnu: sudo: Upgrade to 1.8.15 [fixes CVE-2015-5602].
* gnu/packages/admin.scm (sudo)[arguments]: Add CPPFLAGS to
  #:configure-flags.   In 'pre-configure' phase, modify
  'sudo_usage.h.in'.  Add pattern to remove '-o 0 -g 0' installation
  flag in 'Makefile.in', and remove pattern for '-O 0 -G 0'.  Remove
  modifications of 'configure'.
2015-11-12 11:49:18 +01:00
宋文武 bd7dfafaa3 gnu: Add caribou.
* gnu/packages/gnome.scm (caribou): New variable.
2015-11-12 14:21:30 +08:00
宋文武 df217748e1 gnu: Add evolution-data-server.
* gnu/packages/gnome.scm (evolution-data-server): New variable.
2015-11-12 14:21:30 +08:00
宋文武 685cee8779 gnu: Add gnome-online-accounts.
* gnu/packages/gnome.scm (gnome-online-accounts): New variable.
2015-11-12 14:21:30 +08:00
Andreas Enge 8de8cf438a gnu: lua: Register patch.
* gnu-system.am (dist_patch_DATA): Register lua52-liblua-so.patch.

This is a follow-up to commit 0f9c1f3400.
2015-11-12 05:12:37 +01:00
Ludovic Courtès ddfd70da8e gnu: stow: Update to 2.2.2.
* gnu/packages/package-management.scm (stow): Update to 2.2.2.
  [native-inputs]: Add PERL-IO-STRINGY.
2015-11-11 23:45:29 +01:00
Ludovic Courtès 8fe0b262a9 gnu: libmicrohttpd: Update to 0.9.46.
* gnu/packages/gnunet.scm (libmicrohttpd): Update to 0.9.46.
2015-11-11 23:39:15 +01:00
Ludovic Courtès 3a96d7c3dd guix gc: Error out when extra arguments are passed.
Fixes <http://bugs.gnu.org/21817>.
Reported by Petter Berntsen <petter@mykolab.ch>.

* guix/scripts/gc.scm (guix-gc)[assert-no-extra-arguments]: New
  procedure.
  Use it for actions 'collect-garbage', 'optimize', and 'verify'.
* tests/guix-gc.sh: Add tests.
2015-11-11 23:29:20 +01:00
Ludovic Courtès 6237b9fa39 edit: Honor $VISUAL.
Suggested by Andreas Enge <andreas@enge.fr>.

* guix/scripts/edit.scm (%editor): Honor 'VISUAL' before 'EDITOR'.
  (show-help): Adjust accordingly.
* doc/guix.texi (Invoking guix edit): Likewise.
2015-11-11 23:29:20 +01:00
Ricardo Wurmus 6d2e833495 gnu: Add microscheme.
* gnu/packages/avr.scm (microscheme): New variable.
2015-11-11 22:40:50 +01:00
Ludovic Courtès 14649b8cdb refresh: Avoid non-literal format string.
Reported by Mathieu Lirzin <mthl@gnu.org>.

* guix/scripts/refresh.scm (guix-refresh): Rewrite 'list-dependent?'
  report to avoid nested 'N_' calls.
2015-11-11 22:10:21 +01:00
Ricardo Wurmus 42f8504ccc gnu: Add prefix to license imports in (gnu packages avr).
* gnu/packages/avr.scm: Import (guix licenses) with prefix "license:".
2015-11-11 21:23:58 +01:00
Ricardo Wurmus e5e2068551 gnu: ardour: Update to 4.4.
* gnu/packages/audio.scm (ardour): Update to 4.4.
2015-11-11 21:22:48 +01:00
Ricardo Wurmus e61d9e3966 gnu: Add gfortran 5.
* gnu/packages/gcc.scm (gfortran-5): New variable.
2015-11-11 17:25:04 +01:00
Mark H Weaver 419630e0be gnu: wpa-supplicant: Add fixes for CVE-2015-{5310,5314,5315,5316}.
* gnu/packages/patches/wpa-supplicant-CVE-2015-5310.patch,
  gnu/packages/patches/wpa-supplicant-CVE-2015-5314.patch,
  gnu/packages/patches/wpa-supplicant-CVE-2015-5315.patch,
  gnu/packages/patches/wpa-supplicant-CVE-2015-5316.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/admin.scm (wpa-supplicant-minimal)[source]: Add patches.
2015-11-11 07:45:11 -05:00
Efraim Flashner 875b2f3d5e gnu: youtube-dl: Upgrade to 2015.11.10.
* gnu/packages/video.scm (youtube-dl): Upgrade to 2015.11.10.
2015-11-11 13:05:56 +02:00
Mark H Weaver 533c1b04bc gnu: linux-libre: Update to 4.2.6.
* gnu/packages/linux.scm (linux-libre): Update to 4.2.6.
2015-11-11 01:16:19 -05:00
Mark H Weaver a4564c629f gnu: git: Update to 2.6.3.
* gnu/packages/version-control.scm (git): Update to 2.6.3.
  (git-manpages)[source]: Update hash.
2015-11-10 23:07:28 -05:00
Ludovic Courtès 2ab5fdc4b4 ui: 'guix help COMMAND' is like 'guix COMMAND --help'.
* guix/ui.scm (run-guix): Add ("help" COMMAND) case.
2015-11-11 00:37:51 +01:00
Ludovic Courtès fc2d233964 guix package: '--search-paths' can report combined search paths.
Partly fixes <http://bugs.gnu.org/20255>.

* guix/scripts/package.scm (search-path-environment-variables): Change
  'profile' to 'profiles'; expect it to be a list.
  (display-search-paths): Likewise.
  (%default-options): Remove 'profile' entry.
  (%options) <--profile>: Keep previous values associated with 'profile'
  in RESULT.
  (guix-package)[process-actions, process-query]: Handle the possible
  lack of 'profile' pair in OPTS.
2015-11-11 00:37:50 +01:00
Ludovic Courtès 21059b26b0 system: Populate /etc/shells from ACCOUNT-SERVICE-TYPE.
* gnu/system.scm (user-shells): Remove.
  (operating-system-etc-service): Remove "shells" entry.
  (shells-file): Move to...
* gnu/system/shadow.scm (shells-file): ... here.  New procedure.
  (etc-skel): Rename to...
  (etc-files): ... this.  Add "shells" entry.
  (account-service-type): Adjust accordingly.
2015-11-11 00:37:50 +01:00
Ludovic Courtès ba583bd2ce gnu: torsocks: Upgrade to 2.0.0.
* gnu/packages/tor.scm (torsocks): Update to 2.0.0.
  [source]: Fetch from git.torproject.org.  Use
  'torsocks-dns-test.patch'.
  [arguments, native-inputs]: New fields.
  [license]: Change to GPL2.
* gnu/packages/patches/torsocks-dns-test.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-11 00:37:50 +01:00
Taylan Ulrich Bayırlı/Kammer 68d85de163 gnu: gtksourceview-2: Propagate input libxml2.
* gnu/packages/gtk.scm (gtksourceview-2): Move libxml2 to propagated
  inputs.
2015-11-10 23:12:25 +01:00
Taylan Ulrich Bayırlı/Kammer e6974eae1d gnu: Add mupen64plus-ui-console.
* gnu/packages/games.scm (mupen64plus-ui-console): New variable.
* gnu/packages/patches/mupen64plus-ui-console-notice.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer 17e2bc8617 gnu: Add mupen64plus-video-z64.
* gnu/packages/games.scm (mupen64plus-video-z64): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer e91d25f9e0 gnu: Add mupen64plus-video-rice.
* gnu/packages/games.scm (mupen64plus-video-rice): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer e8bf3ced25 gnu: Add mupen64plus-video-glide64mk2.
* gnu/packages/games.scm (mupen64plus-video-glide64mk2): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer 9a3fe16b99 gnu: Add mupen64plus-video-glide64.
* gnu/packages/games.scm (mupen64plus-video-glide64): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer 307a536d42 gnu: Add mupen64plus-video-arachnoid
* gnu/packages/games.scm (mupen64plus-video-arachnoid): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer 50afcd1f03 gnu: Add mupen64plus-rsp-z64.
* gnu/packages/games.scm (mupen64plus-rsp-z64): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer 3b3358bec9 gnu: Add mupen64plus-rsp-hle.
* gnu/packages/games.scm (mupen64plus-rsp-hle): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer d07f0ebbcc gnu: Add mupen64plus-input-sdl.
* gnu/packages/games.scm (mupen64plus-input-sdl): New variable.
2015-11-10 22:14:44 +01:00
Taylan Ulrich Bayırlı/Kammer ac2fe449e7 gnu: Add mupen64plus-audio-sdl.
* gnu/packages/games.scm (mupen64plus-audio-sdl): New variable.
2015-11-10 22:14:43 +01:00
Taylan Ulrich Bayırlı/Kammer 0c15230db1 gnu: Add mupen64plus-core.
* gnu/packages/games.scm (mupen64plus-core): New variable.
2015-11-10 22:14:43 +01:00
宋文武 b6072e6b90 gnu: libgweather: Update to 3.18.1, enable tests.
* gnu/packages/gnome.scm (libgweather): Update to 3.18.1.  Enable tests.
  [native-inputs]: Add gobject-introspection.
2015-11-10 20:49:18 +08:00
宋文武 d2ab0e90c6 gnu: telepathy-glib: Propagate inputs.
* gnu/packages/glib.scm (telepathy-glib): Propagate inputs dbus, dbus-glib
  and glib.  Move gobject-introspection and libxslt to 'native-inputs'.
2015-11-10 20:49:17 +08:00
Efraim Flashner 295fc0829b gnu: pspp: Use gtksourceview-2.
* gnu/packages/maths.scm (pspp)[inputs]: Use gtksourceview-2.
2015-11-10 13:58:25 +02:00
Mathieu Lirzin 7119cca86c gnu: Add artanis.
* gnu/packages/guile.scm (artanis): New variable.
2015-11-09 23:53:04 +01:00
Christopher Allan Webber 2936e48f5f gnu: guile-irregex: Remove duplicate 'check deletion in modify-phases
* gnu/packages/guile.scm: Remove duplicate 'check deletion in modify-phases
2015-11-09 09:58:40 -06:00
David Thompson 2cbcd23a71 gnu: Add ruby-eventmachine.
* gnu/packages/ruby.scm (ruby-eventmachine): New variable.
2015-11-09 08:31:35 -05:00
宋文武 60c3627cf6 gnu: Add mutter.
* gnu/packages/gnome.scm (mutter): New variable.
2015-11-09 16:25:45 +08:00
宋文武 b71793637c gnu: Add zenity.
* gnu/packages/gnome.scm (zenity): New variable.
2015-11-09 16:25:45 +08:00
David Hashe 329d731b96 gnu: Add gedit.
* gnu/packages/gnome.scm (gedit): New variable.

Co-authored-by: 宋文武 <iyzsong@gmail.com>
2015-11-09 14:42:50 +08:00
David Hashe 835ed74b3a gnu: Update libpeas.
* gnu/packages/gnome.scm (libpeas): Update to 1.16.0.
2015-11-09 14:42:05 +08:00
David Hashe c900f84307 gnu: Add gtksourceview.
* gnu/packages/gtk.scm (gtksourceview): Rename to...
  (gtksourceview-2): ... this.
  (gtksourceview): Update to 3.18.1.
* gnu/packages/ocaml.scm (lablgtk)[inputs]: Replace "gtksourceview" with "gtksourceview-2".

Co-authored-by: 宋文武 <iyzsong@gmail.com>
2015-11-09 13:55:02 +08:00
宋文武 0efd8be5ea gnu: clutter: Update to 1.24.2.
* gnu/packages/gnome.scm (clutter): Update to 1.24.2.
2015-11-09 13:55:02 +08:00
宋文武 b3e91e029f gnu: cogl: Update to 1.22.0.
* gnu/packages/gnome.scm (cogl): Update to 1.22.0.
2015-11-09 13:55:02 +08:00
Leo Famulari 0f9c1f3400 gnu: Build lua-5.2 with a dynamic library
* gnu/packages/patches/lua52-liblua-so.patch: New file.
* gnu/packages/lua.scm (lua-5.2): Use lua52-liblua-so.patch.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-11-08 22:21:19 +01:00
Leo Famulari 34a04c3319 gnu: Remove tabulation from luajit.
* gnu/packages/lua.scm (luajit): Remove tabs.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-11-08 22:21:19 +01:00
Ludovic Courtès b68d2dbf08 refresh: Discard PyPI updater when Guile-JSON is missing.
Reported by Sleep_Walker and Mathieu Lirzin <mthl@gnu.org>.

* guix/scripts/refresh.scm (maybe-updater, list-updaters): New macros.
  (%updaters): Use 'list-updaters' instead of 'list'.  Make
  %PYPI-UPDATER conditional.
2015-11-08 22:21:19 +01:00
Efraim Flashner d8c97beb06 gnu: Add wcalc.
* gnu/packages/maths.scm (wcalc): New variable.
2015-11-08 23:01:50 +02:00
Efraim Flashner 19659accef gnu: octave: Upgrade to 4.0.0.
* gnu/packages/maths.scm (octave): Update to 4.0.0.
2015-11-08 18:44:06 +02:00
Efraim Flashner 552cb93c0a gnu: glpk: Update to 4.57.
* gnu/packages/maths.scm (glpk): Update to 4.57.
2015-11-08 16:27:39 +02:00
宋文武 c3b9d75f8d gnu: evince: Update to 3.18.1.
* gnu/packages/gnome.scm (evince): Update to 3.18.1.
2015-11-08 21:46:32 +08:00
宋文武 f47ba77e5f gnu: Add gjs.
* gnu/packages/gnome.scm (gjs): New variable.
2015-11-08 21:46:31 +08:00
宋文武 cefdcb3801 gnu: Add mozjs-24 (Mozilla SpiderMonkey 24).
* gnu/packages/gnuzilla.scm (mozjs-24): New variable.
2015-11-08 21:46:31 +08:00
宋文武 7ce493657b gnu: Add gnome-session.
* gnu/packages/gnome.scm (gnome-session): New variable.
2015-11-08 21:46:31 +08:00
宋文武 b64d218c44 gnu: gnome-themes-standard: Update to 3.18.0.
* gnu/packages/gnome.scm (gnome-themes-standard): Update to 3.18.0.
2015-11-08 21:46:31 +08:00
宋文武 a834048259 gnu: gnome-desktop: Update to 3.18.1.
* gnu/packages/gnome.scm (gnome-desktop): Update to 3.18.1.
  Move gsettings-desktop-schemas and gtk+ to 'propagated-inputs'.
  [native-inputs]: Add gobject-introspection.
2015-11-08 21:46:31 +08:00
Ludovic Courtès 4655f515dc gnu: xz: Update to 5.2.2.
* gnu/packages/compression.scm (xz): Update to 5.2.2.
2015-11-07 22:02:04 +01:00
Ludovic Courtès 9eb681a02d gnu: grep: Update to 2.22.
* gnu/packages/base.scm (grep): Upgrade to 2.22.  Remove
  'grep-CVE-2015-1345.patch'.
* gnu/packages/patches/grep-CVE-2015-1345.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
2015-11-07 22:01:04 +01:00
Ludovic Courtès ae7ffa9e9b install: Run GPM.
Suggested by Adam Pribyl <pribyl@lowlevel.cz>
at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00133.html>.

* gnu/system/install.scm (installation-services): Add call to
  'gpm-service'.
* doc/guix.texi (System Installation): Mention GPM.
2015-11-07 18:56:17 +01:00
Ludovic Courtès 8664cc882c services: Add 'gpm-service'.
* gnu/services/base.scm (<gpm-configuration>): New record type.
  (gpm-dmd-service): New procedure.
  (gpm-service-type): New variable.
  (gpm-service): New procedure.
* doc/guix.texi (Base Services): Document it.
2015-11-07 18:56:17 +01:00
宋文武 1c40e3b785 gnu: brasero: Use 'glib-or-gtk-build-system'.
Fixes <http://bugs.gnu.org/21842>.
Suggested by Andy Wingo <wingo@pobox.com>.

* gnu/packages/gnome.scm (brasero)[build-system]: Switch to
  GLIB-OR-GTK-BUILD-SYSTEM.
2015-11-07 21:35:18 +08:00
Mark H Weaver 0ca1eb705d gnu: icecat: Add several security fixes.
* gnu/packages/patches/icecat-CVE-2015-4513-pt01.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt02.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt03.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt04.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt05.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt06.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt07.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt08.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt09.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt10.patch,
  gnu/packages/patches/icecat-CVE-2015-4513-pt11.patch,
  gnu/packages/patches/icecat-CVE-2015-7188.patch,
  gnu/packages/patches/icecat-CVE-2015-7189.patch,
  gnu/packages/patches/icecat-CVE-2015-7193.patch,
  gnu/packages/patches/icecat-CVE-2015-7194.patch,
  gnu/packages/patches/icecat-CVE-2015-7196.patch,
  gnu/packages/patches/icecat-CVE-2015-7197.patch,
  gnu/packages/patches/icecat-CVE-2015-7198.patch,
  gnu/packages/patches/icecat-CVE-2015-7199.patch: New files.
* gnu-system.am (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add patches.
2015-11-07 08:33:16 -05:00
Mark H Weaver fe88f636e3 gnu: nss: Update to 3.20.1.
* gnu/packages/gnuzilla.scm (nss): Update to 3.20.1.
  [source]: Switch to https URI.
2015-11-07 08:33:16 -05:00
Mark H Weaver 20ed2f7aa0 gnu: nspr: Update to 4.10.10.
* gnu/packages/gnuzilla.scm (nspr): Update to 4.10.10.
2015-11-07 08:33:16 -05:00
Ludovic Courtès 53ec8d4890 gnu: Add GPM.
* gnu/packages/linux.scm (gpm): New variable.
2015-11-06 23:50:14 +01:00
Ludovic Courtès 235cba8528 doc: Make the ifconfig command more visible.
Suggested by Adam Pribyl <pribyl@lowlevel.cz>.

* doc/guix.texi (System Installation): Move the 'ifconfig' command to an
  @example.
2015-11-06 23:50:14 +01:00
Ludovic Courtès 59698c2c6c gnu: Add guile-gnunet.
* gnu/packages/gnunet.scm (guile-gnunet): New variable.
2015-11-06 23:50:14 +01:00
Ricardo Wurmus 4d75e03ac9 gnu: bless: Correct indentation and home-page.
* gnu/packages/bioinformatics.scm (bless): Fix indentation.
  [home-page]: Replace broken URL.
2015-11-06 22:31:29 +01:00
Alex Kost 4c60ce4a6b gnu: msmtp: Update to 1.6.2.
* gnu/packages/mail.scm (msmtp): Update to 1.6.2.
  [arguments]: Use '--with-tls' configure flag instead of
  '--with-ssl' (deprecated).
2015-11-06 22:20:53 +03:00
Alex Kost b9f1f3e2aa gnu: manaplus: Update to 1.5.10.24.
* gnu/packages/games.scm (manaplus): Update to 1.5.10.24.
2015-11-06 22:20:53 +03:00
Alex Kost 4daa31270a Update NEWS.
* NEWS: Mention 'guix-build-log-mode'.
2015-11-06 22:20:03 +03:00
Christopher Allan Webber 32e14fc1fb gnu: guile: Add guile-irregex.
* gnu/packages/guile.scm (guile-irregex): New variable.
2015-11-06 11:23:53 -06:00
Ricardo Wurmus 6c2b26e21e gnu: Add BLESS.
* gnu/packages/bioinformatics.scm (bless): New variable.

Co-authored-by: Diane Trout <diane@ghic.org>
2015-11-06 18:20:50 +01:00
Ricardo Wurmus 00dfc97c36 gnu: zynaddsubfx: Remove SSE flags from generic target.
* gnu/packages/music.scm (zynaddsubfx)[arguments]: Add phase to move SSE
  compiler flags from generic to specific targets.
2015-11-06 08:44:32 +01:00
Tomáš Čech a09f6edbf9 gnu: wayland: Update to 1.9.0.
* gnu/packages/freedesktop.scm (wayland): Update to 1.9.0.
2015-11-05 15:41:43 +01:00
Ludovic Courtès 650f1615de edit: Improve error reporting when $EDITOR is not found.
Reported by Benno Evers <benno@bmevers.de>
at <https://lists.gnu.org/archive/html/guix-devel/2015-11/msg00125.html>.

* guix/scripts/edit.scm (guix-edit): Wrap 'execl' call in 'catch'.
  Provide more meaningful error message.
2015-11-05 12:04:26 +01:00
Ludovic Courtès 67c920fa5d edit: Lift helper procedure.
* guix/scripts/edit.scm (package->location-specification): New
  procedure, with code formerly...
  (guix-edit): ... here.  Use it.
2015-11-05 12:01:26 +01:00
Ludovic Courtès 5453de3dd8 import: hackage: Fix invalid use of 'leave'.
Reported by Paul van der Walt <paul@denknerd.org>
in <http://bugs.gnu.org/21829>.

* guix/scripts/import/hackage.scm (guix-import-hackage): Add missing
  argument in call to 'leave'.
2015-11-04 23:54:12 +01:00
Ludovic Courtès 5107232f82 Merge branch 'version-0.9.0' 2015-11-04 23:43:54 +01:00
Efraim Flashner cc016b4ce3 gnu: irssi: Build with SSL support.
* gnu/packages/irssi.scm (irssi)[inputs]: Add openssl.
2015-11-04 20:15:30 +02:00
Efraim Flashner 388908a08b gnu: irssi: Update to 0.8.17.
* gnu/packages/irssi.scm (irssi): Update to 0.8.17.
2015-11-04 19:54:56 +02:00
Eric Bavier e17d513381 gnu: ghc: Add GHC_PACKAGE_PATH native search path.
Benefits include: 'guix environment' more useful for ghc libraries, more
useful 'guix package --search-paths' for installed ghc libraries, cleaner
package recipes: no longer need to propagate runtime package dependencies.

* guix/build/haskell-build-system.scm (configure): Unset GHC_PACKAGE_PATH
  around cabal configure.
  (make-ghc-package-database): Use pattern directory search.
  (register): Install complete package database for the current package.
* gnu/packages/haskell.scm (ghc): Add native-search-paths field.
2015-10-29 17:30:18 -05:00
Eric Bavier c6e030b2e3 utils: Have search-path-as-list pattern search for directories.
* guix/build/utils.scm (search-path-as-list)[pattern]: Check requested file
  type.  Check pattern against directory names.
* guix/search-paths.scm (evaluate-search-paths)[pattern]: Remove symlink hack.
2015-10-29 17:30:18 -05:00
Mark H Weaver 71eb843837 gnu: unzip: Reorganize security fixes for improved clarity.
* gnu/packages/patches/unzip-fix-overflows-and-infloop.patch: Delete
  file.  Its contents are now split into the following new files:
* gnu/packages/patches/unzip-CVE-2015-7696.patch,
  gnu/packages/patches/unzip-CVE-2015-7697.patch,
  gnu/packages/patches/unzip-overflow-on-invalid-input.patch: New files.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
* gnu/packages/zip.scm (unzip)[source]: Adjust patches accordingly.
2015-10-23 15:35:46 -04:00
Leo Famulari b747a9db1e gnu: recutils: Build the Bash builtin, readrec.
* gnu/packages/databases.scm (recutils)[native-inputs]: Add bash:include.
  [arguments]: Add configure-flag with path to headers provided by
  bash:include.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-10-21 19:09:14 +02:00
Leo Famulari c30f65237b gnu: bash: Use 'install-file' instead of 'mkdir-p' and 'copy-file'.
* gnu/packages/bash.scm (bash): Use 'install-file' instead of 'mkdir-p'
  and 'copy-file'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-10-21 19:08:12 +02:00
Leo Famulari 3dcbb75f63 gnu: bash: Install more headers in "include" output.
* gnu/packages/bash.com (bash): Include contents of include directory in
  "include" output.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2015-10-21 19:05:47 +02:00
588 changed files with 118914 additions and 17858 deletions
+73 -82
View File
@@ -1,9 +1,16 @@
*.eps
*.go
*.log
*.pdf
*.png
*.tar.xz
*.tmp
*~
,*
*.tmp
*.go
tmp
*.log
/ABOUT-NLS
/INSTALL
/aclocal.m4
/autom4te.cache
/build-aux/compile
/build-aux/config.guess
/build-aux/config.rpath
@@ -14,14 +21,41 @@ tmp
/build-aux/missing
/build-aux/test-driver
/build-aux/texinfo.tex
/configure
Makefile.in
Makefile
/autom4te.cache
config.cache
/aclocal.m4
/config.status
/ABOUT-NLS
/configure
/doc/*.1
/doc/.dirstamp
/doc/guix.aux
/doc/guix.cp
/doc/guix.cps
/doc/guix.fn
/doc/guix.fns
/doc/guix.info
/doc/guix.info-[0-9]
/doc/guix.ky
/doc/guix.pg
/doc/guix.toc
/doc/guix.tp
/doc/guix.vr
/doc/guix.vrs
/doc/os-config-bare-bones.texi
/doc/os-config-desktop.texi
/doc/stamp-vti
/doc/version.texi
/emacs/Makefile
/emacs/Makefile.in
/emacs/guix-autoloads.el
/emacs/guix-config.el
/emacs/guix-helper.scm
/etc/guix-daemon.conf
/etc/guix-daemon.service
/guix-daemon
/guix-register
/guix/config.scm
/libformat.a
/libstore.a
/libutil.a
/m4/*
/m4/ChangeLog
/m4/gettext.m4
/m4/iconv.m4
@@ -31,6 +65,20 @@ config.cache
/m4/nls.m4
/m4/po.m4
/m4/progtest.m4
/nix-setuid-helper
/nix/AUTHORS
/nix/COPYING
/nix/config.h
/nix/config.h.in
/nix/nix-daemon/nix-daemon.cc
/nix/nix-setuid-helper/nix-setuid-helper.cc
/nix/scripts/guix-authenticate
/nix/scripts/list-runtime-roots
/nix/scripts/offload
/nix/scripts/substitute
/po/guix/*.gmo
/po/guix/*.insert-header
/po/guix/*.mo
/po/guix/ChangeLog
/po/guix/Makefile.in.in
/po/guix/Makevars.template
@@ -39,15 +87,15 @@ config.cache
/po/guix/boldquot.sed
/po/guix/en@boldquot.*
/po/guix/en@quot.*
/po/guix/guix.pot
/po/guix/insert-header.sin
/po/guix/*.insert-header
/po/guix/quot.sed
/po/guix/remove-potcdate.sed
/po/guix/remove-potcdate.sin
/po/guix/stamp-po
/po/guix/guix.pot
/po/guix/*.mo
/po/guix/*.gmo
/po/packages/*.gmo
/po/packages/*.insert-header
/po/packages/*.mo
/po/packages/ChangeLog
/po/packages/Makefile.in.in
/po/packages/Makevars.template
@@ -56,80 +104,23 @@ config.cache
/po/packages/boldquot.sed
/po/packages/en@boldquot.*
/po/packages/en@quot.*
/po/packages/guix-packages.pot
/po/packages/insert-header.sin
/po/packages/*.insert-header
/po/packages/quot.sed
/po/packages/remove-potcdate.sed
/po/packages/remove-potcdate.sin
/po/packages/stamp-po
/po/packages/guix-packages.pot
/po/packages/*.mo
/po/packages/*.gmo
/tests/*.trs
/INSTALL
/m4/*
/pre-inst-env
/doc/.dirstamp
/doc/guix.info
/doc/guix.info-[0-9]
/doc/guix.pdf
/doc/stamp-vti
/doc/version.texi
/gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz
/gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz
/gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz
/gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz
/guix/config.scm
/nix/nix-daemon/nix-daemon.cc
/nix/config.h
/nix/config.h.in
stamp-h[0-9]
/nix/AUTHORS
/nix/COPYING
/libformat.a
/libstore.a
/libutil.a
/guix-daemon
/test-tmp
/nix/scripts/list-runtime-roots
/test-env
/nix/nix-setuid-helper/nix-setuid-helper.cc
/scripts/guix
/doc/guix.aux
/doc/guix.cp
/doc/guix.cps
/doc/guix.fn
/doc/guix.fns
/doc/guix.ky
/doc/guix.pg
/doc/guix.toc
/doc/guix.tp
/doc/guix.vr
/doc/guix.vrs
/nix/scripts/substitute
/doc/images/bootstrap-graph.png
/doc/images/bootstrap-graph.eps
/guix-register
/test-env
/test-tmp
/tests/*.trs
GPATH
GRTAGS
GTAGS
/nix-setuid-helper
/nix/scripts/guix-authenticate
/nix/scripts/offload
/emacs/Makefile.in
/emacs/Makefile
/emacs/guix-autoloads.el
/emacs/guix-helper.scm
/emacs/guix-config.el
/doc/os-config-bare-bones.texi
/doc/os-config-desktop.texi
/doc/*.1
/etc/guix-daemon.service
/doc/images/bootstrap-graph.pdf
/doc/images/coreutils-bag-graph.png
/doc/images/coreutils-graph.png
/doc/images/coreutils-size-map.eps
/doc/images/service-graph.png
/doc/images/service-graph.eps
/doc/images/service-graph.pdf
/doc/images/dmd-graph.png
Makefile
Makefile.in
config.cache
stamp-h[0-9]
tmp
/doc/os-config-lightweight-desktop.texi
+12 -2
View File
@@ -1,14 +1,20 @@
# This list is used to avoid multiple name/email instances of the same
# contributors reported by "git log" and "git shortlog" commands.
Al McElrath <hello@yrns.org> <hello@atonesir.com>
Alexander I. Grafov <grafov@gmail.com>
Alírio Eyng <alirioeyng@gmail.com>
Amirouche Boubekki <amirouche@hypermove.net>
Andreas Enge <andreas@enge.fr> <andreas.enge@inria.fr>
Andreas Enge <andreas@enge.fr> <privat@xobs-novena>
Andy Wingo <wingo@igalia.com> <wingo@pobox.com>
Ben Woodcroft <b.woodcroft@uq.edu.au> <donttrustben@gmail.com>
Ben Woodcroft <donttrustben@gmail.com> <b.woodcroft@uq.edu.au>
Ben Woodcroft <donttrustben@gmail.com> <donttrustben near gmail.com>
Claes Wallin (韋嘉誠) <claes.wallin@greatsinodevelopment.com>
Cyprien Nicolas <cyprien@nicolas.tf> <c.nicolas+gitorious@gmail.com>
David Thompson <davet@gnu.org> <dthompson2@worcester.edu>
David Thompson <davet@gnu.org> <dthompson@member.fsf.org>
David Thompson <davet@gnu.org> <dthompson@vistahigherlearning.com>
Deck Pickard <deck.r.pickard@gmail.com> <nebu@kipple>
Eric Bavier <bavier@member.fsf.org> <ericbavier@gmail.com>
Eric Dvorsak <eric@dvorsak.fr> <yenda1@gmail.com>
@@ -17,11 +23,15 @@ Joshua Grant <tadni@riseup.net> <gzg@riseup.net>
Joshua Grant <tadni@riseup.net> <jgrant@parenthetical.io>
Joshua Grant <tadni@riseup.net> <tadnimi@gmail.com>
Joshua Grant <tadni@riseup.net> <youlysses@riseup.net>
Leo Famulari <leo@famulari.name> <lfamular@gmail.com>
Ludovic Courtès <ludo@gnu.org> <ludovic.courtes@inria.fr>
Mathieu Lirzin <mthl@openmailbox.org> <mathieu.lirzin@openmailbox.org>
Mathieu Lirzin <mthl@gnu.org> <mthl@openmailbox.org>
Mathieu Lirzin <mthl@gnu.org> <mathieu.lirzin@openmailbox.org>
Nikita Karetnikov <nikita@karetnikov.org> <nikita.karetnikov@gmail.com>
Nils Gillmann <niasterisk@grrlz.net> <ng@niasterisk.space>
Pjotr Prins <pjotr.public01@thebird.nl>
Pjotr Prins <pjotr.public01@thebird.nl> <pjotr.public12@thebird.nl>
Raimon Grau <raimonster@gmail.com> <raimon@3scale.net>
Ricardo Wurmus <rekado@elephly.net>
Ricardo Wurmus <rekado@elephly.net> <ricardo.wurmus@mdc-berlin.de>
Sou Bunnbu (宋文武) <iyzsong@gmail.com>
+48
View File
@@ -0,0 +1,48 @@
Contributor Code of Conduct
As contributors and maintainers of this project, and in the interest of
fostering an open and welcoming community, we pledge to respect all
people who contribute through reporting issues, posting feature
requests, updating documentation, submitting pull requests or patches,
and other activities.
We are committed to making participation in this project a
harassment-free experience for everyone, regardless of level of
experience, gender, gender identity and expression, sexual orientation,
disability, personal appearance, body size, race, ethnicity, age,
religion, or nationality.
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery
* Personal attacks
* Trolling or insulting/derogatory comments
* Public or private harassment
* Publishing other's private information, such as physical or electronic
addresses, without explicit permission
* Other unethical or unprofessional conduct
Project maintainers have the right and responsibility to remove, edit,
or reject comments, commits, code, wiki edits, issues, and other
contributions that are not aligned to this Code of Conduct, or to ban
temporarily or permanently any contributor for other behaviors that they
deem inappropriate, threatening, offensive, or harmful.
By adopting this Code of Conduct, project maintainers commit themselves
to fairly and consistently applying these principles to every aspect of
managing this project. Project maintainers who do not follow or enforce
the Code of Conduct may be permanently removed from the project team.
This Code of Conduct applies both within project spaces and in public
spaces when an individual is representing the project or its community.
Instances of abusive, harassing, or otherwise unacceptable behavior may
be reported by contacting a project maintainer at guix-maintainers@gnu.org.
All complaints will be reviewed and investigated and will
result in a response that is deemed necessary and appropriate to the
circumstances. Maintainers are obligated to maintain confidentiality
with regard to the reporter of an incident.
This Code of Conduct is adapted from the Contributor Covenant
(http://contributor-covenant.org), version 1.3.0, available at
http://contributor-covenant.org/version/1/3/0/
+101 -45
View File
@@ -1,7 +1,9 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013 Andreas Enge <andreas@enge.fr>
# Copyright © 2015 Alex Kost <alezost@gmail.com>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2016 Mark H Weaver <mhw@netris.org>
#
# This file is part of GNU Guix.
#
@@ -47,10 +49,14 @@ MODULES = \
guix/serialization.scm \
guix/nar.scm \
guix/derivations.scm \
guix/grafts.scm \
guix/gnu-maintenance.scm \
guix/upstream.scm \
guix/licenses.scm \
guix/graph.scm \
guix/cve.scm \
guix/build-system.scm \
guix/build-system/ant.scm \
guix/build-system/cmake.scm \
guix/build-system/emacs.scm \
guix/build-system/glib-or-gtk.scm \
@@ -70,6 +76,7 @@ MODULES = \
guix/cvs-download.scm \
guix/svn-download.scm \
guix/ui.scm \
guix/build/ant-build-system.scm \
guix/build/download.scm \
guix/build/cmake-build-system.scm \
guix/build/emacs-build-system.scm \
@@ -94,6 +101,7 @@ MODULES = \
guix/build/gremlin.scm \
guix/build/emacs-utils.scm \
guix/build/graft.scm \
guix/build/bournish.scm \
guix/search-paths.scm \
guix/packages.scm \
guix/import/utils.scm \
@@ -133,6 +141,19 @@ MODULES = \
guix.scm \
$(GNU_SYSTEM_MODULES)
if HAVE_GUILE_JSON
MODULES += \
guix/import/github.scm \
guix/import/json.scm \
guix/import/pypi.scm \
guix/scripts/import/pypi.scm \
guix/import/cpan.scm \
guix/scripts/import/gem.scm \
guix/import/gem.scm
endif
if BUILD_SYSCALLS_MODULE
MODULES += \
@@ -150,20 +171,20 @@ endif BUILD_DAEMON_OFFLOAD
# Internal module with test suite support.
dist_noinst_DATA = guix/tests.scm
# Because of the autoload hack in (guix build download), we must build it
# first to avoid errors on systems where (gnutls) is unavailable.
guix/scripts/download.go: guix/build/download.go
guix/download.go: guix/build/download.go
# Linux-Libre configurations.
KCONFIGS = \
gnu/packages/linux-libre-i686.conf \
gnu/packages/linux-libre-x86_64.conf
gnu/packages/linux-libre-4.5-i686.conf \
gnu/packages/linux-libre-4.5-x86_64.conf \
gnu/packages/linux-libre-4.4-i686.conf \
gnu/packages/linux-libre-4.4-x86_64.conf \
gnu/packages/linux-libre-4.1-i686.conf \
gnu/packages/linux-libre-4.1-x86_64.conf
# Templates, examples.
EXAMPLES = \
gnu/system/examples/bare-bones.tmpl \
gnu/system/examples/desktop.tmpl
gnu/system/examples/desktop.tmpl \
gnu/system/examples/lightweight-desktop.tmpl
GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go guix/tests.go
@@ -189,6 +210,11 @@ clean-go:
-$(RM) -f $(GOBJECTS)
# Test extensions; has to be unconditional.
TEST_EXTENSIONS = .scm .sh
if CAN_RUN_TESTS
SCM_TESTS = \
tests/base32.scm \
tests/base64.scm \
@@ -197,11 +223,14 @@ SCM_TESTS = \
tests/pk-crypto.scm \
tests/pki.scm \
tests/sets.scm \
tests/gnu-maintenance.scm \
tests/substitute.scm \
tests/builders.scm \
tests/derivations.scm \
tests/grafts.scm \
tests/ui.scm \
tests/records.scm \
tests/upstream.scm \
tests/utils.scm \
tests/build-utils.scm \
tests/packages.scm \
@@ -223,20 +252,16 @@ SCM_TESTS = \
tests/size.scm \
tests/graph.scm \
tests/challenge.scm \
tests/cve.scm \
tests/file-systems.scm \
tests/system.scm \
tests/services.scm \
tests/containers.scm
tests/scripts-build.scm \
tests/containers.scm \
tests/import-utils.scm
if HAVE_GUILE_JSON
MODULES += \
guix/import/json.scm \
guix/import/pypi.scm \
guix/scripts/import/pypi.scm \
guix/import/cpan.scm \
guix/scripts/import/gem.scm \
guix/import/gem.scm
SCM_TESTS += \
tests/pypi.scm \
tests/cpan.scm \
@@ -268,8 +293,6 @@ endif BUILD_DAEMON
TESTS = $(SCM_TESTS) $(SH_TESTS)
TEST_EXTENSIONS = .scm .sh
AM_TESTS_ENVIRONMENT = abs_top_srcdir="$(abs_top_srcdir)"
SCM_LOG_COMPILER = $(top_builddir)/test-env $(GUILE)
@@ -285,6 +308,22 @@ tests/guix-gc.log: \
$(patsubst %.sh,%.log,$(filter-out tests/guix-gc.sh,$(SH_TESTS))) \
$(SCM_TESTS:%.scm=%.log)
else !CAN_RUN_TESTS
TESTS =
SH_TESTS =
SCM_TESTS =
# Automake always generates a 'check' target, so better not override it.
check-local:
@echo
@echo "Cannot run tests because file name limits would be exceeded." >&2
@echo "Look for 'length' in the 'config.log' file for details." >&2
@echo
@exit 1
endif !CAN_RUN_TESTS
# Public key used to sign substitutes from hydra.gnu.org.
dist_pkgdata_DATA = hydra.gnu.org.pub
@@ -295,8 +334,10 @@ EXTRA_DIST = \
HACKING \
ROADMAP \
TODO \
CODE-OF-CONDUCT \
.dir-locals.el \
build-aux/build-self.scm \
build-aux/compile-all.scm \
build-aux/hydra/gnu-system.scm \
build-aux/hydra/demo-os.scm \
build-aux/hydra/guix.scm \
@@ -311,6 +352,7 @@ EXTRA_DIST = \
tests/test.drv \
tests/signing-key.pub \
tests/signing-key.sec \
tests/cve-sample.xml \
build-aux/config.rpath \
bootstrap \
release.nix \
@@ -335,31 +377,21 @@ CLEANFILES = \
$(GOBJECTS) \
$(SCM_TESTS:tests/%.scm=%.log)
AM_V_GUILEC = $(AM_V_GUILEC_$(V))
AM_V_GUILEC_ = $(AM_V_GUILEC_$(AM_DEFAULT_VERBOSITY))
AM_V_GUILEC_0 = @echo " GUILEC" $@;
# Flags passed to 'guild compile'.
GUILD_COMPILE_FLAGS = \
-Wformat -Wunbound-variable -Warity-mismatch
# Unset 'GUILE_LOAD_COMPILED_PATH' altogether while compiling. Otherwise, if
# $GUILE_LOAD_COMPILED_PATH contains $(moduledir), we may find .go files in
# there that are newer than the local .scm files (for instance because the
# user ran 'make install' recently). When that happens, we end up loading
# those previously-installed .go files, which may be stale, thereby breaking
# the whole thing.
#
# XXX: Use the C locale for when Guile lacks
# <http://git.sv.gnu.org/cgit/guile.git/commit/?h=stable-2.0&id=e2c6bf3866d1186c60bacfbd4fe5037087ee5e3f>.
.scm.go:
$(AM_V_GUILEC)$(MKDIR_P) `dirname "$@"` ; \
%.go: make-go ; @:
make-go: $(MODULES) guix/config.scm guix/tests.scm
$(AM_V_at)echo "Compiling Scheme modules..." ; \
unset GUILE_LOAD_COMPILED_PATH ; \
LC_ALL=C \
host=$(host) srcdir="$(top_srcdir)" \
$(top_builddir)/pre-inst-env \
$(GUILD) compile -L "$(top_builddir)" -L "$(top_srcdir)" \
$(GUILD_COMPILE_FLAGS) --target="$(host)" \
-o "$@" "$<"
$(GUILE) -L "$(top_builddir)" -L "$(top_srcdir)" \
--no-auto-compile \
-s "$(top_srcdir)"/build-aux/compile-all.scm $^
SUFFIXES = .go
@@ -390,7 +422,11 @@ include daemon.am
endif BUILD_DAEMON
ACLOCAL_AMFLAGS = -I m4
# Pass an explicit '--localstatedir' so that configure does not error out if
# it finds an existing installation with a different localstatedir.
AM_DISTCHECK_CONFIGURE_FLAGS = \
--localstatedir="$$dc_install_base/var" \
--with-libgcrypt-prefix="$(LIBGCRYPT_PREFIX)" \
--with-libgcrypt-libdir="$(LIBGCRYPT_LIBDIR)" \
--with-nix-prefix="$(NIX_PREFIX)" \
@@ -402,7 +438,7 @@ include emacs.am
# The self-contained tarball.
guix-binary.%.tar.xz:
-GUIX_PACKAGE_PATH= \
$(AM_V_GEN)GUIX_PACKAGE_PATH= \
$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/make-binary-tarball.scm" "$*" "$@"
@@ -413,11 +449,11 @@ dist-hook: assert-no-store-file-names
distcheck-hook: assert-binaries-available assert-final-inputs-self-contained
sync-descriptions:
-GUIX_PACKAGE_PATH= \
$(AM_V_at)GUIX_PACKAGE_PATH= \
$(top_builddir)/pre-inst-env guix lint --checkers=gnu-description
gen-ChangeLog:
if test -d .git; then \
$(AM_V_GEN)if test -d .git; then \
$(top_srcdir)/build-aux/gitlog-to-changelog \
> $(distdir)/cl-t; \
rm -f $(distdir)/ChangeLog; \
@@ -425,7 +461,7 @@ gen-ChangeLog:
fi
gen-AUTHORS:
if test -d .git; then \
$(AM_V_GEN)if test -d .git; then \
rm -f "$(distdir)/AUTHORS"; \
$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/generate-authors.scm" \
@@ -434,7 +470,7 @@ gen-AUTHORS:
# Make sure we're not shipping a file that embeds a local /gnu/store file name.
assert-no-store-file-names:
if grep -r --exclude=*.texi --exclude=*.info \
$(AM_V_at)if grep -r --exclude=*.texi --exclude=*.info \
"$(storedir)/[a-z0-9]{32}-" $(distdir) ; \
then \
echo "error: store file names embedded in the distribution" >&2 ; \
@@ -443,14 +479,34 @@ assert-no-store-file-names:
# Make sure hydra.gnu.org has the important binaries.
assert-binaries-available:
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(AM_V_at)$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/check-available-binaries.scm"
# Make sure the final inputs don't refer to bootstrap tools.
assert-final-inputs-self-contained:
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(AM_V_at)$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/check-final-inputs-self-contained.scm"
.PHONY: sync-descriptions gen-ChangeLog gen-AUTHORS clean-go
.PHONY: sync-descriptions gen-ChangeLog gen-AUTHORS clean-go make-go
.PHONY: assert-no-store-file-names assert-binaries-available
.PHONY: assert-final-inputs-self-contained
## -------------- ##
## Silent rules. ##
## -------------- ##
AM_V_DL = $(AM_V_DL_$(V))
AM_V_DL_ = $(AM_V_DL_$(AM_DEFAULT_VERBOSITY))
AM_V_DL_0 = @echo " DL " $@;
AM_V_DOT = $(AM_V_DOT_$(V))
AM_V_DOT_ = $(AM_V_DOT_$(AM_DEFAULT_VERBOSITY))
AM_V_DOT_0 = @echo " DOT " $@;
AM_V_EMACS = $(AM_V_EMACS_$(V))
AM_V_EMACS_ = $(AM_V_EMACS_$(AM_DEFAULT_VERBOSITY))
AM_V_EMACS_0 = @echo " EMACS " $@;
AM_V_HELP2MAN = $(AM_V_HELP2MAN_$(V))
AM_V_HELP2MAN_ = $(AM_V_HELP2MAN_$(AM_DEFAULT_VERBOSITY))
AM_V_HELP2MAN_0 = @echo " HELP2MAN" $@;
+446 -1
View File
@@ -2,7 +2,7 @@
#+TITLE: Guix NEWS history of user-visible changes
#+STARTUP: content hidestars
Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@@ -10,6 +10,450 @@ Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
Please send Guix bug reports to bug-guix@gnu.org.
* Changes in 0.10.0 (since 0.9.0)
** Community
GNU Guix adopted a contributor code of conduct, see CODE-OF-CONDUCT in the
source tree.
** Package management
*** New command-line syntax for separating package names and version numbers
Use @ instead of - as a separator, as in gnupg@2.0. This new separator
is a reserved character which is not allowed both in package names and version
numbers.
The old syntax to specify a packages version—e.g., as “gnupg-2.0”—is obsolete
and support for it will be removed in the future.
*** “Grafts” apply recursively, based on run-time dependencies
“Grafts” is the mechanism by which we can apply security updates of core
packages without rebuilding or re-downloading the entire set of dependent
packages. See “Security Updates” in the manual, as well as
<https://savannah.gnu.org/forum/forum.php?forum_id=8470> and
<http://bugs.gnu.org/22139> for more info.
*** Substitutes are fetched over HTTPS by default
*** Substitutes are cached for the duration reported in Cache-Control headers
*** Default substitute URL list includes a faster mirror, mirror.hydra.gnu.org
*** New --with-input and --with-source for guix package and guix build
See “Package Transformation Options” in the manual.
*** guix package --search-paths -p X -p Y combines search paths for X and Y
*** guix package can be passed several --search options
*** New --rounds and --check for guix build, for bit-reproducibility
*** New --rounds option for guix-daemon
*** New --quiet option for guix build
*** guix package -u no longer checks for upstream GNU releases
*** guix-daemon always uses /tmp in chroots, regardless of $TMPDIR
*** New Emacs interface to browse licenses: M-x guix-licenses
*** New Emacs interface to list system generations: M-x guix-system-generations
*** New Emacs interface for hydra.gnu.org: M-x guix-hydra-…
*** Changes in Emacs interface variables and faces
In the following names, BUFFER-TYPE means "info" or "list";
ENTRY-TYPE means "package", "output" or "generation".
**** Removed
- guix-info-fill-column
- guix-info-insert-ENTRY-TYPE-function
**** Renamed
- guix-info-ignore-empty-vals -> guix-info-ignore-empty-values
- guix-output-name-width -> guix-generation-output-name-width
- guix-buffer-name-function -> guix-ui-buffer-name-function
- guix-update-after-operation -> guix-ui-update-after-operation
- guix-search-params -> guix-package-search-params
- guix-BUFFER-TYPE-file-path (face) -> guix-BUFFER-TYPE-file-name
**** Replaced
- guix-list-column-format, guix-list-column-value-methods ->
guix-ENTRY-TYPE-list-format
- guix-info-displayed-params, guix-info-insert-methods,
guix-package-info-heading-params -> guix-ENTRY-TYPE-info-format
- guix-param-titles, guix-list-column-titles ->
guix-ENTRY-TYPE-BUFFER-TYPE-titles
- guix-list-describe-warning-count ->
guix-ENTRY-TYPE-list-describe-warning-count
- guix-package-info-fill-heading -> guix-info-fill
*** New cve linter: guix lint -c cve reports pending vulnerabilities
*** New gnome, xorg, and github updaters for guix refresh
*** guix lint times out after 3 seconds when probing URLs
*** guix graph -t bag-with-origins includes origins in the graph
*** guix import cran can import packages from bioconductor.org
** Distribution
*** GuixSD upgraded to GNU Shepherd 0.3.1 and GNU Linux-libre 4.5.0
See <http://git.savannah.gnu.org/cgit/shepherd.git/tree/NEWS?id=v0.3.1> for
information on the changes between GNU dmd 0.2 and the GNU Shepherd 0.3.1.
*** “System Installation” section of the manual has been expounded
*** Installation image runs GPM and includes more programs
*** GNOME and Xfce desktops are available via services; see "Desktop Services"
*** New tor-hidden-service procedure, to declare Tor hidden services
*** New Dovecot service
*** New fstab-service-type, to populate /etc/fstab
*** New mount? field for file-system forms
*** Most global environment variables are now set in /etc/environment (pam_env)
*** guix system reconfigure now loads/starts new services, stops old ones
(see <http://bugs.gnu.org/22039>)
*** local-file resolves file names relative to the current source file
*** Many reproducibility issues fixed: glibc, perl, bison, emacs-*, python-*, …
*** Initial RAM disk supports modprobe.blacklist on the kernel command line
*** New “Running GuixSD in a VM” section in the manual
*** dmd changed to shepherd in guix system sub-commands
*** A Bourne-like shell is spawned upon fsck failure
(see <http://bugs.gnu.org/22588>)
*** 639 new packages
aide, allegro, amb-plugins, aria2, armadillo, armadillo, artanis, aseprite,
aspell-dict-it, aspell-dict-nl, assword, asymptote, audit, augeas, autojump,
awscli, baobab, beets, bioawk, blender, bless, borg, bristol, btrfs-progs,
bwa-pssm, byzanz, c-ares, caribou, cd-hit, cereal, cmocka, codingquarry,
colord-gtk, cppcheck, cpulimit, cracklib, crossguid, cuetools, cufflinks,
dcadec, dconf-editor, desmume, devil, dialog, docker-compose, drumstick,
einstein, emacs-async, emacs-constants, emacs-god-mode, emacs-mit-scheme-doc,
emacs-popup, emacs-scheme-complete, emacs-slime, emacs-undo-tree,
emacs-with-editor, emulation-station, etl, evolution-data-server, eyed3, fdm,
fil-plugins, findnewest, fluxbox, font-abattis-cantarell, font-google-noto,
font-un, fraggenescan, freefall, fritzing, fxtract, g-wrap, g2reverb,
gdk-pixbuf+svg, gdm, gdsl, gedit, ghc-aeson-qq, ghc-asn1-encoding,
ghc-asn1-parse, ghc-asn1-types, ghc-byteable, ghc-chasingbottoms, ghc-cmark,
ghc-conduit, ghc-connection, ghc-cryptonite, ghc-deepseq-generics, ghc-diff,
ghc-enclosed-exceptions, ghc-executable-path, ghc-filemanip,
ghc-haskell-src-meta, ghc-highlighting-kate, ghc-hostname, ghc-hourglass,
ghc-hslua, ghc-hspec-contrib, ghc-http-client, ghc-http-client-tls,
ghc-juicypixels, ghc-libxml, ghc-logging-facade, ghc-memory, ghc-mime-types,
ghc-mmap, ghc-mockery, ghc-packedstring, ghc-pandoc, ghc-pandoc-types,
ghc-pem, ghc-regex-pcre-builtin, ghc-sha, ghc-socks, ghc-tasty-kat,
ghc-test-framework, ghc-test-framework-hunit, ghc-test-framework-quickcheck2,
ghc-texmath, ghc-th-expand-syns, ghc-th-lift, ghc-th-orphans,
ghc-th-reify-many, ghc-tls, ghc-x509, ghc-x509-store, ghc-x509-system,
ghc-x509-validation, ghc-yaml, git-annex-remote-hubic, gjs, gnome,
gnome-backgrounds, gnome-bluetooth, gnome-control-center,
gnome-online-accounts, gnome-screenshot, gnome-session, gnome-shell,
gnunet-gtk, gpm, graphicsmagick, gst-plugins-bad, gtk-engines, gtk-vnc,
gtklick, guile-config, guile-gnunet, guile-irregex, guile-sly, gumbo-parser,
icedtea, icedtea, idle3-tools, iftop, info-reader, inklingreader, jasper,
jellyfish, jpegoptim, khal, khard, kodi, kyotocabinet, lcov, ldb, ldc, ledger,
letsencrypt, libbigwig, libcanberra-gtk2, libconfig, libgit2, libgtop,
liblangtag, libmateweather, libmbim, libotf, libpwquality, libqmi, libvdpau,
libxml++, lispf4, love, mate-desktop, mate-icon-theme, mate-menus,
mate-themes, mcp-plugins, microscheme, mlt, modem-manager, munge,
mupen64plus-audio-sdl, mupen64plus-core, mupen64plus-input-sdl,
mupen64plus-rsp-hle, mupen64plus-rsp-z64, mupen64plus-ui-console,
mupen64plus-video-arachnoid, mupen64plus-video-glide64,
mupen64plus-video-glide64mk2, mupen64plus-video-rice, mupen64plus-video-z64,
murrine, mutter, myrepos, nagios, nautilus, network-manager,
network-manager-applet, nload, notmuch-addrlookup-c, nqc, obs, ocaml-findlib,
owncloud-client, password-store, pepr, perl-cgi, perl-dbd-mysql,
perl-file-slurp-tiny, perl-html-template, perl-log-report,
perl-log-report-optional, perl-mime-charset, perl-module-pluggable,
perl-shell-command, perl-string-print, perl-text-neattemplate,
perl-unicode-linebreak, perl-xml-compile, perl-xml-compile-cache,
perl-xml-compile-soap, perl-xml-compile-tester, perl-xml-compile-wsdl11,
perl-xml-libxml-simple, pfff, pianobar, pinball, pioneers, pixz, powwow, ppp,
procmail, pyicoteo, python-acme, python-alembic, python-amqp, python-anyjson,
python-apipkg, python-args, python-astor, python-atomicwrites,
python-backports-abc, python-beautifulsoup4, python-billiard, python-botocore,
python-celery, python-click-log, python-click-threading, python-clint,
python-colorama, python-configargparse, python-configobj, python-contextlib2,
python-cookies, python-docker-py, python-dockerpty, python-docopt,
python-editor, python-efl, python-execnet, python-flask, python-futures,
python-gst, python-hy, python-hypothesis, python-icalendar, python-jellyfish,
python-jmespath, python-keystoneclient, python-kombu, python-mako,
python-markdown, python-minimal-wrapper, python-mpd2, python-munkres,
python-musicbrainzngs, python-mutagen, python-ndg-httpsclient, python-paste,
python-pastedeploy, python-pastescript, python-pathlib, python-pluggy,
python-psycopg2, python-pyasn1-modules, python-pybigwig, python-pyechonest,
python-pygpgme, python-pyicu, python-pylast, python-pyliblo, python-pyquery,
python-pyrfc3339, python-pystache, python-pytest-cache, python-pytest-cov,
python-pytest-localserver, python-pytest-subtesthack, python-pytest-xdist,
python-pytest-xprocess, python-rarfile, python-rauth,
python-requests-toolbelt, python-responses, python-rply, python-rsa,
python-sphinx-repoze-autointerface, python-sphinxcontrib-newsfeed,
python-sphinxcontrib-programoutput, python-swiftclient, python-texttable,
python-tox, python-translitcodec, python-urllib3, python-vcversioner,
python-vobject, python-waitress, python-websocket-client, python-webtest,
python-werkzeug, python-wheel, python-wsgi-intercept, python-wsgiproxy2,
python-wtforms, python-zope-component, python-zope-configuration,
python-zope-event, python-zope-exceptions, python-zope-i18nmessageid,
python-zope-interface, python-zope-location, python-zope-proxy,
python-zope-schema, python-zope-security, python-zope-testing,
python-zope-testrunner, python2-acme, python2-alembic, python2-amqp,
python2-anyjson, python2-apipkg, python2-args, python2-astor,
python2-atomicwrites, python2-backports-abc, python2-beautifulsoup4,
python2-billiard, python2-botocore, python2-celery, python2-clint,
python2-colorama, python2-configargparse, python2-configobj,
python2-contextlib2, python2-cookies, python2-docopt, python2-editor,
python2-efl, python2-enum34, python2-execnet, python2-flask,
python2-functools32, python2-futures, python2-gst, python2-hy,
python2-hypothesis, python2-jellyfish, python2-jmespath,
python2-keystoneclient, python2-kombu, python2-mako, python2-markdown,
python2-mpd2, python2-munkres, python2-musicbrainzngs, python2-mutagen,
python2-ndg-httpsclient, python2-parsedatetime, python2-paste,
python2-pastedeploy, python2-pastescript, python2-pathlib, python2-pluggy,
python2-psycopg2, python2-pyasn1-modules, python2-pybigwig,
python2-pyechonest, python2-pygpgme, python2-pylast, python2-pyliblo,
python2-pyquery, python2-pyrfc3339, python2-pystache, python2-pytest-cov,
python2-pytest-subtesthack, python2-pytest-xdist, python2-pythondialog,
python2-rarfile, python2-rauth, python2-responses, python2-rply, python2-rsa,
python2-sphinx-repoze-autointerface, python2-sphinxcontrib-programoutput,
python2-swiftclient, python2-texttable, python2-tox, python2-translitcodec,
python2-unicodecsv, python2-urllib3, python2-vcversioner, python2-vobject,
python2-waitress, python2-websocket-client, python2-webtest, python2-werkzeug,
python2-wheel, python2-wsgiproxy2, python2-wtforms, python2-xdo,
python2-zope-component, python2-zope-configuration, python2-zope-event,
python2-zope-exceptions, python2-zope-i18nmessageid, python2-zope-interface,
python2-zope-location, python2-zope-proxy, python2-zope-schema,
python2-zope-security, python2-zope-testing, python2-zope-testrunner, qca,
qemu-minimal, qtkeychain, qtractor, quassel, r-acsnminer, r-adaptivesparsity,
r-annotationdbi, r-base64enc, r-biobase, r-biocgenerics, r-biocparallel,
r-biomart, r-biostrings, r-bitops, r-brew, r-bsgenome, r-catools, r-curl,
r-data-table, r-devtools, r-dnacopy, r-doparallel, r-dt, r-foreach,
r-futile-logger, r-futile-options, r-genomation, r-genomeinfodb,
r-genomicalignments, r-genomicfeatures, r-genomicranges, r-git2r, r-go-db,
r-graph, r-gridbase, r-gridextra, r-httr, r-impute, r-iranges, r-iterators,
r-lambda-r, r-lattice, r-matrixstats, r-org-ce-eg-db, r-org-dm-eg-db,
r-org-hs-eg-db, r-org-mm-eg-db, r-plotly, r-plotrix, r-r-cache, r-r-methodss3,
r-r-oo, r-r-rsp, r-r-utils, r-rcpparmadillo, r-rcurl, r-readr, r-rmarkdown,
r-roxygen2, r-rsamtools, r-rsqlite, r-rstudioapi, r-rtracklayer, r-rversions,
r-s4vectors, r-seqpattern, r-snow, r-sparsem, r-summarizedexperiment, r-topgo,
r-viridis, r-whisker, r-xml, r-xml2, r-xvector, radicale, ragel, rakarrack,
rdmd, redshift, rev-plugins, ruby-ae, ruby-afm, ruby-ansi, ruby-ascii85,
ruby-atoulme-saikuro, ruby-bio-commandeer, ruby-blankslate, ruby-brass,
ruby-ci-reporter, ruby-clap, ruby-crass, ruby-cutest, ruby-domain-name,
ruby-eventmachine, ruby-fivemat, ruby-gem-hadar, ruby-gettext, ruby-guard,
ruby-hashery, ruby-http-cookie, ruby-instantiator, ruby-introspection,
ruby-json-pure, ruby-lemon, ruby-locale, ruby-metaclass, ruby-mime-types,
ruby-mime-types-data, ruby-minitest-bonus-assertions, ruby-minitest-focus,
ruby-minitest-moar, ruby-minitest-pretty-diff, ruby-minitest-rg,
ruby-minitest-tu-shim, ruby-mocha, ruby-net-ssh, ruby-netrc,
ruby-nokogiri-diff, ruby-nokogumbo, ruby-packnga, ruby-power-assert,
ruby-pry-editline, ruby-pstree, ruby-pygmentize, ruby-qed, ruby-rb-fsevent,
ruby-rc4, ruby-redcarpet, ruby-redcloth, ruby-rubytest, ruby-rubytest-cli,
ruby-saikuro-treemap, ruby-sanitize, ruby-sdoc, ruby-shoulda,
ruby-shoulda-context, ruby-shoulda-matchers, ruby-shoulda-matchers,
ruby-simplecov, ruby-sqlite3, ruby-systemu, ruby-tdiff, ruby-term-ansicolor,
ruby-test-unit, ruby-text, ruby-tins, ruby-ttfunk, ruby-turn, ruby-unf,
ruby-unf-ext, ruby-utils, scribus, sdl2-image, sdl2-mixer, sdl2-ttf, sdparm,
shepherd, shntool, slurm, smithlab-cpp, snap-aligner, snorenotify, sortmerna,
sparsehash, ste-plugins, stringtie, synfig, synfigstudio, tcllib, tclxml,
telepathy-logger, tevent, texlive-minimal, tilda, tinyxml, tlsdate, tophat,
transmission-remote-cli, ustr, v4l-utils, vco-plugins, vdirsyncer, vdpauinfo,
vmpk, wah-plugins, wcalc, xaos, xfce4-power-manager, xfce4-xkb-plugin,
xmlstarlet, yoshimi, zenity
*** 577 package updates
abcde-2.7.1, abduco-0.5, adwaita-icon-theme-3.18.0, aisleriot-3.18.2,
alsa-modular-synth-2.1.2, alsa-utils-1.1.0, american-fuzzy-lop-1.96b,
ant-1.9.6, ao-1.2.0, arb-2.8.1, ardour-4.7, aspell-dict-en-2016.01.19-0,
atkmm-2.24.2, attr-2.4.47, autogen-5.18.7, bash-4.3.42, bash-minimal-4.3.42,
bash-static-4.3.42, bazaar-2.7.0, bdftopcf-1.0.5, bedtools-2.25.0,
bind-utils-9.10.3-P4, bitcoin-core-0.11.2, bitlbee-3.4.1, bluez-5.36,
boost-1.60.0, bowtie-2.2.6, bundler-1.11.2, calibre-2.51.0, catch-1.3.5,
ccache-3.2.4, chicken-4.10.0, clang-3.6.2, claws-mail-3.13.2, clutter-1.24.2,
clutter-gst-3.0.14, clutter-gtk-1.6.6, cm-0.3, cogl-1.22.0, colordiff-1.0.16,
complexity-1.10, cppunit-1.13.2, cups-filters-1.4.0, curl-7.47.0,
datamash-1.1.0, dconf-0.24.0, ddrescue-1.21, deeptools-2.1.1, devhelp-3.18.1,
diffoscope-51, docbook-xml-4.3, docbook-xml-4.4, docbook-xml-4.5,
dovecot-2.2.19, doxygen-1.8.11, dropbear-2016.72, dvdisaster-0.79.5,
dvtm-0.15, edirect-3.50, efl-1.17.0, eigen-3.2.7, elementary-1.17.0,
elogind-219.14, emacs-dash-2.12.1, emacs-debbugs-0.9, emacs-pdf-tools-0.70,
emacs-w3m-1.4.538+0.20141022, emotion-generic-players-1.17.0,
enlightenment-0.20.6, eog-3.18.1, epiphany-3.18.2,
evas-generic-loaders-1.17.0, evince-3.18.1, exim-4.86.2,
extra-cmake-modules-5.19.0, feh-2.14.1, ffmpeg-2.8.6, file-5.25,
file-roller-3.16.4, findutils-4.6.0, flex-2.6.0,
font-adobe-source-han-sans-1.004, font-terminus-4.40, font-ubuntu-0.83,
font-util-1.3.1, fontforge-20150824, freeipmi-1.5.1, frescobaldi-2.18.2,
fribidi-0.19.7, fuse-2.9.5, gajim-0.16.5, gcc-5.3.0, gcc-toolchain-5.3.0,
gccgo-4.9.3, gcr-3.18.0, gdb-7.11, gdk-pixbuf-2.32.3, geocode-glib-3.18.0,
getmail-4.48.0, gettext-0.19.7, gfortran-5.3.0, git-2.7.3, git-manpages-2.7.3,
git-modes-1.2.1, gitolite-3.6.5, glade-3.18.3, glibc-2.22, glibmm-2.46.3,
global-6.5.2, glpk-4.59, gmime-2.6.20, gmp-6.1.0, gmsh-2.11.0, gmtp-1.3.10,
gnome-common-3.18.0, gnome-desktop-3.18.1, gnome-keyring-3.18.3,
gnome-klotski-3.18.2, gnome-mines-3.18.2, gnome-settings-daemon-3.18.2,
gnome-terminal-3.18.2, gnome-themes-standard-3.18.0, gnucash-2.6.9,
gnumeric-1.12.24, gnupg-2.0.29, gnupg-2.1.11, gnuplot-5.0.2, gnutls-3.4.7,
goffice-0.10.24, gp2c-0.0.9pl5, gpgme-1.6.0, gpsbabel-1.5.2, graphite2-1.3.6,
grep-2.22, grilo-0.2.14, grilo-plugins-0.2.16, gsl-2.1, gst-libav-1.6.3,
gst-plugins-base-1.6.3, gst-plugins-good-1.6.3, gst-plugins-ugly-1.6.3,
gstreamer-1.6.3, gtksourceview-3.18.2, guile-2.0.11, guile-2.0.11,
guile-json-0.5.0, guile-ssh-0.9.0, guitarix-0.34.0, guix-0.9.0,
guix-0.9.0-1.dd21, gvfs-1.26.2, harfbuzz-1.0.6, help2man-1.47.3, hevea-2.28,
htop-2.0.1, hwloc-1.11.1, hydrogen-0.9.6.1, iceauth-1.0.7, icecast-2.4.3,
icecat-38.6.0-gnu1, iproute2-4.4.0, irssi-0.8.18, isc-dhcp-4.3.3-P1,
isync-1.2.1, jrnl-1.9.7, julia-0.4.3, kbproto-1.0.7, keepassx-2.0.2,
kwindowsystem-5.19.0, libass-0.13.2, libassuan-2.4.2, libbluray-0.9.2,
libcddb-1.3.2, libchamplain-0.12.12, libdvdcss-1.4.0, libevent-2.0.22,
libffi-3.2.1, libfontenc-1.1.3, libfs-1.0.7, libgcrypt-1.6.5,
libgnome-keyring-3.12.0, libgpg-error-1.21, libgweather-3.18.1,
libinput-1.2.0, libjpeg-9a, libmicrohttpd-0.9.48, libotr-4.1.1,
libpeas-1.16.0, libpng-1.5.26, librecad-2.0.9, libreoffice-5.0.5.2,
libressl-2.3.3, librsvg-2.40.13, libsecret-0.18.3, libshout-2.4.1,
libsndfile-1.0.26, libssh-0.7.3, libssh2-1.7.0, libstdc++-doc-5.3.0,
libtasn1-4.7, libtiff-4.0.6, libuninameslist-0.5.20150701, libvpx-1.5.0,
libwnck-3.14.0, libx11-1.6.3, libx264-20160220-2245, libxaw-1.0.13,
libxdmcp-1.1.2, libxi-1.7.6, libxkbfile-1.0.9, libxml2-2.9.3, libxmp-4.3.10,
libxp-1.0.3, libxrandr-1.5.0, libxrender-0.9.9, libxshmfence-1.2, libxt-1.1.5,
libxvmc-1.0.9, libxxf86vm-1.1.4, libyubikey-1.13, lilypond-2.19.33,
linux-libre-4.4.6, linux-libre-4.5, lua-5.2.3, macs-2.1.0.20151222,
mafft-7.267, magit-2.5.0, man-pages-4.04, manaplus-1.6.3.12, mariadb-10.1.12,
mercurial-3.7.2, mesa-11.0.9, mesa-headers-11.0.9, mit-krb5-1.13.3,
mkfontscale-1.1.2, moe-1.8, moreutils-0.57, mozjs-24.2.0, mpd-0.19.12,
mplayer-1.2.1, mpv-0.16.0, msmtp-1.6.3, mumps-5.0.1, mumps-metis-5.0.1,
mumps-metis-openmpi-5.0.1, mumps-openmpi-5.0.1, mupdf-1.8, mysql-5.7.11,
nano-2.5.3, ncbi-vdb-2.5.7, ncmpcpp-0.7.3, neon-0.30.1, nettle-3.2,
nginx-1.8.1, ngs-java-1.2.3, ngs-sdk-1.2.3, nix-1.11.2, notmuch-0.21,
nspr-4.10.10, nss-3.21.1, nss-certs-3.21.1, ntp-4.2.8p6, numactl-2.0.11,
octave-4.0.0, offlineimap-6.7.0, openbox-3.6.1, openjpeg-2.0.1,
openjpeg-2.1.0, openmpi-1.10.1, openssh-7.2p2, openssl-1.0.2g, opus-1.1.2,
opusfile-0.7, orc-0.4.25, orfm-0.5.3, oxygen-icons-5.19.0, parallel-20160222,
paredit-24, pari-gp-2.7.5, parted-3.2, pcre-8.38, pelican-3.6.3, perf-4.5,
perl-5.22.1, perl-tk-804.033, petsc-3.6.2, petsc-complex-3.6.2,
petsc-complex-openmpi-3.6.2, petsc-openmpi-3.6.2, pidgin-otr-4.0.2,
pinentry-0.9.6, pius-2.2.2, pkg-config-0.29, postgresql-9.5.1, powertop-2.8,
preseq-2.0, privoxy-3.0.24, procps-3.3.11, prodigal-2.6.3, pspp-0.10.0,
pulseaudio-8.0, pumpa-0.9.2, python-3.4.3, python-apsw-3.9.2-r1,
python-babel-2.1.1, python-biopython-1.66, python-blinker-1.4,
python-certifi-2015.11.20.1, python-cffi-1.4.2, python-click-6.2,
python-coverage-4.0.3, python-cryptography-1.2.3,
python-cryptography-vectors-1.2.3, python-cython-0.23.4,
python-dateutil-2.4.2, python-debtcollector-1.0.0, python-decorator-4.0.9,
python-enum34-1.1.0, python-exif-read-2.1.2, python-file-5.25,
python-fixtures-1.4.0, python-flake8-2.5.4, python-gnupg-0.3.8,
python-html5lib-1.0b8, python-isodate-0.5.4, python-jinja2-2.8,
python-jsonschema-2.5.1, python-keyring-5.7.1, python-libarchive-c-2.2,
python-libxml2-2.9.3, python-llfuse-0.41.1, python-llfuse-1.0,
python-lxml-3.5.0, python-ly-0.9.3, python-matplotlib-1.4.3,
python-mccabe-0.4.0, python-mox3-0.13.0, python-msgpack-0.4.7,
python-networkx-1.11, python-nose-1.3.7, python-numpy-1.10.4,
python-oauthlib-1.0.3, python-os-client-config-1.12.0, python-os-testr-0.5.0,
python-oslo.context-1.0.0, python-oslo.i18n-3.0.0,
python-oslo.serialization-2.2.0, python-oslo.utils-3.0.0,
python-oslosphinx-4.2.0, python-pandas-0.16.2, python-parsedatetime-1.5,
python-passlib-1.6.5, python-patsy-0.4.1, python-pbr-1.8.1, python-pep8-1.7.0,
python-pillow-3.1.1, python-pip-8.0.2, python-psutil-3.3.0, python-py-1.4.31,
python-pycparser-2.14, python-pyflakes-1.0.0, python-pygments-2.0.2,
python-pyjwt-1.4.0, python-pyld-0.6.8, python-pysam-0.8.4, python-pytz-2015.7,
python-pyzmq-15.1.0, python-requests-2.9.1, python-requests-mock-0.7.0,
python-rpy2-2.7.6, python-setuptools-scm-1.9.0, python-six-1.10.0,
python-sqlalchemy-1.0.12, python-stevedore-1.10.0, python-tempest-lib-0.12.0,
python-tlsh-3.4.4, python-tornado-4.3, python-traitlets-4.1.0,
python-tzlocal-1.2, python-unidecode-0.04.18, python-virtualenv-13.1.2,
python-webob-1.5.1, python2-apsw-3.9.2-r1, python2-babel-2.1.1,
python2-backport-ssl-match-hostname-3.5.0.1, python2-biopython-1.66,
python2-blinker-1.4, python2-certifi-2015.11.20.1, python2-cffi-1.4.2,
python2-click-6.2, python2-coverage-4.0.3, python2-cryptography-1.2.3,
python2-cryptography-vectors-1.2.3, python2-cython-0.23.4,
python2-dateutil-2.4.2, python2-debtcollector-1.0.0, python2-decorator-4.0.9,
python2-exif-read-2.1.2, python2-fastlmm-0.2.21, python2-file-5.25,
python2-fixtures-1.4.0, python2-flake8-2.5.4, python2-gnupg-0.3.8,
python2-html5lib-1.0b8, python2-isodate-0.5.4, python2-jinja2-2.8,
python2-jsonschema-2.5.1, python2-keyring-5.7.1, python2-libarchive-c-2.2,
python2-libxml2-2.9.3, python2-llfuse-1.0, python2-lxml-3.5.0,
python2-matplotlib-1.4.3, python2-mccabe-0.4.0, python2-mox3-0.13.0,
python2-msgpack-0.4.7, python2-networkx-1.11, python2-nose-1.3.7,
python2-numpy-1.10.4, python2-oauthlib-1.0.3, python2-os-client-config-1.12.0,
python2-os-testr-0.5.0, python2-oslo.context-1.0.0, python2-oslo.i18n-3.0.0,
python2-oslo.serialization-2.2.0, python2-oslo.utils-3.0.0,
python2-oslosphinx-4.2.0, python2-pandas-0.16.2, python2-passlib-1.6.5,
python2-patsy-0.4.1, python2-pbr-1.8.1, python2-pep8-1.7.0,
python2-pillow-3.1.1, python2-pip-8.0.2, python2-psutil-3.3.0,
python2-py-1.4.31, python2-pycparser-2.14, python2-pyflakes-1.0.0,
python2-pygments-2.0.2, python2-pyicu-1.9.2, python2-pyjwt-1.4.0,
python2-pyld-0.6.8, python2-pysam-0.8.4, python2-pysnptools-0.3.5,
python2-pysqlite-2.8.1, python2-pytz-2015.7, python2-pyzmq-15.1.0,
python2-requests-2.9.1, python2-requests-mock-0.7.0, python2-rpy2-2.7.6,
python2-setuptools-scm-1.9.0, python2-six-1.10.0, python2-sqlalchemy-1.0.12,
python2-stevedore-1.10.0, python2-tempest-lib-0.12.0, python2-tlsh-3.4.4,
python2-tornado-4.3, python2-traitlets-4.1.0, python2-unidecode-0.04.18,
python2-virtualenv-13.1.2, python2-webob-1.5.1, qemu-2.5.0, qrencode-3.4.4,
r-3.2.3, r-ggplot2-2.0.0, r-qtl-1.38-4, randrproto-1.5.0, retroarch-1.3.1,
rsync-3.1.2, ruby-2.2.4, ruby-2.3.0, ruby-mini-portile-2.0.0,
ruby-nokogiri-1.6.7.1, samba-4.3.6, samtools-1.3, sdl2-2.0.4, seahorse-3.18.0,
sessreg-1.1.0, setxkbmap-1.3.1, shflags-1.2.0, simple-scan-3.19.91,
sipwitch-1.9.15, skribilo-0.9.3, slepc-3.6.2, slepc-complex-3.6.2,
slepc-complex-openmpi-3.6.2, slepc-openmpi-3.6.2, smproxy-1.0.6,
socat-1.7.3.1, sqlite-3.10.0, sra-tools-2.5.7, star-2.5.1b, stow-2.2.2,
subversion-1.8.15, sudo-1.8.15, sxiv-1.3.2, talloc-2.1.5, tdb-1.3.8,
texinfo-5.2, texinfo-6.0, texinfo-6.1, the-silver-searcher-0.31.0, tig-2.1.1,
tiled-0.15.1, tmux-2.1, tor-0.2.7.6, torsocks-2.0.0, totem-3.18.1,
tzdata-2015g, ucommon-7.0.0, upower-0.99.3, utf8proc-1.3.1, vapoursynth-28,
vera-1.23, vigra-1.11.0, vsearch-1.10.0, vte-0.42.3, wayland-1.10.0,
webkitgtk-2.12.0, webkitgtk-2.4.10, webkitgtk-gtk2-2.4.10, weechat-1.4,
wget-1.17.1, wine-1.9.4, x11perf-1.6.0, xcmsdb-1.0.5, xdotool-3.20150503.1,
xdpyinfo-1.3.2, xdriinfo-1.0.5, xev-1.2.2, xf86-input-evdev-2.10.1,
xf86-input-keyboard-1.8.1, xf86-input-libinput-0.16.0,
xf86-input-synaptics-1.8.3, xf86-input-void-1.4.1, xf86-video-ati-7.6.1,
xf86-video-cirrus-1.5.3, xf86-video-geode-2.11.18,
xf86-video-intel-2.99.917-1-d167280, xf86-video-mach64-6.9.5,
xf86-video-mga-1.6.4, xf86-video-neomagic-1.2.9, xf86-video-nouveau-1.0.12,
xf86-video-r128-6.10.1, xf86-video-savage-2.3.8,
xf86-video-siliconmotion-1.7.8, xf86-video-sis-0.10.8, xf86-video-tdfx-1.4.6,
xf86-video-trident-1.3.7, xf86-video-vesa-2.3.4, xf86-video-vmware-13.1.0,
xgamma-1.0.6, xhost-1.0.7, xinput-1.6.2, xkbevd-1.1.4, xkeyboard-config-2.17,
xlockmore-5.46, xlsatoms-1.1.2, xmlto-0.0.28, xmodmap-1.0.9,
xorg-server-1.18.1, xorriso-1.4.2, xproto-7.0.28, xrandr-1.5.0, xterm-322,
xvid-1.3.4, xvinfo-1.1.3, xz-5.2.2, yasm-1.3.0, yelp-3.18.1,
yelp-tools-3.18.0, yelp-xsl-3.18.1, ykclient-2.15, youtube-dl-2016.03.01,
zlib-1.2.8, znc-1.6.2, zynaddsubfx-2.5.3
** Programming interfaces
*** Build systems always set the SOURCE_DATE_EPOCH environment variable
*** New (guix graph) graph manipulation module, abstracted from guix graph
*** New (guix cve) module, to navigate the CVE database
*** build-things procedure takes a new mode parameter
*** Mass rename of dmd to shepherd in the (gnu …) modules
*** New gnome-desktop-service and xfce-desktop-service procedures
*** pam-root-service-type can be extended with cross-cutting transformations
*** package-with-python2 honors the python2-variant package property
(see <http://bugs.gnu.org/22437>)
** Noteworthy bug fixes
*** Grafts are applied recursively (<http://bugs.gnu.org/22139>)
*** Commands correctly handle numbers in package names
(http://bugs.gnu.org/19219)
*** guix-daemon deduplication code detects corrupt items
*** eudev now populates /dev/disk/by-{id,label}
*** Selected locale is automatically built (<http://bugs.gnu.org/22572>)
*** Substitutes can be downloaded over HTTPS (<http://bugs.gnu.org/22937>)
*** umask explicitly set in /etc/profile (<http://bugs.gnu.org/22650>)
*** guix system init writes GC root on the target file system
(<http://bugs.gnu.org/22802>)
*** guix system vm now works in the absence of KVM support
(<http://bugs.gnu.org/22633>)
*** GuixSD includes an Info reader by default (<http://bugs.gnu.org/22598>)
*** MacBook keyboards are now properly detected (<http://bugs.gnu.org/20433>)
*** GRUB searches root by label or UUID (<http://bugs.gnu.org/22281>)
*** guix package --search-paths honors propagated inputs
(<http://bugs.gnu.org/22073>)
*** GCC uses C_INCLUDE_PATH et al. instead of CPATH
(<http://bugs.gnu.org/22186>)
*** ld-wrapper computes library search path based on all -L flags
(<http://bugs.gnu.org/21941>)
*** guix environment --container gracefully handles abnormal exists
(<http://bugs.gnu.org/21958>)
** Native language support
*** Updated translations: da, de
*** New translation: pl (Polish)
* Changes in 0.9.0 (since 0.8.3)
** Package management
@@ -32,6 +476,7 @@ Please send Guix bug reports to bug-guix@gnu.org.
*** Download progress report has been improved
*** Emacs shell-mode completions for guix commands updated
*** Emacs: New M-x guix popup interface
*** Emacs: modes for viewing build logs (guix-build-log-mode)
** Distribution
+1 -1
View File
@@ -77,6 +77,6 @@ Freenode!
+ build containers like guix-daemon does
+ provide a Plash-like interface in Bash
- daemon rewritten in Guile
- more dmd integration
- more shepherd integration
+ monitor network interfaces and start/stop events based on that
+ include a DHCP client written in Scheme
+2
View File
@@ -25,6 +25,7 @@ infrastructure help:
Daniel Kochmański <dkochmanski@hellsgate.pl>
Matthew Lien <bluet@bluet.org>
Dave Love <fx@gnu.org>
Chris Marusich <cmmarusich@gmail.com>
Niels Möller <nisse@lysator.liu.se>
Cyprien Nicolas <cyprien@nicolas.tf>
Yutaka Niibe <gniibe@fsij.org>
@@ -39,6 +40,7 @@ infrastructure help:
Thomas Schwinge <thomas@codesourcery.com>
Alexander Shendi <Alexander.Shendi@web.de>
Alen Skondro <askondro@gmail.com>
Jan Synáček <jan.synacek@gmail.com>
Matthias Wachs <wachs@net.in.tum.de>
Christopher Allan Webber <cwebber@dustycloud.org>
Philip Woods <elzairthesorcerer@gmail.com>
+2 -1
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,6 +21,7 @@
;;;
(use-modules (guix store)
(guix grafts)
(guix packages)
(guix derivations)
(gnu packages emacs)
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,6 +21,7 @@
;;;
(use-modules (guix store)
(guix grafts)
(guix packages)
(guix derivations)
(guix ui)
+90
View File
@@ -0,0 +1,90 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(use-modules (system base target)
(system base message)
(ice-9 match)
(ice-9 threads)
(guix build utils))
(define warnings
'(unsupported-warning format unbound-variable arity-mismatch))
(define host (getenv "host"))
(define srcdir (getenv "srcdir"))
(define (relative-file file)
(if (string-prefix? (string-append srcdir "/") file)
(string-drop file (+ 1 (string-length srcdir)))
file))
(define (file-mtime<? f1 f2)
(< (stat:mtime (stat f1))
(stat:mtime (stat f2))))
(define (scm->go file)
(let* ((relative (relative-file file))
(without-extension (string-drop-right relative 4)))
(string-append without-extension ".go")))
(define (file-needs-compilation? file)
(let ((go (scm->go file)))
(or (not (file-exists? go))
(file-mtime<? go file))))
(define (file->module file)
(let* ((relative (relative-file file))
(module-path (string-drop-right relative 4)))
(map string->symbol
(string-split module-path #\/))))
;;; To work around <http://bugs.gnu.org/15602> (FIXME), we want to load all
;;; files to be compiled first. We do this via resolve-interface so that the
;;; top-level of each file (module) is only executed once.
(define (load-module-file file)
(let ((module (file->module file)))
(format #t " LOAD ~a~%" module)
(resolve-interface module)))
(define (compile-file* file output-mutex)
(let ((go (scm->go file)))
(with-mutex output-mutex
(format #t " GUILEC ~a~%" go)
(force-output))
(mkdir-p (dirname go))
(with-fluids ((*current-warning-prefix* ""))
(with-target host
(lambda ()
(compile-file file
#:output-file go
#:opts `(#:warnings ,warnings)))))))
(match (command-line)
((_ . files)
(let ((files (filter file-needs-compilation? files)))
(for-each load-module-file files)
(let ((mutex (make-mutex)))
(par-for-each (lambda (file)
(compile-file* file mutex))
files)))))
;;; Local Variables:
;;; eval: (put 'with-target 'scheme-indent-function 1)
;;; End:
+1 -1
View File
@@ -56,7 +56,7 @@
(match (command-line)
((_ file expected-hash)
(let ((uri (file-name->uri file)))
(format #t "downloading file `~a' from `~a'...~%"
(format #t "downloading file `~a'~%from `~a'...~%"
file (uri->string uri))
(let*-values (((resp data) (http-get uri #:decode-body? #f))
((hash) (bytevector->base16-string (sha256 data)))
+1 -1
View File
@@ -57,7 +57,7 @@ This is an alpha preview of the GNU system. Welcome.
This image features the GNU Guix package manager, which was used to
build it (http://www.gnu.org/software/guix/). The init system is
GNU dmd (http://www.gnu.org/software/dmd/).
the GNU Shepherd (http://www.gnu.org/software/shepherd/).
You can log in as 'guest' or 'root' with no password.
")
+38 -26
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,6 +38,7 @@
(use-modules (guix config)
(guix store)
(guix grafts)
(guix packages)
(guix derivations)
(guix monads)
@@ -78,6 +79,9 @@
(license . ,(package-license package))
(home-page . ,(package-home-page package))
(maintainers . ("bug-guix@gnu.org"))
(max-silent-time . ,(or (assoc-ref (package-properties package)
'max-silent-time)
3600)) ; 1 hour by default
(timeout . ,(or (assoc-ref (package-properties package) 'timeout)
72000)))) ; 20 hours by default
@@ -157,7 +161,7 @@ system.")
(set-guile-for-build (default-guile))
(system-disk-image installation-os
#:disk-image-size
(* 860 MiB))))))
(* 1024 MiB))))))
'()))
(define (tarball-jobs store system)
@@ -245,27 +249,35 @@ valid."
%packages-to-cross-build))
(remove (either from-32-to-64? same?) %cross-targets)))
;; Return one job for each package, except bootstrap packages.
(append-map (lambda (system)
(case subset
((all)
;; Build everything.
(fold-packages (lambda (package result)
(let ((job (package->job store package
system)))
(if job
(cons job result)
result)))
(append (qemu-jobs store system)
(tarball-jobs store system)
(cross-jobs system))))
((core)
;; Build core packages only.
(append (map (lambda (package)
(package-job store (job-name package)
package system))
%core-packages)
(cross-jobs system)))
(else
(error "unknown subset" subset))))
%hydra-supported-systems))
;; Turn off grafts. Grafting is meant to happen on the user's machines.
(parameterize ((%graft? #f))
;; Return one job for each package, except bootstrap packages.
(append-map (lambda (system)
(case subset
((all)
;; Build everything, including replacements.
(let ((all (fold-packages
(lambda (package result)
(if (package-replacement package)
(cons* package
(package-replacement package)
result)
(cons package result)))
'()))
(job (lambda (package)
(package->job store package
system))))
(append (filter-map job all)
(qemu-jobs store system)
(tarball-jobs store system)
(cross-jobs system))))
((core)
;; Build core packages only.
(append (map (lambda (package)
(package-job store (job-name package)
package system))
%core-packages)
(cross-jobs system)))
(else
(error "unknown subset" subset))))
%hydra-supported-systems)))
+21 -7
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -47,6 +47,7 @@
(guix build-system gnu)
(gnu packages version-control)
(gnu packages package-management)
(gnu packages imagemagick)
(gnu packages graphviz)
(gnu packages man)
(srfi srfi-1)
@@ -72,12 +73,25 @@
(define (tarball-package checkout)
"Return a package that does `make distcheck' from CHECKOUT, a directory
containing a Git checkout of Guix."
(dist-package (package
(inherit guix)
(native-inputs `(("graphviz" ,graphviz)
("help2man" ,help2man)
,@(package-native-inputs guix))))
checkout))
(let ((guix (@@ (gnu packages package-management) guix)))
(dist-package (package
(inherit guix)
(arguments (package-arguments guix))
(native-inputs `(("imagemagick" ,imagemagick)
,@(package-native-inputs guix))))
checkout
#:phases
'(modify-phases %dist-phases
(add-before 'build 'build-daemon
;; Build 'guix-daemon' first so that help2man
;; successfully creates 'guix-daemon.1'.
(lambda _
(let ((n (number->string
(parallel-job-count))))
(zero? (system* "make"
"nix/libstore/schema.sql.hh"
"guix-daemon" "-j" n)))))))))
(define (hydra-jobs store arguments)
"Return Hydra jobs."
+16 -8
View File
@@ -14,14 +14,6 @@ if test "x$guix_build_daemon" = "xyes"; then
AC_PROG_RANLIB
AC_CONFIG_HEADER([nix/config.h])
dnl Decompressors, for use by the substituter.
AC_PATH_PROG([GZIP], [gzip])
AC_PATH_PROG([BZIP2], [bzip2])
AC_PATH_PROG([XZ], [xz])
AC_SUBST([GZIP])
AC_SUBST([BZIP2])
AC_SUBST([XZ])
dnl Use 64-bit file system calls so that we can support files > 2 GiB.
AC_SYS_LARGEFILE
@@ -118,6 +110,20 @@ if test "x$guix_build_daemon" = "xyes"; then
dnl Check for <linux/fs.h> (for immutable file support).
AC_CHECK_HEADERS([linux/fs.h])
dnl Determine the appropriate default list of substitute URLs.
GUILE_MODULE_AVAILABLE([have_gnutls], [(gnutls)])
if test "x$have_gnutls" = "xyes"; then
guix_substitute_urls="https://mirror.hydra.gnu.org https://hydra.gnu.org"
else
AC_MSG_WARN([GnuTLS is missing, substitutes will be downloaded in the clear])
guix_substitute_urls="http://mirror.hydra.gnu.org http://hydra.gnu.org"
fi
AC_MSG_CHECKING([for default substitute URLs])
AC_MSG_RESULT([$guix_substitute_urls])
AC_DEFINE_UNQUOTED([GUIX_SUBSTITUTE_URLS], ["$guix_substitute_urls"],
[Default list of substitute URLs used by 'guix-daemon'.])
dnl Check whether the 'offload' build hook can be built (uses
dnl 'restore-file-set', which requires unbuffered custom binary input
dnl ports from Guile >= 2.0.10.)
@@ -134,6 +140,8 @@ if test "x$guix_build_daemon" = "xyes"; then
GUIX_TEST_ROOT="$ac_cv_guix_test_root"
AC_SUBST([GUIX_TEST_ROOT])
GUIX_CHECK_LOCALSTATEDIR
AC_CONFIG_FILES([nix/scripts/list-runtime-roots],
[chmod +x nix/scripts/list-runtime-roots])
AC_CONFIG_FILES([nix/scripts/substitute],
+11 -2
View File
@@ -2,7 +2,7 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.68)
AC_INIT([GNU Guix], [0.9.0], [bug-guix@gnu.org], [guix],
AC_INIT([GNU Guix], [0.10.0], [bug-guix@gnu.org], [guix],
[http://www.gnu.org/software/guix/])
AC_CONFIG_AUX_DIR([build-aux])
@@ -60,7 +60,8 @@ AC_SUBST([guix_localstatedir])
AC_SUBST([guix_sysconfdir])
AC_SUBST([guix_sbindir])
GUIX_CHECK_FILE_NAME_LIMITS
GUIX_CHECK_FILE_NAME_LIMITS([can_run_tests])
AM_CONDITIONAL([CAN_RUN_TESTS], [test "x$can_run_tests" = "xyes"])
dnl We require pkg.m4 (from pkg-config) and guile.m4 (from Guile.)
dnl Make sure they are available.
@@ -90,6 +91,14 @@ GUIX_CHECK_LIBC_MOUNT
AM_CONDITIONAL([BUILD_SYSCALLS_MODULE],
[test "x$guix_cv_libc_has_mount" = "xyes"])
dnl Decompressors, for use by the substituter and other modules.
AC_PATH_PROG([GZIP], [gzip])
AC_PATH_PROG([BZIP2], [bzip2])
AC_PATH_PROG([XZ], [xz])
AC_SUBST([GZIP])
AC_SUBST([BZIP2])
AC_SUBST([XZ])
AC_ARG_WITH([nix-prefix],
[AS_HELP_STRING([--with-nix-prefix=DIR],
[search for Nix in DIR (for testing purposes and '--disable-daemon' builds)])],
+25 -9
View File
@@ -1,5 +1,6 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
#
# This file is part of GNU Guix.
#
@@ -21,7 +22,7 @@
#
BUILT_SOURCES += nix/libstore/schema.sql.hh
CLEANFILES += $(BUILT_SOURCES) etc/guix-daemon.service
CLEANFILES += $(BUILT_SOURCES) etc/guix-daemon.service etc/guix-daemon.conf
noinst_LIBRARIES = libformat.a libutil.a libstore.a
@@ -69,7 +70,8 @@ libutil_headers = \
nix/libutil/gcrypt-hash.hh \
nix/libutil/md5.h \
nix/libutil/sha1.h \
nix/libutil/sha256.h
nix/libutil/sha256.h \
nix/libutil/sha512.h
libutil_a_CPPFLAGS = \
-I$(top_builddir)/nix \
@@ -84,7 +86,6 @@ libstore_a_SOURCES = \
nix/libstore/store-api.cc \
nix/libstore/optimise-store.cc \
nix/libstore/local-store.cc \
nix/libstore/remote-store.cc \
nix/libstore/build.cc \
nix/libstore/pathlocks.cc \
nix/libstore/derivations.cc
@@ -94,7 +95,6 @@ libstore_headers = \
nix/libstore/pathlocks.hh \
nix/libstore/globals.hh \
nix/libstore/worker-protocol.hh \
nix/libstore/remote-store.hh \
nix/libstore/derivations.hh \
nix/libstore/misc.hh \
nix/libstore/local-store.hh \
@@ -156,7 +156,7 @@ noinst_HEADERS = \
$(guix_daemon_headers)
nix/libstore/schema.sql.hh: nix/libstore/schema.sql
$(GUILE) --no-auto-compile -c \
$(AM_V_GEN)$(GUILE) --no-auto-compile -c \
"(use-modules (rnrs io ports)) \
(call-with-output-file \"$@\" \
(lambda (out) \
@@ -186,16 +186,30 @@ nodist_systemdservice_DATA = etc/guix-daemon.service
etc/guix-daemon.service: etc/guix-daemon.service.in \
$(top_builddir)/config.status
$(MKDIR_P) "`dirname "$@"`"
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
$(SED) -e 's|@''bindir''@|$(bindir)|' < \
"$(srcdir)/etc/guix-daemon.service.in" > "$@.tmp"
"$(srcdir)/etc/guix-daemon.service.in" > "$@.tmp"; \
mv "$@.tmp" "$@"
# The '.conf' job for Upstart.
upstartjobdir = $(libdir)/upstart/system
nodist_upstartjob_DATA = etc/guix-daemon.conf
etc/guix-daemon.conf: etc/guix-daemon.conf.in \
$(top_builddir)/config.status
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
$(SED) -e 's|@''bindir''@|$(bindir)|' < \
"$(srcdir)/etc/guix-daemon.conf.in" > "$@.tmp"; \
mv "$@.tmp" "$@"
EXTRA_DIST += \
nix/libstore/schema.sql \
nix/AUTHORS \
nix/COPYING \
etc/guix-daemon.service.in
etc/guix-daemon.service.in \
etc/guix-daemon.conf.in
if CAN_RUN_TESTS
AM_TESTS_ENVIRONMENT += \
top_builddir="$(abs_top_builddir)"
@@ -203,6 +217,8 @@ AM_TESTS_ENVIRONMENT += \
TESTS += \
tests/guix-daemon.sh
endif CAN_RUN_TESTS
clean-local:
-if test -d "$(GUIX_TEST_ROOT)"; then \
find "$(GUIX_TEST_ROOT)" | xargs chmod +w; \
+68 -54
View File
@@ -1,6 +1,9 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013 Andreas Enge <andreas@enge.fr>
# Copyright © 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
#
# This file is part of GNU Guix.
#
@@ -21,16 +24,18 @@ info_TEXINFOS = doc/guix.texi
DOT_FILES = \
doc/images/bootstrap-graph.dot \
doc/images/bootstrap-packages.dot \
doc/images/coreutils-graph.dot \
doc/images/coreutils-bag-graph.dot \
doc/images/service-graph.dot \
doc/images/dmd-graph.dot
doc/images/shepherd-graph.dot
DOT_VECTOR_GRAPHICS = \
$(DOT_FILES:%.dot=%.eps) \
$(DOT_FILES:%.dot=%.pdf)
EXTRA_DIST += \
doc/htmlxref.cnf \
doc/contributing.texi \
doc/emacs.texi \
doc/fdl-1.3.texi \
@@ -42,7 +47,8 @@ EXTRA_DIST += \
OS_CONFIG_EXAMPLES_TEXI = \
doc/os-config-bare-bones.texi \
doc/os-config-desktop.texi
doc/os-config-desktop.texi \
doc/os-config-lightweight-desktop.texi
# Bundle this file so that makeinfo finds it in out-of-source-tree builds.
BUILT_SOURCES += $(OS_CONFIG_EXAMPLES_TEXI)
@@ -50,7 +56,7 @@ EXTRA_DIST += $(OS_CONFIG_EXAMPLES_TEXI)
MAINTAINERCLEANFILES = $(OS_CONFIG_EXAMPLES_TEXI)
doc/os-config-%.texi: gnu/system/examples/%.tmpl
$(MKDIR_P) "`dirname "$@"`"
$(AM_V_GEN)$(MKDIR_P) "`dirname $@`"; \
cp "$<" "$@"
infoimagedir = $(infodir)/images
@@ -65,19 +71,19 @@ DOT_OPTIONS = \
-Nfontsize=9 -Nheight=.1 -Nwidth=.1
.dot.png:
$(DOT) -Tpng $(DOT_OPTIONS) < "$<" > "$@.tmp"
mv "$@.tmp" "$@"
$(AM_V_DOT)$(DOT) -Tpng $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp"; \
mv "$(srcdir)/$@.tmp" "$(srcdir)/$@"
.dot.pdf:
$(DOT) -Tpdf $(DOT_OPTIONS) < "$<" > "$@.tmp"
mv "$@.tmp" "$@"
$(AM_V_DOT)$(DOT) -Tpdf $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp"; \
mv "$(srcdir)/$@.tmp" "$(srcdir)/$@"
.dot.eps:
$(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$@.tmp"
mv "$@.tmp" "$@"
$(AM_V_DOT)$(DOT) -Teps $(DOT_OPTIONS) < "$<" > "$(srcdir)/$@.tmp"; \
mv "$(srcdir)/$@.tmp" "$(srcdir)/$@"
.png.eps:
convert "$<" "$@-tmp.eps"
$(AM_V_GEN)convert "$<" "$@-tmp.eps"; \
mv "$@-tmp.eps" "$@"
# We cannot add new dependencies to `doc/guix.pdf' & co. (info "(automake)
@@ -89,55 +95,63 @@ ps-local: $(DOT_FILES=%.dot=$(top_srcdir)/%.eps) \
$(top_srcdir)/doc/images/coreutils-size-map.eps
dvi-local: ps-local
# Manual pages.
## ----------- ##
## Man pages. ##
## ----------- ##
doc/guix.1: $(SUBCOMMANDS:%=guix/scripts/%.scm)
-LANGUAGE= $(top_builddir)/pre-inst-env \
$(HELP2MAN) --output="$@" guix
# The man pages are generated using GNU Help2man. In makefiles rules they
# depend not on the binary, but on the source files. This usage allows a
# manual page to be generated by the maintainer and included in the
# distribution without requiring the end-user to have 'help2man' installed.
# They are built in $(srcdir) like info manuals.
# Note: Do not depend on 'guix-daemon' since that would trigger a rebuild even
# for people building from a tarball.
doc/guix-daemon.1: nix/nix-daemon/guix-daemon.cc
-LANGUAGE= $(top_builddir)/pre-inst-env \
$(HELP2MAN) --output="$@" guix-daemon
define subcommand-manual-target
doc/guix-$(1).1: guix/scripts/$(1).scm
-LANGUAGE= $(top_builddir)/pre-inst-env \
$(HELP2MAN) --output="$$@" "guix $(1)"
endef
SUBCOMMANDS := \
archive \
build \
challenge \
download \
edit \
environment \
gc \
hash \
import \
lint \
package \
publish \
pull \
refresh \
size \
system
$(eval $(foreach subcommand,$(SUBCOMMANDS), \
$(call subcommand-manual-target,$(subcommand))))
sub_commands_mans = \
$(srcdir)/doc/guix-archive.1 \
$(srcdir)/doc/guix-build.1 \
$(srcdir)/doc/guix-challenge.1 \
$(srcdir)/doc/guix-download.1 \
$(srcdir)/doc/guix-edit.1 \
$(srcdir)/doc/guix-environment.1 \
$(srcdir)/doc/guix-gc.1 \
$(srcdir)/doc/guix-hash.1 \
$(srcdir)/doc/guix-import.1 \
$(srcdir)/doc/guix-lint.1 \
$(srcdir)/doc/guix-package.1 \
$(srcdir)/doc/guix-publish.1 \
$(srcdir)/doc/guix-pull.1 \
$(srcdir)/doc/guix-refresh.1 \
$(srcdir)/doc/guix-size.1 \
$(srcdir)/doc/guix-system.1
dist_man1_MANS = \
doc/guix.1 \
$(SUBCOMMANDS:%=doc/guix-%.1)
$(srcdir)/doc/guix.1 \
$(sub_commands_mans)
gen_man = \
LANGUAGE= $(top_builddir)/pre-inst-env $(HELP2MAN) \
$(HELP2MANFLAGS)
HELP2MANFLAGS = --source=GNU --info-page=$(PACKAGE_TARNAME)
$(srcdir)/doc/guix.1: scripts/guix.in $(sub_commands_mans)
-$(AM_V_HELP2MAN)$(gen_man) --output="$@" `basename "$@" .1`
# The 'case' ensures the man pages are only generated if the corresponding
# source script (the first prerequisite) has been changed. The $(GOBJECTS)
# prerequisite is solely meant to force these docs to be made only after all
# Guile modules have been compiled.
$(srcdir)/doc/guix-%.1: guix/scripts/%.scm $(GOBJECTS)
-@case '$?' in \
*$<*) $(AM_V_P) && set -x || echo " HELP2MAN $@"; \
$(gen_man) --output="$@" "guix $*";; \
*) : ;; \
esac
if BUILD_DAEMON
dist_man1_MANS += \
doc/guix-daemon.1
dist_man1_MANS += $(srcdir)/doc/guix-daemon.1
$(srcdir)/doc/guix-daemon.1: nix/nix-daemon/guix-daemon.cc
-$(AM_V_HELP2MAN)$(gen_man) --output="$@" `basename "$@" .1`
endif
+65 -21
View File
@@ -7,6 +7,14 @@ grow! Please get in touch with us on @email{guix-devel@@gnu.org} and
reports, patches, and anything that may be helpful to the project. We
particularly welcome help on packaging (@pxref{Packaging Guidelines}).
@cindex code of conduct, of contributors
@cindex contributor covenant
We want to provide a warm, friendly, and harassment-free environment, so
that anyone can contribute to the best of their abilities. To this end
our project uses a ``Contributor Covenant'', which was adapted from
@url{http://contributor-covenant.org/}. You can find a local version in
the @file{CODE-OF-CONDUCT} file in the source tree.
@menu
* Building from Git:: The latest and greatest.
* Running Guix Before It Is Installed:: Hacker tricks.
@@ -32,29 +40,42 @@ the installation instructions (@pxref{Requirements}).
@item @url{http://www.gnu.org/software/help2man/, GNU Help2man (optional)}.
@end itemize
Run @command{./bootstrap} to download the Nix daemon source code and to
generate the build system infrastructure using autoconf. It reports an
error if an inappropriate version of the above packages is being used.
The easiest way to set up a development environment for Guix is, of
course, by using Guix! The following command starts a new shell where
all the dependencies and appropriate environment variables are set up to
hack on Guix:
@noindent
If you get an error like this one:
@example
guix environment guix
@end example
@xref{Invoking guix environment}, for more information on that command.
Extra dependencies can be added with @option{--ad-hoc}:
@example
guix environment guix --ad-hoc help2man git strace
@end example
Run @command{./bootstrap} to generate the build system infrastructure
using Autoconf and Automake. If you get an error like this one:
@example
configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES
@end example
@noindent
it probably means that Autoconf couldnt find @file{pkg.m4}, which is
provided by @command{pkg-config}. Make sure that @file{pkg.m4} is
available. For instance, if you installed Automake in
@file{/usr/local}, it wouldnt look for @file{.m4} files in
@file{/usr/share}. So you have to invoke the following command in that
case
provided by pkg-config. Make sure that @file{pkg.m4} is available. The
same holds for the @file{guile.m4} set of macros provided by Guile. For
instance, if you installed Automake in @file{/usr/local}, it wouldnt
look for @file{.m4} files in @file{/usr/share}. In that case, you have
to invoke the following command:
@example
export ACLOCAL_PATH=/usr/share/aclocal
@end example
See @pxref{Macro Search Path,,, automake, The GNU Automake Manual} for
@xref{Macro Search Path,,, automake, The GNU Automake Manual}, for
more information.
Then, run @command{./configure} as usual.
@@ -119,7 +140,13 @@ necessary to support this, including @env{PATH} and @env{GUILE_LOAD_PATH}.
Note that @command{./pre-inst-env guix pull} does @emph{not} upgrade the
local source tree; it simply updates the @file{~/.config/guix/latest}
symlink (@pxref{Invoking guix pull}). Run @command{git pull} instead if
you want to upgrade your local source tree.
you want to upgrade your local source tree.@footnote{If you would like
to set up @command{guix} to use your Git checkout, you can point the
@file{~/.config/guix/latest} symlink to your Git checkout directory.
If you are the sole user of your system, you may also consider pointing
the @file{/root/.config/guix/latest} symlink to point to
@file{~/.config/guix/latest}; this way it will always use the same
@command{guix} as your user does.}
@node The Perfect Setup
@@ -141,7 +168,8 @@ that it finds source files from your checkout:
@lisp
;; @r{Assuming the Guix checkout is in ~/src/guix.}
(add-to-list 'geiser-guile-load-path "~/src/guix")
(with-eval-after-load 'geiser-guile
(add-to-list 'geiser-guile-load-path "~/src/guix"))
@end lisp
To actually edit the code, Emacs already has a neat Scheme mode. But in
@@ -265,18 +293,34 @@ not affected by the change; @code{guix refresh --list-dependent
@var{package}} will help you do that (@pxref{Invoking guix refresh}).
@item
@cindex determinism, of build processes
@cindex reproducible builds, checking
Check whether the package's build process is deterministic. This
typically means checking whether an independent build of the package
yields the exact same result that you obtained, bit for bit.
A simple way to do that is with @command{guix challenge}
(@pxref{Invoking guix challenge}). You may run it once the package has
been committed and built by @code{hydra.gnu.org} to check whether it
obtains the same result as you did. Better yet: Find another machine
that can build it and run @command{guix publish}.
A simple way to do that is by building the same package several times in
a row on your machine (@pxref{Invoking guix build}):
@example
guix build --rounds=2 my-package
@end example
This is enough to catch a class of common non-determinism issues, such
as timestamps or randomly-generated output in the build result.
Another option is to use @command{guix challenge} (@pxref{Invoking guix
challenge}). You may run it once the package has been committed and
built by @code{hydra.gnu.org} to check whether it obtains the same
result as you did. Better yet: Find another machine that can build it
and run @command{guix publish}. Since the remote build machine is
likely different from yours, this can catch non-determinism issues
related to the hardware---e.g., use of different instruction set
extensions---or to the operating system kernel---e.g., reliance on
@code{uname} or @file{/proc} files.
@end enumerate
When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as a
subject. You may use your email client or the @command{git send-mail}
command.
When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as
a subject. You may use your email client or the @command{git
send-email} command.
+149 -43
View File
@@ -9,11 +9,13 @@ Guix convenient and fun.
@menu
* Initial Setup: Emacs Initial Setup. Preparing @file{~/.emacs}.
* Package Management: Emacs Package Management. Managing packages and generations.
* Licenses: Emacs Licenses. Interface for licenses of Guix packages.
* Popup Interface: Emacs Popup Interface. Magit-like interface for guix commands.
* Prettify Mode: Emacs Prettify. Abbreviating @file{/gnu/store/@dots{}} file names.
* Build Log Mode: Emacs Build Log. Highlighting Guix build logs.
* Completions: Emacs Completions. Completing @command{guix} shell command.
* Development: Emacs Development. Tools for Guix developers.
* Hydra: Emacs Hydra. Interface for Guix build farm.
@end menu
@@ -46,13 +48,19 @@ command (@pxref{Emacs Popup Interface}).
@end itemize
When it is done ``guix.el'' may be configured by requiring a special
@code{guix-init} file---i.e., by adding the following code into your
init file (@pxref{Init File,,, emacs, The GNU Emacs Manual}):
When it is done, ``guix.el'' may be configured by requiring
@code{guix-autoloads} file. If you install Guix in your user profile,
this auto-loading is done automatically by our Emacs package
(@pxref{Application Setup}), so a universal recipe for configuring
``guix.el'' is: @command{guix package -i guix}. If you do this, there
is no need to read further.
For the manual installation, you need to add the following code into
your init file (@pxref{Init File,,, emacs, The GNU Emacs Manual}):
@example
(add-to-list 'load-path "/path/to/directory-with-guix.el")
(require 'guix-init nil t)
(require 'guix-autoloads nil t)
@end example
So the only thing you need to figure out is where the directory with
@@ -64,17 +72,19 @@ If it was installed by a package manager of your distribution or by a
usual @code{./configure && make && make install} command sequence, then
elisp files are placed in a standard directory with Emacs packages
(usually it is @file{/usr/share/emacs/site-lisp/}), which is already in
@code{load-path}, so there is no need to add that directory there.
@code{load-path}, so there is no need to add that directory there. Note
that if you don't update this installation periodically, you may get an
outdated Emacs code which does not work with the current Guile code of
Guix.
@item
If you used a binary installation method (@pxref{Binary Installation}),
then Guix is installed somewhere in the store, so the elisp files are
placed in @file{/gnu/store/@dots{}-guix-0.8.2/share/emacs/site-lisp/} or
alike. However it is not recommended to refer directly to a store
directory. Instead you can install Guix using Guix itself with
@command{guix package -i guix} command (@pxref{Invoking guix package})
and add @file{~/.guix-profile/share/emacs/site-lisp/} directory to
@code{load-path} variable.
directory, as it may be garbage-collected one day. So a better choice
would be to install Guix using Guix itself with @command{guix package -i
guix}.
@item
If you did not install Guix at all and prefer a hacking way
@@ -86,26 +96,10 @@ same directory, so your final configuration will look like this:
(let ((dir "/path/to/your-guix-git-tree/emacs"))
(add-to-list 'load-path dir)
(setq guix-load-path dir))
(require 'guix-init nil t)
(require 'guix-autoloads nil t)
@end example
@end itemize
By default, along with autoloading (@pxref{Autoload,,, elisp, The GNU
Emacs Lisp Reference Manual}) the main interactive commands for
``guix.el'' (@pxref{Emacs Commands}), requiring @code{guix-init} will
also autoload commands for the Emacs packages installed in your user
profile.
To disable automatic loading of installed Emacs packages, set
@code{guix-package-enable-at-startup} variable to @code{nil} before
requiring @code{guix-init}. This variable has the same meaning for
Emacs packages installed with Guix, as @code{package-enable-at-startup}
for the built-in Emacs package system (@pxref{Package Installation,,,
emacs, The GNU Emacs Manual}).
You can activate Emacs packages installed in your profile whenever you
want using @kbd{M-x@tie{}guix-emacs-load-autoloads}.
@node Emacs Package Management
@section Package Management
@@ -148,19 +142,33 @@ Commands for displaying packages:
Display all/newest available packages.
@item M-x guix-installed-packages
Display all installed packages.
@itemx M-x guix-installed-user-packages
@itemx M-x guix-installed-system-packages
Display installed packages. As described above, @kbd{M-x
guix-installed-packages} uses an arbitrary profile that you can specify,
while the other commands display packages installed in 2 special
profiles: @file{~/.guix-profile} and @file{/run/current-system/profile}
(only on GuixSD).
@item M-x guix-obsolete-packages
Display obsolete packages (the packages that are installed in a profile
but cannot be found among available packages).
@item M-x guix-search-by-name
@item M-x guix-packages-by-name
Display package(s) with the specified name.
@item M-x guix-packages-by-license
Display package(s) with the specified license.
@item M-x guix-search-by-regexp
Search for packages by a specified regexp. By default ``name'',
``synopsis'' and ``description'' of the packages will be searched. This
can be changed by modifying @code{guix-search-params} variable.
can be changed by modifying @code{guix-package-search-params} variable.
@item M-x guix-search-by-name
Search for packages with names matching a specified regexp. This
command is the same as @code{guix-search-by-regexp}, except only a
package ``name'' is searched.
@end table
@@ -190,6 +198,14 @@ date/time prompt,,, org, The Org Manual}).
@end table
Analogously on GuixSD you can also display system generations:
@table @kbd
@item M-x guix-system-generations
@item M-x guix-last-system-generations
@item M-x guix-system-generations-by-time
@end table
You can also invoke the @command{guix pull} command (@pxref{Invoking
guix pull}) from Emacs using:
@@ -201,6 +217,31 @@ With @kbd{C-u}, make it verbose.
Once @command{guix pull} has succeeded, the Guix REPL is restared. This
allows you to keep using the Emacs interface with the updated Guix.
Finally, there is an Emacs variant of @command{guix edit} command
(@pxref{Invoking guix edit}):
@table @kbd
@item M-x guix-edit
As with @kbd{M-x guix-packages-by-name}, you can press @key{TAB} to
complete a package name.
@end table
If you are contributing to Guix, you may find it useful for @kbd{M-x
guix-edit} to open package files from your git directory. This can be
done by setting @code{guix-directory} variable. For example, after
this:
@example
(setq guix-directory "~/src/guix")
@end example
@kbd{M-x guix-edit guix} opens
@file{~/src/guix/gnu/packages/package-management.scm} file.
Also you can use @kbd{C-u} prefix argument to specify a directory just
for the current @kbd{M-x guix-edit} command.
@node Emacs General info
@subsection General information
@@ -287,6 +328,8 @@ similar to @command{guix edit} command (@pxref{Invoking guix edit}), but
for opening a package recipe in the current Emacs instance.
@item x
Execute actions on the marked packages.
@item B
Display latest builds of the current package (@pxref{Emacs Hydra}).
@end table
A ``generation-list'' buffer additionally provides the following
@@ -339,6 +382,7 @@ emacs, The GNU Emacs Manual}) which can be used to:
@item install/remove a package;
@item jump to a package location;
@item browse home page of a package;
@item browse license URL;
@item describe packages from ``Inputs'' fields.
@end itemize
@@ -414,7 +458,7 @@ changed with the following variables:
By default, the name of a profile is also displayed in a ``list'' or
``info'' buffer name. To change this behavior, use
@code{guix-buffer-name-function} variable.
@code{guix-ui-buffer-name-function} variable.
For example, if you want to display all types of results in a single
buffer (in such case you will probably use a history (@kbd{l}/@kbd{r})
@@ -428,8 +472,7 @@ extensively), you may do it like this:
guix-generation-list-buffer-name name
guix-package-info-buffer-name name
guix-output-info-buffer-name name
guix-generation-info-buffer-name name
guix-buffer-name-function #'guix-buffer-name-simple))
guix-generation-info-buffer-name name))
@end example
@node Emacs Keymaps
@@ -439,8 +482,12 @@ If you want to change default key bindings, use the following keymaps
(@pxref{Init Rebinding,,, emacs, The GNU Emacs Manual}):
@table @code
@item guix-root-map
Parent keymap with general keys for all guix modes.
@item guix-buffer-map
Parent keymap with general keys for any buffer type.
@item guix-ui-map
Parent keymap with general keys for buffers used for Guix package
management (for packages, outputs and generations).
@item guix-list-mode-map
Parent keymap with general keys for ``list'' buffers.
@@ -475,28 +522,49 @@ Keymap with keys available when a point is placed on a button.
@subsubsection Appearance
You can change almost any aspect of ``list'' / ``info'' buffers using
the following variables:
the following variables (@dfn{ENTRY-TYPE} means @code{package},
@code{output} or @code{generation}):
@table @code
@item guix-list-column-format
@itemx guix-list-column-titles
@itemx guix-list-column-value-methods
@item guix-ENTRY-TYPE-list-format
@itemx guix-ENTRY-TYPE-list-titles
Specify the columns, their names, what and how is displayed in ``list''
buffers.
@item guix-info-displayed-params
@itemx guix-info-insert-methods
@itemx guix-info-ignore-empty-vals
@item guix-ENTRY-TYPE-info-format
@itemx guix-ENTRY-TYPE-info-titles
@itemx guix-info-ignore-empty-values
@itemx guix-info-param-title-format
@itemx guix-info-multiline-prefix
@itemx guix-info-indent
@itemx guix-info-fill-column
@itemx guix-info-fill
@itemx guix-info-delimiter
Various settings for ``info'' buffers.
@end table
@node Emacs Licenses
@section Licenses
If you want to browse the URL of a particular license, or to look at a
list of licenses, you may use the following commands:
@table @kbd
@item M-x guix-browse-license-url
Choose a license from a completion list to browse its URL using
@code{browse-url} function (@pxref{Browse-URL,,, emacs, The GNU Emacs
Manual}).
@item M-x guix-licenses
Display a list of available licenses. You can press @kbd{@key{RET}}
there to display packages with this license in the same way as @kbd{M-x
guix-packages-by-license} would do (@pxref{Emacs Commands}).
@end table
@node Emacs Popup Interface
@section Popup Interface
@@ -533,7 +601,7 @@ GNU Emacs Manual}).
@end itemize
Several commands (@command{guix graph}, @command{guix system dmd-graph}
Several commands (@command{guix graph}, @command{guix system shepherd-graph}
and @command{guix system extension-graph}) also have a ``View graph''
action, which allows you to view a generated graph using @command{dot}
command (specified by @code{guix-dot-program} variable). By default a
@@ -738,3 +806,41 @@ evaluation will be finished in the REPL.
Alternatively, to avoid this limitation, you may just run another Geiser
REPL, and while something is being evaluated in the previous REPL, you
can continue editing a scheme file with the help of the current one.
@node Emacs Hydra
@section Hydra
The continuous integration server at @code{hydra.gnu.org} builds all
the distribution packages on the supported architectures and serves
them as substitutes (@pxref{Substitutes}). Continuous integration is
currently orchestrated by @uref{https://nixos.org/hydra/, Hydra}.
This section describes an Emacs interface to query Hydra to know the
build status of specific packages, discover recent and ongoing builds,
view build logs, and so on. This interface is mostly the same as the
``list''/``info'' interface for displaying packages and generations
(@pxref{Emacs Package Management}).
The following commands are available:
@table @kbd
@item M-x guix-hydra-latest-builds
Display latest failed or successful builds (you will be prompted for a
number of builds). With @kbd{C-u}, you will also be prompted for other
parameters (project, jobset, job and system).
@item M-x guix-hydra-queued-builds
Display scheduled or currently running builds (you will be prompted for
a number of builds).
@item M-x guix-hydra-jobsets
Display available jobsets (you will be prompted for a project).
@end table
In a list of builds you can press @kbd{L} key to display a build log of
the current build. Also both a list of builds and a list of jobsets
provide @kbd{B} key to display latest builds of the current job or
jobset (don't forget about @kbd{C-u}).
+3380 -842
View File
File diff suppressed because it is too large Load Diff
+652
View File
@@ -0,0 +1,652 @@
# htmlxref.cnf - reference file for free Texinfo manuals on the web.
# Modified by Ludovic Courtès <ludo@gnu.org> for the GNU Guix manual.
htmlxrefversion=2016-02-21.21; # UTC
# Copyright 2010, 2011, 2012, 2013, 2014, 2015 Free Software Foundation, Inc.
#
# Copying and distribution of this file, with or without modification,
# are permitted in any medium without royalty provided the copyright
# notice and this notice are preserved.
#
# The latest version of this file is available at
# http://ftpmirror.gnu.org/texinfo/htmlxref.cnf.
# Email corrections or additions to bug-texinfo@gnu.org.
# The primary goal is to list all relevant GNU manuals;
# other free manuals are also welcome.
#
# To be included in this list, a manual must:
#
# - have a generic url, e.g., no version numbers;
# - have a unique file name (e.g., manual identifier), i.e., be related to the
# package name. Things like "refman" or "tutorial" don't work.
# - follow the naming convention for nodes described at
# http://www.gnu.org/software/texinfo/manual/texinfo/html_node/HTML-Xref.html
# This is what makeinfo and texi2html implement.
#
# Unless the above criteria are met, it's not possible to generate
# reliable cross-manual references.
#
# For information on automatically generating all the useful formats for
# a manual to put on the web, see
# http://www.gnu.org/prep/maintain/html_node/Manuals-on-Web-Pages.html.
# For people editing this file: when a manual named foo is related to a
# package named bar, the url should contain a variable reference ${BAR}.
# Otherwise, the gnumaint scripts have no way of knowing they are
# associated, and thus gnu.org/manual can't include them.
# shorten references to manuals on www.gnu.org.
G = http://www.gnu.org
GS = ${G}/software
3dldf mono ${GS}/3dldf/manual/user_ref/3DLDF.html
3dldf node ${GS}/3dldf/manual/user_ref/
alive mono ${GS}/alive/manual/alive.html
alive node ${GS}/alive/manual/html_node/
anubis chapter ${GS}/anubis/manual/html_chapter/
anubis section ${GS}/anubis/manual/html_section/
anubis node ${GS}/anubis/manual/html_node/
artanis mono ${GS}/artanis/manual/artanis.html
artanis node ${GS}/artanis/manual/html_node/
aspell section http://aspell.net/man-html/index.html
auctex mono ${GS}/auctex/manual/auctex.html
auctex node ${GS}/auctex/manual/auctex/
autoconf mono ${GS}/autoconf/manual/autoconf.html
autoconf node ${GS}/autoconf/manual/html_node/
autogen mono ${GS}/autogen/manual/html_mono/autogen.html
autogen chapter ${GS}/autogen/manual/html_chapter/
autogen node ${GS}/autoconf/manual/html_node/
automake mono ${GS}/automake/manual/automake.html
automake node ${GS}/automake/manual/html_node/
avl node http://www.stanford.edu/~blp/avl/libavl.html/
bash mono ${GS}/bash/manual/bash.html
bash node ${GS}/bash/manual/html_node/
BINUTILS = http://sourceware.org/binutils/docs
binutils node ${BINUTILS}/binutils/
as node ${BINUTILS}/as/
bfd node ${BINUTILS}/bfd/
gprof node ${BINUTILS}/gprof/
ld node ${BINUTILS}/ld/
bison mono ${GS}/bison/manual/bison.html
bison node ${GS}/bison/manual/html_node/
bpel2owfn mono ${GS}/bpel2owfn/manual/2.0.x/bpel2owfn.html
ccd2cue mono ${GS}/ccd2cue/manual/ccd2cue.html
ccd2cue node ${GS}/ccd2cue/manual/html_node/
cflow mono ${GS}/cflow/manual/cflow.html
cflow node ${GS}/cflow/manual/html_node/
chess mono ${GS}/chess/manual/gnuchess.html
chess node ${GS}/chess/manual/html_node/
combine mono ${GS}/combine/manual/combine.html
combine chapter ${GS}/combine/manual/html_chapter/
combine section ${GS}/combine/manual/html_section/
combine node ${GS}/combine/manual/html_node/
complexity mono ${GS}/complexity/manual/complexity.html
complexity node ${GS}/complexity/manual/html_node/
coreutils mono ${GS}/coreutils/manual/coreutils
coreutils node ${GS}/coreutils/manual/html_node/
cpio mono ${GS}/cpio/manual/cpio
cpio node ${GS}/cpio/manual/html_node/
cssc node ${GS}/cssc/manual/
#cvs cannot be handled here; see http://ximbiot.com/cvs/manual.
ddd mono ${GS}/ddd/manual/html_mono/ddd.html
ddrescue mono ${GS}/ddrescue/manual/ddrescue_manual.html
DICO = http://puszcza.gnu.org.ua/software/dico/manual
dico mono ${DICO}/dico.html
dico chapter ${DICO}/html_chapter/
dico section ${DICO}/html_section/
dico node ${DICO}/html_node/
diffutils mono ${GS}/diffutils/manual/diffutils
diffutils node ${GS}/diffutils/manual/html_node/
ed mono ${GS}/ed/manual/ed_manual.html
EMACS = ${GS}/emacs/manual
emacs mono ${EMACS}/html_mono/emacs.html
emacs node ${EMACS}/html_node/emacs/
#
ada-mode mono ${EMACS}/html_mono/ada-mode.html
ada-mode node ${EMACS}/html_node/ada-mode/
#
autotype mono ${EMACS}/html_mono/autotype.html
autotype node ${EMACS}/html_node/autotype/
#
ccmode mono ${EMACS}/html_mono/ccmode.html
ccmode node ${EMACS}/html_node/ccmode/
#
cl mono ${EMACS}/html_mono/cl.html
cl node ${EMACS}/html_node/cl/
#
ebrowse mono ${EMACS}/html_mono/ebrowse.html
ebrowse node ${EMACS}/html_node/ebrowse/
#
ediff mono ${EMACS}/html_mono/ediff.html
ediff node ${EMACS}/html_node/ediff/
#
eieio mono ${EMACS}/html_mono/eieio.html
eieio node ${EMACS}/html_node/eieio/
#
elisp mono ${EMACS}/html_mono/elisp.html
elisp node ${EMACS}/html_node/elisp/
#
epa mono ${EMACS}/html_mono/epa.html
epa node ${EMACS}/html_node/epa/
#
erc mono ${EMACS}/html_mono/erc.html
erc node ${EMACS}/html_node/erc/
#
dired-x mono ${EMACS}/html_mono/dired-x.html
dired-x node ${EMACS}/html_node/dired-x/
#
eshell mono ${EMACS}/html_mono/eshell.html
eshell node ${EMACS}/html_node/eshell/
#
flymake mono ${EMACS}/html_mono/flymake.html
flymake node ${EMACS}/html_node/flymake/
#
gnus mono ${EMACS}/html_mono/gnus.html
gnus node ${EMACS}/html_node/gnus/
#
idlwave mono ${EMACS}/html_mono/idlwave.html
idlwave node ${EMACS}/html_node/idlwave/
#
message mono ${EMACS}/html_mono/message.html
message node ${EMACS}/html_node/message/
#
mh-e mono ${EMACS}/html_mono/mh-e.html
mh-e node ${EMACS}/html_node/mh-e/
#
nxml-mode mono ${EMACS}/html_mono/nxml-mode.html
nxml-mode node ${EMACS}/html_node/nxml-mode/
#
org mono ${EMACS}/html_mono/org.html
org node ${EMACS}/html_node/org/
#
pcl-cvs mono ${EMACS}/html_mono/pcl-cvs.html
pcl-cvs node ${EMACS}/html_node/pcl-cvs/
#
rcirc mono ${EMACS}/html_mono/rcirc.html
rcirc node ${EMACS}/html_node/rcirc/
#
semantic mono ${EMACS}/html_mono/semantic.html
semantic node ${EMACS}/html_node/semantic/
#
smtp mono ${EMACS}/html_mono/smtpmail.html
smtp node ${EMACS}/html_node/smtpmail/
#
speedbar mono ${EMACS}/html_mono/speedbar.html
speedbar node ${EMACS}/html_node/speedbar/
#
tramp mono ${EMACS}/html_mono/tramp.html
tramp node ${EMACS}/html_node/tramp/
#
vip mono ${EMACS}/html_mono/vip.html
vip node ${EMACS}/html_node/vip/
#
viper mono ${EMACS}/html_mono/viper.html
viper node ${EMACS}/html_node/viper/
#
woman mono ${EMACS}/html_mono/woman.html
woman node ${EMACS}/html_node/woman/
# (end emacs manuals)
easejs mono ${GS}/easejs/manual/easejs.html
easejs node ${GS}/easejs/manual/
emacs-muse node ${GS}/emacs-muse/manual/muse.html
emacs-muse node ${GS}/emacs-muse/manual/html_node/
emms node ${GS}/emms/manual/
findutils mono ${GS}/findutils/manual/html_mono/find.html
findutils node ${GS}/findutils/manual/html_node/find_html
FLEX = http://flex.sourceforge.net
flex node ${FLEX}/manual/
gama mono ${GS}/gama/manual/gama.html
gama node ${GS}/gama/manual/html_node/
GAWK = ${GS}/gawk/manual
gawk mono ${GAWK}/gawk.html
gawk node ${GAWK}/html_node/
gawkinet mono ${GAWK}/gawkinet/gawkinet.html
gawkinet node ${GAWK}/gawkinet/html_node/
gcal mono ${GS}/gcal/manual/gcal.html
gcal node ${GS}/gcal/manual/html_node/
GCC = http://gcc.gnu.org/onlinedocs
gcc node ${GCC}/gcc/
cpp node ${GCC}/cpp/
gcj node ${GCC}/gcj/
gfortran node ${GCC}/gfortran/
gnat_rm node ${GCC}/gnat_rm/
gnat_ugn_unw node ${GCC}/gnat_ugn_unw/
libgomp node ${GCC}/libgomp/
libstdc++ node ${GCC}/libstdc++/
#
gccint node ${GCC}/gccint/
cppinternals node ${GCC}/cppinternals/
gfc-internals node ${GCC}/gfc-internals/
gnat-style node ${GCC}/gnat-style/
libiberty node ${GCC}/libiberty/
GDB = http://sourceware.org/gdb/current/onlinedocs
gdb node ${GDB}/gdb/
stabs node ${GDB}/stabs/
GDBM = http://www.gnu.org.ua/software/gdbm/manual
gdbm mono ${GDBM}/gdbm.html
gdbm chapter ${GDBM}/html_chapter/
gdbm section ${GDBM}/html_section/
gdbm node ${GDBM}/html_node/
gettext mono ${GS}/gettext/manual/gettext.html
gettext node ${GS}/gettext/manual/html_node/
gforth node http://www.complang.tuwien.ac.at/forth/gforth/Docs-html/
global mono ${GS}/global/manual/global.html
gmediaserver node ${GS}/gmediaserver/manual/
gmp node http://www.gmplib.org/manual/
gnu-arch node ${GS}/gnu-arch/tutorial/
gnu-c-manual mono ${GS}/gnu-c-manual/gnu-c-manual.html
gnu-crypto node ${GS}/gnu-crypto/manual/
gnubg mono ${GS}/gnubg/manual/gnubg.html
gnubg node ${GS}/gnubg/manual/html_node/
gnubik mono ${GS}/gnubik/manual/gnubik.html
gnubik node ${GS}/gnubik/manual/html_node/
gnulib mono ${GS}/gnulib/manual/gnulib.html
gnulib node ${GS}/gnulib/manual/html_node/
GNUN = ${GS}/trans-coord/manual
gnun mono ${GNUN}/gnun/gnun.html
gnun node ${GNUN}/gnun/html_node/
web-trans mono ${GNUN}/web-trans/web-trans.html
web-trans node ${GNUN}/web-trans/html_node/
GNUPG = http://www.gnupg.org/documentation/manuals
gnupg node ${GNUPG}/gnupg/
dirmngr node ${GNUPG}/dirmngr/
gcrypt node ${GNUPG}/gcrypt/
libgcrypt node ${GNUPG}/gcrypt/
ksba node ${GNUPG}/ksba/
assuan node ${GNUPG}/assuan/
gpgme node ${GNUPG}/gpgme/
gnuprologjava node ${GS}/gnuprologjava/manual/
gnuschool mono ${GS}/gnuschool/gnuschool.html
GNUSTANDARDS = ${G}/prep
maintain mono ${GNUSTANDARDS}/maintain/maintain.html
maintain node ${GNUSTANDARDS}/maintain/html_node/
#
standards mono ${GNUSTANDARDS}/standards/standards.html
standards node ${GNUSTANDARDS}/standards/html_node/
gnutls mono http://gnutls.org/manual/gnutls.html
gnutls node http://gnutls.org/manual/html_node/
gnutls-guile mono http://gnutls.org/manual/gnutls-guile.html
gnutls-guile node http://gnutls.org/manual/gnutls-guile/index.html
gperf mono ${GS}/gperf/manual/gperf.html
gperf node ${GS}/gperf/manual/html_node/
grep mono ${GS}/grep/manual/grep.html
grep node ${GS}/grep/manual/html_node/
groff node ${GS}/groff/manual/html_node/
GRUB = ${GS}/grub/manual
grub mono ${GRUB}/grub.html
grub node ${GRUB}/html_node/
#
multiboot mono ${GRUB}/multiboot/multiboot.html
multiboot node ${GRUB}/multiboot/html_node/
gsasl mono ${GS}/gsasl/manual/gsasl.html
gsasl node ${GS}/gsasl/manual/html_node/
gsl node ${GS}/gsl/manual/html_node/
gsrc mono ${GS}/gsrc/manual/gsrc.html
gsrc node ${GS}/gsrc/manual/html_node/
gss mono ${GS}/gss/manual/gss.html
gss node ${GS}/gss/manual/html_node/
gtypist mono ${GS}/gtypist/doc/
guile mono ${GS}/guile/manual/guile.html
guile node ${GS}/guile/manual/html_node/
guile-avahi mono http://nongnu.org/guile-avahi/doc/guile-avahi.html
GUILE_GNOME = ${GS}/guile-gnome/docs
gobject node ${GUILE_GNOME}/gobject/html/
glib node ${GUILE_GNOME}/glib/html/
atk node ${GUILE_GNOME}/atk/html/
pango node ${GUILE_GNOME}/pango/html/
pangocairo node ${GUILE_GNOME}/pangocairo/html/
gdk node ${GUILE_GNOME}/gdk/html/
gtk node ${GUILE_GNOME}/gtk/html/
libglade node ${GUILE_GNOME}/libglade/html/
gnome-vfs node ${GUILE_GNOME}/gnome-vfs/html/
libgnomecanvas node ${GUILE_GNOME}/libgnomecanvas/html/
gconf node ${GUILE_GNOME}/gconf/html/
libgnome node ${GUILE_GNOME}/libgnome/html/
libgnomeui node ${GUILE_GNOME}/libgnomeui/html/
corba node ${GUILE_GNOME}/corba/html/
clutter node ${GUILE_GNOME}/clutter/html/
clutter-glx node ${GUILE_GNOME}/clutter-glx/html/
guile-gtk node ${GS}/guile-gtk/docs/guile-gtk/
guile-rpc mono ${GS}/guile-rpc/manual/guile-rpc.html
guile-rpc node ${GS}/guile-rpc/manual/html_node/
guix mono ${GS}/guix/manual/guix.html
guix node ${GS}/guix/manual/html_node/
gv mono ${GS}/gv/manual/gv.html
gv node ${GS}/gv/manual/html_node/
gzip mono ${GS}/gzip/manual/gzip.html
gzip node ${GS}/gzip/manual/html_node/
hello mono ${GS}/hello/manual/hello.html
hello node ${GS}/hello/manual/html_node/
help2man mono ${GS}/help2man/help2man.html
idutils mono ${GS}/idutils/manual/idutils.html
idutils node ${GS}/idutils/manual/html_node/
inetutils mono ${GS}/inetutils/manual/inetutils.html
inetutils node ${GS}/inetutils/manual/html_node/
jwhois mono ${GS}/jwhois/manual/jwhois.html
jwhois node ${GS}/jwhois/manual/html_node/
libc mono ${GS}/libc/manual/html_mono/libc.html
libc node ${GS}/libc/manual/html_node/
LIBCDIO = ${GS}/libcdio
libcdio mono ${LIBCDIO}/libcdio.html
cd-text mono ${LIBCDIO}/cd-text-format.html
libextractor mono ${GS}/libextractor/manual/libextractor.html
libextractor node ${GS}/libextractor/manual/html_node/
libidn mono ${GS}/libidn/manual/libidn.html
libidn node ${GS}/libidn/manual/html_node/
librejs mono ${GS}/librejs/manual/librejs.html
librejs node ${GS}/librejs/manual/html_node/
libmatheval mono ${GS}/libmatheval/manual/libmatheval.html
LIBMICROHTTPD = ${GS}/libmicrohttpd
libmicrohttpd mono ${LIBMICROHTTPD}/manual/libmicrohttpd.html
libmicrohttpd node ${LIBMICROHTTPD}/manual/html_node/
microhttpd-tutorial mono ${LIBMICROHTTPD}/tutorial.html
libtasn1 mono ${GS}/libtasn1/manual/libtasn1.html
libtasn1 node ${GS}/libtasn1/manual/html_node/
libtool mono ${GS}/libtool/manual/libtool.html
libtool node ${GS}/libtool/manual/html_node/
lightning mono ${GS}/lightning/manual/lightning.html
lightning node ${GS}/lightning/manual/html_node/
# The stable/ url redirects immediately, but that's ok.
# The .html extension is omitted on their web site, but it works if given.
LILYPOND = http://lilypond.org/doc/stable/Documentation
lilypond-internals node ${LILYPOND}/internals/
lilypond-learning node ${LILYPOND}/learning/
lilypond-notation node ${LILYPOND}/notation/
lilypond-snippets node ${LILYPOND}/snippets/
lilypond-usage node ${LILYPOND}/usage/
lilypond-web node ${LILYPOND}/web/
music-glossary node ${LILYPOND}/music-glossary/
liquidwar6 mono ${GS}/liquidwar6/manual/liquidwar6.html
liquidwar6 node ${GS}/liquidwar6/manual/html_node/
lispintro mono ${GS}/emacs/emacs-lisp-intro/html_mono/emacs-lisp-intro.html
lispintro node ${GS}/emacs/emacs-lisp-intro/html_node/index.html
LSH = http://www.lysator.liu.se/~nisse/lsh
lsh mono ${LSH}/lsh.html
m4 mono ${GS}/m4/manual/m4.html
m4 node ${GS}/m4/manual/html_node/
mailutils mono ${GS}/mailutils/manual/mailutils.html
mailutils chapter ${GS}/mailutils/manual/html_chapter/
mailutils section ${GS}/mailutils/manual/html_section/
mailutils node ${GS}/mailutils/manual/html_node/
make mono ${GS}/make/manual/make.html
make node ${GS}/make/manual/html_node/
mdk mono ${GS}/mdk/manual/mdk.html
mdk node ${GS}/mdk/manual/html_node/
METAEXCHANGE = http://ftp.gwdg.de/pub/gnu2/iwfmdh/doc/texinfo
iwf_mh node ${METAEXCHANGE}/iwf_mh.html
scantest node ${METAEXCHANGE}/scantest.html
MIT_SCHEME = ${GS}/mit-scheme/documentation
mit-scheme-ref node ${MIT_SCHEME}/mit-scheme-ref/
mit-scheme-user node ${MIT_SCHEME}/mit-scheme-user/
sos node ${MIT_SCHEME}/mit-scheme-sos/
mit-scheme-imail node ${MIT_SCHEME}/mit-scheme-imail/
moe mono ${GS}/moe/manual/moe_manual.html
motti node ${GS}/motti/manual/
mpc node http://www.multiprecision.org/index.php?prog=mpc&page=html
mpfr mono http://www.mpfr.org/mpfr-current/mpfr.html
mtools mono ${GS}/mtools/manual/mtools.html
myserver node http://www.myserverproject.net/documentation/
nano mono http://www.nano-editor.org/dist/latest/nano.html
nettle chapter http://www.lysator.liu.se/~nisse/nettle/nettle.html
ocrad mono ${GS}/ocrad/manual/ocrad_manual.html
parted mono ${GS}/parted/manual/parted.html
parted node ${GS}/parted/manual/html_node/
pascal mono http://www.gnu-pascal.de/gpc/
# can't use pcb since url's contain dates --30nov10
perl mono ${GS}/perl/manual/perldoc-all.html
PIES = http://www.gnu.org.ua/software/pies/manual
pies mono ${PIES}/pies.html
pies chapter ${PIES}/html_chapter/
pies section ${PIES}/html_section/
pies node ${PIES}/html_node/
plotutils mono ${GS}/plotutils/manual/en/plotutils.html
plotutils node ${GS}/plotutils/manual/en/html_node/
proxyknife mono ${GS}/proxyknife/manual/proxyknife.html
proxyknife node ${GS}/proxyknife/manual/html_node/
pspp mono ${GS}/pspp/manual/pspp.html
pspp node ${GS}/pspp/manual/html_node/
pyconfigure mono ${GS}/pyconfigure/manual/pyconfigure.html
pyconfigure node ${GS}/pyconfigure/manual/html_node/
R = http://cran.r-project.org/doc/manuals
R-intro mono ${R}/R-intro.html
R-lang mono ${R}/R-lang.html
R-exts mono ${R}/R-exts.html
R-data mono ${R}/R-data.html
R-admin mono ${R}/R-admin.html
R-ints mono ${R}/R-ints.html
rcs mono ${GS}/rcs/manual/rcs.html
rcs node ${GS}/rcs/manual/html_node/
READLINE = http://cnswww.cns.cwru.edu/php/chet/readline
readline mono ${READLINE}/readline.html
rluserman mono ${READLINE}/rluserman.html
history mono ${READLINE}/history.html
recode mono http://recode.progiciels-bpi.ca/manual/index.html
recutils mono ${GS}/recutils/manual/recutils.html
recutils node ${GS}/recutils/manual/html_node/
reftex mono ${GS}/auctex/manual/reftex.html
reftex node ${GS}/auctex/manual/reftex/
remotecontrol mono ${GS}/remotecontrol/manual/remotecontrol.html
remotecontrol node ${GS}/remotecontrol/manual/html_node/
rottlog mono ${GS}/rottlog/manual/rottlog.html
rottlog node ${GS}/rottlog/manual/html_node/
RUSH = http://www.gnu.org.ua/software/rush/manual
rush mono ${RUSH}/rush.html
rush chapter ${RUSH}/html_chapter/
rush section ${RUSH}/html_section/
rush node ${RUSH}/html_node/
screen mono ${GS}/screen/manual/screen.html
screen node ${GS}/screen/manual/html_node/
sed mono ${GS}/sed/manual/sed.html
sed node ${GS}/sed/manual/html_node/
sharutils mono ${GS}/sharutils/manual/html_mono/sharutils.html
sharutils chapter ${GS}/sharutils/manual/html_chapter/
sharutils node ${GS}/sharutils/manual/html_node/
shepherd mono ${GS}/shepherd/manual/shepherd.html
shepherd node ${GS}/shepherd/manual/html_node/
# can't use mono files since they have generic names
SMALLTALK = ${GS}/smalltalk
smalltalk node ${SMALLTALK}/manual/html_node/
smalltalk-base node ${SMALLTALK}/manual-base/html_node/
smalltalk-libs node ${SMALLTALK}/manual-libs/html_node/
sourceinstall mono ${GS}/sourceinstall/manual/sourceinstall.html
sourceinstall node ${GS}/sourceinstall/manual/html_node/
sqltutor mono ${GS}/sqltutor/manual/sqltutor.html
sqltutor node ${GS}/sqltutor/manual/html_node/
src-highlite mono ${GS}/src-highlite/source-highlight.html
swbis mono ${GS}/swbis/manual.html
tar mono ${GS}/tar/manual/tar.html
tar chapter ${GS}/tar/manual/html_chapter/
tar section ${GS}/tar/manual/html_section/
tar node ${GS}/autoconf/manual/html_node/
teseq mono ${GS}/teseq/teseq.html
teseq node ${GS}/teseq/html_node/
TEXINFO = ${GS}/texinfo/manual
texinfo mono ${TEXINFO}/texinfo/texinfo.html
texinfo node ${TEXINFO}/texinfo/html_node/
#
info mono ${TEXINFO}/info/info.html
info node ${TEXINFO}/info/html_node/
#
info-stnd mono ${TEXINFO}/info-stnd/info-stnd.html
info-stnd node ${TEXINFO}/info-stnd/html_node/
thales node ${GS}/thales/manual/
units mono ${GS}/units/manual/units.html
units node ${GS}/units/manual/html_node/
vc-dwim mono ${GS}/vc-dwim/manual/vc-dwim.html
vc-dwim node ${GS}/vc-dwim/manual/html_node/
wdiff mono ${GS}/wdiff/manual/wdiff.html
wdiff node ${GS}/wdiff/manual/html_node/
websocket4j mono ${GS}/websocket4j/manual/websocket4j.html
websocket4j node ${GS}/websocket4j/manual/html_node/
wget mono ${GS}/wget/manual/wget.html
wget node ${GS}/wget/manual/html_node/
xboard mono ${GS}/xboard/manual/xboard.html
xboard node ${GS}/xboard/manual/html_node/
# emacs-page
# Free TeX-related Texinfo manuals on tug.org.
T = http://tug.org/texinfohtml
dvipng mono ${T}/dvipng.html
dvips mono ${T}/dvips.html
eplain mono ${T}/eplain.html
kpathsea mono ${T}/kpathsea.html
latex2e mono ${T}/latex2e.html
tlbuild mono ${T}/tlbuild.html
web2c mono ${T}/web2c.html
# Local Variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "htmlxrefversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC"
# time-stamp-end: "; # UTC"
# End:
+105
View File
@@ -0,0 +1,105 @@
digraph "Guix bag" {
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" [label = "glibc-intermediate-2.22", shape = box, fontname = Helvetica];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/rkm2xr9581hfvcimz6a8xav2s5vfjciv-glibc-intermediate-2.22.drv" -> "/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" [label = "texinfo-6.0", shape = box, fontname = Helvetica];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/r5bbwfhkj6c65mlfki4vgb0xczm3qmlg-texinfo-6.0.drv" -> "/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" [color = red];
"/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [label = "make-boot0-4.1", shape = box, fontname = Helvetica];
"/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [label = "glibc-bootstrap-0", shape = box, fontname = Helvetica];
"/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [label = "gcc-bootstrap-0", shape = box, fontname = Helvetica];
"/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [label = "binutils-bootstrap-0", shape = box, fontname = Helvetica];
"/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [label = "bootstrap-binaries-0", shape = box, fontname = Helvetica];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [label = "diffutils-boot0-3.3", shape = box, fontname = Helvetica];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [label = "findutils-boot0-4.6.0", shape = box, fontname = Helvetica];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [label = "file-boot0-5.25", shape = box, fontname = Helvetica];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" [label = "perl-boot0-5.22.0", shape = box, fontname = Helvetica];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" [label = "gcc-cross-boot0-4.9.3", shape = box, fontname = Helvetica];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/fxzy6h3c9ls97lw9wgv9m5w2ga7mw0kk-gcc-cross-boot0-4.9.3.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" [label = "binutils-cross-boot0-2.25.1", shape = box, fontname = Helvetica];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/bhv3jml5s1llmsswnw3wvw57dj44lgjc-binutils-cross-boot0-2.25.1.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" [label = "linux-libre-headers-3.14.37", shape = box, fontname = Helvetica];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/w88h2mp610hy4i8758bhq6nrjlilzsym-perl-boot0-5.22.0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/yzr9lpl44ixp4k2g7r6sh4fhsx2qx9vd-make-boot0-4.1.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/hwk4rrydk5amqw5xws5p34gi77j0m7m2-diffutils-boot0-3.3.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/xf07iqpsiygw2z8rvwdf19zjdlhrl03q-findutils-boot0-4.6.0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/b33cj0h9ii7lnk233sy5q4hlz36cx5x3-file-boot0-5.25.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/dmj22s341y334xwwkimrz4d3d0a4mzdp-glibc-bootstrap-0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/wp4gm50d3jyzxr9pj5b43j05ildh4mfq-gcc-bootstrap-0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/sd2k1ljlzpkp3n5rk5y3dp2l73h3qkpp-binutils-bootstrap-0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
"/gnu/store/2m0i57ad07cmgxh3ij89d4lmf7lngpdz-linux-libre-headers-3.14.37.drv" -> "/gnu/store/xyzv7w42bxs5zhs6b5a9s7gbiq571psm-bootstrap-binaries-0.drv" [color = red];
}
+7 -7
View File
@@ -1,5 +1,5 @@
digraph "Service Type Dependencies" {
dmd [shape = box, fontname = Helvetica];
shepherd [shape = box, fontname = Helvetica];
pam [shape = box, fontname = Helvetica];
etc [shape = box, fontname = Helvetica];
profile [shape = box, fontname = Helvetica];
@@ -7,14 +7,14 @@ digraph "Service Type Dependencies" {
activation [shape = box, fontname = Helvetica];
boot [shape = box, fontname = Helvetica];
system [shape = house, fontname = Helvetica];
lshd -> dmd;
lshd -> shepherd;
lshd -> pam;
udev -> dmd;
nscd -> dmd [label = "extends"];
udev -> shepherd;
nscd -> shepherd [label = "extends"];
"nss-mdns" -> nscd;
"kvm-rules" -> udev;
colord -> udev;
dbus -> dmd;
dbus -> shepherd;
colord -> dbus;
upower -> udev;
upower -> dbus;
@@ -23,7 +23,7 @@ digraph "Service Type Dependencies" {
elogind -> dbus;
elogind -> udev;
elogind -> polkit [label = "extends"];
dmd -> boot;
shepherd -> boot;
colord -> accounts;
accounts -> activation;
accounts -> etc;
@@ -31,7 +31,7 @@ digraph "Service Type Dependencies" {
activation -> boot;
pam -> etc;
elogind -> pam;
guix -> dmd;
guix -> shepherd;
guix -> activation;
guix -> accounts;
boot -> system;
@@ -1,4 +1,4 @@
digraph "Guix dmd-service" {
digraph "Guix shepherd-service" {
"user-file-systems" [label = "user-file-systems", shape = box, fontname = Helvetica];
"user-processes" -> "user-file-systems" [color = red];
"user-processes" [label = "user-processes", shape = box, fontname = Helvetica];
+21 -9
View File
@@ -1,5 +1,6 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
# Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
#
# This file is part of GNU Guix.
#
@@ -22,16 +23,22 @@ ELFILES = \
emacs/guix-backend.el \
emacs/guix-base.el \
emacs/guix-build-log.el \
emacs/guix-buffer.el \
emacs/guix-command.el \
emacs/guix-devel.el \
emacs/guix-emacs.el \
emacs/guix-entry.el \
emacs/guix-external.el \
emacs/guix-geiser.el \
emacs/guix-guile.el \
emacs/guix-help-vars.el \
emacs/guix-history.el \
emacs/guix-hydra.el \
emacs/guix-hydra-build.el \
emacs/guix-hydra-jobset.el \
emacs/guix-info.el \
emacs/guix-init.el \
emacs/guix-license.el \
emacs/guix-list.el \
emacs/guix-messages.el \
emacs/guix-pcomplete.el \
@@ -39,23 +46,28 @@ ELFILES = \
emacs/guix-prettify.el \
emacs/guix-profiles.el \
emacs/guix-read.el \
emacs/guix-utils.el \
emacs/guix.el
emacs/guix-ui.el \
emacs/guix-ui-package.el \
emacs/guix-ui-generation.el \
emacs/guix-ui-system-generation.el \
emacs/guix-utils.el
if HAVE_EMACS
dist_lisp_DATA = \
$(ELFILES) \
dist_lisp_DATA = $(ELFILES)
nodist_lisp_DATA = \
emacs/guix-config.el \
$(AUTOLOADS)
nodist_lisp_DATA = emacs/guix-config.el
$(AUTOLOADS): $(ELFILES)
$(EMACS) --batch --eval \
$(AM_V_EMACS)$(EMACS) --batch --eval \
"(let ((backup-inhibited t) \
(generated-autoload-file \
(expand-file-name \"$(AUTOLOADS)\" \"$(srcdir)\"))) \
(expand-file-name \"$(AUTOLOADS)\" \"$(builddir)\"))) \
(update-directory-autoloads \
(expand-file-name \"emacs\" \"$(srcdir)\")))"
CLEANFILES += $(AUTOLOADS)
endif HAVE_EMACS
+63 -30
View File
@@ -1,6 +1,6 @@
;;; guix-backend.el --- Making and using Guix REPL
;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
@@ -36,18 +36,13 @@
;; running code in the REPL (see
;; <https://github.com/jaor/geiser/issues/28>).
;;
;; If you need to use "guix.el" in another Emacs (i.e. when there is
;; a runnig "guile --listen..." REPL somewhere), you can either change
;; `guix-default-port' in that Emacs instance or set
;; `guix-use-guile-server' to t.
;;
;; Guix REPLs (unlike the usual Geiser REPLs) are not added to
;; `geiser-repl--repls' variable, and thus cannot be used for evaluating
;; while editing scm-files. The only purpose of Guix REPLs is to be an
;; intermediate between "Guix/Guile level" and "Emacs interface level".
;; That being said you can still want to use a Guix REPL while hacking
;; auxiliary scheme-files for "guix.el". You can just use "M-x
;; connect-to-guile" (connect to "localhost" and `guix-default-port') to
;; auxiliary scheme-files for "guix.el". You can just use
;; `geiser-connect-local' command with `guix-repl-current-socket' to
;; have a usual Geiser REPL with all stuff defined by "guix.el" package.
;;; Code:
@@ -58,6 +53,7 @@
(require 'guix-config)
(require 'guix-external)
(require 'guix-emacs)
(require 'guix-profiles)
(defvar guix-load-path guix-config-emacs-interface-directory
"Directory with scheme files for \"guix.el\" package.")
@@ -98,11 +94,24 @@ REPL while some packages are being installed/removed in the main REPL."
:type 'boolean
:group 'guix-repl)
(defcustom guix-default-port 37246
"Default port used if `guix-use-guile-server' is non-nil."
:type 'integer
(defcustom guix-repl-socket-file-name-function
#'guix-repl-socket-file-name
"Function used to define a socket file name used by Guix REPL.
The function is called without arguments."
:type '(choice (function-item guix-repl-socket-file-name)
(function :tag "Other function"))
:group 'guix-repl)
(defcustom guix-emacs-activate-after-operation t
"Activate Emacs packages after installing.
If nil, do not load autoloads of the Emacs packages after
they are successfully installed."
:type 'boolean
:group 'guix-repl)
(defvar guix-repl-current-socket nil
"Name of a socket file used by the current Guix REPL.")
(defvar guix-repl-buffer nil
"Main Geiser REPL buffer used for communicating with Guix.
This REPL is used for processing package actions and for
@@ -120,7 +129,7 @@ This REPL is used for receiving information only if
"Hook run before executing an operation in Guix REPL.")
(defvar guix-after-repl-operation-hook
'(guix-emacs-load-autoloads-maybe
'(guix-repl-autoload-emacs-packages-maybe
guix-repl-operation-success-message)
"Hook run after executing successful operation in Guix REPL.")
@@ -135,21 +144,43 @@ This internal variable is used to define what actions should be
executed after the current operation succeeds.
See `guix-eval-in-repl' for details.")
(defun guix-repl-autoload-emacs-packages-maybe ()
"Load autoloads for Emacs packages if needed.
See `guix-emacs-activate-after-operation' for details."
(and guix-emacs-activate-after-operation
;; FIXME Since a user can work with a non-current profile (using
;; C-u before `guix-search-by-name' and other commands), emacs
;; packages can be installed to another profile, and the
;; following code will not work (i.e., the autoloads for this
;; profile will not be loaded).
(guix-emacs-autoload-packages guix-current-profile)))
(defun guix-repl-operation-success-message ()
"Message telling about successful Guix operation."
(message "Guix operation has been performed."))
(defun guix-get-guile-program (&optional internal)
(defun guix-get-guile-program (&optional socket)
"Return a value suitable for `geiser-guile-binary'."
(if (or internal
(not guix-use-guile-server))
(if (null socket)
guix-guile-program
(append (if (listp guix-guile-program)
guix-guile-program
(list guix-guile-program))
;; Guile understands "--listen=..." but not "--listen ..."
(list (concat "--listen="
(number-to-string guix-default-port))))))
(list (concat "--listen=" socket)))))
(defun guix-repl-socket-file-name ()
"Return a name of a socket file used by Guix REPL."
(make-temp-name
(concat (file-name-as-directory temporary-file-directory)
"guix-repl-")))
(defun guix-repl-delete-socket-maybe ()
"Delete `guix-repl-current-socket' file if it exists."
(and guix-repl-current-socket
(file-exists-p guix-repl-current-socket)
(delete-file guix-repl-current-socket)))
(add-hook 'kill-emacs-hook 'guix-repl-delete-socket-maybe)
(defun guix-start-process-maybe (&optional start-msg end-msg)
"Start Geiser REPL configured for Guix if needed.
@@ -176,19 +207,21 @@ display messages."
(get-buffer-process repl))
(and start-msg (message start-msg))
(setq guix-repl-operation-p nil)
(let ((geiser-guile-binary (guix-get-guile-program internal))
(geiser-guile-init-file (or internal guix-helper-file))
(unless internal
;; Guile leaves socket file after exit, so remove it if it
;; exists (after the REPL restart).
(guix-repl-delete-socket-maybe)
(setq guix-repl-current-socket
(and guix-use-guile-server
(or guix-repl-current-socket
(funcall guix-repl-socket-file-name-function)))))
(let ((geiser-guile-binary (guix-get-guile-program
(unless internal
guix-repl-current-socket)))
(geiser-guile-init-file (unless internal guix-helper-file))
(repl (get-buffer-create
(guix-get-repl-buffer-name internal))))
(condition-case err
(guix-start-repl repl
(and internal
(geiser-repl--read-address
"localhost" guix-default-port)))
(text-read-only
(error (concat "Couldn't start Guix REPL. Perhaps the port %s is busy.\n"
"See buffer '%s' for details")
guix-default-port (buffer-name repl))))
(guix-start-repl repl (and internal guix-repl-current-socket))
(set repl-var repl)
(and end-msg (message end-msg))
(unless internal
@@ -202,7 +235,7 @@ this address (it should be defined by
;; A mix of the code from `geiser-repl--start-repl' and
;; `geiser-repl--to-repl-buffer'.
(let ((impl 'guile)
(geiser-guile-load-path (cons guix-load-path
(geiser-guile-load-path (cons (expand-file-name guix-load-path)
geiser-guile-load-path))
(geiser-repl-startup-time guix-repl-startup-time))
(with-current-buffer buffer
+71 -851
View File
File diff suppressed because it is too large Load Diff
+624
View File
@@ -0,0 +1,624 @@
;;; guix-buffer.el --- Buffer interface for displaying data -*- lexical-binding: t -*-
;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides a general 'buffer' interface for displaying an
;; arbitrary data.
;;; Code:
(require 'cl-lib)
(require 'guix-history)
(require 'guix-utils)
(defvar guix-buffer-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "l") 'guix-history-back)
(define-key map (kbd "r") 'guix-history-forward)
(define-key map (kbd "g") 'revert-buffer)
(define-key map (kbd "R") 'guix-buffer-redisplay)
map)
"Parent keymap for Guix buffer modes.")
;;; Buffer item
(cl-defstruct (guix-buffer-item
(:constructor nil)
(:constructor guix-buffer-make-item
(entries buffer-type entry-type args))
(:copier nil))
entries buffer-type entry-type args)
(defvar-local guix-buffer-item nil
"Data (structure) for the current Guix buffer.
The structure consists of the following elements:
- `entries': list of the currently displayed entries.
Each element of the list is an alist with an entry data of the
following form:
((PARAM . VAL) ...)
PARAM is a name of the entry parameter.
VAL is a value of this parameter.
- `entry-type': type of the currently displayed entries.
- `buffer-type': type of the current buffer.
- `args': search arguments used to get the current entries.")
(put 'guix-buffer-item 'permanent-local t)
(defmacro guix-buffer-with-item (item &rest body)
"Evaluate BODY using buffer ITEM.
The following local variables are available inside BODY:
`%entries', `%buffer-type', `%entry-type', `%args'.
See `guix-buffer-item' for details."
(declare (indent 1) (debug t))
(let ((item-var (make-symbol "item")))
`(let ((,item-var ,item))
(let ((%entries (guix-buffer-item-entries ,item-var))
(%buffer-type (guix-buffer-item-buffer-type ,item-var))
(%entry-type (guix-buffer-item-entry-type ,item-var))
(%args (guix-buffer-item-args ,item-var)))
,@body))))
(defmacro guix-buffer-with-current-item (&rest body)
"Evaluate BODY using `guix-buffer-item'.
See `guix-buffer-with-item' for details."
(declare (indent 0) (debug t))
`(guix-buffer-with-item guix-buffer-item
,@body))
(defmacro guix-buffer-define-current-item-accessor (name)
"Define `guix-buffer-current-NAME' function to access NAME
element of `guix-buffer-item' structure.
NAME should be a symbol."
(let* ((name-str (symbol-name name))
(accessor (intern (concat "guix-buffer-item-" name-str)))
(fun-name (intern (concat "guix-buffer-current-" name-str)))
(doc (format "\
Return '%s' of the current Guix buffer.
See `guix-buffer-item' for details."
name-str)))
`(defun ,fun-name ()
,doc
(and guix-buffer-item
(,accessor guix-buffer-item)))))
(defmacro guix-buffer-define-current-item-accessors (&rest names)
"Define `guix-buffer-current-NAME' functions for NAMES.
See `guix-buffer-define-current-item-accessor' for details."
`(progn
,@(mapcar (lambda (name)
`(guix-buffer-define-current-item-accessor ,name))
names)))
(guix-buffer-define-current-item-accessors
entries entry-type buffer-type args)
(defmacro guix-buffer-define-current-args-accessor (n prefix name)
"Define `PREFIX-NAME' function to access Nth element of 'args'
field of `guix-buffer-item' structure.
PREFIX and NAME should be strings."
(let ((fun-name (intern (concat prefix "-" name)))
(doc (format "\
Return '%s' of the current Guix buffer.
'%s' is the element number %d in 'args' of `guix-buffer-item'."
name name n)))
`(defun ,fun-name ()
,doc
(nth ,n (guix-buffer-current-args)))))
(defmacro guix-buffer-define-current-args-accessors (prefix &rest names)
"Define `PREFIX-NAME' functions for NAMES.
See `guix-buffer-define-current-args-accessor' for details."
`(progn
,@(cl-loop for name in names
for i from 0
collect `(guix-buffer-define-current-args-accessor
,i ,prefix ,name))))
;;; Wrappers for defined variables
(defvar guix-buffer-data nil
"Alist with 'buffer' data.
This alist is filled by `guix-buffer-define-interface' macro.")
(defun guix-buffer-value (buffer-type entry-type symbol)
"Return SYMBOL's value for BUFFER-TYPE/ENTRY-TYPE from `guix-buffer-data'."
(symbol-value
(guix-assq-value guix-buffer-data buffer-type entry-type symbol)))
(defun guix-buffer-get-entries (buffer-type entry-type args)
"Return ENTRY-TYPE entries.
Call an appropriate 'get-entries' function from `guix-buffer'
using ARGS as its arguments."
(apply (guix-buffer-value buffer-type entry-type 'get-entries)
args))
(defun guix-buffer-mode-enable (buffer-type entry-type)
"Turn on major mode to display ENTRY-TYPE ENTRIES in BUFFER-TYPE buffer."
(funcall (guix-buffer-value buffer-type entry-type 'mode)))
(defun guix-buffer-mode-initialize (buffer-type entry-type)
"Set up the current BUFFER-TYPE buffer to display ENTRY-TYPE entries."
(let ((fun (guix-buffer-value buffer-type entry-type 'mode-init)))
(when fun
(funcall fun))))
(defun guix-buffer-insert-entries (entries buffer-type entry-type)
"Show ENTRY-TYPE ENTRIES in the current BUFFER-TYPE buffer."
(funcall (guix-buffer-value buffer-type entry-type 'insert-entries)
entries))
(defun guix-buffer-show-entries-default (entries buffer-type entry-type)
"Show ENTRY-TYPE ENTRIES in the current BUFFER-TYPE buffer."
(let ((inhibit-read-only t))
(erase-buffer)
(guix-buffer-mode-enable buffer-type entry-type)
(guix-buffer-insert-entries entries buffer-type entry-type)
(goto-char (point-min))))
(defun guix-buffer-show-entries (entries buffer-type entry-type)
"Show ENTRY-TYPE ENTRIES in the current BUFFER-TYPE buffer."
(funcall (guix-buffer-value buffer-type entry-type 'show-entries)
entries))
(defun guix-buffer-message (entries buffer-type entry-type args)
"Display a message for BUFFER-ITEM after showing entries."
(let ((fun (guix-buffer-value buffer-type entry-type 'message)))
(when fun
(apply fun entries args))))
(defun guix-buffer-name (buffer-type entry-type args)
"Return name of BUFFER-TYPE buffer for displaying ENTRY-TYPE entries."
(let ((str-or-fun (guix-buffer-value buffer-type entry-type
'buffer-name)))
(if (stringp str-or-fun)
str-or-fun
(apply str-or-fun args))))
(defun guix-buffer-param-title (buffer-type entry-type param)
"Return PARAM title for BUFFER-TYPE/ENTRY-TYPE."
(or (guix-assq-value (guix-buffer-value buffer-type entry-type 'titles)
param)
;; Fallback to a title defined in 'info' interface.
(unless (eq buffer-type 'info)
(guix-assq-value (guix-buffer-value 'info entry-type 'titles)
param))
(guix-symbol-title param)))
(defun guix-buffer-history-size (buffer-type entry-type)
"Return history size for BUFFER-TYPE/ENTRY-TYPE."
(guix-buffer-value buffer-type entry-type 'history-size))
(defun guix-buffer-revert-confirm? (buffer-type entry-type)
"Return 'revert-confirm' value for BUFFER-TYPE/ENTRY-TYPE."
(guix-buffer-value buffer-type entry-type 'revert-confirm))
;;; Displaying entries
(defun guix-buffer-display (buffer)
"Switch to a Guix BUFFER."
(pop-to-buffer buffer
'((display-buffer-reuse-window
display-buffer-same-window))))
(defun guix-buffer-history-item (buffer-item)
"Make and return a history item for displaying BUFFER-ITEM."
(list #'guix-buffer-set buffer-item))
(defun guix-buffer-set (buffer-item &optional history)
"Set up the current buffer for displaying BUFFER-ITEM.
HISTORY should be one of the following:
`nil' - do not save BUFFER-ITEM in history,
`add' - add it to history,
`replace' - replace the current history item."
(guix-buffer-with-item buffer-item
(when %entries
;; Set buffer item before showing entries, so that its value can
;; be used by the code for displaying entries.
(setq guix-buffer-item buffer-item)
(guix-buffer-show-entries %entries %buffer-type %entry-type)
(when history
(funcall (cl-ecase history
(add #'guix-history-add)
(replace #'guix-history-replace))
(guix-buffer-history-item buffer-item))))
(guix-buffer-message %entries %buffer-type %entry-type %args)))
(defun guix-buffer-display-entries-current
(entries buffer-type entry-type args &optional history)
"Show ENTRIES in the current Guix buffer.
See `guix-buffer-item' for the meaning of BUFFER-TYPE, ENTRY-TYPE
and ARGS, and `guix-buffer-set' for the meaning of HISTORY."
(let ((item (guix-buffer-make-item entries buffer-type
entry-type args)))
(guix-buffer-set item history)))
(defun guix-buffer-get-display-entries-current
(buffer-type entry-type args &optional history)
"Search for entries and show them in the current Guix buffer.
See `guix-buffer-display-entries-current' for details."
(guix-buffer-display-entries-current
(guix-buffer-get-entries buffer-type entry-type args)
buffer-type entry-type args history))
(defun guix-buffer-display-entries
(entries buffer-type entry-type args &optional history)
"Show ENTRIES in a BUFFER-TYPE buffer.
See `guix-buffer-display-entries-current' for details."
(let ((buffer (get-buffer-create
(guix-buffer-name buffer-type entry-type args))))
(with-current-buffer buffer
(guix-buffer-display-entries-current
entries buffer-type entry-type args history))
(when entries
(guix-buffer-display buffer))))
(defun guix-buffer-get-display-entries
(buffer-type entry-type args &optional history)
"Search for entries and show them in a BUFFER-TYPE buffer.
See `guix-buffer-display-entries-current' for details."
(guix-buffer-display-entries
(guix-buffer-get-entries buffer-type entry-type args)
buffer-type entry-type args history))
(defun guix-buffer-revert (_ignore-auto noconfirm)
"Update the data in the current Guix buffer.
This function is suitable for `revert-buffer-function'.
See `revert-buffer' for the meaning of NOCONFIRM."
(guix-buffer-with-current-item
(when (or noconfirm
(not (guix-buffer-revert-confirm? %buffer-type %entry-type))
(y-or-n-p "Update the current buffer? "))
(guix-buffer-get-display-entries-current
%buffer-type %entry-type %args 'replace))))
(defvar guix-buffer-after-redisplay-hook nil
"Hook run by `guix-buffer-redisplay'.
This hook is called before seting up a window position.")
(defun guix-buffer-redisplay ()
"Redisplay the current Guix buffer.
Restore the point and window positions after redisplaying.
This function does not update the buffer data, use
'\\[revert-buffer]' if you want the full update."
(interactive)
(let* ((old-point (point))
;; For simplicity, ignore an unlikely case when multiple
;; windows display the same buffer.
(window (car (get-buffer-window-list (current-buffer) nil t)))
(window-start (and window (window-start window))))
(guix-buffer-set guix-buffer-item)
(goto-char old-point)
(run-hooks 'guix-buffer-after-redisplay-hook)
(when window
(set-window-point window (point))
(set-window-start window window-start))))
(defun guix-buffer-redisplay-goto-button ()
"Redisplay the current buffer and go to the next button, if needed."
(let ((guix-buffer-after-redisplay-hook
(cons (lambda ()
(unless (button-at (point))
(forward-button 1)))
guix-buffer-after-redisplay-hook)))
(guix-buffer-redisplay)))
;;; Interface definers
(defmacro guix-define-groups (type &rest args)
"Define `guix-TYPE' and `guix-TYPE-faces' custom groups.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
Optional keywords:
- `:parent-group' - name of a parent custom group.
- `:parent-faces-group' - name of a parent custom faces group.
- `:group-doc' - docstring of a `guix-TYPE' group.
- `:faces-group-doc' - docstring of a `guix-TYPE-faces' group."
(declare (indent 1))
(let* ((type-str (symbol-name type))
(prefix (concat "guix-" type-str))
(group (intern prefix))
(faces-group (intern (concat prefix "-faces"))))
(guix-keyword-args-let args
((parent-group :parent-group 'guix)
(parent-faces-group :parent-faces-group 'guix-faces)
(group-doc :group-doc
(format "Settings for '%s' buffers."
type-str))
(faces-group-doc :faces-group-doc
(format "Faces for '%s' buffers."
type-str)))
`(progn
(defgroup ,group nil
,group-doc
:group ',parent-group)
(defgroup ,faces-group nil
,faces-group-doc
:group ',group
:group ',parent-faces-group)))))
(defmacro guix-define-entry-type (entry-type &rest args)
"Define general code for ENTRY-TYPE.
See `guix-define-groups'."
(declare (indent 1))
`(guix-define-groups ,entry-type
,@args))
(defmacro guix-define-buffer-type (buffer-type &rest args)
"Define general code for BUFFER-TYPE.
See `guix-define-groups'."
(declare (indent 1))
`(guix-define-groups ,buffer-type
,@args))
(defmacro guix-buffer-define-interface (buffer-type entry-type &rest args)
"Define BUFFER-TYPE interface for displaying ENTRY-TYPE entries.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
In the following description TYPE means ENTRY-TYPE-BUFFER-TYPE.
Required keywords:
- `:buffer-name' - default value of the generated
`guix-TYPE-buffer-name' variable.
- `:get-entries-function' - default value of the generated
`guix-TYPE-get-function' variable.
- `:show-entries-function' - default value of the generated
`guix-TYPE-show-function' variable.
Alternatively, if `:show-entries-function' is not specified, a
default `guix-TYPE-show-entries' will be generated, and the
following keyword should be specified instead:
- `:insert-entries-function' - default value of the generated
`guix-TYPE-insert-function' variable.
Optional keywords:
- `:message-function' - default value of the generated
`guix-TYPE-message-function' variable.
- `:titles' - default value of the generated
`guix-TYPE-titles' variable.
- `:history-size' - default value of the generated
`guix-TYPE-history-size' variable.
- `:revert-confirm?' - default value of the generated
`guix-TYPE-revert-confirm' variable.
- `:mode-name' - name (a string appeared in the mode-line) of
the generated `guix-TYPE-mode'.
- `:mode-init-function' - default value of the generated
`guix-TYPE-mode-initialize-function' variable.
- `:reduced?' - if non-nil, generate only group, faces group
and titles variable (if specified); all keywords become
optional."
(declare (indent 2))
(let* ((entry-type-str (symbol-name entry-type))
(buffer-type-str (symbol-name buffer-type))
(prefix (concat "guix-" entry-type-str "-"
buffer-type-str))
(group (intern prefix))
(faces-group (intern (concat prefix "-faces")))
(get-entries-var (intern (concat prefix "-get-function")))
(show-entries-var (intern (concat prefix "-show-function")))
(show-entries-fun (intern (concat prefix "-show-entries")))
(message-var (intern (concat prefix "-message-function")))
(buffer-name-var (intern (concat prefix "-buffer-name")))
(titles-var (intern (concat prefix "-titles")))
(history-size-var (intern (concat prefix "-history-size")))
(revert-confirm-var (intern (concat prefix "-revert-confirm"))))
(guix-keyword-args-let args
((get-entries-val :get-entries-function)
(show-entries-val :show-entries-function)
(insert-entries-val :insert-entries-function)
(mode-name :mode-name (capitalize prefix))
(mode-init-val :mode-init-function)
(message-val :message-function)
(buffer-name-val :buffer-name)
(titles-val :titles)
(history-size-val :history-size 20)
(revert-confirm-val :revert-confirm? t)
(reduced? :reduced?))
`(progn
(defgroup ,group nil
,(format "Displaying '%s' entries in '%s' buffer."
entry-type-str buffer-type-str)
:group ',(intern (concat "guix-" entry-type-str))
:group ',(intern (concat "guix-" buffer-type-str)))
(defgroup ,faces-group nil
,(format "Faces for displaying '%s' entries in '%s' buffer."
entry-type-str buffer-type-str)
:group ',group
:group ',(intern (concat "guix-" entry-type-str "-faces"))
:group ',(intern (concat "guix-" buffer-type-str "-faces")))
(defcustom ,titles-var ,titles-val
,(format "Alist of titles of '%s' parameters."
entry-type-str)
:type '(alist :key-type symbol :value-type string)
:group ',group)
,(unless reduced?
`(progn
(defvar ,get-entries-var ,get-entries-val
,(format "\
Function used to receive '%s' entries for '%s' buffer."
entry-type-str buffer-type-str))
(defvar ,show-entries-var
,(or show-entries-val `',show-entries-fun)
,(format "\
Function used to show '%s' entries in '%s' buffer."
entry-type-str buffer-type-str))
(defvar ,message-var ,message-val
,(format "\
Function used to display a message after showing '%s' entries.
If nil, do not display messages."
entry-type-str))
(defcustom ,buffer-name-var ,buffer-name-val
,(format "\
Default name of '%s' buffer for displaying '%s' entries.
May be a string or a function returning a string. The function
is called with the same arguments as `%S'."
buffer-type-str entry-type-str get-entries-var)
:type '(choice string function)
:group ',group)
(defcustom ,history-size-var ,history-size-val
,(format "\
Maximum number of items saved in history of `%S' buffer.
If 0, the history is disabled."
buffer-name-var)
:type 'integer
:group ',group)
(defcustom ,revert-confirm-var ,revert-confirm-val
,(format "\
If non-nil, ask to confirm for reverting `%S' buffer."
buffer-name-var)
:type 'boolean
:group ',group)
(guix-alist-put!
'((get-entries . ,get-entries-var)
(show-entries . ,show-entries-var)
(message . ,message-var)
(buffer-name . ,buffer-name-var)
(history-size . ,history-size-var)
(revert-confirm . ,revert-confirm-var))
'guix-buffer-data ',buffer-type ',entry-type)
,(unless show-entries-val
`(defun ,show-entries-fun (entries)
,(format "\
Show '%s' ENTRIES in the current '%s' buffer."
entry-type-str buffer-type-str)
(guix-buffer-show-entries-default
entries ',buffer-type ',entry-type)))
,(when (or insert-entries-val
(null show-entries-val))
(let ((insert-entries-var
(intern (concat prefix "-insert-function"))))
`(progn
(defvar ,insert-entries-var ,insert-entries-val
,(format "\
Function used to print '%s' entries in '%s' buffer."
entry-type-str buffer-type-str))
(guix-alist-put!
',insert-entries-var 'guix-buffer-data
',buffer-type ',entry-type
'insert-entries))))
,(when (or mode-name
mode-init-val
(null show-entries-val))
(let* ((mode-str (concat prefix "-mode"))
(mode-map-str (concat mode-str "-map"))
(mode (intern mode-str))
(parent-mode (intern
(concat "guix-" buffer-type-str
"-mode")))
(mode-var (intern
(concat mode-str "-function")))
(mode-init-var (intern
(concat mode-str
"-initialize-function"))))
`(progn
(defvar ,mode-var ',mode
,(format "\
Major mode for displaying '%s' entries in '%s' buffer."
entry-type-str buffer-type-str))
(defvar ,mode-init-var ,mode-init-val
,(format "\
Function used to set up '%s' buffer for displaying '%s' entries."
buffer-type-str entry-type-str))
(define-derived-mode ,mode ,parent-mode ,mode-name
,(format "\
Major mode for displaying '%s' entries in '%s' buffer.
\\{%s}"
entry-type-str buffer-type-str mode-map-str)
(setq-local revert-buffer-function
'guix-buffer-revert)
(setq-local guix-history-size
(guix-buffer-history-size
',buffer-type ',entry-type))
(guix-buffer-mode-initialize
',buffer-type ',entry-type))
(guix-alist-put!
',mode-var 'guix-buffer-data
',buffer-type ',entry-type 'mode)
(guix-alist-put!
',mode-init-var 'guix-buffer-data
',buffer-type ',entry-type
'mode-init))))))
(guix-alist-put!
',titles-var 'guix-buffer-data
',buffer-type ',entry-type 'titles)))))
(defvar guix-buffer-font-lock-keywords
(eval-when-compile
`((,(rx "(" (group (or "guix-buffer-with-item"
"guix-buffer-with-current-item"
"guix-buffer-define-interface"
"guix-define-groups"
"guix-define-entry-type"
"guix-define-buffer-type"))
symbol-end)
. 1))))
(font-lock-add-keywords 'emacs-lisp-mode guix-buffer-font-lock-keywords)
(provide 'guix-buffer)
;;; guix-buffer.el ends here
+10
View File
@@ -24,6 +24,8 @@
;;; Code:
(require 'guix-utils)
(defgroup guix-build-log nil
"Settings for `guix-build-log-mode'."
:group 'guix)
@@ -359,6 +361,14 @@ programmatically using hooks:
(when guix-build-log-minor-mode-activate
(guix-build-log-minor-mode)))
(defun guix-build-log-find-file (file-or-url)
"Open FILE-OR-URL in `guix-build-log-mode'."
(guix-find-file-or-url file-or-url)
(guix-build-log-mode))
;;;###autoload
(add-hook 'shell-mode-hook 'guix-build-log-minor-mode-activate-maybe)
;;;###autoload
(add-to-list 'auto-mode-alist
;; Regexp for log files (usually placed in /var/log/guix/...)
+141 -31
View File
@@ -1,6 +1,6 @@
;;; guix-command.el --- Popup interface for guix commands -*- lexical-binding: t -*-
;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
@@ -65,6 +65,7 @@
(require 'guix-help-vars)
(require 'guix-read)
(require 'guix-base)
(require 'guix-build-log)
(require 'guix-guile)
(require 'guix-external)
@@ -131,7 +132,8 @@ to be modified."
(guix-command-define-argument-improver
guix-command-improve-action-argument
'(("graph" :char ?G)
'(("container" :char ?C)
("graph" :char ?G)
("environment" :char ?E)
("publish" :char ?u)
("pull" :char ?P)
@@ -173,7 +175,9 @@ to be modified."
(defvar guix-command-improve-common-build-argument
'(("--no-substitutes" :char ?s)
("--no-build-hook" :char ?h)
("--max-silent-time" :char ?x)))
("--max-silent-time" :char ?x)
("--rounds" :char ?R :fun read-number)
("--with-input" :char ?W)))
(defun guix-command-improve-common-build-argument (argument)
(guix-command-modify-argument-from-alist
@@ -189,13 +193,18 @@ to be modified."
(guix-command-define-argument-improver
guix-command-improve-build-argument
'(("--no-grafts" :char ?g)
("--file" :fun guix-read-file-name)
("--root" :fun guix-read-file-name)
("--sources" :char ?S :fun guix-read-source-type :switch? nil)
("--with-source" :fun guix-read-file-name)))
(guix-command-define-argument-improver
guix-command-improve-environment-argument
'(("--exec" :fun read-shell-command)
'(("--ad-hoc"
:name "--ad-hoc " :fun guix-read-package-names-string
:switch? nil :option? t)
("--expose" :char ?E)
("--share" :char ?S)
("--load" :fun guix-read-file-name)))
(guix-command-define-argument-improver
@@ -234,6 +243,7 @@ to be modified."
:switch? nil :option? t)
("--install-from-file" :fun guix-read-file-name)
("--manifest" :fun guix-read-file-name)
("--profile" :fun guix-read-file-name)
("--do-not-upgrade" :char ?U)
("--roll-back" :char ?R)
("--show" :char ?w :fun guix-read-package-name)))
@@ -366,11 +376,15 @@ to be modified."
(let ((command (car commands)))
(cond
((member command
'("archive" "build" "challenge" "edit" "environment"
'("archive" "build" "challenge" "edit"
"graph" "lint" "refresh"))
(argument :doc "Packages" :fun 'guix-read-package-names-string))
((equal commands '("container" "exec"))
(argument :doc "PID Command [Args...]"))
((string= command "download")
(argument :doc "URL"))
((string= command "environment")
(argument :doc "Command [Args...]" :fun 'read-shell-command))
((string= command "gc")
(argument :doc "Paths" :fun 'guix-read-file-name))
((member command '("hash" "system"))
@@ -384,10 +398,22 @@ to be modified."
(string= command "import"))
(argument :doc "Package name"))))))
(defvar guix-command-additional-arguments
`((("environment")
,(guix-command-make-argument
:name "++packages " :char ?p :option? t
:doc "build inputs of the specified packages"
:fun 'guix-read-package-names-string)))
"Alist of guix commands and additional arguments for them.
These are 'fake' arguments that are not presented in 'guix' shell
commands.")
(defun guix-command-additional-arguments (&optional commands)
"Return additional arguments for COMMANDS."
(let ((rest-arg (guix-command-rest-argument commands)))
(and rest-arg (list rest-arg))))
(append (guix-assoc-value guix-command-additional-arguments
commands)
(and rest-arg (list rest-arg)))))
;; Ideally only `guix-command-arguments' function should exist with the
;; contents of `guix-command-all-arguments', but we need to make a
@@ -465,28 +491,113 @@ to be modified."
"Return actions from ARGUMENTS."
(cl-remove-if-not #'guix-command-argument-action? arguments))
(defun guix-command-post-process-args (args)
"Adjust appropriately command line ARGS returned from popup command."
;; XXX We need to split "--install foo bar" and similar strings into
;; lists of strings. But some commands (e.g., 'guix hash') accept a
;; file name as the 'rest' argument, and as file names may contain
;; spaces, splitting by spaces will break such names. For example, the
;; following argument: "-- /tmp/file with spaces" will be transformed
;; into the following list: ("--" "/tmp/file" "with" "spaces") instead
;; of the wished ("--" "/tmp/file with spaces").
(let* (rest
(rx (rx string-start
(or "-- " "--install " "--remove ")))
;;; Post processing popup arguments
(defvar guix-command-post-processors
'(("environment"
guix-command-post-process-environment-packages
guix-command-post-process-environment-ad-hoc
guix-command-post-process-rest-multiple-leave)
("hash"
guix-command-post-process-rest-single)
("package"
guix-command-post-process-package-args)
("system"
guix-command-post-process-rest-single))
"Alist of guix commands and functions for post-processing
a list of arguments returned from popup interface.
Each function is called on the returned arguments in turn.")
(defvar guix-command-rest-arg-regexp
(rx string-start "-- " (group (+ any)))
"Regexp to match a string with the 'rest' arguments.")
(defun guix-command-replace-args (args predicate modifier)
"Replace arguments matching PREDICATE from ARGS.
Call MODIFIER on each argument matching PREDICATE and append the
returned list of strings to the end of ARGS. Remove the original
arguments."
(let* ((rest nil)
(args (mapcar (lambda (arg)
(if (string-match-p rx arg)
(progn (push (split-string arg) rest)
nil)
(if (funcall predicate arg)
(progn
(push (funcall modifier arg) rest)
nil)
arg))
args)))
(if rest
(apply #'append (delq nil args) rest)
args)))
(cl-defun guix-command-post-process-matching-args (args regexp
&key group split?)
"Modify arguments from ARGS matching REGEXP by moving them to
the end of ARGS list. If SPLIT? is non-nil, split matching
arguments into multiple subarguments."
(guix-command-replace-args
args
(lambda (arg)
(string-match regexp arg))
(lambda (arg)
(let ((val (match-string (or group 0) arg))
(fun (if split? #'split-string #'list)))
(funcall fun val)))))
(defun guix-command-post-process-rest-single (args)
"Modify ARGS by moving '-- ARG' argument to the end of ARGS list."
(guix-command-post-process-matching-args
args guix-command-rest-arg-regexp
:group 1))
(defun guix-command-post-process-rest-multiple (args)
"Modify ARGS by splitting '-- ARG ...' into multiple subarguments
and moving them to the end of ARGS list.
Remove '-- ' string."
(guix-command-post-process-matching-args
args guix-command-rest-arg-regexp
:group 1
:split? t))
(defun guix-command-post-process-rest-multiple-leave (args)
"Modify ARGS by splitting '-- ARG ...' into multiple subarguments
and moving them to the end of ARGS list.
Leave '--' string as a separate argument."
(guix-command-post-process-matching-args
args guix-command-rest-arg-regexp
:split? t))
(defun guix-command-post-process-package-args (args)
"Adjust popup ARGS for 'guix package' command."
(guix-command-post-process-matching-args
args (rx string-start (or "--install " "--remove ") (+ any))
:split? t))
(defun guix-command-post-process-environment-packages (args)
"Adjust popup ARGS for specified packages of 'guix environment'
command."
(guix-command-post-process-matching-args
args (rx string-start "++packages " (group (+ any)))
:group 1
:split? t))
(defun guix-command-post-process-environment-ad-hoc (args)
"Adjust popup ARGS for '--ad-hoc' argument of 'guix environment'
command."
(guix-command-post-process-matching-args
args (rx string-start "--ad-hoc " (+ any))
:split? t))
(defun guix-command-post-process-args (commands args)
"Adjust popup ARGS for guix COMMANDS."
(let* ((command (car commands))
(processors
(append (guix-assoc-value guix-command-post-processors commands)
(guix-assoc-value guix-command-post-processors command))))
(guix-modify args
(or processors
(list #'guix-command-post-process-rest-multiple)))))
;;; 'Execute' actions
@@ -510,7 +621,7 @@ to be modified."
(("size")
,(guix-command-make-argument
:name "view" :char ?v :doc "View map"))
(("system" "dmd-graph") ,graph-arg)
(("system" "shepherd-graph") ,graph-arg)
(("system" "extension-graph") ,graph-arg)))
"Alist of guix commands and additional 'execute' action arguments.")
@@ -536,7 +647,7 @@ to be modified."
("view" . guix-run-view-graph))
(("size")
("view" . guix-run-view-size-map))
(("system" "dmd-graph")
(("system" "shepherd-graph")
("view" . guix-run-view-graph))
(("system" "extension-graph")
("view" . guix-run-view-graph)))
@@ -581,12 +692,11 @@ Perform pull-specific actions after operation, see
open the log file(s)."
(let* ((args (if (member "--log-file" args)
args
(apply #'list (car args) "--log-file" (cdr args))))
(cl-list* (car args) "--log-file" (cdr args))))
(output (guix-command-output args))
(files (split-string output "\n" t)))
(dolist (file files)
(guix-find-file-or-url file)
(guix-build-log-mode))))
(guix-build-log-find-file file))))
(defun guix-run-view-graph (args)
"Run 'guix ARGS ...' graph command, make the image and open it."
@@ -607,10 +717,9 @@ open the log file(s)."
(map-file (or wished-map-file (guix-png-file-name)))
(args (if wished-map-file
args
(apply #'list
(car args)
(concat "--map-file=" map-file)
(cdr args)))))
(cl-list* (car args)
(concat "--map-file=" map-file)
(cdr args)))))
(guix-command-output args)
(guix-find-file map-file)))
@@ -642,7 +751,8 @@ EXECUTOR function is called with the current command line arguments."
,doc
(interactive (,arguments-fun))
(,executor (append ',commands
(guix-command-post-process-args args))))))
(guix-command-post-process-args
',commands args))))))
(defun guix-command-generate-popup-actions (actions &optional commands)
"Generate 'popup' commands from ACTIONS arguments for guix COMMANDS."
+3
View File
@@ -364,6 +364,9 @@ bindings:
(when guix-devel-activate-mode
(guix-devel-mode)))
;;;###autoload
(add-hook 'scheme-mode-hook 'guix-devel-activate-mode-maybe)
(defvar guix-devel-emacs-font-lock-keywords
(eval-when-compile
+67 -47
View File
@@ -1,6 +1,6 @@
;;; guix-emacs.el --- Emacs packages installed with Guix
;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
@@ -24,28 +24,42 @@
;;; Code:
(require 'guix-profiles)
(require 'cl-lib)
(unless (require 'guix-profiles nil t)
(defvar guix-user-profile (expand-file-name "~/.guix-profile")))
(defcustom guix-emacs-activate-after-operation t
"Activate Emacs packages after installing.
If nil, do not load autoloads of the Emacs packages after
they are successfully installed."
(defcustom guix-package-enable-at-startup t
"If non-nil, activate Emacs packages installed in a user profile.
Set this variable to nil before requiring `guix-emacs' file to
avoid loading autoloads of Emacs packages installed in
`guix-user-profile'."
:type 'boolean
:group 'guix)
(defvar guix-emacs-autoloads nil
"List of the last loaded Emacs autoloads.")
(defvar guix-emacs-autoloads-regexp
(rx (group (* any) "-autoloads")
".el" (zero-or-one "c") string-end)
"Regexp to match Emacs 'autoloads' file.")
(defun guix-emacs-directory (&optional profile)
"Return directory with Emacs packages installed in PROFILE.
If PROFILE is nil, use `guix-user-profile'."
(expand-file-name "share/emacs/site-lisp"
(or profile guix-user-profile)))
(defun guix-emacs-find-autoloads-in-directory (directory)
"Return list of Emacs 'autoloads' files in DIRECTORY."
(directory-files directory 'full-name "-autoloads\\.el\\'" 'no-sort))
(defun guix-emacs-find-autoloads (directory)
"Return a list of Emacs 'autoloads' files in DIRECTORY.
The files in the list do not have extensions (.el, .elc)."
(cl-remove-duplicates
(delq nil
(mapcar (lambda (file)
(when (string-match guix-emacs-autoloads-regexp file)
(match-string 1 file)))
(directory-files directory 'full-name nil 'no-sort)))
:test #'string=))
(defun guix-emacs-subdirs (directory)
"Return list of DIRECTORY subdirectories."
@@ -55,48 +69,54 @@ If PROFILE is nil, use `guix-user-profile'."
(not (file-directory-p file))))
(directory-files directory 'full-name nil 'no-sort)))
(defun guix-emacs-find-autoloads (&optional profile)
"Return list of autoloads of Emacs packages installed in PROFILE.
(defun guix-emacs-directories (&optional profile)
"Return the list of directories under PROFILE that contain Emacs packages.
This includes both `share/emacs/site-lisp/guix.d/PACKAGE'
sub-directories and `share/emacs/site-lisp' itself.
If PROFILE is nil, use `guix-user-profile'.
Return nil if there are no emacs packages installed in PROFILE."
(let ((elisp-root-dir (guix-emacs-directory profile)))
(if (file-directory-p elisp-root-dir)
(let ((elisp-pkgs-dir (expand-file-name "guix.d" elisp-root-dir))
(root-autoloads (guix-emacs-find-autoloads-in-directory
elisp-root-dir)))
(if (file-directory-p elisp-pkgs-dir)
(let ((pkgs-autoloads
(cl-mapcan #'guix-emacs-find-autoloads-in-directory
(guix-emacs-subdirs elisp-pkgs-dir))))
(append root-autoloads pkgs-autoloads))
root-autoloads))
(message "Directory '%s' does not exist." elisp-root-dir)
nil)))
Return nil, if Emacs packages are not installed in PROFILE."
(let ((root-dir (guix-emacs-directory (or profile guix-user-profile))))
(when (file-directory-p root-dir)
(let* ((pkgs-dir (expand-file-name "guix.d" root-dir))
(pkgs-dirs (when (file-directory-p pkgs-dir)
(guix-emacs-subdirs pkgs-dir))))
(cons root-dir pkgs-dirs)))))
;;;###autoload
(defun guix-emacs-load-autoloads (&optional all)
"Load autoloads for Emacs packages installed in a user profile.
Add autoloads directories to `load-path'.
If ALL is nil, activate only those packages that were installed
after the last activation, otherwise activate all Emacs packages
installed in `guix-user-profile'."
(interactive "P")
(let* ((autoloads (guix-emacs-find-autoloads))
(files (if all
autoloads
(cl-nset-difference autoloads guix-emacs-autoloads
:test #'string=))))
(dolist (file files)
(cl-pushnew (file-name-directory file) load-path
:test #'string=)
(load file 'noerror))
(setq guix-emacs-autoloads autoloads)))
(defun guix-emacs-autoload-packages (&rest profiles)
"Autoload Emacs packages installed in PROFILES.
If PROFILES are not specified, use a default user and system
profiles.
(defun guix-emacs-load-autoloads-maybe ()
"Load autoloads for Emacs packages if needed.
See `guix-emacs-activate-after-operation' for details."
(and guix-emacs-activate-after-operation
(guix-emacs-load-autoloads)))
'Autoload' means add directories with Emacs packages to
`load-path' and load 'autoloads' files matching
`guix-emacs-autoloads-regexp'."
(interactive (list (if (fboundp 'guix-profile-prompt)
(funcall 'guix-profile-prompt)
guix-user-profile)))
(let ((profiles (or profiles
(list "/run/current-system/profile"
guix-user-profile))))
(dolist (profile profiles)
(let ((dirs (guix-emacs-directories profile)))
(when dirs
(let* ((autoloads (cl-mapcan #'guix-emacs-find-autoloads
dirs))
(new-autoloads (cl-nset-difference autoloads
guix-emacs-autoloads
:test #'string=)))
(dolist (dir dirs)
(cl-pushnew (directory-file-name dir)
load-path
:test #'string=))
(dolist (file new-autoloads)
(load file 'noerror))
(setq guix-emacs-autoloads
(append new-autoloads guix-emacs-autoloads))))))))
(when guix-package-enable-at-startup
(guix-emacs-autoload-packages))
(provide 'guix-emacs)
+59
View File
@@ -0,0 +1,59 @@
;;; guix-entry.el --- 'Entry' type -*- lexical-binding: t -*-
;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides an API for 'entry' type which is just an alist of
;; KEY/VALUE pairs (KEY should be a symbol) with the required 'id' KEY.
;;; Code:
(require 'cl-lib)
(require 'guix-utils)
(defalias 'guix-entry-value #'guix-assq-value)
(defun guix-entry-id (entry)
"Return ENTRY ID."
(guix-entry-value entry 'id))
(defun guix-entry-by-id (id entries)
"Return an entry from ENTRIES by its ID."
(cl-find-if (lambda (entry)
(equal (guix-entry-id entry) id))
entries))
(defun guix-entries-by-ids (ids entries)
"Return entries with IDS (a list of identifiers) from ENTRIES."
(cl-remove-if-not (lambda (entry)
(member (guix-entry-id entry) ids))
entries))
(defun guix-replace-entry (id new-entry entries)
"Replace an entry with ID from ENTRIES by NEW-ENTRY.
Return a list of entries with the replaced entry."
(cl-substitute-if new-entry
(lambda (entry)
(equal id (guix-entry-id entry)))
entries
:count 1))
(provide 'guix-entry)
;;; guix-entry.el ends here
+4 -4
View File
@@ -23,6 +23,7 @@
;;; Code:
(require 'cl-lib)
(require 'guix-config)
(defgroup guix-external nil
@@ -67,10 +68,9 @@ If ARGS is nil, use `guix-dot-default-arguments'."
(or guix-dot-program
(error (concat "Couldn't find 'dot'.\n"
"Set guix-dot-program to a proper value")))
(apply #'list
guix-dot-program
(concat "-o" output-file)
(or args guix-dot-default-arguments)))
(cl-list* guix-dot-program
(concat "-o" output-file)
(or args guix-dot-default-arguments)))
(defun guix-dot-file-name ()
"Call `guix-dot-file-name-function'."
+17 -5
View File
@@ -46,11 +46,23 @@ Return a list of strings with result values of evaluation."
(defun guix-geiser-eval-read (str &optional repl)
"Evaluate STR with guile expression using Geiser REPL.
Return elisp expression of the first result value of evaluation."
;; Parsing scheme code with elisp `read' is probably not the best idea.
(read (replace-regexp-in-string
"#f\\|#<unspecified>" "nil"
(replace-regexp-in-string
"#t" "t" (car (guix-geiser-eval str repl))))))
;; The goal is to convert a string with scheme expression into elisp
;; expression.
(let ((result (car (guix-geiser-eval str repl))))
(cond
((or (string= result "#f")
(string= result "#<unspecified>"))
nil)
((string= result "#t")
t)
(t
(read (replace-regexp-in-string
"[ (]\\(#f\\)" "nil"
(replace-regexp-in-string
"[ (]\\(#t\\)" "t"
result
nil nil 1)
nil nil 1))))))
(defun guix-repl-send (cmd &optional save-history)
"Send CMD input string to the current REPL buffer.
+362
View File
@@ -0,0 +1,362 @@
;;; guix-hydra-build.el --- Interface for Hydra builds -*- lexical-binding: t -*-
;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides an interface for displaying Hydra builds in
;; 'list' and 'info' buffers.
;;; Code:
(require 'cl-lib)
(require 'guix-buffer)
(require 'guix-list)
(require 'guix-info)
(require 'guix-hydra)
(require 'guix-build-log)
(require 'guix-utils)
(guix-hydra-define-entry-type hydra-build
:search-types '((latest . guix-hydra-build-latest-api-url)
(queue . guix-hydra-build-queue-api-url))
:filters '(guix-hydra-build-filter-status)
:filter-names '((nixname . name)
(buildstatus . build-status)
(timestamp . time))
:filter-boolean-params '(finished busy))
(defun guix-hydra-build-get-display (search-type &rest args)
"Search for Hydra builds and show results."
(apply #'guix-list-get-display-entries
'hydra-build search-type args))
(cl-defun guix-hydra-build-latest-prompt-args (&key project jobset
job system)
"Prompt for and return a list of 'latest builds' arguments."
(let* ((number (read-number "Number of latest builds: "))
(project (if current-prefix-arg
(guix-hydra-read-project nil project)
project))
(jobset (if current-prefix-arg
(guix-hydra-read-jobset nil jobset)
jobset))
(job-or-name (if current-prefix-arg
(guix-hydra-read-job nil job)
job))
(job (and job-or-name
(string-match-p guix-hydra-job-regexp
job-or-name)
job-or-name))
(system (if (and (not job)
(or current-prefix-arg
(and job-or-name (not system))))
(if job-or-name
(guix-while-null
(guix-hydra-read-system
(concat job-or-name ".") system))
(guix-hydra-read-system nil system))
system))
(job (or job
(and job-or-name
(concat job-or-name "." system)))))
(list number
:project project
:jobset jobset
:job job
:system system)))
(defun guix-hydra-build-view-log (id)
"View build log of a hydra build ID."
(guix-build-log-find-file (guix-hydra-build-log-url id)))
;;; Defining URLs
(defun guix-hydra-build-url (id)
"Return Hydra URL of a build ID."
(guix-hydra-url "build/" (number-to-string id)))
(defun guix-hydra-build-log-url (id)
"Return Hydra URL of the log file of a build ID."
(concat (guix-hydra-build-url id) "/log/raw"))
(cl-defun guix-hydra-build-latest-api-url
(number &key project jobset job system)
"Return Hydra API URL to receive latest NUMBER of builds."
(guix-hydra-api-url "latestbuilds"
`(("nr" . ,number)
("project" . ,project)
("jobset" . ,jobset)
("job" . ,job)
("system" . ,system))))
(defun guix-hydra-build-queue-api-url (number)
"Return Hydra API URL to receive the NUMBER of queued builds."
(guix-hydra-api-url "queue"
`(("nr" . ,number))))
;;; Filters for processing raw entries
(defun guix-hydra-build-filter-status (entry)
"Add 'status' parameter to 'hydra-build' ENTRY."
(let ((status (if (guix-entry-value entry 'finished)
(guix-hydra-build-status-number->name
(guix-entry-value entry 'build-status))
(if (guix-entry-value entry 'busy)
'running
'scheduled))))
(cons `(status . ,status)
entry)))
;;; Build status
(defface guix-hydra-build-status-running
'((t :inherit bold))
"Face used if hydra build is not finished."
:group 'guix-hydra-build-faces)
(defface guix-hydra-build-status-scheduled
'((t))
"Face used if hydra build is scheduled."
:group 'guix-hydra-build-faces)
(defface guix-hydra-build-status-succeeded
'((t :inherit success))
"Face used if hydra build succeeded."
:group 'guix-hydra-build-faces)
(defface guix-hydra-build-status-cancelled
'((t :inherit warning))
"Face used if hydra build was cancelled."
:group 'guix-hydra-build-faces)
(defface guix-hydra-build-status-failed
'((t :inherit error))
"Face used if hydra build failed."
:group 'guix-hydra-build-faces)
(defvar guix-hydra-build-status-alist
'((0 . succeeded)
(1 . failed-build)
(2 . failed-dependency)
(3 . failed-other)
(4 . cancelled))
"Alist of hydra build status numbers and status names.
Status numbers are returned by Hydra API, names (symbols) are
used internally by the elisp code of this package.")
(defun guix-hydra-build-status-number->name (number)
"Convert build status number to a name.
See `guix-hydra-build-status-alist'."
(guix-assq-value guix-hydra-build-status-alist number))
(defun guix-hydra-build-status-string (status)
"Return a human readable string for build STATUS."
(cl-case status
(scheduled
(guix-get-string "Scheduled" 'guix-hydra-build-status-scheduled))
(running
(guix-get-string "Running" 'guix-hydra-build-status-running))
(succeeded
(guix-get-string "Succeeded" 'guix-hydra-build-status-succeeded))
(cancelled
(guix-get-string "Cancelled" 'guix-hydra-build-status-cancelled))
(failed-build
(guix-hydra-build-status-fail-string))
(failed-dependency
(guix-hydra-build-status-fail-string "dependency"))
(failed-other
(guix-hydra-build-status-fail-string "other"))))
(defun guix-hydra-build-status-fail-string (&optional reason)
"Return a string for a failed build."
(let ((base (guix-get-string "Failed" 'guix-hydra-build-status-failed)))
(if reason
(concat base " (" reason ")")
base)))
(defun guix-hydra-build-finished? (entry)
"Return non-nil, if hydra build was finished."
(guix-entry-value entry 'finished))
(defun guix-hydra-build-running? (entry)
"Return non-nil, if hydra build is running."
(eq (guix-entry-value entry 'status)
'running))
(defun guix-hydra-build-scheduled? (entry)
"Return non-nil, if hydra build is scheduled."
(eq (guix-entry-value entry 'status)
'scheduled))
(defun guix-hydra-build-succeeded? (entry)
"Return non-nil, if hydra build succeeded."
(eq (guix-entry-value entry 'status)
'succeeded))
(defun guix-hydra-build-cancelled? (entry)
"Return non-nil, if hydra build was cancelled."
(eq (guix-entry-value entry 'status)
'cancelled))
(defun guix-hydra-build-failed? (entry)
"Return non-nil, if hydra build failed."
(memq (guix-entry-value entry 'status)
'(failed-build failed-dependency failed-other)))
;;; Hydra build 'info'
(guix-hydra-info-define-interface hydra-build
:mode-name "Hydra-Build-Info"
:buffer-name "*Guix Hydra Build Info*"
:format '((name ignore (simple guix-info-heading))
ignore
guix-hydra-build-info-insert-url
(time format (time))
(status format guix-hydra-build-info-insert-status)
(project format (format guix-hydra-build-project))
(jobset format (format guix-hydra-build-jobset))
(job format (format guix-hydra-build-job))
(system format (format guix-hydra-build-system))
(priority format (format))))
(defface guix-hydra-build-info-project
'((t :inherit link))
"Face for project names."
:group 'guix-hydra-build-info-faces)
(defface guix-hydra-build-info-jobset
'((t :inherit link))
"Face for jobsets."
:group 'guix-hydra-build-info-faces)
(defface guix-hydra-build-info-job
'((t :inherit link))
"Face for jobs."
:group 'guix-hydra-build-info-faces)
(defface guix-hydra-build-info-system
'((t :inherit link))
"Face for system names."
:group 'guix-hydra-build-info-faces)
(defmacro guix-hydra-build-define-button (name)
"Define `guix-hydra-build-NAME' button."
(let* ((name-str (symbol-name name))
(button-name (intern (concat "guix-hydra-build-" name-str)))
(face-name (intern (concat "guix-hydra-build-info-" name-str)))
(keyword (intern (concat ":" name-str))))
`(define-button-type ',button-name
:supertype 'guix
'face ',face-name
'help-echo ,(format "\
Show latest builds for this %s (with prefix, prompt for all parameters)"
name-str)
'action (lambda (btn)
(let ((args (guix-hydra-build-latest-prompt-args
,keyword (button-label btn))))
(apply #'guix-hydra-build-get-display
'latest args))))))
(guix-hydra-build-define-button project)
(guix-hydra-build-define-button jobset)
(guix-hydra-build-define-button job)
(guix-hydra-build-define-button system)
(defun guix-hydra-build-info-insert-url (entry)
"Insert Hydra URL for the build ENTRY."
(guix-insert-button (guix-hydra-build-url (guix-entry-id entry))
'guix-url)
(when (guix-hydra-build-finished? entry)
(guix-info-insert-indent)
(guix-info-insert-action-button
"Build log"
(lambda (btn)
(guix-hydra-build-view-log (button-get btn 'id)))
"View build log"
'id (guix-entry-id entry))))
(defun guix-hydra-build-info-insert-status (status &optional _)
"Insert a string with build STATUS."
(insert (guix-hydra-build-status-string status)))
;;; Hydra build 'list'
(guix-hydra-list-define-interface hydra-build
:mode-name "Hydra-Build-List"
:buffer-name "*Guix Hydra Build List*"
:format '((name nil 30 t)
(system nil 16 t)
(status guix-hydra-build-list-get-status 20 t)
(project nil 10 t)
(jobset nil 17 t)
(time guix-list-get-time 20 t)))
(let ((map guix-hydra-build-list-mode-map))
(define-key map (kbd "B") 'guix-hydra-build-list-latest-builds)
(define-key map (kbd "L") 'guix-hydra-build-list-view-log))
(defun guix-hydra-build-list-get-status (status &optional _)
"Return a string for build STATUS."
(guix-hydra-build-status-string status))
(defun guix-hydra-build-list-latest-builds (number &rest args)
"Display latest NUMBER of Hydra builds of the current job.
Interactively, prompt for NUMBER. With prefix argument, prompt
for all ARGS."
(interactive
(let ((entry (guix-list-current-entry)))
(guix-hydra-build-latest-prompt-args
:project (guix-entry-value entry 'project)
:jobset (guix-entry-value entry 'name)
:job (guix-entry-value entry 'job)
:system (guix-entry-value entry 'system))))
(apply #'guix-hydra-latest-builds number args))
(defun guix-hydra-build-list-view-log ()
"View build log of the current Hydra build."
(interactive)
(guix-hydra-build-view-log (guix-list-current-id)))
;;; Interactive commands
;;;###autoload
(defun guix-hydra-latest-builds (number &rest args)
"Display latest NUMBER of Hydra builds.
ARGS are the same arguments as for `guix-hydra-build-latest-api-url'.
Interactively, prompt for NUMBER. With prefix argument, prompt
for all ARGS."
(interactive (guix-hydra-build-latest-prompt-args))
(apply #'guix-hydra-build-get-display
'latest number args))
;;;###autoload
(defun guix-hydra-queued-builds (number)
"Display the NUMBER of queued Hydra builds."
(interactive "NNumber of queued builds: ")
(guix-hydra-build-get-display 'queue number))
(provide 'guix-hydra-build)
;;; guix-hydra-build.el ends here
+162
View File
@@ -0,0 +1,162 @@
;;; guix-hydra-jobset.el --- Interface for Hydra jobsets -*- lexical-binding: t -*-
;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides an interface for displaying Hydra jobsets in
;; 'list' and 'info' buffers.
;;; Code:
(require 'cl-lib)
(require 'guix-buffer)
(require 'guix-list)
(require 'guix-info)
(require 'guix-hydra)
(require 'guix-hydra-build)
(require 'guix-utils)
(guix-hydra-define-entry-type hydra-jobset
:search-types '((project . guix-hydra-jobset-api-url))
:filters '(guix-hydra-jobset-filter-id)
:filter-names '((nrscheduled . scheduled)
(nrsucceeded . succeeded)
(nrfailed . failed)
(nrtotal . total)))
(defun guix-hydra-jobset-get-display (search-type &rest args)
"Search for Hydra builds and show results."
(apply #'guix-list-get-display-entries
'hydra-jobset search-type args))
;;; Defining URLs
(defun guix-hydra-jobset-url (project jobset)
"Return Hydra URL of a PROJECT's JOBSET."
(guix-hydra-url "jobset/" project "/" jobset))
(defun guix-hydra-jobset-api-url (project)
"Return Hydra API URL for jobsets by PROJECT."
(guix-hydra-api-url "jobsets"
`(("project" . ,project))))
;;; Filters for processing raw entries
(defun guix-hydra-jobset-filter-id (entry)
"Add 'ID' parameter to 'hydra-jobset' ENTRY."
(cons `(id . ,(guix-entry-value entry 'name))
entry))
;;; Hydra jobset 'info'
(guix-hydra-info-define-interface hydra-jobset
:mode-name "Hydra-Jobset-Info"
:buffer-name "*Guix Hydra Jobset Info*"
:format '((name ignore (simple guix-info-heading))
ignore
guix-hydra-jobset-info-insert-url
(project format guix-hydra-jobset-info-insert-project)
(scheduled format (format guix-hydra-jobset-info-scheduled))
(succeeded format (format guix-hydra-jobset-info-succeeded))
(failed format (format guix-hydra-jobset-info-failed))
(total format (format guix-hydra-jobset-info-total))))
(defface guix-hydra-jobset-info-scheduled
'((t))
"Face used for the number of scheduled builds."
:group 'guix-hydra-jobset-info-faces)
(defface guix-hydra-jobset-info-succeeded
'((t :inherit guix-hydra-build-status-succeeded))
"Face used for the number of succeeded builds."
:group 'guix-hydra-jobset-info-faces)
(defface guix-hydra-jobset-info-failed
'((t :inherit guix-hydra-build-status-failed))
"Face used for the number of failed builds."
:group 'guix-hydra-jobset-info-faces)
(defface guix-hydra-jobset-info-total
'((t))
"Face used for the total number of builds."
:group 'guix-hydra-jobset-info-faces)
(defun guix-hydra-jobset-info-insert-project (project entry)
"Insert PROJECT button for the jobset ENTRY."
(let ((jobset (guix-entry-value entry 'name)))
(guix-insert-button
project 'guix-hydra-build-project
'action (lambda (btn)
(let ((args (guix-hydra-build-latest-prompt-args
:project (button-get btn 'project)
:jobset (button-get btn 'jobset))))
(apply #'guix-hydra-build-get-display
'latest args)))
'project project
'jobset jobset)))
(defun guix-hydra-jobset-info-insert-url (entry)
"Insert Hydra URL for the jobset ENTRY."
(guix-insert-button (guix-hydra-jobset-url
(guix-entry-value entry 'project)
(guix-entry-value entry 'name))
'guix-url))
;;; Hydra jobset 'list'
(guix-hydra-list-define-interface hydra-jobset
:mode-name "Hydra-Jobset-List"
:buffer-name "*Guix Hydra Jobset List*"
:format '((name nil 25 t)
(project nil 10 t)
(scheduled nil 12 t)
(succeeded nil 12 t)
(failed nil 9 t)
(total nil 10 t)))
(let ((map guix-hydra-jobset-list-mode-map))
(define-key map (kbd "B") 'guix-hydra-jobset-list-latest-builds))
(defun guix-hydra-jobset-list-latest-builds (number &rest args)
"Display latest NUMBER of Hydra builds of the current jobset.
Interactively, prompt for NUMBER. With prefix argument, prompt
for all ARGS."
(interactive
(let ((entry (guix-list-current-entry)))
(guix-hydra-build-latest-prompt-args
:project (guix-entry-value entry 'project)
:jobset (guix-entry-value entry 'name))))
(apply #'guix-hydra-latest-builds number args))
;;; Interactive commands
;;;###autoload
(defun guix-hydra-jobsets (project)
"Display jobsets of PROJECT."
(interactive (list (guix-hydra-read-project)))
(guix-hydra-jobset-get-display 'project project))
(provide 'guix-hydra-jobset)
;;; guix-hydra-jobset.el ends here
+367
View File
@@ -0,0 +1,367 @@
;;; guix-hydra.el --- Common code for interacting with Hydra -*- lexical-binding: t -*-
;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides some general code for 'list'/'info' interfaces for
;; Hydra (Guix build farm).
;;; Code:
(require 'json)
(require 'guix-buffer)
(require 'guix-entry)
(require 'guix-utils)
(require 'guix-help-vars)
(guix-define-groups hydra)
(defvar guix-hydra-job-regexp
(concat ".*\\." (regexp-opt guix-help-system-types) "\\'")
"Regexp matching a full name of Hydra job (including system).")
(defun guix-hydra-job-name-specification (name version)
"Return Hydra's job name specification by NAME and VERSION."
(concat name "-" version))
(defun guix-hydra-message (entries search-type &rest _)
"Display a message after showing Hydra ENTRIES."
;; XXX Add more messages maybe.
(when (null entries)
(if (eq search-type 'fake)
(message "The update is impossible due to lack of Hydra API.")
(message "Hydra has returned no results."))))
(defun guix-hydra-list-describe (ids)
"Describe 'hydra' entries with IDS (list of identifiers)."
(guix-buffer-display-entries
(guix-entries-by-ids ids (guix-buffer-current-entries))
'info (guix-buffer-current-entry-type)
;; Hydra does not provide an API to receive builds/jobsets by
;; IDs/names, so we use a 'fake' search type.
'(fake)
'add))
;;; Readers
(defvar guix-hydra-projects
'("gnu" "guix")
"List of available Hydra projects.")
(guix-define-readers
:completions-var guix-hydra-projects
:single-reader guix-hydra-read-project
:single-prompt "Project: ")
(guix-define-readers
:single-reader guix-hydra-read-jobset
:single-prompt "Jobset: ")
(guix-define-readers
:single-reader guix-hydra-read-job
:single-prompt "Job: ")
(guix-define-readers
:completions-var guix-help-system-types
:single-reader guix-hydra-read-system
:single-prompt "System: ")
;;; Defining URLs
(defvar guix-hydra-url "http://hydra.gnu.org"
"URL of the Hydra build farm.")
(defun guix-hydra-url (&rest url-parts)
"Return Hydra URL."
(apply #'concat guix-hydra-url "/" url-parts))
(defun guix-hydra-api-url (type args)
"Return URL for receiving data using Hydra API.
TYPE is the name of an allowed method.
ARGS is alist of (KEY . VALUE) pairs.
Skip ARG, if VALUE is nil or an empty string."
(declare (indent 1))
(let* ((fields (mapcar
(lambda (arg)
(pcase arg
(`(,key . ,value)
(unless (or (null value)
(equal "" value))
(concat (guix-hexify key) "="
(guix-hexify value))))
(_ (error "Wrong argument '%s'" arg))))
args))
(fields (mapconcat #'identity (delq nil fields) "&")))
(guix-hydra-url "api/" type "?" fields)))
;;; Receiving data from Hydra
(defun guix-hydra-receive-data (url)
"Return output received from URL and processed with `json-read'."
(with-temp-buffer
(url-insert-file-contents url)
(goto-char (point-min))
(let ((json-key-type 'symbol)
(json-array-type 'list)
(json-object-type 'alist))
(json-read))))
(defun guix-hydra-get-entries (entry-type search-type &rest args)
"Receive ENTRY-TYPE entries from Hydra.
SEARCH-TYPE is one of the types defined by `guix-hydra-define-interface'."
(unless (eq search-type 'fake)
(let* ((url (apply #'guix-hydra-search-url
entry-type search-type args))
(raw-entries (guix-hydra-receive-data url))
(entries (guix-hydra-filter-entries
raw-entries
(guix-hydra-filters entry-type))))
entries)))
;;; Filters for processing raw entries
(defun guix-hydra-filter-entries (entries filters)
"Filter ENTRIES using FILTERS.
Call `guix-modify' on each entry from ENTRIES."
(mapcar (lambda (entry)
(guix-modify entry filters))
entries))
(defun guix-hydra-filter-names (entry name-alist)
"Replace names of ENTRY parameters using NAME-ALIST.
Each element of NAME-ALIST is (OLD-NAME . NEW-NAME) pair."
(mapcar (lambda (param)
(pcase param
(`(,name . ,val)
(let ((new-name (guix-assq-value name-alist name)))
(if new-name
(cons new-name val)
param)))))
entry))
(defun guix-hydra-filter-boolean (entry params)
"Convert number PARAMS (0/1) of ENTRY to boolean values (nil/t)."
(mapcar (lambda (param)
(pcase param
(`(,name . ,val)
(if (memq name params)
(cons name (guix-number->bool val))
param))))
entry))
;;; Wrappers for defined variables
(defvar guix-hydra-entry-type-data nil
"Alist with hydra entry type data.
This alist is filled by `guix-hydra-define-entry-type' macro.")
(defun guix-hydra-entry-type-value (entry-type symbol)
"Return SYMBOL's value for ENTRY-TYPE from `guix-hydra'."
(symbol-value (guix-assq-value guix-hydra-entry-type-data
entry-type symbol)))
(defun guix-hydra-search-url (entry-type search-type &rest args)
"Return URL to receive ENTRY-TYPE entries from Hydra."
(apply (guix-assq-value (guix-hydra-entry-type-value
entry-type 'search-types)
search-type)
args))
(defun guix-hydra-filters (entry-type)
"Return a list of filters for ENTRY-TYPE."
(guix-hydra-entry-type-value entry-type 'filters))
;;; Interface definers
(defmacro guix-hydra-define-entry-type (entry-type &rest args)
"Define general code for ENTRY-TYPE.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
Required keywords:
- `:search-types' - default value of the generated
`guix-ENTRY-TYPE-search-types' variable.
Optional keywords:
- `:filters' - default value of the generated
`guix-ENTRY-TYPE-filters' variable.
- `:filter-names' - if specified, a generated
`guix-ENTRY-TYPE-filter-names' function for filtering these
names will be added to `guix-ENTRY-TYPE-filters' variable.
- `:filter-boolean-params' - if specified, a generated
`guix-ENTRY-TYPE-filter-boolean' function for filtering these
names will be added to `guix-ENTRY-TYPE-filters' variable.
The rest keyword arguments are passed to
`guix-define-entry-type' macro."
(declare (indent 1))
(let* ((entry-type-str (symbol-name entry-type))
(prefix (concat "guix-" entry-type-str))
(search-types-var (intern (concat prefix "-search-types")))
(filters-var (intern (concat prefix "-filters")))
(get-fun (intern (concat prefix "-get-entries"))))
(guix-keyword-args-let args
((search-types-val :search-types)
(filters-val :filters)
(filter-names-val :filter-names)
(filter-bool-val :filter-boolean-params))
`(progn
(defvar ,search-types-var ,search-types-val
,(format "\
Alist of search types and according URL functions.
Functions are used to define URL to receive '%s' entries."
entry-type-str))
(defvar ,filters-var ,filters-val
,(format "\
List of filters for '%s' parameters.
Each filter is a function that should take an entry as a single
argument, and should also return an entry."
entry-type-str))
,(when filter-bool-val
(let ((filter-bool-var (intern (concat prefix
"-filter-boolean-params")))
(filter-bool-fun (intern (concat prefix
"-filter-boolean"))))
`(progn
(defvar ,filter-bool-var ,filter-bool-val
,(format "\
List of '%s' parameters that should be transformed to boolean values."
entry-type-str))
(defun ,filter-bool-fun (entry)
,(format "\
Run `guix-hydra-filter-boolean' with `%S' variable."
filter-bool-var)
(guix-hydra-filter-boolean entry ,filter-bool-var))
(setq ,filters-var
(cons ',filter-bool-fun ,filters-var)))))
;; Do not move this clause up!: name filtering should be
;; performed before any other filtering, so this filter should
;; be consed after the boolean filter.
,(when filter-names-val
(let* ((filter-names-var (intern (concat prefix
"-filter-names")))
(filter-names-fun filter-names-var))
`(progn
(defvar ,filter-names-var ,filter-names-val
,(format "\
Alist of '%s' parameter names returned by Hydra API and names
used internally by the elisp code of this package."
entry-type-str))
(defun ,filter-names-fun (entry)
,(format "\
Run `guix-hydra-filter-names' with `%S' variable."
filter-names-var)
(guix-hydra-filter-names entry ,filter-names-var))
(setq ,filters-var
(cons ',filter-names-fun ,filters-var)))))
(defun ,get-fun (search-type &rest args)
,(format "\
Receive '%s' entries.
See `guix-hydra-get-entries' for details."
entry-type-str)
(apply #'guix-hydra-get-entries
',entry-type search-type args))
(guix-alist-put!
'((search-types . ,search-types-var)
(filters . ,filters-var))
'guix-hydra-entry-type-data ',entry-type)
(guix-define-entry-type ,entry-type
:parent-group guix-hydra
:parent-faces-group guix-hydra-faces
,@%foreign-args)))))
(defmacro guix-hydra-define-interface (buffer-type entry-type &rest args)
"Define BUFFER-TYPE interface for displaying ENTRY-TYPE entries.
This macro should be called after calling
`guix-hydra-define-entry-type' with the same ENTRY-TYPE.
ARGS are passed to `guix-BUFFER-TYPE-define-interface' macro."
(declare (indent 2))
(let* ((entry-type-str (symbol-name entry-type))
(buffer-type-str (symbol-name buffer-type))
(get-fun (intern (concat "guix-" entry-type-str
"-get-entries")))
(definer (intern (concat "guix-" buffer-type-str
"-define-interface"))))
`(,definer ,entry-type
:get-entries-function ',get-fun
:message-function 'guix-hydra-message
,@args)))
(defmacro guix-hydra-info-define-interface (entry-type &rest args)
"Define 'info' interface for displaying ENTRY-TYPE entries.
See `guix-hydra-define-interface'."
(declare (indent 1))
`(guix-hydra-define-interface info ,entry-type
,@args))
(defmacro guix-hydra-list-define-interface (entry-type &rest args)
"Define 'list' interface for displaying ENTRY-TYPE entries.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
Optional keywords:
- `:describe-function' - default value of the generated
`guix-ENTRY-TYPE-list-describe-function' variable (if not
specified, use `guix-hydra-list-describe').
The rest keyword arguments are passed to
`guix-hydra-define-interface' macro."
(declare (indent 1))
(guix-keyword-args-let args
((describe-val :describe-function))
`(guix-hydra-define-interface list ,entry-type
:describe-function ,(or describe-val ''guix-hydra-list-describe)
,@args)))
(defvar guix-hydra-font-lock-keywords
(eval-when-compile
`((,(rx "(" (group (or "guix-hydra-define-entry-type"
"guix-hydra-define-interface"
"guix-hydra-info-define-interface"
"guix-hydra-list-define-interface"))
symbol-end)
. 1))))
(font-lock-add-keywords 'emacs-lisp-mode guix-hydra-font-lock-keywords)
(provide 'guix-hydra)
;;; guix-hydra.el ends here
+290 -694
View File
File diff suppressed because it is too large Load Diff
+1 -18
View File
@@ -1,20 +1,3 @@
(require 'guix-autoloads)
(require 'guix-emacs)
(defcustom guix-package-enable-at-startup t
"If non-nil, activate Emacs packages installed in a user profile.
Set this variable to nil before requiring `guix-init' file to
avoid loading autoloads of Emacs packages installed in
`guix-user-profile'."
:type 'boolean
:group 'guix)
(add-to-list 'load-path (guix-emacs-directory))
(when guix-package-enable-at-startup
(guix-emacs-load-autoloads 'all))
(add-hook 'scheme-mode-hook 'guix-devel-activate-mode-maybe)
(add-hook 'shell-mode-hook 'guix-build-log-minor-mode-activate-maybe)
(message "(require 'guix-init) is obsolete, use (require 'guix-autoloads) instead.")
(provide 'guix-init)
+130
View File
@@ -0,0 +1,130 @@
;;; guix-license.el --- Licenses
;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides the code to work with licenses of Guix packages.
;;; Code:
(require 'guix-buffer)
(require 'guix-list)
(require 'guix-info)
(require 'guix-read)
(require 'guix-backend)
(require 'guix-guile)
(guix-define-entry-type license)
(defun guix-lookup-license-url (license)
"Return URL of a LICENSE."
(or (guix-eval-read (guix-make-guile-expression
'lookup-license-uri license))
(error "Hm, I don't know URL of '%s' license" license)))
(defun guix-license-get-entries (search-type &rest args)
"Receive 'license' entries.
SEARCH-TYPE may be one of the following symbols: `all', `id', `name'."
(guix-eval-read
(apply #'guix-make-guile-expression
'license-entries search-type args)))
(defun guix-license-get-display (search-type &rest args)
"Search for licenses and show results."
(apply #'guix-list-get-display-entries
'license search-type args))
;;; License 'info'
(guix-info-define-interface license
:buffer-name "*Guix License Info*"
:get-entries-function 'guix-license-get-entries
:format '((name ignore (simple guix-info-heading))
ignore
guix-license-insert-packages-button
(url ignore (simple guix-url))
guix-license-insert-comment)
:titles '((url . "URL")))
(declare-function guix-packages-by-license "guix-ui-package")
(defun guix-license-insert-packages-button (entry)
"Insert button to display packages by license ENTRY."
(guix-info-insert-action-button
"Packages"
(lambda (btn)
(guix-packages-by-license (button-get btn 'license)))
"Show packages with this license"
'license (guix-entry-value entry 'name)))
(defun guix-license-insert-comment (entry)
"Insert 'comment' of a license ENTRY."
(let ((comment (guix-entry-value entry 'comment)))
(if (and comment
(string-match-p "^http" comment))
(guix-info-insert-value-simple comment 'guix-url)
(guix-info-insert-title-simple
(guix-info-param-title 'license 'comment))
(guix-info-insert-value-indent comment))))
;;; License 'list'
(guix-list-define-interface license
:buffer-name "*Guix Licenses*"
:get-entries-function 'guix-license-get-entries
:describe-function 'guix-license-list-describe
:format '((name nil 40 t)
(url guix-list-get-url 50 t))
:titles '((name . "License"))
:sort-key '(name))
(let ((map guix-license-list-mode-map))
(define-key map (kbd "RET") 'guix-license-list-show-packages))
(defun guix-license-list-describe (ids)
"Describe licenses with IDS (list of identifiers)."
(guix-buffer-display-entries
(guix-entries-by-ids ids (guix-buffer-current-entries))
'info 'license (cl-list* 'id ids) 'add))
(defun guix-license-list-show-packages ()
"Display packages with the license at point."
(interactive)
(guix-packages-by-license (guix-list-current-id)))
;;; Interactive commands
;;;###autoload
(defun guix-browse-license-url (license)
"Browse URL of a LICENSE."
(interactive (list (guix-read-license-name)))
(browse-url (guix-lookup-license-url license)))
;;;###autoload
(defun guix-licenses ()
"Display licenses of the Guix packages."
(interactive)
(guix-license-get-display 'all))
(provide 'guix-license)
;;; guix-license.el ends here
+328 -637
View File
File diff suppressed because it is too large Load Diff
+130 -37
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -58,11 +58,11 @@
(guix licenses)
(guix utils)
(guix ui)
(guix scripts graph)
(guix scripts lint)
(guix scripts package)
(guix scripts pull)
(gnu packages))
(gnu packages)
(gnu system))
(define-syntax-rule (first-or-false lst)
(and (not (null? lst))
@@ -86,13 +86,13 @@
(define (full-name->name+version spec)
"Given package specification SPEC with or without output,
return two values: name and version. For example, for SPEC
\"foo-0.9.1b:lib\", return \"foo\" and \"0.9.1b\"."
\"foo@0.9.1b:lib\", return \"foo\" and \"0.9.1b\"."
(let-values (((name version output)
(package-specification->name+version+output spec)))
(values name version)))
(define (name+version->full-name name version)
(string-append name "-" version))
(string-append name "@" version))
(define* (make-package-specification name #:optional version output)
(let ((full-name (if version
@@ -138,28 +138,26 @@ return two values: name and version. For example, for SPEC
(define (manifest-entries->package-specifications entries)
(map manifest-entry->package-specification entries))
(define (generation-package-specifications profile number)
"Return a list of package specifications for generation NUMBER."
(let ((manifest (profile-manifest
(generation-file-name profile number))))
(define (profile-package-specifications profile)
"Return a list of package specifications for PROFILE."
(let ((manifest (profile-manifest profile)))
(manifest-entries->package-specifications
(manifest-entries manifest))))
(define (generation-package-specifications+paths profile number)
"Return a list of package specifications and paths for generation NUMBER.
(define (profile->specifications+paths profile)
"Return a list of package specifications and paths for PROFILE.
Each element of the list is a list of the package specification and its path."
(let ((manifest (profile-manifest
(generation-file-name profile number))))
(let ((manifest (profile-manifest profile)))
(map (lambda (entry)
(list (manifest-entry->package-specification entry)
(manifest-entry-item entry)))
(manifest-entries manifest))))
(define (generation-difference profile number1 number2)
"Return a list of package specifications for outputs installed in generation
NUMBER1 and not installed in generation NUMBER2."
(let ((specs1 (generation-package-specifications profile number1))
(specs2 (generation-package-specifications profile number2)))
(define (profile-difference profile1 profile2)
"Return a list of package specifications for outputs installed in PROFILE1
and not installed in PROFILE2."
(let ((specs1 (profile-package-specifications profile1))
(specs2 (profile-package-specifications profile2)))
(lset-difference string=? specs1 specs2)))
(define (manifest-entries->hash-table entries)
@@ -265,7 +263,8 @@ Example:
"Return a list of full names of the packages from package INPUTS."
(filter-map (match-lambda
((_ (? package? package))
(package-full-name package))
(make-package-specification (package-name package)
(package-version package)))
((_ (? package? package) output)
(make-package-specification (package-name package)
(package-version package)
@@ -308,6 +307,7 @@ Example:
(description . ,package-description-string)
(home-url . ,package-home-page)
(outputs . ,package-outputs)
(systems . ,package-supported-systems)
(non-unique . ,(negate package-unique?))
(inputs . ,(lambda (pkg)
(package-inputs-names
@@ -404,6 +404,12 @@ MATCH-PARAMS is a list of parameters that REGEXP can match."
(let ((re (make-regexp regexp regexp/icase)))
(matching-packages (cut package-match? <> re))))
(define (packages-by-license license)
"Return a list of packages with LICENSE."
(matching-packages
(lambda (package)
(memq license (list-maybe (package-license package))))))
(define (all-available-packages)
"Return a list of all available packages."
(matching-packages (const #t)))
@@ -664,24 +670,27 @@ ENTRIES is a list of installed manifest entries."
(manifest-output-proc (apply-to-first manifest-output-patterns))
(regexp-proc (lambda (_ regexp params . __)
(packages-by-regexp regexp params)))
(license-proc (lambda (_ license-name)
(packages-by-license
(lookup-license license-name))))
(all-proc (lambda _ (all-available-packages)))
(newest-proc (lambda _ (newest-available-packages))))
`((package
(id . ,(apply-to-rest ids->package-patterns))
(name . ,(apply-to-rest specifications->package-patterns))
(installed . ,manifest-package-proc)
(generation . ,manifest-package-proc)
(obsolete . ,(apply-to-first obsolete-package-patterns))
(regexp . ,regexp-proc)
(license . ,license-proc)
(all-available . ,all-proc)
(newest-available . ,newest-proc))
(output
(id . ,(apply-to-rest ids->output-patterns))
(name . ,(apply-to-rest specifications->output-patterns))
(installed . ,manifest-output-proc)
(generation . ,manifest-output-proc)
(obsolete . ,(apply-to-first obsolete-output-patterns))
(regexp . ,regexp-proc)
(license . ,license-proc)
(all-available . ,all-proc)
(newest-available . ,newest-proc)))))
@@ -694,16 +703,13 @@ ENTRIES is a list of installed manifest entries."
search-type search-vals)
"Return information about packages or package outputs.
See 'entry-sexps' for details."
(let* ((profile (if (eq? search-type 'generation)
(generation-file-name profile (car search-vals))
profile))
(manifest (profile-manifest profile))
(let* ((manifest (profile-manifest profile))
(patterns (if (and (eq? entry-type 'output)
(eq? search-type 'generation-diff))
(eq? search-type 'profile-diff))
(match search-vals
((g1 g2)
((p1 p2)
(map specification->output-pattern
(generation-difference profile g1 g2)))
(profile-difference p1 p2)))
(_ '()))
(apply (patterns-maker entry-type search-type)
manifest search-vals)))
@@ -765,6 +771,38 @@ See 'entry-sexps' for details."
params)))
(map ->sexp generations)))
(define system-generation-boot-parameters
(memoize
(lambda (profile generation)
"Return boot parameters for PROFILE's system GENERATION."
(let* ((gen-file (generation-file-name profile generation))
(param-file (string-append gen-file "/parameters")))
(call-with-input-file param-file read-boot-parameters)))))
(define (system-generation-param-alist profile)
"Return an alist of system generation parameters and procedures for
PROFILE."
(append (generation-param-alist profile)
`((label . ,(lambda (gen)
(boot-parameters-label
(system-generation-boot-parameters
profile gen))))
(root-device . ,(lambda (gen)
(boot-parameters-root-device
(system-generation-boot-parameters
profile gen))))
(kernel . ,(lambda (gen)
(boot-parameters-kernel
(system-generation-boot-parameters
profile gen)))))))
(define (system-generation-sexps profile params search-type search-vals)
"Return an alist with information about system generations."
(let ((generations (find-generations profile search-type search-vals))
(->sexp (object-transformer (system-generation-param-alist profile)
params)))
(map ->sexp generations)))
;;; Getting package/output/generation entries (alists).
@@ -809,6 +847,9 @@ parameter/value pairs."
((generation)
(generation-sexps profile params
search-type search-vals))
((system-generation)
(system-generation-sexps profile params
search-type search-vals))
(else (entry-type-error entry-type))))
@@ -816,9 +857,7 @@ parameter/value pairs."
(define* (package->manifest-entry* package #:optional output)
(and package
(begin
(check-package-freshness package)
(package->manifest-entry package output))))
(package->manifest-entry package output)))
(define* (make-install-manifest-entries id #:optional output)
(package->manifest-entry* (package-by-id id) output))
@@ -905,7 +944,7 @@ OUTPUTS is a list of package outputs (may be an empty list)."
"~a packages in profile~%"
count)
count)
(display-search-paths entries profile))))))))))
(display-search-paths entries (list profile)))))))))))
(define (delete-generations* profile generations)
"Delete GENERATIONS from PROFILE.
@@ -915,10 +954,11 @@ GENERATIONS is a list of generation numbers."
(define (package-location-string id-or-name)
"Return a location string of a package with ID-OR-NAME."
(and-let* ((package (or (package-by-id id-or-name)
(first (packages-by-name id-or-name))))
(location (package-location package)))
(location->string location)))
(and=> (or (package-by-id id-or-name)
(match (packages-by-name id-or-name)
(() #f)
((package _ ...) package)))
(compose location->string package-location)))
(define (package-source-derivation->store-path derivation)
"Return a store path of the package source DERIVATION."
@@ -989,7 +1029,8 @@ Return #t if the shell command was executed successfully."
(define (graph-type-names)
"Return a list of names of available graph node types."
(map node-type-name %node-types))
(map (@ (guix graph) node-type-name)
(@ (guix scripts graph) %node-types)))
(define (refresh-updater-names)
"Return a list of names of available refresh updater types."
@@ -1012,3 +1053,55 @@ Return #t if the shell command was executed successfully."
;; See the comment to 'guix-package-names' function in "guix-popup.el".
(define (package-names-lists)
(map list (package-names)))
;;; Licenses
(define %licenses
(delay
(filter license?
(module-map (lambda (_ var)
(variable-ref var))
(resolve-interface '(guix licenses))))))
(define (licenses)
(force %licenses))
(define (license-names)
"Return a list of names of available licenses."
(map license-name (licenses)))
(define lookup-license
(memoize
(lambda (name)
"Return a license by its name."
(find (lambda (l)
(string=? name (license-name l)))
(licenses)))))
(define (lookup-license-uri name)
"Return a license URI by its name."
(and=> (lookup-license name)
license-uri))
(define %license-param-alist
`((id . ,license-name)
(name . ,license-name)
(url . ,license-uri)
(comment . ,license-comment)))
(define license->sexp
(object-transformer %license-param-alist))
(define (find-licenses search-type . search-values)
"Return a list of licenses depending on SEARCH-TYPE and SEARCH-VALUES."
(case search-type
((id name)
(let ((names search-values))
(filter-map lookup-license names)))
((all)
(licenses))))
(define (license-entries search-type . search-values)
(map license->sexp
(apply find-licenses search-type search-values)))
+50 -33
View File
@@ -31,12 +31,15 @@
(defvar guix-messages
`((package
(id
(0 "Packages not found.")
(1 "")
(many "%d packages." count))
,(lambda (_ entries ids)
(guix-message-packages-by-id entries 'package ids)))
(name
,(lambda (_ entries names)
(guix-message-packages-by-name entries 'package names)))
(license
,(lambda (_ entries licenses)
(apply #'guix-message-packages-by-license
entries 'package licenses)))
(regexp
(0 "No packages matching '%s'." val)
(1 "A single package matching '%s'." val)
@@ -56,23 +59,19 @@
(obsolete
(0 "No obsolete packages in profile '%s'." profile)
(1 "A single obsolete package in profile '%s'." profile)
(many "%d obsolete packages in profile '%s'." count profile))
(generation
(0 "No packages installed in generation %d of profile '%s'."
val profile)
(1 "A single package installed in generation %d of profile '%s'."
val profile)
(many "%d packages installed in generation %d of profile '%s'."
count val profile)))
(many "%d obsolete packages in profile '%s'." count profile)))
(output
(id
(0 "Package outputs not found.")
(1 "")
(many "%d package outputs." count))
,(lambda (_ entries ids)
(guix-message-packages-by-id entries 'output ids)))
(name
,(lambda (_ entries names)
(guix-message-packages-by-name entries 'output names)))
(license
,(lambda (_ entries licenses)
(apply #'guix-message-packages-by-license
entries 'output licenses)))
(regexp
(0 "No package outputs matching '%s'." val)
(1 "A single package output matching '%s'." val)
@@ -93,14 +92,7 @@
(0 "No obsolete package outputs in profile '%s'." profile)
(1 "A single obsolete package output in profile '%s'." profile)
(many "%d obsolete package outputs in profile '%s'." count profile))
(generation
(0 "No package outputs installed in generation %d of profile '%s'."
val profile)
(1 "A single package output installed in generation %d of profile '%s'."
val profile)
(many "%d package outputs installed in generation %d of profile '%s'."
count val profile))
(generation-diff
(profile-diff
guix-message-outputs-by-diff))
(generation
@@ -147,6 +139,22 @@
(guix-message-string-entry-type
entry-type 'plural)))))
(defun guix-message-packages-by-id (entries entry-type ids)
"Display a message for packages or outputs searched by IDS."
(let* ((count (length entries))
(str-beg (guix-message-string-entries count entry-type))
(str-end (if (> count 1)
(concat "with the following IDs: "
(mapconcat #'guix-get-string ids ", "))
(concat "with ID " (guix-get-string (car ids))))))
(if (zerop count)
(message "%s %s.
Most likely, Guix REPL was restarted, so IDs are not actual
anymore, because they live only during the REPL process.
Try \"M-x guix-search-by-name\"."
str-beg str-end)
(message "%s %s." str-beg str-end))))
(defun guix-message-packages-by-name (entries entry-type names)
"Display a message for packages or outputs searched by NAMES."
(let* ((count (length entries))
@@ -159,6 +167,13 @@
(guix-message-string-name (car names))))))
(message "%s %s." str-beg str-end)))
(defun guix-message-packages-by-license (entries entry-type license)
"Display a message for packages or outputs searched by LICENSE."
(let* ((count (length entries))
(str-beg (guix-message-string-entries count entry-type))
(str-end (format "with license '%s'" license)))
(message "%s %s." str-beg str-end)))
(defun guix-message-generations-by-time (profile entries times)
"Display a message for generations searched by TIMES."
(let* ((count (length entries))
@@ -169,25 +184,27 @@
"matching time period '%s' - '%s'.")
str-beg profile time-beg time-end)))
(defun guix-message-outputs-by-diff (profile entries generations)
"Display a message for outputs searched by GENERATIONS difference."
(defun guix-message-outputs-by-diff (_ entries profiles)
"Display a message for outputs searched by PROFILES difference."
(let* ((count (length entries))
(str-beg (guix-message-string-entries count 'output))
(gen1 (car generations))
(gen2 (cadr generations)))
(profile1 (car profiles))
(profile2 (cadr profiles)))
(cl-multiple-value-bind (new old str-action)
(if (> gen1 gen2)
(list gen1 gen2 "added to")
(list gen2 gen1 "removed from"))
(message (concat "%s %s generation %d comparing with "
"generation %d of profile '%s'.")
str-beg str-action new old profile))))
(if (string-lessp profile2 profile1)
(list profile1 profile2 "added to")
(list profile2 profile1 "removed from"))
(message "%s %s profile '%s' comparing with profile '%s'."
str-beg str-action new old))))
(defun guix-result-message (profile entries entry-type
search-type search-vals)
"Display an appropriate message after displaying ENTRIES."
(let* ((type-spec (guix-assq-value guix-messages
entry-type search-type))
(if (eq entry-type 'system-generation)
'generation
entry-type)
search-type))
(fun-or-count-spec (car type-spec)))
(if (functionp fun-or-count-spec)
(funcall fun-or-count-spec profile entries search-vals)
+5 -2
View File
@@ -262,7 +262,8 @@ INPUT is the current partially completed string."
(complete (guix-pcomplete-all-packages)))
((option? "-p" "--profile")
(complete* (pcomplete-dirs)))
((option? "-m" "--manifest")
((or (option? "-f" "--install-from-file")
(option? "-m" "--manifest"))
(complete* (pcomplete-entries)))))
((and (command? "archive" "build" "size")
@@ -270,7 +271,9 @@ INPUT is the current partially completed string."
(complete* guix-help-system-types))
((and (command? "build")
(option? "-r" "--root"))
(or (option? "-f" "--file")
(option? "-r" "--root")
(string= "--with-source" option)))
(complete* (pcomplete-entries)))
((and (command? "graph")
+14 -1
View File
@@ -1,6 +1,7 @@
;;; guix-profiles.el --- Guix profiles
;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;; This file is part of GNU Guix.
@@ -25,6 +26,10 @@
(expand-file-name "~/.guix-profile")
"User profile.")
(defvar guix-system-profile
(concat guix-config-state-directory "/profiles/system")
"System profile.")
(defvar guix-default-profile
(concat guix-config-state-directory
"/profiles/per-user/"
@@ -35,6 +40,14 @@
(defvar guix-current-profile guix-default-profile
"Current profile.")
(defvar guix-system-profile-regexp
(concat "\\`" (regexp-quote guix-system-profile))
"Regexp matching system profiles.")
(defun guix-system-profile? (profile)
"Return non-nil, if PROFILE is a system one."
(string-match-p guix-system-profile-regexp profile))
(defun guix-profile-prompt (&optional default)
"Prompt for profile and return it.
Use DEFAULT as a start directory. If it is nil, use
+35 -81
View File
@@ -1,6 +1,6 @@
;;; guix-read.el --- Minibuffer readers
;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
@@ -26,95 +26,44 @@
(require 'guix-help-vars)
(require 'guix-utils)
(require 'guix-base)
(require 'guix-backend)
(require 'guix-guile)
(defun guix-read-file-name (prompt &optional dir default-filename
mustmatch initial predicate)
"Read file name.
This function is similar to `read-file-name' except it also
expands the file name."
(expand-file-name (read-file-name prompt dir default-filename
mustmatch initial predicate)))
;;; Receivable lists of packages, lint checkers, etc.
(defmacro guix-define-reader (name read-fun completions prompt)
"Define NAME function to read from minibuffer.
READ-FUN may be `completing-read', `completing-read-multiple' or
another function with the same arguments."
`(defun ,name (&optional prompt initial-contents)
(,read-fun ,(if prompt
`(or prompt ,prompt)
'prompt)
,completions nil nil initial-contents)))
(guix-memoized-defun guix-graph-type-names ()
"Return a list of names of available graph node types."
(guix-eval-read (guix-make-guile-expression 'graph-type-names)))
(defmacro guix-define-readers (&rest args)
"Define reader functions.
(guix-memoized-defun guix-refresh-updater-names ()
"Return a list of names of available refresh updater types."
(guix-eval-read (guix-make-guile-expression 'refresh-updater-names)))
ARGS should have a form [KEYWORD VALUE] ... The following
keywords are available:
(guix-memoized-defun guix-lint-checker-names ()
"Return a list of names of available lint checkers."
(guix-eval-read (guix-make-guile-expression 'lint-checker-names)))
- `completions-var' - variable used to get completions.
(guix-memoized-defun guix-package-names ()
"Return a list of names of available packages."
(sort
;; Work around <https://github.com/jaor/geiser/issues/64>:
;; list of strings is parsed much slower than list of lists,
;; so we use 'package-names-lists' instead of 'package-names'.
- `completions-getter' - function used to get completions.
;; (guix-eval-read (guix-make-guile-expression 'package-names))
- `single-reader', `single-prompt' - name of a function to read
a single value, and a prompt for it.
(mapcar #'car
(guix-eval-read (guix-make-guile-expression
'package-names-lists)))
#'string<))
- `multiple-reader', `multiple-prompt' - name of a function to
read multiple values, and a prompt for it.
(guix-memoized-defun guix-license-names ()
"Return a list of names of available licenses."
(guix-eval-read (guix-make-guile-expression 'license-names)))
- `multiple-separator' - if specified, another
`<multiple-reader-name>-string' function returning a string
of multiple values separated the specified separator will be
defined."
(let (completions-var
completions-getter
single-reader
single-prompt
multiple-reader
multiple-prompt
multiple-separator)
;; Process the keyword args.
(while (keywordp (car args))
(pcase (pop args)
(`:completions-var (setq completions-var (pop args)))
(`:completions-getter (setq completions-getter (pop args)))
(`:single-reader (setq single-reader (pop args)))
(`:single-prompt (setq single-prompt (pop args)))
(`:multiple-reader (setq multiple-reader (pop args)))
(`:multiple-prompt (setq multiple-prompt (pop args)))
(`:multiple-separator (setq multiple-separator (pop args)))
(_ (pop args))))
(let ((completions
(cond ((and completions-var completions-getter)
`(or ,completions-var
(setq ,completions-var
(funcall ',completions-getter))))
(completions-var
completions-var)
(completions-getter
`(funcall ',completions-getter)))))
`(progn
,(when (and completions-var
(not (boundp completions-var)))
`(defvar ,completions-var nil))
,(when single-reader
`(guix-define-reader ,single-reader completing-read
,completions ,single-prompt))
,(when multiple-reader
`(guix-define-reader ,multiple-reader completing-read-multiple
,completions ,multiple-prompt))
,(when (and multiple-reader multiple-separator)
(let ((name (intern (concat (symbol-name multiple-reader)
"-string"))))
`(defun ,name (&optional prompt initial-contents)
(guix-concat-strings
(,multiple-reader prompt initial-contents)
,multiple-separator))))))))
;;; Readers
(guix-define-readers
:completions-var guix-help-system-types
@@ -177,6 +126,11 @@ keywords are available:
:multiple-prompt "Package,s: "
:multiple-separator " ")
(guix-define-readers
:completions-getter guix-license-names
:single-reader guix-read-license-name
:single-prompt "License: ")
(provide 'guix-read)
;;; guix-read.el ends here
+456
View File
@@ -0,0 +1,456 @@
;;; guix-ui-generation.el --- Interface for displaying generations -*- lexical-binding: t -*-
;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides an interface for displaying profile generations in
;; 'list' and 'info' buffers, and commands for working with them.
;;; Code:
(require 'cl-lib)
(require 'guix-buffer)
(require 'guix-list)
(require 'guix-info)
(require 'guix-ui)
(require 'guix-ui-package)
(require 'guix-base)
(require 'guix-backend)
(require 'guix-guile)
(require 'guix-entry)
(require 'guix-utils)
(require 'guix-profiles)
(guix-ui-define-entry-type generation)
(defun guix-generation-get-display (profile search-type &rest search-values)
"Search for generations and show results.
If PROFILE is nil, use `guix-current-profile'.
See `guix-ui-get-entries' for the meaning of SEARCH-TYPE and
SEARCH-VALUES."
(apply #'guix-list-get-display-entries
'generation
(or profile guix-current-profile)
search-type search-values))
(defun guix-delete-generations (profile generations
&optional operation-buffer)
"Delete GENERATIONS from PROFILE.
Each element from GENERATIONS is a generation number."
(when (or (not guix-operation-confirm)
(y-or-n-p
(let ((count (length generations)))
(if (> count 1)
(format "Delete %d generations from profile '%s'? "
count profile)
(format "Delete generation %d from profile '%s'? "
(car generations) profile)))))
(guix-eval-in-repl
(guix-make-guile-expression
'delete-generations* profile generations)
operation-buffer)))
(defun guix-switch-to-generation (profile generation
&optional operation-buffer)
"Switch PROFILE to GENERATION."
(when (or (not guix-operation-confirm)
(y-or-n-p (format "Switch profile '%s' to generation %d? "
profile generation)))
(guix-eval-in-repl
(guix-make-guile-expression
'switch-to-generation* profile generation)
operation-buffer)))
(defun guix-system-generation? ()
"Return non-nil, if current generation is a system one."
(eq (guix-buffer-current-entry-type)
'system-generation))
(defun guix-generation-current-packages-profile (&optional generation)
"Return a directory where packages are installed for the
current profile's GENERATION."
(guix-packages-profile (guix-ui-current-profile)
generation
(guix-system-generation?)))
;;; Generation 'info'
(guix-ui-info-define-interface generation
:buffer-name "*Guix Generation Info*"
:format '((number format guix-generation-info-insert-number)
(prev-number format (format))
(current format guix-generation-info-insert-current)
(path simple (indent guix-file))
(time format (time)))
:titles '((path . "File name")
(prev-number . "Previous number")))
(defface guix-generation-info-number
'((t :inherit font-lock-keyword-face))
"Face used for a number of a generation."
:group 'guix-generation-info-faces)
(defface guix-generation-info-current
'((t :inherit guix-package-info-installed-outputs))
"Face used if a generation is the current one."
:group 'guix-generation-info-faces)
(defface guix-generation-info-not-current
'((t nil))
"Face used if a generation is not the current one."
:group 'guix-generation-info-faces)
(defun guix-generation-info-insert-number (number &optional _)
"Insert generation NUMBER and action buttons."
(guix-info-insert-value-format number 'guix-generation-info-number)
(guix-info-insert-indent)
(guix-info-insert-action-button
"Packages"
(lambda (btn)
(guix-buffer-get-display-entries
'list guix-package-list-type
(list (guix-generation-current-packages-profile
(button-get btn 'number))
'installed)
'add))
"Show installed packages for this generation"
'number number)
(guix-info-insert-indent)
(guix-info-insert-action-button
"Delete"
(lambda (btn)
(guix-delete-generations (guix-ui-current-profile)
(list (button-get btn 'number))
(current-buffer)))
"Delete this generation"
'number number))
(defun guix-generation-info-insert-current (val entry)
"Insert boolean value VAL showing whether this generation is current."
(if val
(guix-info-insert-value-format "Yes" 'guix-generation-info-current)
(guix-info-insert-value-format "No" 'guix-generation-info-not-current)
(guix-info-insert-indent)
(guix-info-insert-action-button
"Switch"
(lambda (btn)
(guix-switch-to-generation (guix-ui-current-profile)
(button-get btn 'number)
(current-buffer)))
"Switch to this generation (make it the current one)"
'number (guix-entry-value entry 'number))))
;;; Generation 'list'
(guix-ui-list-define-interface generation
:buffer-name "*Guix Generation List*"
:format '((number nil 5 guix-list-sort-numerically-0 :right-align t)
(current guix-generation-list-get-current 10 t)
(time guix-list-get-time 20 t)
(path guix-list-get-file-name 30 t))
:titles '((number . "N."))
:sort-key '(number . t)
:marks '((delete . ?D)))
(let ((map guix-generation-list-mode-map))
(define-key map (kbd "RET") 'guix-generation-list-show-packages)
(define-key map (kbd "+") 'guix-generation-list-show-added-packages)
(define-key map (kbd "-") 'guix-generation-list-show-removed-packages)
(define-key map (kbd "=") 'guix-generation-list-diff)
(define-key map (kbd "D") 'guix-generation-list-diff)
(define-key map (kbd "e") 'guix-generation-list-ediff)
(define-key map (kbd "x") 'guix-generation-list-execute)
(define-key map (kbd "s") 'guix-generation-list-switch)
(define-key map (kbd "c") 'guix-generation-list-switch)
(define-key map (kbd "d") 'guix-generation-list-mark-delete))
(defun guix-generation-list-get-current (val &optional _)
"Return string from VAL showing whether this generation is current.
VAL is a boolean value."
(if val "(current)" ""))
(defun guix-generation-list-switch ()
"Switch current profile to the generation at point."
(interactive)
(let* ((entry (guix-list-current-entry))
(current (guix-entry-value entry 'current))
(number (guix-entry-value entry 'number)))
(if current
(user-error "This generation is already the current one")
(guix-switch-to-generation (guix-ui-current-profile)
number (current-buffer)))))
(defun guix-generation-list-show-packages ()
"List installed packages for the generation at point."
(interactive)
(guix-package-get-display
(guix-generation-current-packages-profile (guix-list-current-id))
'installed))
(defun guix-generation-list-generations-to-compare ()
"Return a sorted list of 2 marked generations for comparing."
(let ((numbers (guix-list-get-marked-id-list 'general)))
(if (/= (length numbers) 2)
(user-error "2 generations should be marked for comparing")
(sort numbers #'<))))
(defun guix-generation-list-profiles-to-compare ()
"Return a sorted list of 2 marked generation profiles for comparing."
(mapcar #'guix-generation-current-packages-profile
(guix-generation-list-generations-to-compare)))
(defun guix-generation-list-show-added-packages ()
"List package outputs added to the latest marked generation.
If 2 generations are marked with \\[guix-list-mark], display
outputs installed in the latest marked generation that were not
installed in the other one."
(interactive)
(guix-buffer-get-display-entries
'list 'output
(cl-list* (guix-ui-current-profile)
'profile-diff
(reverse (guix-generation-list-profiles-to-compare)))
'add))
(defun guix-generation-list-show-removed-packages ()
"List package outputs removed from the latest marked generation.
If 2 generations are marked with \\[guix-list-mark], display
outputs not installed in the latest marked generation that were
installed in the other one."
(interactive)
(guix-buffer-get-display-entries
'list 'output
(cl-list* (guix-ui-current-profile)
'profile-diff
(guix-generation-list-profiles-to-compare))
'add))
(defun guix-generation-list-compare (diff-fun gen-fun)
"Run GEN-FUN on the 2 marked generations and run DIFF-FUN on the results."
(cl-multiple-value-bind (gen1 gen2)
(guix-generation-list-generations-to-compare)
(funcall diff-fun
(funcall gen-fun gen1)
(funcall gen-fun gen2))))
(defun guix-generation-list-ediff-manifests ()
"Run Ediff on manifests of the 2 marked generations."
(interactive)
(guix-generation-list-compare
#'ediff-files
#'guix-profile-generation-manifest-file))
(defun guix-generation-list-diff-manifests ()
"Run Diff on manifests of the 2 marked generations."
(interactive)
(guix-generation-list-compare
#'guix-diff
#'guix-profile-generation-manifest-file))
(defun guix-generation-list-ediff-packages ()
"Run Ediff on package outputs installed in the 2 marked generations."
(interactive)
(guix-generation-list-compare
#'ediff-buffers
#'guix-profile-generation-packages-buffer))
(defun guix-generation-list-diff-packages ()
"Run Diff on package outputs installed in the 2 marked generations."
(interactive)
(guix-generation-list-compare
#'guix-diff
#'guix-profile-generation-packages-buffer))
(defun guix-generation-list-ediff (arg)
"Run Ediff on package outputs installed in the 2 marked generations.
With ARG, run Ediff on manifests of the marked generations."
(interactive "P")
(if arg
(guix-generation-list-ediff-manifests)
(guix-generation-list-ediff-packages)))
(defun guix-generation-list-diff (arg)
"Run Diff on package outputs installed in the 2 marked generations.
With ARG, run Diff on manifests of the marked generations."
(interactive "P")
(if arg
(guix-generation-list-diff-manifests)
(guix-generation-list-diff-packages)))
(defun guix-generation-list-mark-delete (&optional arg)
"Mark the current generation for deletion and move to the next line.
With ARG, mark all generations for deletion."
(interactive "P")
(if arg
(guix-list-mark-all 'delete)
(guix-list--mark 'delete t)))
(defun guix-generation-list-execute ()
"Delete marked generations."
(interactive)
(let ((marked (guix-list-get-marked-id-list 'delete)))
(or marked
(user-error "No generations marked for deletion"))
(guix-delete-generations (guix-ui-current-profile)
marked (current-buffer))))
;;; Inserting packages to compare generations
(defcustom guix-generation-packages-buffer-name-function
#'guix-generation-packages-buffer-name-default
"Function used to define name of a buffer with generation packages.
This function is called with 2 arguments: PROFILE (string) and
GENERATION (number)."
:type '(choice (function-item guix-generation-packages-buffer-name-default)
(function-item guix-generation-packages-buffer-name-long)
(function :tag "Other function"))
:group 'guix-generation)
(defcustom guix-generation-packages-update-buffer t
"If non-nil, always update list of packages during comparing generations.
If nil, generation packages are received only once. So when you
compare generation 1 and generation 2, the packages for both
generations will be received. Then if you compare generation 1
and generation 3, only the packages for generation 3 will be
received. Thus if you use comparing of different generations a
lot, you may set this variable to nil to improve the
performance."
:type 'boolean
:group 'guix-generation)
(defvar guix-generation-output-name-width 30
"Width of an output name \"column\".
This variable is used in auxiliary buffers for comparing generations.")
(defun guix-generation-packages (profile)
"Return a list of sorted packages installed in PROFILE.
Each element of the list is a list of the package specification
and its store path."
(let ((names+paths (guix-eval-read
(guix-make-guile-expression
'profile->specifications+paths profile))))
(sort names+paths
(lambda (a b)
(string< (car a) (car b))))))
(defun guix-generation-packages-buffer-name-default (profile generation)
"Return name of a buffer for displaying GENERATION's package outputs.
Use base name of PROFILE file name."
(let ((profile-name (file-name-base (directory-file-name profile))))
(format "*Guix %s: generation %s*"
profile-name generation)))
(defun guix-generation-packages-buffer-name-long (profile generation)
"Return name of a buffer for displaying GENERATION's package outputs.
Use the full PROFILE file name."
(format "*Guix generation %s (%s)*"
generation profile))
(defun guix-generation-packages-buffer-name (profile generation)
"Return name of a buffer for displaying GENERATION's package outputs."
(funcall guix-generation-packages-buffer-name-function
profile generation))
(defun guix-generation-insert-package (name path)
"Insert package output NAME and store PATH at point."
(insert name)
(indent-to guix-generation-output-name-width 2)
(insert path "\n"))
(defun guix-generation-insert-packages (buffer profile)
"Insert package outputs installed in PROFILE in BUFFER."
(with-current-buffer buffer
(setq buffer-read-only nil
indent-tabs-mode nil)
(erase-buffer)
(mapc (lambda (name+path)
(guix-generation-insert-package
(car name+path) (cadr name+path)))
(guix-generation-packages profile))))
(defun guix-generation-packages-buffer (profile generation &optional system?)
"Return buffer with package outputs installed in PROFILE's GENERATION.
Create the buffer if needed."
(let ((buf-name (guix-generation-packages-buffer-name
profile generation)))
(or (and (null guix-generation-packages-update-buffer)
(get-buffer buf-name))
(let ((buf (get-buffer-create buf-name)))
(guix-generation-insert-packages
buf
(guix-packages-profile profile generation system?))
buf))))
(defun guix-profile-generation-manifest-file (generation)
"Return the file name of a GENERATION's manifest.
GENERATION is a generation number of the current profile."
(guix-manifest-file (guix-ui-current-profile)
generation
(guix-system-generation?)))
(defun guix-profile-generation-packages-buffer (generation)
"Insert GENERATION's package outputs in a buffer and return it.
GENERATION is a generation number of the current profile."
(guix-generation-packages-buffer (guix-ui-current-profile)
generation
(guix-system-generation?)))
;;; Interactive commands
;;;###autoload
(defun guix-generations (&optional profile)
"Display information about all generations.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive (list (guix-ui-read-profile)))
(guix-generation-get-display profile 'all))
;;;###autoload
(defun guix-last-generations (number &optional profile)
"Display information about last NUMBER generations.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-number "The number of last generations: ")
(guix-ui-read-profile)))
(guix-generation-get-display profile 'last number))
;;;###autoload
(defun guix-generations-by-time (from to &optional profile)
"Display information about generations created between FROM and TO.
FROM and TO should be time values.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (guix-read-date "Find generations (from): ")
(guix-read-date "Find generations (to): ")
(guix-ui-read-profile)))
(guix-generation-get-display profile 'time
(float-time from)
(float-time to)))
(provide 'guix-ui-generation)
;;; guix-ui-generation.el ends here
File diff suppressed because it is too large Load Diff
+105
View File
@@ -0,0 +1,105 @@
;;; guix-ui-system-generation.el --- Interface for displaying system generations -*- lexical-binding: t -*-
;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides an interface for displaying system generations
;; in 'list' and 'info' buffers, and commands for working with them.
;;; Code:
(require 'cl-lib)
(require 'guix-list)
(require 'guix-ui)
(require 'guix-ui-generation)
(require 'guix-profiles)
(guix-ui-define-entry-type system-generation)
(defun guix-system-generation-get-display (search-type &rest search-values)
"Search for system generations and show results.
See `guix-ui-get-entries' for the meaning of SEARCH-TYPE and
SEARCH-VALUES."
(apply #'guix-list-get-display-entries
'system-generation
guix-system-profile
search-type search-values))
;;; System generation 'info'
(guix-ui-info-define-interface system-generation
:buffer-name "*Guix Generation Info*"
:format '((number format guix-generation-info-insert-number)
(label format (format))
(prev-number format (format))
(current format guix-generation-info-insert-current)
(path format (format guix-file))
(time format (time))
(root-device format (format))
(kernel format (format guix-file)))
:titles guix-generation-info-titles)
;;; System generation 'list'
;; FIXME It is better to make `guix-generation-list-shared-map' with
;; common keys for both usual and system generations.
(defvar guix-system-generation-list-mode-map
(copy-keymap guix-generation-list-mode-map)
"Keymap for `guix-system-generation-list-mode' buffers.")
(guix-ui-list-define-interface system-generation
:buffer-name "*Guix Generation List*"
:format '((number nil 5 guix-list-sort-numerically-0 :right-align t)
(current guix-generation-list-get-current 10 t)
(label nil 40 t)
(time guix-list-get-time 20 t)
(path guix-list-get-file-name 30 t))
:titles guix-generation-list-titles
:sort-key '(number . t)
:marks '((delete . ?D)))
;;; Interactive commands
;;;###autoload
(defun guix-system-generations ()
"Display information about system generations."
(interactive)
(guix-system-generation-get-display 'all))
;;;###autoload
(defun guix-last-system-generations (number)
"Display information about last NUMBER of system generations."
(interactive "nThe number of last generations: ")
(guix-system-generation-get-display 'last number))
;;;###autoload
(defun guix-system-generations-by-time (from to)
"Display information about system generations created between FROM and TO."
(interactive
(list (guix-read-date "Find generations (from): ")
(guix-read-date "Find generations (to): ")))
(guix-system-generation-get-display
'time (float-time from) (float-time to)))
(provide 'guix-ui-system-generation)
;;; guix-ui-system-generation.el ends here
+334
View File
@@ -0,0 +1,334 @@
;;; guix-ui.el --- Common code for Guix package management interface -*- lexical-binding: t -*-
;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides some general code for 'list'/'info' interfaces for
;; packages and generations.
;;; Code:
(require 'cl-lib)
(require 'guix-backend)
(require 'guix-buffer)
(require 'guix-guile)
(require 'guix-utils)
(require 'guix-messages)
(require 'guix-profiles)
(guix-define-groups ui
:group-doc "\
Settings for 'ui' (Guix package management) buffers.
This group includes settings for displaying packages, outputs and
generations in 'list' and 'info' buffers.")
(defvar guix-ui-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "M") 'guix-apply-manifest)
(define-key map (kbd "C-c C-z") 'guix-switch-to-repl)
map)
"Parent keymap for Guix package/generation buffers.")
(guix-buffer-define-current-args-accessors
"guix-ui-current" "profile" "search-type" "search-values")
(defun guix-ui-read-profile ()
"Return `guix-current-profile' or prompt for it.
This function is intended for using in `interactive' forms."
(if current-prefix-arg
(guix-profile-prompt)
guix-current-profile))
(defun guix-ui-get-entries (profile entry-type search-type search-values
&optional params)
"Receive ENTRY-TYPE entries for PROFILE.
Call an appropriate scheme procedure and return a list of entries.
ENTRY-TYPE should be one of the following symbols: `package',
`output' or `generation'.
SEARCH-TYPE may be one of the following symbols:
- If ENTRY-TYPE is `package' or `output': `id', `name', `regexp',
`all-available', `newest-available', `installed', `obsolete',
`generation'.
- If ENTRY-TYPE is `generation': `id', `last', `all', `time'.
PARAMS is a list of parameters for receiving. If nil, get data
with all available parameters."
(guix-eval-read
(guix-make-guile-expression
'entries
profile params entry-type search-type search-values)))
(defun guix-ui-list-describe (ids)
"Describe 'ui' entries with IDS (list of identifiers)."
(guix-buffer-get-display-entries
'info (guix-buffer-current-entry-type)
(cl-list* (guix-ui-current-profile) 'id ids)
'add))
;;; Buffers and auto updating
(defcustom guix-ui-update-after-operation 'current
"Define what kind of data to update after executing an operation.
After successful executing an operation in the Guix REPL (for
example after installing a package), the data in Guix buffers
will or will not be automatically updated depending on a value of
this variable.
If nil, update nothing (do not revert any buffer).
If `current', update the buffer from which an operation was performed.
If `all', update all Guix buffers (not recommended)."
:type '(choice (const :tag "Do nothing" nil)
(const :tag "Update operation buffer" current)
(const :tag "Update all Guix buffers" all))
:group 'guix-ui)
(defcustom guix-ui-buffer-name-function
#'guix-ui-buffer-name-default
"Function used to define a name of a Guix buffer.
The function is called with 2 arguments: BASE-NAME and PROFILE."
:type '(choice (function-item guix-ui-buffer-name-default)
(function-item guix-ui-buffer-name-simple)
(function :tag "Other function"))
:group 'guix-ui)
(defun guix-ui-buffer-name-simple (base-name &rest _)
"Return BASE-NAME."
base-name)
;; TODO separate '*...*' logic from the real profile appending. Also add
;; another function to return '*Guix ...: /full/path/to/profile*' name.
(defun guix-ui-buffer-name-default (base-name profile)
"Return buffer name by appending BASE-NAME and PROFILE's base file name."
(let ((profile-name (file-name-base (directory-file-name profile)))
(re (rx string-start
(group (? "*"))
(group (*? any))
(group (? "*"))
string-end)))
(or (string-match re base-name)
(error "Unexpected error in defining guix buffer name"))
(let ((first* (match-string 1 base-name))
(name-body (match-string 2 base-name))
(last* (match-string 3 base-name)))
;; Handle the case when buffer name is wrapped by '*'.
(if (and (string= "*" first*)
(string= "*" last*))
(concat "*" name-body ": " profile-name "*")
(concat base-name ": " profile-name)))))
(defun guix-ui-buffer-name (base-name profile)
"Return Guix buffer name based on BASE-NAME and profile.
See `guix-ui-buffer-name-function' for details."
(funcall guix-ui-buffer-name-function
base-name profile))
(defun guix-ui-buffer? (&optional buffer modes)
"Return non-nil if BUFFER mode is derived from any of the MODES.
If BUFFER is nil, check current buffer.
If MODES is nil, use `guix-list-mode' and `guix-info-mode'."
(with-current-buffer (or buffer (current-buffer))
(apply #'derived-mode-p
(or modes '(guix-list-mode guix-info-mode)))))
(defun guix-ui-buffers (&optional modes)
"Return a list of all buffers with major modes derived from MODES.
If MODES is nil, return list of all Guix 'list' and 'info' buffers."
(cl-remove-if-not (lambda (buf)
(guix-ui-buffer? buf modes))
(buffer-list)))
(defun guix-ui-update-buffer (buffer)
"Update data in a 'list' or 'info' BUFFER."
(with-current-buffer buffer
(guix-buffer-revert nil t)))
(defun guix-ui-update-buffers-after-operation ()
"Update buffers after Guix operation if needed.
See `guix-ui-update-after-operation' for details."
(let ((to-update
(and guix-operation-buffer
(cl-case guix-ui-update-after-operation
(current (and (buffer-live-p guix-operation-buffer)
(guix-ui-buffer? guix-operation-buffer)
(list guix-operation-buffer)))
(all (guix-ui-buffers))))))
(setq guix-operation-buffer nil)
(mapc #'guix-ui-update-buffer to-update)))
(add-hook 'guix-after-repl-operation-hook
'guix-ui-update-buffers-after-operation)
;;; Interface definers
(defmacro guix-ui-define-entry-type (entry-type &rest args)
"Define general code for ENTRY-TYPE.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
The rest keyword arguments are passed to
`guix-define-entry-type' macro."
(declare (indent 1))
`(guix-define-entry-type ,entry-type
:parent-group guix-ui
:parent-faces-group guix-ui-faces
,@args))
(defmacro guix-ui-define-interface (buffer-type entry-type &rest args)
"Define BUFFER-TYPE interface for displaying ENTRY-TYPE entries.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
In the following description TYPE means ENTRY-TYPE-BUFFER-TYPE.
Required keywords:
- `:buffer-name' - base part of a buffer name. It is used in a
generated `guix-TYPE-buffer-name' function; see
`guix-ui-buffer-name' for details.
Optional keywords:
- `:required' - default value of the generated
`guix-TYPE-required-params' variable.
The rest keyword arguments are passed to
`guix-BUFFER-TYPE-define-interface' macro.
Along with the mentioned definitions, this macro also defines:
- `guix-TYPE-mode-map' - keymap based on `guix-ui-map' and
`guix-BUFFER-TYPE-mode-map'.
- `guix-TYPE-get-entries' - a wrapper around `guix-ui-get-entries'.
- `guix-TYPE-message' - a wrapper around `guix-result-message'."
(declare (indent 2))
(let* ((entry-type-str (symbol-name entry-type))
(buffer-type-str (symbol-name buffer-type))
(prefix (concat "guix-" entry-type-str "-"
buffer-type-str))
(mode-str (concat prefix "-mode"))
(mode-map (intern (concat mode-str "-map")))
(parent-map (intern (format "guix-%s-mode-map"
buffer-type-str)))
(required-var (intern (concat prefix "-required-params")))
(buffer-name-fun (intern (concat prefix "-buffer-name")))
(get-fun (intern (concat prefix "-get-entries")))
(message-fun (intern (concat prefix "-message")))
(displayed-fun (intern (format "guix-%s-displayed-params"
buffer-type-str)))
(definer (intern (format "guix-%s-define-interface"
buffer-type-str))))
(guix-keyword-args-let args
((buffer-name-val :buffer-name)
(required-val :required ''(id)))
`(progn
(defvar ,mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent
map (make-composed-keymap ,parent-map guix-ui-map))
map)
,(format "Keymap for `%s' buffers." mode-str))
(defvar ,required-var ,required-val
,(format "\
List of the required '%s' parameters.
These parameters are received by `%S'
along with the displayed parameters.
Do not remove `id' from this list as it is required for
identifying an entry."
entry-type-str get-fun))
(defun ,buffer-name-fun (profile &rest _)
,(format "\
Return a name of '%s' buffer for displaying '%s' entries.
See `guix-ui-buffer-name' for details."
buffer-type-str entry-type-str)
(guix-ui-buffer-name ,buffer-name-val profile))
(defun ,get-fun (profile search-type &rest search-values)
,(format "\
Receive '%s' entries for displaying them in '%s' buffer.
See `guix-ui-get-entries' for details."
entry-type-str buffer-type-str)
(guix-ui-get-entries
profile ',entry-type search-type search-values
(cl-union ,required-var
(,displayed-fun ',entry-type))))
(defun ,message-fun (entries profile search-type
&rest search-values)
,(format "\
Display a message after showing '%s' entries."
entry-type-str)
(guix-result-message
profile entries ',entry-type search-type search-values))
(,definer ,entry-type
:get-entries-function ',get-fun
:message-function ',message-fun
:buffer-name ',buffer-name-fun
,@%foreign-args)))))
(defmacro guix-ui-info-define-interface (entry-type &rest args)
"Define 'info' interface for displaying ENTRY-TYPE entries.
See `guix-ui-define-interface'."
(declare (indent 1))
`(guix-ui-define-interface info ,entry-type
,@args))
(defmacro guix-ui-list-define-interface (entry-type &rest args)
"Define 'list' interface for displaying ENTRY-TYPE entries.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
Optional keywords:
- `:describe-function' - default value of the generated
`guix-ENTRY-TYPE-list-describe-function' variable (if not
specified, use `guix-ui-list-describe').
The rest keyword arguments are passed to
`guix-ui-define-interface' macro."
(declare (indent 1))
(guix-keyword-args-let args
((describe-val :describe-function))
`(guix-ui-define-interface list ,entry-type
:describe-function ,(or describe-val ''guix-ui-list-describe)
,@args)))
(defvar guix-ui-font-lock-keywords
(eval-when-compile
`((,(rx "(" (group (or "guix-ui-define-entry-type"
"guix-ui-define-interface"
"guix-ui-info-define-interface"
"guix-ui-list-define-interface"))
symbol-end)
. 1))))
(font-lock-add-keywords 'emacs-lisp-mode guix-ui-font-lock-keywords)
(provide 'guix-ui)
;;; guix-ui.el ends here
+268 -12
View File
@@ -64,6 +64,17 @@ Use `guix-time-format'."
"Return one-line string from a multi-line STR."
(replace-regexp-in-string "\n" " " str))
(defmacro guix-with-indent (indent &rest body)
"Evaluate BODY and indent inserted text by INDENT number of spaces."
(declare (indent 1) (debug t))
(let ((region-beg-var (make-symbol "region-beg"))
(indent-var (make-symbol "indent")))
`(let ((,region-beg-var (point))
(,indent-var ,indent))
,@body
(unless (zerop ,indent-var)
(indent-rigidly ,region-beg-var (point) ,indent-var)))))
(defun guix-format-insert (val &optional face format)
"Convert VAL into a string and insert it at point.
If FACE is non-nil, propertize VAL with FACE.
@@ -93,6 +104,28 @@ See `insert-text-button' for the meaning of PROPERTIES."
:type (or type 'button)
properties)))
(defun guix-buttonize (value button-type separator &rest properties)
"Make BUTTON-TYPE button(s) from VALUE.
Return a string with button(s).
VALUE should be a string or a list of strings. If it is a list
of strings, buttons are separated with SEPARATOR string.
PROPERTIES are passed to `guix-insert-button'."
(with-temp-buffer
(let ((labels (if (listp value) value (list value))))
(guix-mapinsert (lambda (label)
(apply #'guix-insert-button
label button-type properties))
labels
separator))
(buffer-substring (point-min) (point-max))))
(defun guix-button-type? (symbol)
"Return non-nil, if SYMBOL is a button type."
(and symbol
(get symbol 'button-category-symbol)))
(defun guix-split-insert (val &optional face col separator)
"Convert VAL into a string, split it and insert at point.
@@ -111,14 +144,11 @@ Separate inserted lines with SEPARATOR."
(defun guix-split-string (str &optional col)
"Split string STR by lines and return list of result strings.
If COL is non-nil and STR is a one-line string longer than COL,
split it into several short lines."
(let ((strings (split-string str "\n *")))
(if (and col
(null (cdr strings)) ; if not multi-line
(> (length str) col))
(split-string (guix-get-filled-string str col) "\n")
strings)))
If COL is non-nil, fill STR to this column."
(let ((str (if col
(guix-get-filled-string str col)
str)))
(split-string str "\n *" t)))
(defun guix-get-filled-string (str col)
"Return string by filling STR to column COL."
@@ -144,6 +174,15 @@ add both to the end and to the beginning."
(t
(concat separator str separator)))))
(defun guix-hexify (value)
"Convert VALUE to string and hexify it."
(url-hexify-string (guix-get-string value)))
(defun guix-number->bool (number)
"Convert NUMBER to boolean value.
Return nil, if NUMBER is 0; return t otherwise."
(not (zerop number)))
(defun guix-shell-quote-argument (argument)
"Quote shell command ARGUMENT.
This function is similar to `shell-quote-argument', but less strict."
@@ -154,6 +193,15 @@ This function is similar to `shell-quote-argument', but less strict."
(replace-regexp-in-string
(rx (not (any alnum "-=,./\n"))) "\\\\\\&" argument))))
(defun guix-symbol-title (symbol)
"Return SYMBOL's name, a string.
This is like `symbol-name', but fancier."
(if (eq symbol 'id)
"ID"
(let ((str (replace-regexp-in-string "-" " " (symbol-name symbol))))
(concat (capitalize (substring str 0 1))
(substring str 1)))))
(defun guix-command-symbol (&optional args)
"Return symbol by concatenating 'guix' and ARGS (strings)."
(intern (guix-concat-strings (cons "guix" args) "-")))
@@ -175,6 +223,15 @@ If NO-MESSAGE? is non-nil, do not display a message about it."
See also `guix-copy-as-kill'."
(guix-copy-as-kill (guix-command-string args) no-message?))
(defun guix-completing-read (prompt table &optional predicate
require-match initial-input
hist def inherit-input-method)
"Same as `completing-read' but return nil instead of an empty string."
(let ((res (completing-read prompt table predicate
require-match initial-input
hist def inherit-input-method)))
(unless (string= "" res) res)))
(defun guix-completing-read-multiple (prompt table &optional predicate
require-match initial-input
hist def inherit-input-method)
@@ -193,6 +250,14 @@ Return time value."
(require 'org)
(org-read-date nil t nil prompt))
(defun guix-read-file-name (prompt &optional dir default-filename
mustmatch initial predicate)
"Read file name.
This function is similar to `read-file-name' except it also
expands the file name."
(expand-file-name (read-file-name prompt dir default-filename
mustmatch initial predicate)))
(defcustom guix-find-file-function #'find-file
"Function used to find a file.
The function is called by `guix-find-file' with a file name as a
@@ -226,8 +291,77 @@ single argument."
(while (re-search-forward ,regexp nil t)
,@body)))
(defmacro guix-while-null (&rest body)
"Evaluate BODY until its result becomes non-nil."
(declare (indent 0) (debug t))
(let ((result-var (make-symbol "result")))
`(let (,result-var)
(while (null ,result-var)
(setq ,result-var ,@body))
,result-var)))
(defun guix-modify (object modifiers)
"Apply MODIFIERS to OBJECT.
OBJECT is passed as an argument to the first function from
MODIFIERS list, the returned result is passed to the second
function from the list and so on. Return result of the last
modifier call."
(if (null modifiers)
object
(guix-modify (funcall (car modifiers) object)
(cdr modifiers))))
(defmacro guix-keyword-args-let (args varlist &rest body)
"Parse ARGS, bind variables from VARLIST and eval BODY.
Find keyword values in ARGS, bind them to variables according to
VARLIST, then evaluate BODY.
ARGS is a keyword/value property list.
Each element of VARLIST has a form:
(SYMBOL KEYWORD [DEFAULT-VALUE])
SYMBOL is a varible name. KEYWORD is a symbol that will be
searched in ARGS for an according value. If the value of KEYWORD
does not exist, bind SYMBOL to DEFAULT-VALUE or nil.
The rest arguments (that present in ARGS but not in VARLIST) will
be bound to `%foreign-args' variable.
Example:
(guix-keyword-args-let '(:two 8 :great ! :guix is)
((one :one 1)
(two :two 2)
(foo :smth))
(list one two foo %foreign-args))
=> (1 8 nil (:guix is :great !))"
(declare (indent 2))
(let ((args-var (make-symbol "args")))
`(let (,@(mapcar (lambda (spec)
(pcase-let ((`(,name ,_ ,val) spec))
(list name val)))
varlist)
(,args-var ,args)
%foreign-args)
(while ,args-var
(pcase ,args-var
(`(,key ,val . ,rest-args)
(cl-case key
,@(mapcar (lambda (spec)
(pcase-let ((`(,name ,key ,_) spec))
`(,key (setq ,name val))))
varlist)
(t (setq %foreign-args
(cl-list* key val %foreign-args))))
(setq ,args-var rest-args))))
,@body)))
;;; Alist accessors
;;; Alist procedures
(defmacro guix-define-alist-accessor (name assoc-fun)
"Define NAME function to access alist values using ASSOC-FUN."
@@ -245,6 +379,48 @@ accessed with KEYS."
(guix-define-alist-accessor guix-assq-value assq)
(guix-define-alist-accessor guix-assoc-value assoc)
(defun guix-alist-put (value alist &rest keys)
"Put (add or replace if exists) VALUE to ALIST using KEYS.
Return the new alist.
ALIST is alist of alists of alists ... which can be consecutively
accessed with KEYS.
Example:
(guix-alist-put
'foo
'((one (a . 1) (b . 2))
(two (m . 7) (n . 8)))
'one 'b)
=> ((one (a . 1) (b . foo))
(two (m . 7) (n . 8)))"
(or keys (error "Keys should be specified"))
(guix-alist-put-1 value alist keys))
(defun guix-alist-put-1 (value alist keys)
"Subroutine of `guix-alist-put'."
(cond
((null keys)
value)
((null alist)
(list (cons (car keys)
(guix-alist-put-1 value nil (cdr keys)))))
((eq (car keys) (caar alist))
(cons (cons (car keys)
(guix-alist-put-1 value (cdar alist) (cdr keys)))
(cdr alist)))
(t
(cons (car alist)
(guix-alist-put-1 value (cdr alist) keys)))))
(defun guix-alist-put! (value variable &rest keys)
"Modify alist VARIABLE (symbol) by putting VALUE using KEYS.
See `guix-alist-put' for details."
(set variable
(apply #'guix-alist-put value (symbol-value variable) keys)))
;;; Diff
@@ -255,6 +431,77 @@ accessed with KEYS."
"Same as `diff', but use `guix-diff-switches' as default."
(diff old new (or switches guix-diff-switches) no-async))
;;; Completing readers definers
(defmacro guix-define-reader (name read-fun completions prompt)
"Define NAME function to read from minibuffer.
READ-FUN may be `completing-read', `completing-read-multiple' or
another function with the same arguments."
`(defun ,name (&optional prompt initial-contents)
(,read-fun ,(if prompt
`(or prompt ,prompt)
'prompt)
,completions nil nil initial-contents)))
(defmacro guix-define-readers (&rest args)
"Define reader functions.
ARGS should have a form [KEYWORD VALUE] ... The following
keywords are available:
- `completions-var' - variable used to get completions.
- `completions-getter' - function used to get completions.
- `single-reader', `single-prompt' - name of a function to read
a single value, and a prompt for it.
- `multiple-reader', `multiple-prompt' - name of a function to
read multiple values, and a prompt for it.
- `multiple-separator' - if specified, another
`<multiple-reader-name>-string' function returning a string
of multiple values separated the specified separator will be
defined."
(guix-keyword-args-let args
((completions-var :completions-var)
(completions-getter :completions-getter)
(single-reader :single-reader)
(single-prompt :single-prompt)
(multiple-reader :multiple-reader)
(multiple-prompt :multiple-prompt)
(multiple-separator :multiple-separator))
(let ((completions
(cond ((and completions-var completions-getter)
`(or ,completions-var
(setq ,completions-var
(funcall ',completions-getter))))
(completions-var
completions-var)
(completions-getter
`(funcall ',completions-getter)))))
`(progn
,(when (and completions-var
(not (boundp completions-var)))
`(defvar ,completions-var nil))
,(when single-reader
`(guix-define-reader ,single-reader guix-completing-read
,completions ,single-prompt))
,(when multiple-reader
`(guix-define-reader ,multiple-reader completing-read-multiple
,completions ,multiple-prompt))
,(when (and multiple-reader multiple-separator)
(let ((name (intern (concat (symbol-name multiple-reader)
"-string"))))
`(defun ,name (&optional prompt initial-contents)
(guix-concat-strings
(,multiple-reader prompt initial-contents)
,multiple-separator))))))))
;;; Memoizing
@@ -292,9 +539,18 @@ See `defun' for the meaning of arguments."
,(or docstring
(format "Memoized version of `%S'." definition))))
(defvar guix-memoized-font-lock-keywords
(defvar guix-utils-font-lock-keywords
(eval-when-compile
`((,(rx "("
`((,(rx "(" (group (or "guix-define-reader"
"guix-define-readers"
"guix-keyword-args-let"
"guix-while-null"
"guix-while-search"
"guix-with-indent"))
symbol-end)
. 1)
(,(rx "("
(group "guix-memoized-" (or "defun" "defalias"))
symbol-end
(zero-or-more blank)
@@ -303,7 +559,7 @@ See `defun' for the meaning of arguments."
(1 font-lock-keyword-face)
(2 font-lock-function-name-face nil t)))))
(font-lock-add-keywords 'emacs-lisp-mode guix-memoized-font-lock-keywords)
(font-lock-add-keywords 'emacs-lisp-mode guix-utils-font-lock-keywords)
(provide 'guix-utils)
-213
View File
@@ -1,213 +0,0 @@
;;; guix.el --- Interface for GNU Guix package manager
;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;; Package-Requires: ((geiser "0.3"))
;; Keywords: tools
;; This file is part of GNU Guix.
;; GNU Guix is free software; you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Guix is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This package provides an interface for searching, listing and getting
;; information about Guix packages and generations; and for
;; installing/upgrading/removing packages.
;;; Code:
(require 'guix-base)
(require 'guix-list)
(require 'guix-info)
(require 'guix-utils)
(require 'guix-read)
(defgroup guix nil
"Interface for Guix package manager."
:prefix "guix-"
:group 'external)
(defgroup guix-faces nil
"Guix faces."
:group 'guix
:group 'faces)
(defcustom guix-list-single-package nil
"If non-nil, list a package even if it is the only matching result.
If nil, show a single package in the info buffer."
:type 'boolean
:group 'guix)
(defvar guix-search-params '(name synopsis description)
"Default list of package parameters for searching by regexp.")
(defvar guix-search-history nil
"A history of minibuffer prompts.")
(defun guix-get-show-packages (profile search-type &rest search-vals)
"Search for packages and show results.
If PROFILE is nil, use `guix-current-profile'.
See `guix-get-entries' for the meaning of SEARCH-TYPE and
SEARCH-VALS.
Results are displayed in the list buffer, unless a single package
is found and `guix-list-single-package' is nil."
(or profile (setq profile guix-current-profile))
(let ((packages (guix-get-entries profile guix-package-list-type
search-type search-vals
(guix-get-params-for-receiving
'list guix-package-list-type))))
(if (or guix-list-single-package
(cdr packages))
(guix-set-buffer profile packages 'list guix-package-list-type
search-type search-vals)
(let ((packages (guix-get-entries profile guix-package-info-type
search-type search-vals
(guix-get-params-for-receiving
'info guix-package-info-type))))
(guix-set-buffer profile packages 'info guix-package-info-type
search-type search-vals)))))
(defun guix-get-show-generations (profile search-type &rest search-vals)
"Search for generations and show results.
If PROFILE is nil, use `guix-current-profile'.
See `guix-get-entries' for the meaning of SEARCH-TYPE and
SEARCH-VALS."
(apply #'guix-get-show-entries
(or profile guix-current-profile)
'list 'generation search-type search-vals))
;;;###autoload
(defun guix-search-by-name (name &optional profile)
"Search for Guix packages by NAME.
NAME is a string with name specification. It may optionally contain
a version number. Examples: \"guile\", \"guile-2.0.11\".
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-string "Package name: " nil 'guix-search-history)
(and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-packages profile 'name name))
;;;###autoload
(defun guix-search-by-regexp (regexp &optional params profile)
"Search for Guix packages by REGEXP.
PARAMS are package parameters that should be searched.
If PARAMS are not specified, use `guix-search-params'.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-regexp "Regexp: " nil 'guix-search-history)
nil
(and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-packages profile 'regexp regexp
(or params guix-search-params)))
;;;###autoload
(defun guix-installed-packages (&optional profile)
"Display information about installed Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-packages profile 'installed))
;;;###autoload
(defun guix-obsolete-packages (&optional profile)
"Display information about obsolete Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-packages profile 'obsolete))
;;;###autoload
(defun guix-all-available-packages (&optional profile)
"Display information about all available Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-packages profile 'all-available))
;;;###autoload
(defun guix-newest-available-packages (&optional profile)
"Display information about the newest available Guix packages.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-packages profile 'newest-available))
;;;###autoload
(defun guix-generations (&optional profile)
"Display information about all generations.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-generations profile 'all))
;;;###autoload
(defun guix-last-generations (number &optional profile)
"Display information about last NUMBER generations.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (read-number "The number of last generations: ")
(and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-generations profile 'last number))
;;;###autoload
(defun guix-generations-by-time (from to &optional profile)
"Display information about generations created between FROM and TO.
FROM and TO should be time values.
If PROFILE is nil, use `guix-current-profile'.
Interactively with prefix, prompt for PROFILE."
(interactive
(list (guix-read-date "Find generations (from): ")
(guix-read-date "Find generations (to): ")
(and current-prefix-arg
(guix-profile-prompt))))
(guix-get-show-generations profile 'time
(float-time from)
(float-time to)))
;;;###autoload
(defun guix-edit (id-or-name)
"Edit (go to location of) package with ID-OR-NAME."
(interactive (list (guix-read-package-name)))
(let ((loc (guix-package-location id-or-name)))
(if loc
(guix-find-location loc)
(message "Couldn't find package location."))))
(provide 'guix)
;;; guix.el ends here
+12
View File
@@ -0,0 +1,12 @@
# This is a "job" for the Upstart init system to launch 'guix-daemon'.
# Drop it in /etc/init to have 'guix-daemon' automatically started.
description "Build daemon for GNU Guix"
start on runlevel [2345]
stop on runlevel [016]
task
exec @bindir@/guix-daemon --build-users-group=guixbuild
+166 -53
View File
@@ -1,7 +1,8 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
# Copyright © 2013, 2014, 2015 Mark H Weaver <mhw@netris.org>
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2013, 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
#
# This file is part of GNU Guix.
#
@@ -33,6 +34,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/adns.scm \
gnu/packages/algebra.scm \
gnu/packages/aidc.scm \
gnu/packages/animation.scm \
gnu/packages/apl.scm \
gnu/packages/apr.scm \
gnu/packages/asciidoc.scm \
@@ -40,6 +42,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/attr.scm \
gnu/packages/audacity.scm \
gnu/packages/audio.scm \
gnu/packages/augeas.scm \
gnu/packages/autogen.scm \
gnu/packages/autotools.scm \
gnu/packages/avahi.scm \
@@ -74,18 +77,21 @@ GNU_SYSTEM_MODULES = \
gnu/packages/cryptsetup.scm \
gnu/packages/cups.scm \
gnu/packages/curl.scm \
gnu/packages/cursynth.scm \
gnu/packages/cyrus-sasl.scm \
gnu/packages/databases.scm \
gnu/packages/datamash.scm \
gnu/packages/datastructures.scm \
gnu/packages/dav.scm \
gnu/packages/dc.scm \
gnu/packages/debug.scm \
gnu/packages/dejagnu.scm \
gnu/packages/dico.scm \
gnu/packages/dictionaries.scm \
gnu/packages/disk.scm \
gnu/packages/djvu.scm \
gnu/packages/dns.scm \
gnu/packages/docbook.scm \
gnu/packages/docker.scm \
gnu/packages/doxygen.scm \
gnu/packages/dunst.scm \
gnu/packages/dvtm.scm \
@@ -158,17 +164,21 @@ GNU_SYSTEM_MODULES = \
gnu/packages/image.scm \
gnu/packages/imagemagick.scm \
gnu/packages/indent.scm \
gnu/packages/inklingreader.scm \
gnu/packages/inkscape.scm \
gnu/packages/irssi.scm \
gnu/packages/irc.scm \
gnu/packages/iso-codes.scm \
gnu/packages/java.scm \
gnu/packages/jemalloc.scm \
gnu/packages/jrnl.scm \
gnu/packages/julia.scm \
gnu/packages/kde.scm \
gnu/packages/kde.scm \
gnu/packages/kde-frameworks.scm \
gnu/packages/key-mon.scm \
gnu/packages/kodi.scm \
gnu/packages/language.scm \
gnu/packages/ldc.scm \
gnu/packages/lego.scm \
gnu/packages/less.scm \
gnu/packages/lesstif.scm \
gnu/packages/libcanberra.scm \
@@ -206,6 +216,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/mail.scm \
gnu/packages/make-bootstrap.scm \
gnu/packages/markdown.scm \
gnu/packages/mate.scm \
gnu/packages/maths.scm \
gnu/packages/mc.scm \
gnu/packages/mcrypt.scm \
@@ -241,6 +252,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/openstack.scm \
gnu/packages/orpheus.scm \
gnu/packages/ots.scm \
gnu/packages/owncloud.scm \
gnu/packages/package-management.scm \
gnu/packages/parallel.scm \
gnu/packages/password-utils.scm \
@@ -264,6 +276,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/python.scm \
gnu/packages/qemu.scm \
gnu/packages/qt.scm \
gnu/packages/ragel.scm \
gnu/packages/ratpoison.scm \
gnu/packages/rc.scm \
gnu/packages/rdesktop.scm \
@@ -278,8 +291,10 @@ GNU_SYSTEM_MODULES = \
gnu/packages/scanner.scm \
gnu/packages/scheme.scm \
gnu/packages/screen.scm \
gnu/packages/scribus.scm \
gnu/packages/sdl.scm \
gnu/packages/search.scm \
gnu/packages/serialization.scm \
gnu/packages/serveez.scm \
gnu/packages/shishi.scm \
gnu/packages/skarnet.scm \
@@ -299,6 +314,7 @@ GNU_SYSTEM_MODULES = \
gnu/packages/tcl.scm \
gnu/packages/tcsh.scm \
gnu/packages/telephony.scm \
gnu/packages/terminals.scm \
gnu/packages/texinfo.scm \
gnu/packages/texlive.scm \
gnu/packages/textutils.scm \
@@ -321,7 +337,6 @@ GNU_SYSTEM_MODULES = \
gnu/packages/wdiff.scm \
gnu/packages/web.scm \
gnu/packages/webkit.scm \
gnu/packages/weechat.scm \
gnu/packages/wget.scm \
gnu/packages/wicd.scm \
gnu/packages/wine.scm \
@@ -348,9 +363,11 @@ GNU_SYSTEM_MODULES = \
gnu/services/databases.scm \
gnu/services/dbus.scm \
gnu/services/desktop.scm \
gnu/services/dmd.scm \
gnu/services/lirc.scm \
gnu/services/mail.scm \
gnu/services/networking.scm \
gnu/services/shepherd.scm \
gnu/services/herd.scm \
gnu/services/ssh.scm \
gnu/services/web.scm \
gnu/services/xorg.scm \
@@ -394,23 +411,21 @@ dist_patch_DATA = \
gnu/packages/patches/agg-am_c_prototype.patch \
gnu/packages/patches/alsa-lib-mips-atomic-fix.patch \
gnu/packages/patches/apr-skip-getservbyname-test.patch \
gnu/packages/patches/arb-ldconfig.patch \
gnu/packages/patches/asymptote-gsl2.patch \
gnu/packages/patches/ath9k-htc-firmware-binutils.patch \
gnu/packages/patches/ath9k-htc-firmware-gcc.patch \
gnu/packages/patches/ath9k-htc-firmware-objcopy.patch \
gnu/packages/patches/audacity-fix-ffmpeg-binding.patch \
gnu/packages/patches/automake-skip-amhello-tests.patch \
gnu/packages/patches/automake-regexp-syntax.patch \
gnu/packages/patches/avahi-localstatedir.patch \
gnu/packages/patches/avidemux-install-to-lib.patch \
gnu/packages/patches/avrdude-fix-libusb.patch \
gnu/packages/patches/bash-completion-directories.patch \
gnu/packages/patches/bedtools-32bit-compilation.patch \
gnu/packages/patches/bowtie-fix-makefile.patch \
gnu/packages/patches/bigloo-gc-shebangs.patch \
gnu/packages/patches/binutils-ld-new-dtags.patch \
gnu/packages/patches/binutils-loongson-workaround.patch \
gnu/packages/patches/bitlbee-configure-doc-fix.patch \
gnu/packages/patches/bluez-tests.patch \
gnu/packages/patches/boost-mips-avoid-m32.patch \
gnu/packages/patches/byobu-writable-status.patch \
gnu/packages/patches/calibre-drop-unrar.patch \
gnu/packages/patches/calibre-no-updates-dialog.patch \
@@ -420,23 +435,30 @@ dist_patch_DATA = \
gnu/packages/patches/clucene-pkgconfig.patch \
gnu/packages/patches/cmake-fix-tests.patch \
gnu/packages/patches/cpio-gets-undeclared.patch \
gnu/packages/patches/cpio-CVE-2016-2037.patch \
gnu/packages/patches/cpufrequtils-fix-aclocal.patch \
gnu/packages/patches/crda-optional-gcrypt.patch \
gnu/packages/patches/crossmap-allow-system-pysam.patch \
gnu/packages/patches/csound-header-ordering.patch \
gnu/packages/patches/cssc-gets-undeclared.patch \
gnu/packages/patches/cssc-missing-include.patch \
gnu/packages/patches/clucene-contribs-lib.patch \
gnu/packages/patches/cursynth-wave-rand.patch \
gnu/packages/patches/dbus-helper-search-path.patch \
gnu/packages/patches/dealii-p4est-interface.patch \
gnu/packages/patches/devil-fix-libpng.patch \
gnu/packages/patches/dico-libtool-deterministic.patch \
gnu/packages/patches/diffutils-gets-undeclared.patch \
gnu/packages/patches/dfu-programmer-fix-libusb.patch \
gnu/packages/patches/doxygen-test.patch \
gnu/packages/patches/doxygen-tmake.patch \
gnu/packages/patches/duplicity-piped-password.patch \
gnu/packages/patches/duplicity-test_selection-tmp.patch \
gnu/packages/patches/elfutils-tests-ptrace.patch \
gnu/packages/patches/einstein-build.patch \
gnu/packages/patches/emacs-constants-lisp-like.patch \
gnu/packages/patches/emacs-exec-path.patch \
gnu/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
gnu/packages/patches/emacs-source-date-epoch.patch \
gnu/packages/patches/eudev-rules-directory.patch \
gnu/packages/patches/evilwm-lost-focus-bug.patch \
gnu/packages/patches/expat-CVE-2015-1283.patch \
@@ -447,14 +469,13 @@ dist_patch_DATA = \
gnu/packages/patches/fasthenry-spUtils.patch \
gnu/packages/patches/fasthenry-spSolve.patch \
gnu/packages/patches/fasthenry-spFactor.patch \
gnu/packages/patches/findutils-absolute-paths.patch \
gnu/packages/patches/findutils-localstatedir.patch \
gnu/packages/patches/findutils-test-xargs.patch \
gnu/packages/patches/flashrom-use-libftdi1.patch \
gnu/packages/patches/flex-bison-tests.patch \
gnu/packages/patches/flint-ldconfig.patch \
gnu/packages/patches/fltk-shared-lib-defines.patch \
gnu/packages/patches/freeimage-CVE-2015-0852.patch \
gnu/packages/patches/fuse-CVE-2015-3202.patch \
gnu/packages/patches/gawk-fts-test.patch \
gnu/packages/patches/gawk-shell.patch \
gnu/packages/patches/gcc-arm-link-spec-fix.patch \
gnu/packages/patches/gcc-cross-environment-variables.patch \
@@ -463,14 +484,15 @@ dist_patch_DATA = \
gnu/packages/patches/geoclue-config.patch \
gnu/packages/patches/ghostscript-CVE-2015-3228.patch \
gnu/packages/patches/ghostscript-runpath.patch \
gnu/packages/patches/gitolite-openssh-6.8-compat.patch \
gnu/packages/patches/glib-networking-ssl-cert-file.patch \
gnu/packages/patches/glib-tests-desktop.patch \
gnu/packages/patches/glib-tests-homedir.patch \
gnu/packages/patches/glib-tests-prlimit.patch \
gnu/packages/patches/glib-tests-timer.patch \
gnu/packages/patches/glib-tests-gapplication.patch \
gnu/packages/patches/glibc-CVE-2015-7547.patch \
gnu/packages/patches/glibc-bootstrap-system.patch \
gnu/packages/patches/glibc-hurd-extern-inline.patch \
gnu/packages/patches/glibc-ldd-x86_64.patch \
gnu/packages/patches/glibc-locales.patch \
gnu/packages/patches/glibc-locale-incompatibility.patch \
@@ -479,11 +501,12 @@ dist_patch_DATA = \
gnu/packages/patches/gmp-arm-asm-nothumb.patch \
gnu/packages/patches/gmp-faulty-test.patch \
gnu/packages/patches/gnucash-price-quotes-perl.patch \
gnu/packages/patches/gnutls-doc-fix.patch \
gnu/packages/patches/gnupg-simple-query-ignore-status-messages.patch \
gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch \
gnu/packages/patches/gobject-introspection-cc.patch \
gnu/packages/patches/gobject-introspection-girepository.patch \
gnu/packages/patches/grep-CVE-2015-1345.patch \
gnu/packages/patches/grep-timing-sensitive-test.patch \
gnu/packages/patches/grub-CVE-2015-8370.patch \
gnu/packages/patches/grub-gets-undeclared.patch \
gnu/packages/patches/grub-freetype.patch \
gnu/packages/patches/guile-1.8-cpp-4.5.patch \
@@ -493,46 +516,84 @@ dist_patch_DATA = \
gnu/packages/patches/guile-present-coding.patch \
gnu/packages/patches/guile-relocatable.patch \
gnu/packages/patches/guile-rsvg-pkgconfig.patch \
gnu/packages/patches/guitarix-c++11.patch \
gnu/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
gnu/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
gnu/packages/patches/gtkglext-disable-disable-deprecated.patch \
gnu/packages/patches/hop-bigloo-4.0b.patch \
gnu/packages/patches/hop-linker-flags.patch \
gnu/packages/patches/hwloc-gather-topology-lstopo.patch \
gnu/packages/patches/hydra-automake-1.15.patch \
gnu/packages/patches/hydra-disable-darcs-test.patch \
gnu/packages/patches/icecat-avoid-bundled-includes.patch \
gnu/packages/patches/icecat-freetype-2.6.patch \
gnu/packages/patches/icecat-update-graphite2.patch \
gnu/packages/patches/icecat-update-graphite2-pt2.patch \
gnu/packages/patches/icecat-re-enable-DHE-cipher-suites.patch \
gnu/packages/patches/icecat-CVE-2015-4477.patch \
gnu/packages/patches/icecat-CVE-2015-7207.patch \
gnu/packages/patches/icecat-CVE-2016-1952-pt01.patch \
gnu/packages/patches/icecat-CVE-2016-1952-pt02.patch \
gnu/packages/patches/icecat-CVE-2016-1952-pt03.patch \
gnu/packages/patches/icecat-CVE-2016-1952-pt04.patch \
gnu/packages/patches/icecat-CVE-2016-1952-pt05.patch \
gnu/packages/patches/icecat-CVE-2016-1952-pt06.patch \
gnu/packages/patches/icecat-CVE-2016-1954.patch \
gnu/packages/patches/icecat-CVE-2016-1960.patch \
gnu/packages/patches/icecat-CVE-2016-1961.patch \
gnu/packages/patches/icecat-CVE-2016-1962.patch \
gnu/packages/patches/icecat-CVE-2016-1964.patch \
gnu/packages/patches/icecat-CVE-2016-1965.patch \
gnu/packages/patches/icecat-CVE-2016-1966.patch \
gnu/packages/patches/icecat-CVE-2016-1974.patch \
gnu/packages/patches/icecat-bug-1248851.patch \
gnu/packages/patches/icu4c-CVE-2014-6585.patch \
gnu/packages/patches/icu4c-CVE-2015-1270.patch \
gnu/packages/patches/icu4c-CVE-2015-4760.patch \
gnu/packages/patches/ilmbase-fix-tests.patch \
gnu/packages/patches/imagemagick-test-segv.patch \
gnu/packages/patches/irrlicht-mesa-10.patch \
gnu/packages/patches/jasper-CVE-2007-2721.patch \
gnu/packages/patches/jasper-CVE-2008-3520.patch \
gnu/packages/patches/jasper-CVE-2008-3522.patch \
gnu/packages/patches/jasper-CVE-2011-4516-and-CVE-2011-4517.patch \
gnu/packages/patches/jasper-CVE-2014-8137.patch \
gnu/packages/patches/jasper-CVE-2014-8138.patch \
gnu/packages/patches/jasper-CVE-2014-8157.patch \
gnu/packages/patches/jasper-CVE-2014-8158.patch \
gnu/packages/patches/jasper-CVE-2014-9029.patch \
gnu/packages/patches/jasper-CVE-2016-1577.patch \
gnu/packages/patches/jasper-CVE-2016-1867.patch \
gnu/packages/patches/jasper-CVE-2016-2089.patch \
gnu/packages/patches/jasper-CVE-2016-2116.patch \
gnu/packages/patches/jbig2dec-ignore-testtest.patch \
gnu/packages/patches/julia-0.3.10-fix-empty-array.patch \
gnu/packages/patches/kmod-module-directory.patch \
gnu/packages/patches/ldc-disable-tests.patch \
gnu/packages/patches/lftp-dont-save-unknown-host-fingerprint.patch \
gnu/packages/patches/liba52-enable-pic.patch \
gnu/packages/patches/liba52-link-with-libm.patch \
gnu/packages/patches/liba52-set-soname.patch \
gnu/packages/patches/liba52-use-mtune-not-mcpu.patch \
gnu/packages/patches/libarchive-bsdtar-test.patch \
gnu/packages/patches/libarchive-CVE-2013-0211.patch \
gnu/packages/patches/libarchive-fix-lzo-test-case.patch \
gnu/packages/patches/libarchive-mtree-filename-length-fix.patch \
gnu/packages/patches/libbonobo-activation-test-race.patch \
gnu/packages/patches/libcanberra-sound-theme-freedesktop.patch \
gnu/packages/patches/libcmis-fix-test-onedrive.patch \
gnu/packages/patches/libdrm-symbol-check.patch \
gnu/packages/patches/libevent-dns-tests.patch \
gnu/packages/patches/libmtp-devices.patch \
gnu/packages/patches/liboop-mips64-deplibs-fix.patch \
gnu/packages/patches/libotr-test-auth-fix.patch \
gnu/packages/patches/liblxqt-include.patch \
gnu/packages/patches/libmad-armv7-thumb-pt1.patch \
gnu/packages/patches/libmad-armv7-thumb-pt2.patch \
gnu/packages/patches/libmad-frame-length.patch \
gnu/packages/patches/libmad-mips-newgcc.patch \
gnu/packages/patches/librsvg-tests.patch \
gnu/packages/patches/libssh-0.6.5-CVE-2016-0739.patch \
gnu/packages/patches/libtheora-config-guess.patch \
gnu/packages/patches/libtiff-CVE-2015-8665+CVE-2015-8683.patch \
gnu/packages/patches/libtiff-oob-accesses-in-decode.patch \
gnu/packages/patches/libtiff-oob-write-in-nextdecode.patch \
gnu/packages/patches/libtool-skip-tests2.patch \
gnu/packages/patches/libssh-CVE-2014-0017.patch \
gnu/packages/patches/libunwind-CVE-2015-3239.patch \
gnu/packages/patches/libwmf-CAN-2004-0941.patch \
gnu/packages/patches/libwmf-CVE-2006-3376.patch \
@@ -546,11 +607,13 @@ dist_patch_DATA = \
gnu/packages/patches/libwmf-CVE-2015-0848+CVE-2015-4588.patch \
gnu/packages/patches/libwmf-CVE-2015-4695.patch \
gnu/packages/patches/libwmf-CVE-2015-4696.patch \
gnu/packages/patches/libxslt-CVE-2015-7995.patch \
gnu/packages/patches/lirc-localstatedir.patch \
gnu/packages/patches/libpthread-glibc-preparation.patch \
gnu/packages/patches/lm-sensors-hwmon-attrs.patch \
gnu/packages/patches/lua-pkgconfig.patch \
gnu/packages/patches/lua51-liblua-so.patch \
gnu/packages/patches/lua52-liblua-so.patch \
gnu/packages/patches/luajit-no_ldconfig.patch \
gnu/packages/patches/luajit-symlinks.patch \
gnu/packages/patches/luit-posix.patch \
@@ -558,17 +621,21 @@ dist_patch_DATA = \
gnu/packages/patches/make-impure-dirs.patch \
gnu/packages/patches/mars-install.patch \
gnu/packages/patches/mars-sfml-2.3.patch \
gnu/packages/patches/matplotlib-setupext-tk.patch \
gnu/packages/patches/maxima-defsystem-mkdir.patch \
gnu/packages/patches/mc-fix-ncurses-build.patch \
gnu/packages/patches/mcron-install.patch \
gnu/packages/patches/mdadm-gcc-4.9-fix.patch \
gnu/packages/patches/mhash-keygen-test-segfault.patch \
gnu/packages/patches/mit-krb5-init-fix.patch \
gnu/packages/patches/mit-krb5-CVE-2015-8629.patch \
gnu/packages/patches/mit-krb5-CVE-2015-8630.patch \
gnu/packages/patches/mit-krb5-CVE-2015-8631.patch \
gnu/packages/patches/mit-krb5-init-context-null-spnego.patch \
gnu/packages/patches/mpc123-initialize-ao.patch \
gnu/packages/patches/mplayer2-theora-fix.patch \
gnu/packages/patches/module-init-tools-moduledir.patch \
gnu/packages/patches/mumps-build-parallelism.patch \
gnu/packages/patches/mupdf-buildsystem-fix.patch \
gnu/packages/patches/mupen64plus-ui-console-notice.patch \
gnu/packages/patches/mutt-store-references.patch \
gnu/packages/patches/net-tools-bitrot.patch \
gnu/packages/patches/ngircd-handle-zombies.patch \
@@ -579,51 +646,83 @@ dist_patch_DATA = \
gnu/packages/patches/nvi-assume-preserve-path.patch \
gnu/packages/patches/nvi-dbpagesize-binpower.patch \
gnu/packages/patches/nvi-db4.patch \
gnu/packages/patches/ocaml-findlib-make-install.patch \
gnu/packages/patches/openexr-missing-samples.patch \
gnu/packages/patches/openimageio-boost-1.60.patch \
gnu/packages/patches/openjpeg-CVE-2015-6581.patch \
gnu/packages/patches/openjpeg-use-after-free-fix.patch \
gnu/packages/patches/openssl-runpath.patch \
gnu/packages/patches/openssl-c-rehash.patch \
gnu/packages/patches/openssl-c-rehash-in.patch \
gnu/packages/patches/orpheus-cast-errors-and-includes.patch \
gnu/packages/patches/ots-no-include-missing-file.patch \
gnu/packages/patches/patchelf-page-size.patch \
gnu/packages/patches/patchelf-rework-for-arm.patch \
gnu/packages/patches/patchutils-xfail-gendiff-tests.patch \
gnu/packages/patches/patch-hurd-path-max.patch \
gnu/packages/patches/perl-CVE-2015-8607.patch \
gnu/packages/patches/perl-CVE-2016-2381.patch \
gnu/packages/patches/perl-autosplit-default-time.patch \
gnu/packages/patches/perl-deterministic-ordering.patch \
gnu/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \
gnu/packages/patches/perl-module-pluggable-search.patch \
gnu/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \
gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch \
gnu/packages/patches/perl-net-ssleay-disable-ede-test.patch \
gnu/packages/patches/perl-no-build-time.patch \
gnu/packages/patches/perl-no-sys-dirs.patch \
gnu/packages/patches/perl-tk-x11-discover.patch \
gnu/packages/patches/perl-module-pluggable-search.patch \
gnu/packages/patches/perl-source-date-epoch.patch \
gnu/packages/patches/pidgin-add-search-path.patch \
gnu/packages/patches/pinball-const-fix.patch \
gnu/packages/patches/pinball-cstddef.patch \
gnu/packages/patches/pinball-missing-separators.patch \
gnu/packages/patches/pinball-src-deps.patch \
gnu/packages/patches/pinball-system-ltdl.patch \
gnu/packages/patches/pingus-sdl-libs-config.patch \
gnu/packages/patches/plink-1.07-unclobber-i.patch \
gnu/packages/patches/plotutils-libpng-jmpbuf.patch \
gnu/packages/patches/polkit-drop-test.patch \
gnu/packages/patches/portaudio-audacity-compat.patch \
gnu/packages/patches/preseq-1.0.2-install-to-PREFIX.patch \
gnu/packages/patches/preseq-1.0.2-link-with-libbam.patch \
gnu/packages/patches/procps-make-3.82.patch \
gnu/packages/patches/procmail-ambiguous-getline-debian.patch \
gnu/packages/patches/pt-scotch-build-parallelism.patch \
gnu/packages/patches/pulseaudio-fix-mult-test.patch \
gnu/packages/patches/pulseaudio-longer-test-timeout.patch \
gnu/packages/patches/pycairo-wscript.patch \
gnu/packages/patches/pybugz-encode-error.patch \
gnu/packages/patches/pybugz-stty.patch \
gnu/packages/patches/pygpgme-disable-problematic-tests.patch \
gnu/packages/patches/pyqt-configure.patch \
gnu/packages/patches/python-2-deterministic-build-info.patch \
gnu/packages/patches/python-2.7-search-paths.patch \
gnu/packages/patches/python-2.7-source-date-epoch.patch \
gnu/packages/patches/python-3-deterministic-build-info.patch \
gnu/packages/patches/python-3-search-paths.patch \
gnu/packages/patches/python-disable-ssl-test.patch \
gnu/packages/patches/python-fix-tests.patch \
gnu/packages/patches/python-ipython-inputhook-ctype.patch \
gnu/packages/patches/python-rarfile-fix-tests.patch \
gnu/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
gnu/packages/patches/python-configobj-setuptools.patch \
gnu/packages/patches/python-paste-remove-website-test.patch \
gnu/packages/patches/python-paste-remove-timing-test.patch \
gnu/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
gnu/packages/patches/qemu-CVE-2015-6855.patch \
gnu/packages/patches/qemu-CVE-2015-8558.patch \
gnu/packages/patches/qemu-CVE-2015-8567.patch \
gnu/packages/patches/qemu-CVE-2015-8613.patch \
gnu/packages/patches/qemu-CVE-2015-8619.patch \
gnu/packages/patches/qemu-CVE-2015-8701.patch \
gnu/packages/patches/qemu-CVE-2015-8743.patch \
gnu/packages/patches/qemu-CVE-2016-1568.patch \
gnu/packages/patches/qemu-CVE-2016-1922.patch \
gnu/packages/patches/qemu-CVE-2016-1981.patch \
gnu/packages/patches/qemu-CVE-2016-2197.patch \
gnu/packages/patches/qemu-usb-ehci-oob-read.patch \
gnu/packages/patches/qemu-virtio-9p-use-accessor-to-get-thread-pool.patch \
gnu/packages/patches/qt4-ldflags.patch \
gnu/packages/patches/ratpoison-shell.patch \
gnu/packages/patches/readline-link-ncurses.patch \
gnu/packages/patches/ripperx-missing-file.patch \
gnu/packages/patches/rsem-makefile.patch \
gnu/packages/patches/sed-hurd-path-max.patch \
gnu/packages/patches/scheme48-tests.patch \
gnu/packages/patches/scotch-test-threading.patch \
@@ -633,14 +732,23 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
gnu/packages/patches/synfig-build-fix.patch \
gnu/packages/patches/tar-d_ino_in_dirent-fix.patch \
gnu/packages/patches/tar-skip-unreliable-tests.patch \
gnu/packages/patches/tcl-mkindex-deterministic.patch \
gnu/packages/patches/tclxml-3.2-install.patch \
gnu/packages/patches/tcsh-fix-autotest.patch \
gnu/packages/patches/texi2html-document-encoding.patch \
gnu/packages/patches/texi2html-i18n.patch \
gnu/packages/patches/tidy-CVE-2015-5522+5523.patch \
gnu/packages/patches/tinyxml-use-stl.patch \
gnu/packages/patches/tk-find-library.patch \
gnu/packages/patches/tophat-build-with-later-seqan.patch \
gnu/packages/patches/torsocks-dns-test.patch \
gnu/packages/patches/tvtime-gcc41.patch \
gnu/packages/patches/tvtime-pngoutput.patch \
gnu/packages/patches/tvtime-videodev2.patch \
@@ -661,16 +769,25 @@ dist_patch_DATA = \
gnu/packages/patches/util-linux-tests.patch \
gnu/packages/patches/upower-builddir.patch \
gnu/packages/patches/valgrind-enable-arm.patch \
gnu/packages/patches/vorbis-tools-CVE-2015-6749.patch \
gnu/packages/patches/vpnc-script.patch \
gnu/packages/patches/vtk-mesa-10.patch \
gnu/packages/patches/w3m-fix-compile.patch \
gnu/packages/patches/webkitgtk-2.4-sql-init-string.patch \
gnu/packages/patches/w3m-libgc.patch \
gnu/packages/patches/w3m-force-ssl_verify_server-on.patch \
gnu/packages/patches/w3m-disable-sslv2-and-sslv3.patch \
gnu/packages/patches/w3m-disable-weak-ciphers.patch \
gnu/packages/patches/weechat-python.patch \
gnu/packages/patches/weex-vacopy.patch \
gnu/packages/patches/wicd-bitrate-none-fix.patch \
gnu/packages/patches/wicd-get-selected-profile-fix.patch \
gnu/packages/patches/wicd-template-instantiation.patch \
gnu/packages/patches/wicd-urwid-1.3.patch \
gnu/packages/patches/wmctrl-64-fix.patch \
gnu/packages/patches/wpa-supplicant-CVE-2015-5310.patch \
gnu/packages/patches/wpa-supplicant-CVE-2015-5314.patch \
gnu/packages/patches/wpa-supplicant-CVE-2015-5315.patch \
gnu/packages/patches/wpa-supplicant-CVE-2015-5316.patch \
gnu/packages/patches/xdotool-fix-makefile.patch \
gnu/packages/patches/xf86-video-ark-remove-mibstore.patch \
gnu/packages/patches/xf86-video-ast-remove-mibstore.patch \
gnu/packages/patches/xf86-video-geode-glibc-2.20.patch \
@@ -679,17 +796,9 @@ dist_patch_DATA = \
gnu/packages/patches/xf86-video-intel-compat-api.patch \
gnu/packages/patches/xf86-video-intel-glibc-2.20.patch \
gnu/packages/patches/xf86-video-mach64-glibc-2.20.patch \
gnu/packages/patches/xf86-video-mga-glibc-2.20.patch \
gnu/packages/patches/xf86-video-nv-remove-mibstore.patch \
gnu/packages/patches/xf86-video-openchrome-glibc-2.20.patch \
gnu/packages/patches/xf86-video-r128-glibc-2.20.patch \
gnu/packages/patches/xf86-video-siliconmotion-remove-mibstore.patch \
gnu/packages/patches/xf86-video-sis-fix-exa-crash.patch \
gnu/packages/patches/xf86-video-sis-update-api.patch \
gnu/packages/patches/xf86-video-tdfx-remove-mibstore.patch \
gnu/packages/patches/xf86-video-tga-remove-mibstore.patch \
gnu/packages/patches/xf86-video-trident-remove-mibstore.patch \
gnu/packages/patches/xf86-video-vmware-glibc-2.20.patch \
gnu/packages/patches/xfce4-panel-plugins.patch \
gnu/packages/patches/xfce4-session-fix-xflock4.patch \
gnu/packages/patches/xfce4-settings-defaults.patch \
@@ -758,14 +867,18 @@ DOWNLOAD_FILE = \
"$(top_srcdir)/build-aux/download.scm"
gnu/packages/bootstrap/x86_64-linux/guile-2.0.9.tar.xz:
$(MKDIR_P) `dirname "$@"`
$(DOWNLOAD_FILE) "$@" "037b103522a2d0d7d69c7ffd8de683dfe5bb4b59c1fafd70b4ffd397fd2f57f0"
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
"037b103522a2d0d7d69c7ffd8de683dfe5bb4b59c1fafd70b4ffd397fd2f57f0"
gnu/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz:
$(MKDIR_P) `dirname "$@"`
$(DOWNLOAD_FILE) "$@" "b757cd46bf13ecac83fb8e955fb50096ac2d17bb610ca8eb816f29302a00a846"
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
"b757cd46bf13ecac83fb8e955fb50096ac2d17bb610ca8eb816f29302a00a846"
gnu/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz:
$(MKDIR_P) `dirname "$@"`
$(DOWNLOAD_FILE) "$@" "e551d05d4d385d6706ab8d574856a087758294dc90ab4c06e70a157a685e23d6"
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
"e551d05d4d385d6706ab8d574856a087758294dc90ab4c06e70a157a685e23d6"
gnu/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz:
$(MKDIR_P) `dirname "$@"`
$(DOWNLOAD_FILE) "$@" "994680f0001346864aa2c2cc5110f380ee7518dcd701c614291682b8e948f73b"
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
"994680f0001346864aa2c2cc5110f380ee7518dcd701c614291682b8e948f73b"
+4 -2
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -91,7 +91,9 @@
(mkdir-p home)
(for-each (lambda (file)
(let ((target (string-append home "/" file)))
(copy-file (string-append directory "/" file) target)
(copy-recursively (string-append directory "/" file)
target
#:log (%make-void-port "w"))
(make-file-writable target)))
files)))
+60 -7
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -18,11 +18,13 @@
(define-module (gnu build file-systems)
#:use-module (guix build utils)
#:use-module (guix build bournish)
#:use-module (rnrs io ports)
#:use-module (rnrs bytevectors)
#:use-module (ice-9 match)
#:use-module (ice-9 rdelim)
#:use-module (ice-9 format)
#:use-module (ice-9 regex)
#:use-module (system foreign)
#:autoload (system repl repl) (start-repl)
#:use-module (srfi srfi-1)
@@ -34,6 +36,9 @@
find-partition-by-uuid
canonicalize-device-spec
uuid->string
string->uuid
MS_RDONLY
MS_NOSUID
MS_NODEV
@@ -213,6 +218,11 @@ or #f if none was found."
(disk-partitions))
(cut string-append "/dev/" <>)))
;;;
;;; UUIDs.
;;;
(define-syntax %network-byte-order
(identifier-syntax (endianness big)))
@@ -228,6 +238,41 @@ like \"6b700d61-5550-48a1-874c-a3d86998990e\"."
(format #f "~8,'0x-~4,'0x-~4,'0x-~4,'0x-~12,'0x"
time-low time-mid time-hi clock-seq node)))
(define %uuid-rx
;; The regexp of a UUID.
(make-regexp "^([[:xdigit:]]{8})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{4})-([[:xdigit:]]{12})$"))
(define (string->uuid str)
"Parse STR as a DCE UUID (see <https://tools.ietf.org/html/rfc4122>) and
return its contents as a 16-byte bytevector. Return #f if STR is not a valid
UUID representation."
(and=> (regexp-exec %uuid-rx str)
(lambda (match)
(letrec-syntax ((hex->number
(syntax-rules ()
((_ index)
(string->number (match:substring match index)
16))))
(put!
(syntax-rules ()
((_ bv index (number len) rest ...)
(begin
(bytevector-uint-set! bv index number
(endianness big) len)
(put! bv (+ index len) rest ...)))
((_ bv index)
bv))))
(let ((time-low (hex->number 1))
(time-mid (hex->number 2))
(time-hi (hex->number 3))
(clock-seq (hex->number 4))
(node (hex->number 5))
(uuid (make-bytevector 16)))
(put! uuid 0
(time-low 4) (time-mid 2) (time-hi 2)
(clock-seq 2) (node 6)))))))
(define* (canonicalize-device-spec spec #:optional (title 'any))
"Return the device name corresponding to SPEC. TITLE is a symbol, one of
the following:
@@ -251,9 +296,12 @@ the following:
;; The realm of canonicalization.
(if (eq? title 'any)
(if (string? spec)
(if (string-prefix? "/" spec)
'device
'label)
;; The "--root=SPEC" kernel command-line option always provides a
;; string, but the string can represent a device, a UUID, or a
;; label. So check for all three.
(cond ((string-prefix? "/" spec) 'device)
((string->uuid spec) 'uuid)
(else 'label))
'uuid)
title))
@@ -279,7 +327,11 @@ the following:
;; Resolve the label.
(resolve find-partition-by-label spec identity))
((uuid)
(resolve find-partition-by-uuid spec uuid->string))
(resolve find-partition-by-uuid
(if (string? spec)
(string->uuid spec)
spec)
uuid->string))
(else
(error "unknown device title" title))))
@@ -301,9 +353,10 @@ the following:
(sleep 3)
(reboot))
(code
(format (current-error-port) "'~a' exited with code ~a on ~a; spawning REPL~%"
(format (current-error-port) "'~a' exited with code ~a on ~a; \
spawning Bourne-like REPL~%"
fsck code device)
(start-repl)))))
(start-repl %bournish-language)))))
(define (mount-flags->bit-mask flags)
"Return the number suitable for the 'flags' argument of 'mount' that
+2 -2
View File
@@ -103,7 +103,7 @@ STORE."
(directory ,store 0 30000 #o1775)
(directory "/etc")
(directory "/var/log") ; for dmd
(directory "/var/log") ; for shepherd
(directory "/var/guix/gcroots")
(directory "/var/empty") ; for no-login accounts
(directory "/var/db") ; for dhclient, etc.
@@ -159,7 +159,7 @@ as created and modified at the Epoch."
;; read-only store.
(unless (eq? (stat:type s) 'symlink)
(utime file 0 0 0 0))))
(find-files directory "")))
(find-files directory #:directories? #t)))
(define* (register-closure store closure
#:key (deduplicate? #t))
+5 -6
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -242,10 +242,10 @@ the last argument of `mknod'."
is true, mount ROOT read-only and make it a union with a writable tmpfs using
UNIONFS."
(define (mark-as-not-killable pid)
;; Tell the 'user-processes' dmd service that PID must be kept alive when
;; shutting down.
(mkdir-p "/root/etc/dmd")
(let ((port (open-file "/root/etc/dmd/do-not-kill" "a")))
;; Tell the 'user-processes' shepherd service that PID must be kept alive
;; when shutting down.
(mkdir-p "/root/etc/shepherd")
(let ((port (open-file "/root/etc/shepherd/do-not-kill" "a")))
(chmod port #o600)
(write pid port)
(newline port)
@@ -381,7 +381,6 @@ to it are lost."
(start-repl))
(display "loading kernel modules...\n")
(current-module-debugging-port (current-output-port))
(for-each (cut load-linux-module* <>
#:lookup-module lookup-module)
(map lookup-module linux-modules))
+1 -1
View File
@@ -41,7 +41,7 @@
"Return #t if user namespaces can be created by unprivileged users."
(let ((userns-file "/proc/sys/kernel/unprivileged_userns_clone"))
(if (file-exists? userns-file)
(string=? "1" (call-with-input-file userns-file read-string))
(eqv? #\1 (call-with-input-file userns-file read-char))
#t)))
(define (setgroups-supported?)
+68 -20
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -96,6 +96,21 @@ contains module names, not actual file names."
name
(dot-ko name)))
(define (normalize-module-name module)
"Return the \"canonical\" name for MODULE, replacing hyphens with
underscores."
;; See 'modname_normalize' in libkmod.
(string-map (lambda (chr)
(case chr
((#\-) #\_)
(else chr)))
module))
(define (file-name->module-name file)
"Return the module name corresponding to FILE, stripping the trailing '.ko'
and normalizing it."
(normalize-module-name (basename file ".ko")))
(define* (recursive-module-dependencies files
#:key (lookup-module dot-ko))
"Return the topologically-sorted list of file names of the modules depended
@@ -130,6 +145,24 @@ LOOKUP-MODULE to the module name."
(((modules . _) ...)
modules))))
(define (module-black-list)
"Return the black list of modules that must not be loaded. This black list
is specified using 'modprobe.blacklist=MODULE1,MODULE2,...' on the kernel
command line; it is honored by libkmod for users that pass
'KMOD_PROBE_APPLY_BLACKLIST', which includes 'modprobe --use-blacklist' and
udev."
(define parameter
"modprobe.blacklist=")
(let ((command (call-with-input-file "/proc/cmdline"
get-string-all)))
(append-map (lambda (arg)
(if (string-prefix? parameter arg)
(string-tokenize (string-drop arg (string-length parameter))
%not-comma)
'()))
(string-tokenize command))))
(define (module-loaded? module)
"Return #t if MODULE is already loaded. MODULE must be a Linux module name,
not a file name."
@@ -138,29 +171,44 @@ not a file name."
(define* (load-linux-module* file
#:key
(recursive? #t)
(lookup-module dot-ko))
"Load Linux module from FILE, the name of a `.ko' file. When RECURSIVE? is
true, load its dependencies first (à la 'modprobe'.) The actual files
containing modules depended on are obtained by calling LOOKUP-MODULE with the
module name."
(lookup-module dot-ko)
(black-list (module-black-list)))
"Load Linux module from FILE, the name of a '.ko' file; return true on
success, false otherwise. When RECURSIVE? is true, load its dependencies
first (à la 'modprobe'.) The actual files containing modules depended on are
obtained by calling LOOKUP-MODULE with the module name. Modules whose name
appears in BLACK-LIST are not loaded."
(define (slurp module)
;; TODO: Use 'mmap' to reduce memory usage.
;; TODO: Use 'finit_module' to reduce memory usage.
(call-with-input-file file get-bytevector-all))
(when recursive?
(for-each (cut load-linux-module* <> #:lookup-module lookup-module)
(map lookup-module (module-dependencies file))))
(define (black-listed? module)
(let ((result (member module black-list)))
(when result
(format (current-module-debugging-port)
"not loading module '~a' because it's black-listed~%"
module))
result))
(format (current-module-debugging-port)
"loading Linux module from '~a'...~%" file)
(define (load-dependencies file)
(let ((dependencies (module-dependencies file)))
(every (cut load-linux-module* <> #:lookup-module lookup-module)
(map lookup-module dependencies))))
(catch 'system-error
(lambda ()
(load-linux-module (slurp file)))
(lambda args
;; If this module was already loaded and we're in modprobe style, ignore
;; the error.
(unless (and recursive? (= EEXIST (system-error-errno args)))
(apply throw args)))))
(and (not (black-listed? (file-name->module-name file)))
(or (not recursive?)
(load-dependencies file))
(begin
(format (current-module-debugging-port)
"loading Linux module from '~a'...~%" file)
(catch 'system-error
(lambda ()
(load-linux-module (slurp file)))
(lambda args
;; If this module was already loaded and we're in modprobe style, ignore
;; the error.
(or (and recursive? (= EEXIST (system-error-errno args)))
(apply throw args)))))))
;;; linux-modules.scm ends here
+14 -5
View File
@@ -1,5 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -97,7 +99,7 @@ the #:references-graphs parameter of 'derivation'."
(_ #f))
(unless (zero?
(apply system* qemu "-enable-kvm" "-nographic" "-no-reboot"
(apply system* qemu "-nographic" "-no-reboot"
"-m" (number->string memory-size)
"-net" "nic,model=virtio"
"-virtfs"
@@ -111,10 +113,17 @@ the #:references-graphs parameter of 'derivation'."
"-initrd" initrd
"-append" (string-append "console=ttyS0 --load="
builder)
(if make-disk-image?
`("-drive" ,(string-append "file=" image-file
",if=virtio"))
'())))
(append
(if make-disk-image?
`("-drive" ,(string-append "file=" image-file
",if=virtio"))
'())
;; Only enable kvm if we see /dev/kvm exists.
;; This allows users without hardware virtualization to still
;; use these commands.
(if (file-exists? "/dev/kvm")
'("-enable-kvm")
'()))))
(error "qemu failed" qemu))
(if make-disk-image?
+48 -165
View File
@@ -1,7 +1,9 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -22,9 +24,9 @@
#:use-module (guix packages)
#:use-module (guix ui)
#:use-module (guix utils)
#:use-module ((guix ftp-client) #:select (ftp-open))
#:use-module (guix gnu-maintenance)
#:use-module (guix upstream)
#:use-module ((guix build utils)
#:select ((package-name->name+version
. hyphen-separated-name->name+version)))
#:use-module (ice-9 ftw)
#:use-module (ice-9 vlist)
#:use-module (ice-9 match)
@@ -46,12 +48,6 @@
find-best-packages-by-name
find-newest-available-packages
package-direct-dependents
package-transitive-dependents
package-covering-dependents
check-package-freshness
specification->package
specification->package+output))
@@ -262,63 +258,6 @@ VERSION."
((_ version pkgs ...) pkgs)
(#f '()))))
(define* (vhash-refq vhash key #:optional (dflt #f))
"Look up KEY in the vhash VHASH, and return the value (if any) associated
with it. If KEY is not found, return DFLT (or `#f' if no DFLT argument is
supplied). Uses `eq?' for equality testing."
(or (and=> (vhash-assq key vhash) cdr)
dflt))
(define package-dependencies
(memoize
(lambda ()
"Return a vhash keyed by package, and with associated values that are a
list of packages that depend on that package."
(fold-packages
(lambda (package dag)
(fold
(lambda (in d)
;; Insert a graph edge from each of package's inputs to package.
(vhash-consq in
(cons package (vhash-refq d in '()))
(vhash-delq in d)))
dag
(match (package-direct-inputs package)
(((labels packages . _) ...)
packages) )))
vlist-null))))
(define (package-direct-dependents packages)
"Return a list of packages from the distribution that directly depend on the
packages in PACKAGES."
(delete-duplicates
(concatenate
(map (lambda (p)
(vhash-refq (package-dependencies) p '()))
packages))))
(define (package-transitive-dependents packages)
"Return the transitive dependent packages of the distribution packages in
PACKAGES---i.e. the dependents of those packages, plus their dependents,
recursively."
(let ((dependency-dag (package-dependencies)))
(fold-tree
cons '()
(lambda (node) (vhash-refq dependency-dag node))
;; Start with the dependents to avoid including PACKAGES in the result.
(package-direct-dependents packages))))
(define (package-covering-dependents packages)
"Return a minimal list of packages from the distribution whose dependencies
include all of PACKAGES and all packages that depend on PACKAGES."
(let ((dependency-dag (package-dependencies)))
(fold-tree-leaves
cons '()
(lambda (node) (vhash-refq dependency-dag node))
;; Start with the dependents to avoid including PACKAGES in the result.
(package-direct-dependents packages))))
(define %sigint-prompt
;; The prompt to jump to upon SIGINT.
@@ -341,119 +280,63 @@ return its return value."
(lambda (k signum)
(handler signum))))
(define-syntax-rule (waiting exp fmt rest ...)
"Display the given message while EXP is being evaluated."
(let* ((message (format #f fmt rest ...))
(blank (make-string (string-length message) #\space)))
(display message (current-error-port))
(force-output (current-error-port))
(call-with-sigint-handler
(lambda ()
(dynamic-wind
(const #f)
(lambda () exp)
(lambda ()
;; Clear the line.
(display #\cr (current-error-port))
(display blank (current-error-port))
(display #\cr (current-error-port))
(force-output (current-error-port)))))
(lambda (signum)
(format (current-error-port) " interrupted by signal ~a~%" SIGINT)
#f))))
;;;
;;; Package specification.
;;;
(define ftp-open*
;; Memoizing version of `ftp-open'. The goal is to avoid initiating a new
;; FTP connection for each package, esp. since most of them are to the same
;; server. This has a noticeable impact when doing "guix upgrade -u".
(memoize ftp-open))
(define* (%find-package spec name version #:key fallback?)
(match (find-best-packages-by-name name version)
((pkg . pkg*)
(unless (null? pkg*)
(warning (_ "ambiguous package specification `~a'~%") spec)
(warning (_ "choosing ~a from ~a~%")
(package-full-name pkg)
(location->string (package-location pkg))))
(when fallback?
(warning (_ "deprecated NAME-VERSION syntax; \
use NAME@VERSION instead~%")))
pkg)
(_
(if version
(leave (_ "~A: package not found for version ~a~%") name version)
(if (not fallback?)
;; XXX: Fallback to the older specification style with an hyphen
;; between NAME and VERSION, for backward compatibility.
(call-with-values
(lambda ()
(hyphen-separated-name->name+version name))
(cut %find-package spec <> <> #:fallback? #t))
(define (check-package-freshness package)
"Check whether PACKAGE has a newer version available upstream, and report
it."
;; TODO: Automatically inject the upstream version when desired.
(catch #t
(lambda ()
(when (false-if-exception (gnu-package? package))
(let ((name (package-name package))
(full-name (package-full-name package)))
;; XXX: This could work with non-GNU packages as well. However,
;; GNU's FTP-based updater would be too slow if it weren't memoized,
;; and the generic interface in (guix upstream) doesn't support
;; that.
(match (waiting (latest-release name
#:ftp-open ftp-open*
#:ftp-close (const #f))
(_ "looking for the latest release of GNU ~a...") name)
((? upstream-source? source)
(let ((latest-version
(string-append (upstream-source-package source) "-"
(upstream-source-version source))))
(when (version>? latest-version full-name)
(format (current-error-port)
(_ "~a: note: using ~a \
but ~a is available upstream~%")
(location->string (package-location package))
full-name latest-version))))
(_ #t)))))
(lambda (key . args)
;; Silently ignore networking errors rather than preventing
;; installation.
(case key
((getaddrinfo-error ftp-error) #f)
(else (apply throw key args))))))
;; The fallback case didn't find anything either, so bail out.
(leave (_ "~A: unknown package~%") name))))))
(define (specification->package spec)
"Return a package matching SPEC. SPEC may be a package name, or a package
name followed by a hyphen and a version number. If the version number is not
name followed by an at-sign and a version number. If the version number is not
present, return the preferred newest version."
(let-values (((name version)
(package-name->name+version spec)))
(match (find-best-packages-by-name name version)
((p) ; one match
p)
((p x ...) ; several matches
(warning (_ "ambiguous package specification `~a'~%") spec)
(warning (_ "choosing ~a from ~a~%")
(package-full-name p)
(location->string (package-location p)))
p)
(_ ; no matches
(if version
(leave (_ "~A: package not found for version ~a~%")
name version)
(leave (_ "~A: unknown package~%") name))))))
(let-values (((name version) (package-name->name+version spec)))
(%find-package spec name version)))
(define* (specification->package+output spec #:optional (output "out"))
"Return the package and output specified by SPEC, or #f and #f; SPEC may
optionally contain a version number and an output name, as in these examples:
guile
guile-2.0.9
guile@2.0.9
guile:debug
guile-2.0.9:debug
guile@2.0.9:debug
If SPEC does not specify a version number, return the preferred newest
version; if SPEC does not specify an output, return OUTPUT."
(define (ensure-output p sub-drv)
(if (member sub-drv (package-outputs p))
sub-drv
(leave (_ "package `~a' lacks output `~a'~%")
(package-full-name p)
sub-drv)))
(let-values (((name version sub-drv)
(package-specification->name+version+output spec output)))
(match (find-best-packages-by-name name version)
((p)
(values p (ensure-output p sub-drv)))
((p p* ...)
(warning (_ "ambiguous package specification `~a'~%")
spec)
(warning (_ "choosing ~a from ~a~%")
(package-full-name p)
(location->string (package-location p)))
(values p (ensure-output p sub-drv)))
(()
(leave (_ "~a: package not found~%") spec)))))
(match (%find-package spec name version)
(#f
(values #f #f))
(package
(if (member sub-drv (package-outputs package))
(values package sub-drv)
(leave (_ "package `~a' lacks output `~a'~%")
(package-full-name package)
sub-drv))))))
+4 -3
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,14 +25,15 @@
(define-public abduco
(package
(name "abduco")
(version "0.4")
(version "0.5")
(source (origin
(method url-fetch)
(uri (string-append
"http://www.brain-dump.org/projects/abduco/abduco-"
version ".tar.gz"))
(sha256
(base32 "1fxwg2s5w183p0rwzsxizy9jdnilv5qqs647l3wl3khny6fp58xx"))))
(base32
"11phry5wnvwm9ckij5gxbrjfgdz3x38vpnm505q5ldc88im248mz"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "CC=gcc"
+417 -103
View File
@@ -1,11 +1,15 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -34,6 +38,7 @@
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages readline)
#:use-module (gnu packages linux)
@@ -47,6 +52,8 @@
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
#:use-module (gnu packages glib)
#:use-module (gnu packages openldap)
#:use-module (gnu packages mcrypt)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt)
#:use-module (gnu packages texinfo)
@@ -57,9 +64,42 @@
#:use-module (gnu packages image)
#:use-module (gnu packages xorg)
#:use-module (gnu packages python)
#:use-module (gnu packages man))
#:use-module (gnu packages man)
#:use-module (gnu packages autotools))
(define-public aide
(package
(name "aide")
(version "0.15.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/aide/aide/"
version "/aide-" version ".tar.gz"))
(sha256
(base32
"1vsrc0s62kv1i84skm6k6zy868gayjck268qwj38rpspc8c5qgih"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)
("flex" ,flex)))
(inputs
`(("libgcrypt" ,libgcrypt)
("libgpg-error" ,libgpg-error)
("libmhash" ,libmhash)
("zlib" ,zlib)))
(synopsis "File and directory integrity checker")
(description
"AIDE (Advanced Intrusion Detection Environment) is a file and directory
integrity checker. It creates a database from the regular expression rules
that it finds from its configuration files. Once this database is initialized
it can be used to verify the integrity of the files. It has several message
digest algorithms that are used to check the integrity of files. All of the
usual file attributes can be checked for inconsistencies.")
(home-page "http://aide.sourceforge.net/")
(license license:gpl2+)))
(define-public dmd
;; Deprecated. Kept around "just in case."
(let ((base-version "0.2")
(patch-level "01"))
(package
@@ -78,8 +118,8 @@
;; is used by a bunch of services.
(method url-fetch)
(uri (string-append
"http://git.savannah.gnu.org/cgit/dmd.git/patch/"
"?id=d1d0ff30b3ed2b86b0a3c9bc048d2a855f8e31e6"))
"http://git.savannah.gnu.org/cgit/shepherd.git/"
"patch?id=d1d0ff30b3ed2b86b0a3c9bc048d2a855f8e31e6"))
(sha256
(base32
"1lqymypixfiyb72d6bn24m06ry2q1ljnnv0qrc89pbb4z9azaa4d"))
@@ -98,6 +138,31 @@ interface and is based on GNU Guile.")
(license license:gpl3+)
(home-page "http://www.gnu.org/software/dmd/"))))
(define-public shepherd
(package
(name "shepherd")
(version "0.3.1")
(source (origin
(method url-fetch)
(uri (string-append "ftp://alpha.gnu.org/gnu/dmd/shepherd-"
version ".tar.gz"))
(sha256
(base32
"0f3yi3n4sl9myiay95yhv2a9an338qddfjrbv7da753ip66dkfz6"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--localstatedir=/var")))
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("guile" ,guile-2.0)))
(synopsis "System service manager")
(description
"The GNU Shepherd is a daemon-managing daemon, meaning that it supervises
the execution of system services, replacing similar functionality found in
typical init systems. It provides dependency-handling through a convenient
interface and is based on GNU Guile.")
(license license:gpl3+)
(home-page "http://www.gnu.org/software/shepherd/")))
(define-public dfc
(package
(name "dfc")
@@ -124,14 +189,14 @@ graphs and can export its output to different formats.")
(define-public htop
(package
(name "htop")
(version "1.0.3")
(version "2.0.1")
(source (origin
(method url-fetch)
(uri (string-append "http://hisham.hm/htop/releases/"
version "/htop-" version ".tar.gz"))
(sha256
(base32
"0a8qbpsifzjwc4f45xfwm48jhm59g6q5hlib4bf7z13mgy95fp05"))))
"0rjn9ybqx5sav7z4gn18f1q6k23nmqyb6yydfgghzdznz9nn447l"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)))
@@ -388,99 +453,142 @@ connection alive.")
(license license:gpl3+)))
(define-public isc-dhcp
(package
(name "isc-dhcp")
(version "4.3.1")
(source (origin
(method url-fetch)
(uri (string-append "http://ftp.isc.org/isc/dhcp/"
version "/dhcp-" version ".tar.gz"))
(sha256
(base32
"1w4s7sni1m9223ya8m2a64lr62845c6xlraprjf8zfx6lylbqv16"))))
(build-system gnu-build-system)
(arguments
'(#:phases (alist-cons-after
'configure 'post-configure
(lambda* (#:key outputs #:allow-other-keys)
;; Point to the right client script, which will be
;; installed in a later phase.
(substitute* "includes/dhcpd.h"
(("#define[[:blank:]]+_PATH_DHCLIENT_SCRIPT.*")
(let ((out (assoc-ref outputs "out")))
(string-append "#define _PATH_DHCLIENT_SCRIPT \""
out "/libexec/dhclient-script"
"\"\n"))))
(let* ((bind-major-version "9")
(bind-minor-version "9")
(bind-patch-version "8")
(bind-release-type "-P")
(bind-release-version "4")
(bind-version (string-append bind-major-version
"."
bind-minor-version
"."
bind-patch-version
bind-release-type
bind-release-version)))
(package
(name "isc-dhcp")
(version "4.3.3-P1")
(source (origin
(method url-fetch)
(uri (string-append "http://ftp.isc.org/isc/dhcp/"
version "/dhcp-" version ".tar.gz"))
(sha256
(base32
"08crcsmg4dm2v533aq3883ik8mf4vvvd6r998r4vrgx1zxnqj7n1"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'replace-bundled-bind
(lambda* (#:key inputs #:allow-other-keys)
(delete-file "bind/bind.tar.gz")
(copy-file (assoc-ref inputs "bind-source-tarball")
"bind/bind.tar.gz")
(chmod "bind/bind.tar.gz" #o644)
(substitute* "bind/version.tmp"
(("^MAJORVER=.*")
(format #f "MAJORVER=~a\n" ,bind-major-version))
(("^MINORVER=.*")
(format #f "MINORVER=~a\n" ,bind-minor-version))
(("^PATCHVER=.*")
(format #f "PATCHVER=~a\n" ,bind-patch-version))
(("^RELEASETYPE=.*")
(format #f "RELEASETYPE=~a\n" ,bind-release-type))
(("^RELEASEVER=.*")
(format #f "RELEASEVER=~a\n" ,bind-release-version)))
#t))
(add-after 'configure 'post-configure
(lambda* (#:key outputs #:allow-other-keys)
;; Point to the right client script, which will be
;; installed in a later phase.
(substitute* "includes/dhcpd.h"
(("#define[[:blank:]]+_PATH_DHCLIENT_SCRIPT.*")
(let ((out (assoc-ref outputs "out")))
(string-append "#define _PATH_DHCLIENT_SCRIPT \""
out "/libexec/dhclient-script"
"\"\n"))))
;; During the 'build' phase, 'bind.tar.gz' is extracted, so
;; we must patch shebangs in there and make sure the right
;; shell is used.
(with-directory-excursion "bind"
(substitute* "Makefile"
(("\\./configure")
(let ((sh (which "sh")))
(string-append "./configure CONFIG_SHELL="
sh " SHELL=" sh))))
;; During the 'build' phase, 'bind.tar.gz' is extracted, so
;; we must patch shebangs in there and make sure the right
;; shell is used.
(with-directory-excursion "bind"
(substitute* "Makefile"
(("\\./configure")
(let ((sh (which "sh")))
(string-append "./configure CONFIG_SHELL="
sh " SHELL=" sh))))
(system* "tar" "xf" "bind.tar.gz")
(for-each patch-shebang
(find-files "bind-9.9.5-P1" ".*"))
(zero? (system* "tar" "cf" "bind.tar.gz"
"bind-9.9.5-P1"
;; avoid non-determinism in the archive
"--sort=name"
"--mtime=@0"
"--owner=root:0"
"--group=root:0"))))
(alist-cons-after
'install 'post-install
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Install the dhclient script for GNU/Linux and make sure
;; if finds all the programs it needs.
(let* ((out (assoc-ref outputs "out"))
(libexec (string-append out "/libexec"))
(coreutils (assoc-ref inputs "coreutils"))
(inetutils (assoc-ref inputs "inetutils"))
(net-tools (assoc-ref inputs "net-tools"))
(sed (assoc-ref inputs "sed")))
(substitute* "client/scripts/linux"
(("/sbin/ip")
(string-append (assoc-ref inputs "iproute")
"/sbin/ip")))
(let ((bind-directory (string-append "bind-" ,bind-version)))
(system* "tar" "xf" "bind.tar.gz")
(for-each patch-shebang
(find-files bind-directory ".*"))
(zero? (system* "tar" "cf" "bind.tar.gz"
bind-directory
;; avoid non-determinism in the archive
"--sort=name"
"--mtime=@0"
"--owner=root:0"
"--group=root:0"))))))
(add-after 'install 'post-install
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Install the dhclient script for GNU/Linux and make sure
;; if finds all the programs it needs.
(let* ((out (assoc-ref outputs "out"))
(libexec (string-append out "/libexec"))
(coreutils (assoc-ref inputs "coreutils"))
(inetutils (assoc-ref inputs "inetutils"))
(net-tools (assoc-ref inputs "net-tools"))
(sed (assoc-ref inputs "sed")))
(substitute* "client/scripts/linux"
(("/sbin/ip")
(string-append (assoc-ref inputs "iproute")
"/sbin/ip")))
(mkdir-p libexec)
(copy-file "client/scripts/linux"
(string-append libexec "/dhclient-script"))
(mkdir-p libexec)
(copy-file "client/scripts/linux"
(string-append libexec "/dhclient-script"))
(wrap-program
(string-append libexec "/dhclient-script")
`("PATH" ":" prefix
,(map (lambda (dir)
(string-append dir "/bin:"
dir "/sbin"))
(list inetutils net-tools coreutils sed))))))
%standard-phases))))
(wrap-program
(string-append libexec "/dhclient-script")
`("PATH" ":" prefix
,(map (lambda (dir)
(string-append dir "/bin:"
dir "/sbin"))
(list inetutils net-tools coreutils sed))))))))))
(native-inputs `(("perl" ,perl)))
(native-inputs `(("perl" ,perl)))
(inputs `(("inetutils" ,inetutils)
("net-tools" ,net-tools)
("iproute" ,iproute)
(inputs `(("inetutils" ,inetutils)
("net-tools" ,net-tools)
("iproute" ,iproute)
;; When cross-compiling, we need the cross Coreutils and sed.
;; Otherwise just use those from %FINAL-INPUTS.
,@(if (%current-target-system)
`(("coreutils" ,coreutils)
("sed" ,sed))
'())))
;; XXX isc-dhcp bundles a copy of bind that has security
;; flaws, so we use a newer version.
("bind-source-tarball"
,(origin
(method url-fetch)
(uri (string-append "http://ftp.isc.org/isc/bind9/"
bind-version
"/bind-" bind-version ".tar.gz"))
(sha256
(base32
"1wl9kl0630dc1qjrf7fnp8cscagfm5qgmisi0zhr1p6iwi9bil2y"))))
(home-page "http://www.isc.org/products/DHCP/")
(synopsis "Dynamic Host Configuration Protocol (DHCP) tools")
(description
"ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a
;; When cross-compiling, we need the cross Coreutils and sed.
;; Otherwise just use those from %FINAL-INPUTS.
,@(if (%current-target-system)
`(("coreutils" ,coreutils)
("sed" ,sed))
'())))
(home-page "http://www.isc.org/products/DHCP/")
(synopsis "Dynamic Host Configuration Protocol (DHCP) tools")
(description
"ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a
reference implementation of all aspects of DHCP, through a suite of DHCP
tools: server, client, and relay agent.")
(license license:isc)))
(license license:isc))))
(define-public libpcap
(package
@@ -647,7 +755,7 @@ system administrator.")
(define-public sudo
(package
(name "sudo")
(version "1.8.10p3")
(version "1.8.15")
(source (origin
(method url-fetch)
(uri
@@ -657,22 +765,36 @@ system administrator.")
version ".tar.gz")))
(sha256
(base32
"002l6h27pnhb77b65frhazbhknsxvrsnkpi43j7i0qw1lrgi7nkf"))))
"0263gi6i19fyzzc488n0qw3m518i39f6a7qmrfvahk9j10bkh5j3"))
(patches (list (search-patch "sudo-CVE-2015-5602.patch")))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--with-logpath=/var/log/sudo.log"
"--with-rundir=/run/sudo"
"--with-vardir=/var/db/sudo"
"--with-iologdir=/var/log/sudo-io")
`(#:configure-flags
(list "--with-logpath=/var/log/sudo.log"
"--with-rundir=/var/run/sudo" ;must be cleaned up at boot time
"--with-vardir=/var/db/sudo"
"--with-iologdir=/var/log/sudo-io"
;; 'visudo.c' expects _PATH_MV to be defined, but glibc doesn't
;; provide it.
(string-append "CPPFLAGS=-D_PATH_MV='\""
(assoc-ref %build-inputs "coreutils")
"/bin/mv\"'"))
;; Avoid non-determinism; see <http://bugs.gnu.org/21918>.
#:parallel-build? #f
#:phases (alist-cons-before
'configure 'pre-configure
(lambda _
(substitute* "configure"
;; Refer to the right executables.
(("/usr/bin/mv") (which "mv"))
(("/usr/bin/sh") (which "sh")))
(substitute* "src/sudo_usage.h.in"
;; Do not capture 'configure' arguments since we would
;; unduly retain references, and also because the
;; CPPFLAGS above would close the string literal
;; prematurely.
(("@CONFIGURE_ARGS@") "\"\""))
(substitute* (find-files "." "Makefile\\.in")
(("-O [[:graph:]]+ -G [[:graph:]]+")
(("-o [[:graph:]]+ -g [[:graph:]]+")
;; Allow installation as non-root.
"")
(("^install: (.*)install-sudoers(.*)" _ before after)
@@ -716,7 +838,12 @@ commands and their arguments.")
".tar.gz"))
(sha256
(base32
"05mkp5bx1c3z7h5biddsv0p49gkrq9ksany3anp4wdiv92p5prfc"))))
"05mkp5bx1c3z7h5biddsv0p49gkrq9ksany3anp4wdiv92p5prfc"))
(patches
(map search-patch '("wpa-supplicant-CVE-2015-5310.patch"
"wpa-supplicant-CVE-2015-5314.patch"
"wpa-supplicant-CVE-2015-5315.patch"
"wpa-supplicant-CVE-2015-5316.patch")))))
(build-system gnu-build-system)
(arguments
'(#:phases (alist-replace
@@ -1215,3 +1342,190 @@ handles configuration-management, application deployment, cloud provisioning,
ad-hoc task-execution, and multinode orchestration - including trivializing
things like zero downtime rolling updates with load balancers.")
(license license:gpl3+)))
(define-public cpulimit
(package
(name "cpulimit")
(version "0.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/opsengine/cpulimit/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1nn2w849xd5bw4y5sqnll29nxdwl5h0cv4smc7dwmpb9qnd2ycb4"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure)
(replace
'build
(lambda _
(zero? (system* "make" "CC=gcc" "-Csrc"))))
(replace
'check
(lambda _
(zero? (system* "make" "CC=gcc" "-Ctests"))))
(replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(install-file "src/cpulimit" bin)))))))
(home-page "https://github.com/opsengine/cpulimit")
(synopsis "Limit CPU usage")
(description
"Cpulimit limits the CPU usage of a process. It does not change the nice
value or other scheduling priority settings, but the real CPU usage, and is
able to adapt itself dynamically to the overall system load. Children
processes and threads of the specified process may optionally share the same
limits.")
(license license:gpl2+)))
(define-public autojump
(package
(name "autojump")
(version "22.2.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/wting/autojump/archive/"
"release-v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0xglj7nb8xczaqy2dhn78drqdwqj64rqpymxhqmmwwqzfaqassw1"))))
(build-system gnu-build-system)
(native-inputs ;for tests
`(("python-mock" ,python-mock)
("python-pytest" ,python-pytest)))
(inputs
`(("python" ,python-wrapper)))
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(replace 'check
(lambda _
(zero?
(system* "python" "tests/autojump_utils_test.py"))))
(replace 'install
;; The install.py script doesn't allow system installation
;; into an arbitrary prefix, so do our own install.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(share (string-append out "/share/autojump"))
(py (string-append out "/lib/python"
,(version-major+minor
(package-version python-wrapper))
"/site-packages"))
(man (string-append out "/share/man/man1")))
(install-file "bin/autojump" bin)
(for-each (λ (f) (install-file f py))
(find-files "bin" "\\.py$"))
(for-each (λ (f) (install-file f share))
(find-files "bin" "autojump\\..*$"))
(substitute* (string-append share "/autojump.sh")
(("/usr/local") out))
(install-file "docs/autojump.1" man)
(wrap-program (string-append bin "/autojump")
`("PYTHONPATH" ":" prefix (,py)))
#t))))))
(home-page "https://github.com/wting/autojump")
(synopsis "Shell extension for filesystem navigation")
(description
"Autojump provides a faster way to navigate your filesystem, with a \"cd
command that learns\". It works by maintaining a database of the directories
you use the most from the command line and allows you to \"jump\" to
frequently used directories by typing only a small pattern.")
(license license:gpl3+)))
(define-public iftop
(package
(name "iftop")
(version "1.0pre4")
(source (origin
(method url-fetch)
(uri (string-append "http://www.ex-parrot.com/~pdw/iftop/download"
"/iftop-" version ".tar.gz"))
(sha256
(base32
"15sgkdyijb7vbxpxjavh5qm5nvyii3fqcg9mzvw7fx8s6zmfwczp"))))
(build-system gnu-build-system)
(inputs
`(("libpcap" ,libpcap)
("ncurses" ,ncurses)))
(synopsis "Monitor network usage")
(description "Iftop does for network usage what @command{top} does
for CPU usage. It listens to network traffic on a named interface and
displays a table of current bandwidth usage by pairs of hosts.")
(home-page "http://www.ex-parrot.com/~pdw/iftop/")
(license license:gpl2+)))
(define-public munge
(package
(name "munge")
(version "0.5.11")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dun/munge/archive/munge-"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0njplyalwwqh7xr7xc7klc6x06mq0ak8w2pxh85w8n4hxkmqqnf5"))))
(inputs
`(("openssl" ,openssl)
("libgcrypt" ,libgcrypt)))
(build-system gnu-build-system)
(home-page "http://dun.github.io/munge/")
(synopsis "Cluster computing authentication service")
(description
"Munge is an authentication service for creating and validating
credentials. It allows a process to authenticate the UID and GID of another
local or remote process within a group of hosts having common users and
groups. These hosts form a security realm that is defined by a shared
cryptographic key. Clients within this security realm can create and validate
credentials without the use of root privileges, reserved ports, or
platform-specific methods.")
(license license:gpl3+)))
(define-public audit
(package
(name "audit")
(version "2.4.5")
(source (origin
(method url-fetch)
(uri (string-append "http://people.redhat.com/sgrubb/audit/"
"audit-" version ".tar.gz"))
(sha256
(base32
"1q1q51dvxscbi4kbakmd4bn0xrvwwaiwvaya79925cbrqwzxsg77"))))
(build-system gnu-build-system)
(home-page "http://people.redhat.com/sgrubb/audit/")
(arguments
`(#:configure-flags (list "--with-python=no")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda _
;; In the build environmnte /etc/passwd does not contain an entry
;; for root/0, so we have to patch the expected value.
(substitute* "auparse/test/auparse_test.ref"
(("=0 \\(root\\)") "=0 (unknown(0))"))
#t)))))
(inputs
`(("openldap" ,openldap)
("openssl" ,openssl)
("sasl" ,cyrus-sasl)))
(synopsis "User-space component to the Linux auditing system")
(description
"auditd is the user-space component to the Linux auditing system, which
allows logging of system calls made by user-land processes. It's responsible
for writing audit records to the disk. Viewing the logs is done with the
@code{ausearch} or @code{aureport} utilities. Configuring the audit rules is
done with the @code{auditctl} utility.")
(license license:gpl2+)))
+28 -1
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,7 +21,8 @@
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu))
#:use-module (guix build-system gnu)
#:use-module (gnu packages pkg-config))
(define-public adns
(package
@@ -53,3 +55,28 @@ functionality. The library is asynchronous, allowing several concurrent
calls. The package also includes several command-line utilities for use in
scripts.")
(license gpl3+)))
(define-public c-ares
(package
(name "c-ares")
(version "1.11.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://c-ares.haxx.se/download/" name "-" version
".tar.gz"))
(sha256
(base32
"1z9y1f835dpi1ka2a2vzjygm3djdvr01036ml4l2js6r2xk2wqdk"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://c-ares.haxx.se/")
(synopsis "C library for asynchronous DNS requests")
(description
"C-ares is a C library that performs DNS requests and name resolution
asynchronously. It is intended for applications which need to perform DNS
queries without blocking, or need to perform multiple DNS queries in parallel.
The primary examples of such applications are servers which communicate with
multiple clients and programs with graphical user interfaces.")
(license (x11-style "http://c-ares.haxx.se/license.html"))))
+12 -9
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 John Darringon <jmd@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -33,9 +34,10 @@
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/barcode/barcode-"
version ".tar.xz"))
(sha256 (base32
"1indapql5fjz0bysyc88cmc54y8phqrbi7c76p71fgjp45jcyzp8"))))
version ".tar.xz"))
(sha256
(base32
"1indapql5fjz0bysyc88cmc54y8phqrbi7c76p71fgjp45jcyzp8"))))
(build-system gnu-build-system)
(synopsis "Convert text strings to printed bars in various standards")
(description "GNU Barcode is a flexible tool to produce printed barcodes
@@ -48,14 +50,15 @@ formats.")
(define-public qrencode
(package
(name "qrencode")
(version "3.4.3")
(version "3.4.4")
(source (origin
(method url-fetch)
(uri (string-append
"http://fukuchi.org/works/qrencode/qrencode-" version
".tar.bz2"))
(sha256 (base32
"163sb580p570p27imc6jhkfdw15kzp8vy1jq92nip1rwa63i9myz"))))
"https://fukuchi.org/works/qrencode/qrencode-" version
".tar.gz"))
(sha256
(base32
"0wiagx7i8p9zal53smf5abrnh9lr31mv0p36wg017401jrmf5577"))))
(build-system gnu-build-system)
(inputs `(("libpng" ,libpng)))
(native-inputs `(("pkg-config" ,pkg-config)))
@@ -65,4 +68,4 @@ symbol, a kind of 2D symbology that can be scanned by handy terminals such as
a mobile phone with CCD. The capacity of QR Code is up to 7000 digits or 4000
characters, and is highly robust.")
(license license:lgpl2.1+)
(home-page "http://fukuchi.org/works/qrencode")))
(home-page "https://fukuchi.org/works/qrencode")))
+40 -40
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;;
@@ -26,6 +26,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages readline)
#:use-module (gnu packages flex)
#:use-module (gnu packages texlive)
#:use-module (gnu packages xorg)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
@@ -66,7 +67,7 @@ multiplication routines such as ToomCook and the FFT.")
(define-public cm
(package
(name "cm")
(version "0.2.1")
(version "0.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -74,7 +75,7 @@ multiplication routines such as ToomCook and the FFT.")
version ".tar.gz"))
(sha256
(base32
"1r5dx5qy0ka2sq26n9jll9iy4sjqg0jp5r3jnbjhpgxvmj8jbhq8"))))
"1nf5kr0nqmhbzrsrinky18z0ighjpsmb5cr8zyg8jf04bfbyrfmc"))))
(build-system gnu-build-system)
(propagated-inputs
`(("mpfrcx" ,mpfrcx)
@@ -88,7 +89,7 @@ imaginary quadratic number fields and of elliptic curves with complex
multiplication via floating point approximations. It consists of libraries
that can be called from within a C program and of executable command
line applications.")
(license license:gpl2+)
(license license:gpl3+)
(home-page "http://cm.multiprecision.org/")))
(define-public fplll
@@ -115,7 +116,7 @@ solve the shortest vector problem.")
(define-public pari-gp
(package
(name "pari-gp")
(version "2.7.4")
(version "2.7.5")
(source (origin
(method url-fetch)
(uri (string-append
@@ -123,25 +124,23 @@ solve the shortest vector problem.")
version ".tar.gz"))
(sha256
(base32
"0k1qqagfl6zn7gvwmsqffj6g9yrzqvszwh2mblhmxpjlw1pigfh8"))))
"0c8l83a0gjq73r9hndsrzkypwxvnnm4pxkkzbg6jm95m80nzwh11"))))
(build-system gnu-build-system)
(native-inputs `(("texlive" ,texlive-minimal)))
(inputs `(("gmp" ,gmp)
("libx11" ,libx11)
("perl" ,perl)
("readline" ,readline)))
(arguments
'(#:make-flags '("gp")
;; FIXME: building the documentation requires tex; once this is
;; available, replace "gp" by "all"
'(#:make-flags '("all")
#:test-target "dobench"
#:phases
(alist-replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(zero?
(system* "./Configure" (string-append "--prefix=" out)))))
%standard-phases)))
#:phases (modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(zero?
(system* "./Configure"
(string-append "--prefix=" out)))))))))
(synopsis "PARI/GP, a computer algebra system for number theory")
(description
"PARI/GP is a widely used computer algebra system designed for fast
@@ -157,7 +156,7 @@ PARI is also available as a C library to allow for faster computations.")
(define-public gp2c
(package
(name "gp2c")
(version "0.0.9pl3")
(version "0.0.9pl5")
(source (origin
(method url-fetch)
(uri (string-append
@@ -165,7 +164,7 @@ PARI is also available as a C library to allow for faster computations.")
version ".tar.gz"))
(sha256
(base32
"0wbghihwlcx3w4j1la3bjf5gcrkk6lp9syw6iimqndq1f73ijlq3"))))
"1q003mkagc5ib6lqb2xfay7j4ffkwv7xlnznp6wdrq2sbqq4vyak"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)))
(inputs `(("pari-gp" ,pari-gp)))
@@ -238,7 +237,7 @@ fast arithmetic.")
(define-public arb
(package
(name "arb")
(version "2.7.0")
(version "2.8.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -247,7 +246,8 @@ fast arithmetic.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1rwkffs57v8mry63rq8l2dyw69zfs9rg5fpbfllqp3nkjnkp1fly"))))
"04hhcpshfkcq9fr4hixbhpps50yf9drk62xgkvlcaj5kb4nyrx7l"))
(patches (map search-patch '("arb-ldconfig.patch")))))
(build-system gnu-build-system)
(propagated-inputs
`(("flint" ,flint))) ; flint.h is included by arf.h
@@ -383,14 +383,15 @@ cosine/ sine transforms or DCT/DST).")
(define-public eigen
(package
(name "eigen")
(version "3.2.6")
(version "3.2.7")
(source (origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/eigen/eigen/get/"
version ".tar.bz2"))
(sha256
(base32
"0gil5ksmgcg6v3nw0v613mvpzz4n33xhawqs8l7fj7rnlpwm4cwa"))
"0gigbjjdlw2q0gvcnyiwc6in314a647rkidk6977bwiwn88im3p5"))
(file-name (string-append name "-" version ".tar.bz2"))
(modules '((guix build utils)))
(snippet
;; There are 3 test failures in the "unsupported" directory,
@@ -398,29 +399,28 @@ cosine/ sine transforms or DCT/DST).")
;; anyway, so just skip them.
'(substitute* "CMakeLists.txt"
(("add_subdirectory\\(unsupported\\)")
"# Do not build the tests for unsupported features.\n")))))
"# Do not build the tests for unsupported features.\n")
;; Work around
;; <http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1114>.
(("\"include/eigen3\"")
"\"${CMAKE_INSTALL_PREFIX}/include/eigen3\"")))))
(build-system cmake-build-system)
(arguments
'(;; Turn off debugging symbols to save space.
#:build-type "Release"
;; Use 'make check', as per
;; <http://eigen.tuxfamily.org/index.php?title=Tests>.
#:test-target "check"
#:phases (modify-phases %standard-phases
(replace 'check
(lambda _
(let* ((cores (parallel-job-count))
(dash-j (format #f "-j~a" cores)))
;; First build the tests, in parallel. See
;; <http://eigen.tuxfamily.org/index.php?title=Tests>.
(and (zero? (system* "make" "buildtests" dash-j))
#:phases (alist-cons-before
'check 'build-tests
(lambda _
;; First build the tests, in parallel.
;; See <http://eigen.tuxfamily.org/index.php?title=Tests>.
(let* ((cores (parallel-job-count))
(dash-j (format #f "-j~a" cores)))
;; These variables are supposed to be honored.
(setenv "EIGEN_MAKE_ARGS" dash-j)
(setenv "EIGEN_CTEST_ARGS" dash-j)
(zero? (system* "make" "buildtests" dash-j))))
%standard-phases)))
;; Then run 'CTest' with -V so we get more
;; details upon failure.
(zero? (system* "ctest" "-V" dash-j)))))))))
(home-page "http://eigen.tuxfamily.org")
(synopsis "C++ template library for linear algebra")
(description
+178
View File
@@ -0,0 +1,178 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages animation)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages video))
(define-public etl
(package
(name "etl")
(version "0.04.19")
(source (origin
(method url-fetch)
;; Keep this synchronized with the synfig release version.
(uri (string-append "mirror://sourceforge/synfig/releases/"
"1.0.2/source/ETL-" version ".tar.gz"))
(sha256
(base32
"070c70slizrklq1gbgja8m49xfmq65wlcd6hz6418cpx0wd4r55s"))))
(build-system gnu-build-system)
(home-page "http://www.synfig.org")
(synopsis "Extended C++ template library")
(description
"ETL is a class and template library designed to add new datatypes and
functions which combine well with the existing types and functions from the
C++ @dfn{Standard Template Library} (STL).")
(license license:gpl3+)))
(define-public synfig
(package
(name "synfig")
(version "1.0.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/synfig/releases/"
version "/source/synfig-" version
".tar.gz"))
(sha256
(base32
"1d3z2r78j3rkff47q3wl0ami69y3l4nyi5r9zclymb8ar7mgkk9l"))
(patches (list (search-patch "synfig-build-fix.patch")))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
;; The Boost library path is taken from the value of BOOST_LDFLAGS.
(list (string-append "BOOST_LDFLAGS=-L"
(assoc-ref %build-inputs "boost")
"/lib"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'adapt-to-libxml++-changes
(lambda _
(substitute* "configure"
(("libxml\\+\\+-2\\.6") "libxml++-3.0"))
(substitute* (append (find-files "src/modules/" "\\.cpp$")
(find-files "src/synfig/" "\\.(cpp|h)$"))
(("add_child\\(") "add_child_element(")
(("get_child_text\\(") "get_first_child_text(")
(("set_child_text\\(") "set_first_child_text(")
(("remove_child\\(") "remove_node("))
(substitute* "src/modules/mod_svg/svg_parser.cpp"
(("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList"))
#t))
(add-before 'configure 'set-flags
(lambda _
;; Compile with C++11, required by libsigc++.
(setenv "CXXFLAGS" "-D__STDC_CONSTANT_MACROS -std=gnu++11")
#t)))))
(inputs
`(("boost" ,boost)
("ffmpeg" ,ffmpeg)
("libdv" ,libdv)
("libjpeg" ,libjpeg)
("libpng" ,libpng)
("libmng" ,libmng)
("zlib" ,zlib)))
;; synfig.pc lists the following as required: Magick++ freetype2
;; fontconfig OpenEXR ETL glibmm-2.4 giomm-2.4 libxml++-3.0 sigc++-2.0
;; cairo pango pangocairo mlt++
(propagated-inputs
`(("cairo" ,cairo)
("etl" ,etl)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("glibmm" ,glibmm)
("imagemagick" ,imagemagick)
("libxml++" ,libxml++)
("libsigc++" ,libsigc++)
("mlt" ,mlt)
("openexr" ,openexr)
("pango" ,pango)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://www.synfig.org")
(synopsis "Vector-based 2D animation renderer")
(description
"Synfig is a vector-based 2D animation package. It is designed to be
capable of producing feature-film quality animation. It eliminates the need
for tweening, preventing the need to hand-draw each frame.")
(license license:gpl3+)))
(define-public synfigstudio
(package
(name "synfigstudio")
(version "1.0.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/synfig/releases/"
version "/source/synfigstudio-" version
".tar.gz"))
(sha256
(base32
"1xa74dlgkpjn0gzdcs0x25z7wg0806v2wygvvi73f7sn1fm88ig4"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "src/synfigapp/pluginmanager.cpp"
(("xmlpp::Node\\* n =") "const xmlpp::Node* n =")
(("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList"))
;; Some files are ISO-8859-1 encoded.
(with-fluids ((%default-port-encoding #f))
(substitute* (find-files "src/" "\\.(cpp|h)$")
(("#include <sigc\\+\\+/retype\\.h>")
"#include <sigc++/adaptors/retype.h>")
(("#include <sigc\\+\\+/hide\\.h>")
"#include <sigc++/adaptors/hide.h>")
(("#include <sigc\\+\\+/object\\.h>")
"#include <sigc++/trackable.h>")))
#t))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "CXXFLAGS=-std=gnu++11")))
(inputs
`(("gtkmm" ,gtkmm)
("libsigc++" ,libsigc++)
("synfig" ,synfig)))
(native-inputs
`(("pkg-config" ,pkg-config)
("intltool" ,intltool)))
(home-page "http://www.synfig.org")
(synopsis "Vector-based 2D animation package (GUI)")
(description
"Synfig is a vector-based 2D animation package. It is designed to
be capable of producing feature-film quality animation. It eliminates the
need for tweening, preventing the need to hand-draw each frame. This package
contains the graphical user interface for synfig.")
(license license:gpl3+)))
+28 -3
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,6 +38,16 @@
(base32
"1qgn5psfyhbrnap275xjfrzppf5a83fb67gpql0kfqv37al869gm"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-aspell
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin/aspell (string-append (assoc-ref outputs "out")
"/bin/aspell")))
(wrap-program bin/aspell
'("ASPELL_CONF" "" =
("${ASPELL_CONF:-\"dict-dir ${GUIX_PROFILE:-$HOME/.guix-profile}/lib/aspell\"}")))))))))
(inputs `(("perl" ,perl)))
(home-page "http://aspell.net/")
(synopsis "Spell checker")
@@ -89,10 +99,10 @@ dictionaries, including personal ones.")
(define-public aspell-dict-en
(aspell-dictionary "en" "English"
#:version "7.1-0"
#:version "2016.01.19-0"
#:sha256
(base32
"02ldfiny4iakgfgy4sdrzjqdzi7l1rmb6y30lv31kfy5x31g77gz")))
"01h4cl4lngp6mcfbyb47cjrc2gspyg2519dvknd97ki896nx7vcn")))
(define-public aspell-dict-eo
(aspell-dictionary "eo" "Esperanto"
@@ -122,3 +132,18 @@ dictionaries, including personal ones.")
#:sha256
(base32
"0ip6nq43hcr7vvzbv4lwwmlwgfa60hrhsldh9xy3zg2prv6bcaaw")))
(define-public aspell-dict-it
(aspell-dictionary "it" "Italian"
#:version "2.2_20050523-0"
#:sha256
(base32
"1gdf7bc1a0kmxsmphdqq8pl01h667mjsj6hihy6kqy14k5qdq69v")))
(define-public aspell-dict-nl
(aspell-dictionary "nl" "Dutch"
#:version "0.50-2"
#:prefix "aspell-"
#:sha256
(base32
"0ffb87yjsh211hllpc4b9khqqrblial4pzi1h9r3v465z1yhn3j4")))
+31 -36
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2016 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -28,46 +28,41 @@
(define-public attr
(package
(name "attr")
(version "2.4.46")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://savannah/attr/attr-"
version ".src.tar.gz"))
(sha256
(base32
"07qf6kb2zk512az481bbnsk9jycn477xpva1a726n5pzlzf9pmnw"))))
(version "2.4.47")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/attr/attr-"
version ".src.tar.gz"))
(sha256
(base32
"0nd8y0m6awc9ahv0ciiwf8gy54c8d3j51pw9xg7f7cn579jjyxr5"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(alist-cons-after
'configure 'patch-makefile-SHELL
(lambda _
(patch-makefile-SHELL "include/buildmacros"))
(alist-replace
'install
(lambda _
(zero? (system* "make"
"install"
"install-lib"
"install-dev")))
(modify-phases %standard-phases
(add-after 'configure 'patch-makefile-SHELL
(lambda _
(patch-makefile-SHELL "include/buildmacros")))
(replace 'install
(lambda _
(zero? (system* "make"
"install"
"install-lib"
"install-dev"))))
(replace 'check
(lambda* (#:key target #:allow-other-keys)
;; Use the right shell.
(substitute* "test/run"
(("/bin/sh")
(which "bash")))
;; When building natively, adjust the test cases.
,(if (%current-target-system)
'%standard-phases
'(alist-replace 'check
(lambda _
;; Use the right shell.
(substitute* "test/run"
(("/bin/sh")
(which "bash")))
;; When building natively, run the tests.
(unless target
(system* "make" "tests" "-C" "test"))
(system* "make" "tests" "-C" "test")
;; XXX: Ignore the test result since this is
;; dependent on the underlying file system.
#t)
%standard-phases))))))
;; XXX: Ignore the test result since this is
;; dependent on the underlying file system.
#t)))))
(inputs
;; Perl is needed to run tests; remove it from cross builds.
(if (%current-target-system)
+565 -35
View File
@@ -1,9 +1,9 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,6 +30,7 @@
#:use-module (guix build-system waf)
#:use-module (guix build-system trivial)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
@@ -42,6 +43,8 @@
#:use-module (gnu packages databases)
#:use-module (gnu packages file)
#:use-module (gnu packages flex)
#:use-module (gnu packages fltk)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
@@ -58,6 +61,7 @@
#:use-module (gnu packages python)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
@@ -67,15 +71,26 @@
(define-public alsa-modular-synth
(package
(name "alsa-modular-synth")
(version "2.1.1")
(version "2.1.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/alsamodular/ams-"
version ".tar.bz2"))
(sha256
(base32
"1nb7qzzqlqa2x8h797jbwi18ihnfkxqg9lyi0c4nvf8ybwzxkzd2"))))
"1azbrhpfk4nnybr7kgmc7w6al6xnzppg853vas8gmkh185kk11l0"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--enable-qt5")
#:phases
(modify-phases %standard-phases
;; Insert an extra space between linker flags.
(add-before 'configure 'add-missing-space
(lambda _
(substitute* "configure"
(("LIBS\\+=\\$LIBSsave") "LIBS+=\" $LIBSsave\"")
(("CFLAGS\\+=\\$CFLAGSsave") "CFLAGS+=\" $CFLAGSsave\""))
#t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
;; We cannot use zita-alsa-pcmi (the successor of clalsadrv) due to
@@ -85,7 +100,7 @@
("jack" ,jack-1)
("ladspa" ,ladspa)
("liblo" ,liblo)
("qt" ,qt-4)))
("qt" ,qt)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://alsamodular.sourceforge.net/")
@@ -128,7 +143,7 @@ Filter) modules follow the convention of 1V / Octave.")
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://aubio.org/")
(synopsis "A library for audio labelling")
(synopsis "Library for audio labelling")
(description
"aubio is a tool designed for the extraction of annotations from audio
signals. Its features include segmenting a sound file before each of its
@@ -155,24 +170,24 @@ streams from live audio.")
(define-public ardour
(package
(name "ardour")
(version "4.2")
(version "4.7")
(source (origin
(method git-fetch)
(uri (git-reference
(url "git://git.ardour.org/ardour/ardour.git")
(commit version)))
(snippet
;; Ardour expects this file to exist at build time. It can be
;; created from a git checkout with:
;; ./waf create_stored_revision
;; Ardour expects this file to exist at build time. The revision
;; is the output of
;; git describe HEAD | sed 's/^[A-Za-z]*+//'
'(call-with-output-file
"libs/ardour/revision.cc"
(lambda (port)
(format port "#include \"ardour/revision.h\"
namespace ARDOUR { const char* revision = \"4.2\" ; }"))))
namespace ARDOUR { const char* revision = \"4.7-219-g0e36f8e\" ; }"))))
(sha256
(base32
"1j8zw0bvh16qwyy8qrqynpak9nghl9j3qhjjcdl7wh9raafjqc00"))
"149gswphz77m3pkzsn2nqbm6yvcfa3fva560bcvjzlgb73f64q5l"))
(file-name (string-append name "-" version))))
(build-system waf-build-system)
(arguments
@@ -271,9 +286,8 @@ plugins are provided.")
(version "0.0.60")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/calf/calf/"
version "/calf-" version ".tar.gz"))
(uri (string-append "http://calf-studio-gear.org/files/calf-"
version ".tar.gz"))
(sha256
(base32
"019fwg00jv217a5r767z7szh7vdrarybac0pr2sk26xp81kibrx9"))))
@@ -318,7 +332,8 @@ tools (analyzer, mono/stereo tools, crossovers).")
version "/Csound" version ".tar.gz"))
(sha256
(base32
"0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))))
"0a1sni6lr7qpwywpggbkp0ia3h9bwwgf9i87gsag8ra2h30v82hd"))
(patches (list (search-patch "csound-header-ordering.patch")))))
(build-system cmake-build-system)
(arguments
;; Work around this error on x86_64 with libc 2.22+:
@@ -391,6 +406,319 @@ language and software synthesizer.")
ALSA PCM devices.")
(license license:gpl2+)))
(define-public amb-plugins
(package
(name "amb-plugins")
(version "0.8.1")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/AMB-plugins-"
version ".tar.bz2"))
(sha256
(base32
"0x4blm4visjqj0ndqr0cg776v3b7lvplpc8cgi9n51llhavn0jpl"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory-and-tool-paths
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr/lib/ladspa")
(string-append (assoc-ref outputs "out") "/lib/ladspa"))
(("/usr/bin/install") (which "install"))
(("/bin/rm") "#"))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA ambisonics plugins")
(description
"The AMB plugins are a set of LADSPA ambisonics plugins, mainly to be
used within Ardour. Features include: mono and stereo to B-format panning,
horizontal rotator, square, hexagon and cube decoders.")
(license license:gpl2+)))
(define-public mcp-plugins
(package
(name "mcp-plugins")
(version "0.4.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/MCP-plugins-"
version ".tar.bz2"))
(sha256
(base32
"06a9r1l85jmg7l1cvc3788mk8ra0xagjfy1rmhw3b80y4n0vlnvc"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "Chorus, phaser, and vintage high-pass and low-pass filters")
(description
"This package provides various LADSPA plugins. @code{cs_chorus} and
@code{cs_phaser} provide chorus and phaser effects, respectively;
@code{mvclpf24} provides four implementations of the low-pass filter used in
vintage Moog synthesizers; @code{mvchpf24} is based on the voltage-controlled
high-pass filter by Robert Moog. The filters attempt to accurately emulate
the non-linear circuit elements of their original analog counterparts.")
(license license:gpl2+)))
(define-public rev-plugins
(package
(name "rev-plugins")
(version "0.7.1")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/REV-plugins-"
version ".tar.bz2"))
(sha256
(base32
"1ikpinxm00pkfi259bnkzhsy3miagrjgdihaaf5x4v7zac29j3g7"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA reverb plugin")
(description
"This package provides a stereo reverb LADSPA plugin based on the
well-known greverb.")
(license license:gpl2+)))
(define-public fil-plugins
(package
(name "fil-plugins")
(version "0.3.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/FIL-plugins-"
version ".tar.bz2"))
(sha256
(base32
"1scfv9j7jrp50r565haa4rvxn1vk2ss86xssl5qgcr8r45qz42qw"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA four-band parametric equalizer plugin")
(description
"This package provides a LADSPA plugin for a four-band parametric
equalizer. Each section has an active/bypass switch, frequency, bandwidth and
gain controls. There is also a global bypass switch and gain control.
The 2nd order resonant filters are implemented using a Mitra-Regalia style
lattice filter, which is stable even while parameters are being changed.
All switches and controls are internally smoothed, so they can be used 'live'
without any clicks or zipper noises. This makes this plugin suitable for use
in systems that allow automation of plugin control ports, such as Ardour, or
for stage use.")
(license license:gpl2+)))
(define-public ste-plugins
(package
(name "ste-plugins")
(version "0.0.2")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/STE-plugins-"
version ".tar.bz2"))
(sha256
(base32
"0s3c9w5xihs87cnd1lh9xgj3maabjdyh6bl766qp5lhkg3ax8zy6"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA stereo width plugin")
(description
"This package provides a LADSPA plugin to manipulate the stereo width of
audio signals.")
(license license:gpl2+)))
(define-public vco-plugins
(package
(name "vco-plugins")
(version "0.3.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/VCO-plugins-"
version ".tar.bz2"))
(sha256
(base32
"1xzqdg3b07r7zww05y9bb737l9dxvfkv28m3fyak1aazaci3rsgl"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out"))
(("/bin/cp") (which "cp")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA plugin for synthesizer oscillators")
(description
"The @code{blvco} LADSPA plugin provides three anti-aliased oscillators:
@enumerate
@item Pulse-VCO, a dirac pulse oscillator with flat amplitude spectrum
@item Saw-VCO, a sawtooth oscillator with 1/F amplitude spectrum
@item Rec-VCO, a square / rectange oscillator
@end enumerate\n
All oscillators are low-pass filtered to provide waveforms similar to the
output of analog synthesizers such as the Moog Voyager.")
(license license:gpl2+)))
(define-public wah-plugins
(package
(name "wah-plugins")
(version "0.1.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/WAH-plugins-"
version ".tar.bz2"))
(sha256
(base32
"1wkbjarxdhjixkh7d5abralj11dj2xxg644fz3ycd7qyfgfvjfgd"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA Autowah effect plugin")
(description
"This package provides a LADSPA plugin for a Wah effect with envelope
follower.")
(license license:gpl2+)))
(define-public g2reverb
(package
(name "g2reverb")
(version "0.7.1")
(source (origin
(method url-fetch)
(uri (string-append
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/g2reverb-"
version ".tar.bz2"))
(sha256
(base32
"18wb8vj1kky5glr76s34awbi8qzplsmf3wjbd7a12hfv4j0bkwrj"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
;; no configure script
(delete 'configure)
(add-before 'install 'prepare-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa"))
#t))
(add-after 'unpack 'override-target-directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("/usr") (assoc-ref outputs "out")))
#t)))))
(home-page "http://kokkinizita.linuxaudio.org")
(synopsis "LADSPA stereo reverb plugin")
(description
"This package provides a LADSPA plugin for a stereo reverb effect.")
(license license:gpl2+)))
(define-public fluidsynth
(package
(name "fluidsynth")
@@ -534,7 +862,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
(define-public guitarix
(package
(name "guitarix")
(version "0.33.0")
(version "0.34.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -542,8 +870,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
version ".tar.bz2"))
(sha256
(base32
"1w6dg2n0alfjsx1iy6s53783invygwxk11p1i65cc3nq3zlidcgx"))
(patches (list (search-patch "guitarix-c++11.patch")))))
"0pamaq8iybsaglq6y1m1rlmz4wgbs2r6m24bj7x4fwg4grjvzjl8"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no "check" target
@@ -564,6 +891,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
("jack" ,jack-1)
("gtkmm" ,gtkmm-2)
("gtk+" ,gtk+-2)
("webkitgtk/gtk+-2" ,webkitgtk/gtk+-2)
("fftwf" ,fftwf)
("lrdf" ,lrdf)
("zita-resampler" ,zita-resampler)
@@ -589,6 +917,56 @@ from a simple noise gate to modulation effects like flanger, phaser or
auto-wah.")
(license license:gpl2+)))
(define-public rakarrack
(package
(name "rakarrack")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/rakarrack/rakarrack/"
"rakarrack-" version "/rakarrack-"
version ".tar.bz2"))
(sha256
(base32
"1rpf63pdn54c4yg13k7cb1w1c7zsvl97c4qxcpz41c8l91xd55kn"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* '("src/process.C"
"src/global.h")
(("#include <Fl/") "#include <FL/"))
#t))))
(build-system gnu-build-system)
(inputs
`(("alsa-utils" ,alsa-utils)
("fltk" ,fltk)
("libx11" ,libx11)
("libxext" ,libxext)
("libxfixes" ,libxfixes)
("libxft" ,libxft)
("libxrender" ,libxrender)
("libxpm" ,libxpm)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("jack" ,jack-1)
("alsa-lib" ,alsa-lib)
("libsndfile" ,libsndfile)
("libsamplerate" ,libsamplerate)
("zlib" ,zlib)))
(home-page "http://rakarrack.sourceforge.net/")
(synopsis "Audio effects processor")
(description
"Rakarrack is a richly featured multi-effects processor emulating a
guitar effects pedalboard. Effects include compressor, expander, noise gate,
equalizers, exciter, flangers, chorus, various delay and reverb effects,
distortion modules and many more. Most of the effects engine is built from
modules found in the excellent software synthesizer ZynAddSubFX. Presets and
user interface are optimized for guitar, but Rakarrack processes signals in
stereo while it does not apply internal band-limiting filtering, and thus is
well suited to all musical instruments and vocals.")
;; The code is explicitly licensed under the GPL version 2 only.
(license license:gpl2)))
(define-public ir
(package
(name "ir")
@@ -685,7 +1063,8 @@ synchronous execution of all clients, and low latency operation.")
"03b0iiyk3ng3vh5s8gaqwn565vik7910p56mlbk512bw3dhbdwc8"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
`(#:python ,python-2
#:tests? #f ; no check target
#:configure-flags '("--dbus"
"--alsa")
#:phases
@@ -698,13 +1077,22 @@ synchronous execution of all clients, and low latency operation.")
((".*CFLAGS.*-Wall.*" m)
(string-append m
" conf.env.append_unique('LINKFLAGS',"
"'-Wl,-rpath=" %output "/lib')\n"))))))))
"'-Wl,-rpath=" %output "/lib')\n")))))
(add-after 'install 'wrap-python-scripts
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Make sure 'jack_control' runs with the correct PYTHONPATH.
(let* ((out (assoc-ref outputs "out"))
(path (getenv "PYTHONPATH")))
(wrap-program (string-append out "/bin/jack_control")
`("PYTHONPATH" ":" prefix (,path))))
#t)))))
(inputs
`(("alsa-lib" ,alsa-lib)
("dbus" ,dbus)
("expat" ,expat)
("libsamplerate" ,libsamplerate)
("opus" ,opus)
("python2-dbus" ,python2-dbus)
("readline" ,readline)))
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -739,7 +1127,6 @@ synchronous execution of all clients, and low latency operation.")
("suil" ,suil)
("gtk" ,gtk+-2)
("gtkmm" ,gtkmm-2)
("qt" ,qt-4)
("jack" ,jack-1)))
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -755,15 +1142,20 @@ plugin function as a JACK application.")
(package
(name "ladspa")
(version "1.13")
(source (origin
(method url-fetch)
(uri (string-append
"http://www.ladspa.org/download/ladspa_sdk_"
version
".tgz"))
(sha256
(base32
"0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm"))))
(source
(origin
(method url-fetch)
;; Since the official link is dead,
;; we download the tarball from Debian or Internet Archive.
(uri (list (string-append "http://http.debian.net"
"/debian/pool/main/l/ladspa-sdk/ladspa-sdk_"
version ".orig.tar.gz")
(string-append "https://web.archive.org/web/20140717172251/"
"http://www.ladspa.org/download/ladspa_sdk_"
version ".tgz")))
(sha256
(base32
"0srh5n2l63354bc0srcrv58rzjkn4gv8qjqzg8dnq3rs4m7kzvdm"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; the "test" target is a listening test only
@@ -781,7 +1173,9 @@ plugin function as a JACK application.")
(("^CC.*") "CC = gcc\n")
(("^CPP.*") "CPP = g++\n"))))
(alist-delete 'build %standard-phases))))
(home-page "http://ladspa.org")
;; Since the home page is gone, we provide a link to the archived version.
(home-page
"https://web.archive.org/web/20140729190945/http://www.ladspa.org/")
(synopsis "Linux Audio Developer's Simple Plugin API (LADSPA)")
(description
"LADSPA is a standard that allows software audio processors and effects
@@ -876,6 +1270,34 @@ essential distortions.")
implementation of the Open Sound Control (OSC) protocol.")
(license license:lgpl2.1+)))
(define-public python-pyliblo
(package
(name "python-pyliblo")
(version "0.10.0")
(source (origin
(method url-fetch)
(uri (string-append "http://das.nasophon.de/download/pyliblo-"
version ".tar.gz"))
(sha256
(base32
"13vry6xhxm7adnbyj28w1kpwrh0kf7nw83cz1yq74wl21faz2rzw"))))
(build-system python-build-system)
(arguments `(#:tests? #f)) ;no tests
(inputs
`(("python-cython" ,python-cython)
("liblo" ,liblo)))
(home-page "http://das.nasophon.de/pyliblo/")
(synopsis "Python bindings for liblo")
(description
"Pyliblo is a Python wrapper for the liblo Open Sound Control (OSC)
library. It supports almost the complete functionality of liblo, allowing you
to send and receive OSC messages using a nice and simple Python API. Also
included are the command line utilities @code{send_osc} and @code{dump_osc}.")
(license license:lgpl2.1+)))
(define-public python2-pyliblo
(package-with-python2 python-pyliblo))
(define-public lilv
(package
(name "lilv")
@@ -1012,7 +1434,16 @@ software.")
#:configure-flags
(list (string-append "--boost-includes="
(assoc-ref %build-inputs "boost")
"/include"))))
"/include"))
#:phases (modify-phases %standard-phases
(add-before
'configure 'set-flags
(lambda* (#:key inputs #:allow-other-keys)
;; See e.g. https://github.com/lvtk/lvtk/issues/21
(setenv "LDFLAGS"
(string-append
"-L" (assoc-ref inputs "boost") "/lib "
"-lboost_system")))))))
(inputs
`(("boost" ,boost)
("lv2" ,lv2)))
@@ -1456,14 +1887,14 @@ surround and reverb.")
(define-public libxmp
(package
(name "libxmp")
(version "4.3.8")
(version "4.3.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/xmp/libxmp/"
name "-" version ".tar.gz"))
(sha256
(base32
"0h06091hlpgc6ds4pjmfq8sx4snw7av3nhny180q4pwfyasjb6ny"))))
"1gm5xa0ca7ypcbj3bkmj3k1vvzl7nkch8gjyrm8p1a9vgzr0n761"))))
(build-system gnu-build-system)
(home-page "http://xmp.sourceforge.net/")
(synopsis "Module player library")
@@ -1770,6 +2201,11 @@ result.")
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/zita-convolver-"
version ".tar.bz2"))
(snippet
;; Don't optimize for a specific processor architecture.
'(substitute* "libs/Makefile"
(("^CXXFLAGS \\+= -march=native") "")))
(modules '((guix build utils)))
(sha256
(base32
"14qrnczhp5mbwhky64il7kxc4hl1mmh495v60va7i2qnhasr6zmz"))))
@@ -1812,6 +2248,11 @@ engine.")
"http://kokkinizita.linuxaudio.org"
"/linuxaudio/downloads/zita-resampler-"
version ".tar.bz2"))
(snippet
;; Don't optimize for a specific processor architecture.
'(substitute* '("apps/Makefile" "libs/Makefile")
(("^CXXFLAGS \\+= -march=native") "")))
(modules '((guix build utils)))
(sha256
(base32
"0r9ary5sc3y8vba5pad581ha7mgsrlyai83w7w4x2fmhfy64q0wq"))))
@@ -1891,3 +2332,92 @@ access to ALSA PCM devices, taking care of the many functions required to
open, initialise and use a hw: device in mmap mode, and providing floating
point audio data.")
(license license:gpl3+)))
(define-public cuetools
(package
(name "cuetools")
(version "1.4.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/svend/cuetools/archive/"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4"))))
(build-system gnu-build-system)
;; The source tarball is not bootstrapped.
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'bootstrap
(lambda _ (zero? (system* "autoreconf" "-vfi")))))))
;; Bootstrapping tools
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("flex" ,flex)
("bison" ,bison)))
(synopsis "Cue and toc file parsers and utilities")
(description "Cuetools is a set of programs that are useful for manipulating
and using CUE sheet (cue) files and Table of Contents (toc) files. CUE and TOC
files are a way to represent the layout of a data or audio CD in a
machine-readable ASCII format.")
(home-page "https://github.com/svend/cuetools")
(license license:gpl2+)))
(define-public shntool
(package
(name "shntool")
(version "3.0.10")
(source (origin
(method url-fetch)
(uri (string-append "http://etree.org/shnutils/shntool/dist/src/"
"shntool-" version ".tar.gz"))
(sha256
(base32
"00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l"))))
(build-system gnu-build-system)
(synopsis "WAVE audio data processing tool")
(description "shntool is a multi-purpose WAVE data processing and reporting
utility. File formats are abstracted from its core, so it can process any file
that contains WAVE data, compressed or not---provided there exists a format
module to handle that particular file type.")
(home-page "http://etree.org/shnutils/shntool/")
;; 'install-sh' bears the x11 license
(license (list license:gpl2+ license:x11))))
(define-public dcadec
(package
(name "dcadec")
(version "0.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/foo86/dcadec/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0i0dpypgqkhhi4v1fmsp2way6w9kbcix3c7q79pmg39yvrzj17gd"))))
(build-system gnu-build-system)
(arguments
;; Test files are missing: https://github.com/foo86/dcadec/issues/53
'(#:tests? #f
#:make-flags
(list "CC=gcc"
;; Build shared library.
"CONFIG_SHARED=1"
(string-append "PREFIX=" (assoc-ref %outputs "out"))
;; Set proper runpath.
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))
#:phases
(modify-phases %standard-phases
;; No configure script, just a hand-written Makefile.
(delete 'configure))))
(synopsis "DTS Coherent Acoustics decoder")
(description "Dcadec is a DTS Coherent Acoustics surround sound decoder
with support for HD extensions.")
(home-page "https://github.com/foo86/dcadec")
(license license:lgpl2.1+)))
+59
View File
@@ -0,0 +1,59 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages augeas)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages readline)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages xml))
(define-public augeas
(package
(name "augeas")
(version "1.4.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.augeas.net/augeas-"
version ".tar.gz"))
(sha256
(base32
"0c2vncn0afmgwggnqa5s5z7m3zbcc66bi8v9m1h9w0i9q9xax7v5"))))
(build-system gnu-build-system)
;; Marked as "required" in augeas.pc
(propagated-inputs
`(("libxml2" ,libxml2)))
(inputs
`(("readline" ,readline)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://augeas.net/")
(synopsis "Edit configuration files programmatically")
(description
"Augeas is a library and command line tool for programmatically editing
configuration files in a controlled manner. Augeas exposes a tree of all
configuration settings and a simple local API for manipulating the tree.
Augeas then modifies underlying configuration files according to the changes
that have been made to the tree; it does as little modeling of configurations
as possible, and focuses exclusivley on transforming the tree-oriented syntax
of its public API to the myriad syntaxes of individual configuration files.")
(license license:lgpl2.1+)))
+5 -5
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,16 +31,15 @@
(define-public autogen
(package
(name "autogen")
(version "5.18.6")
(version "5.18.7")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/autogen/rel"
version "/autogen-"
version ".tar.xz"))
(uri (string-append "mirror://gnu/autogen"
"/autogen-" version ".tar.xz"))
(sha256
(base32
"0sfmmy19k9z0j3f738fyk6ljf6b66410cvd5zzyplxi2683j10qs"))))
"01d4m8ckww12sy50vgyxlnz83z9dxqpyqp153cscncc9w6jq19d7"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl) ;for doc generator mdoc
("pkg-config" ,pkg-config)))
+4 -2
View File
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
@@ -195,7 +195,9 @@ output is indexed in many ways to simplify browsing.")
(base32
"0dl6vfi2lzz8alnklwxzfz624b95hb1ipjvd3mk177flmddcf24r"))
(patches
(list (search-patch "automake-skip-amhello-tests.patch")))))
(map search-patch
'("automake-regexp-syntax.patch"
"automake-skip-amhello-tests.patch")))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,(autoconf-wrapper))
+43 -3
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -17,12 +18,14 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages avr)
#:use-module (guix licenses)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages cross-base))
#:use-module (gnu packages cross-base)
#:use-module (gnu packages vim)
#:use-module (gnu packages zip))
(define-public avr-libc
(package
@@ -48,4 +51,41 @@
(description
"AVR Libc is a project whose goal is to provide a high quality C library
for use with GCC on Atmel AVR microcontrollers.")
(license (non-copyleft "http://www.nongnu.org/avr-libc/LICENSE.txt"))))
(license (license:non-copyleft "http://www.nongnu.org/avr-libc/LICENSE.txt"))))
(define-public microscheme
(package
(name "microscheme")
(version "0.9.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ryansuchocki/"
"microscheme/archive/v" version ".zip"))
(sha256
(base32
"0cmp1c6ilcib4w9ysqghav310g8jsq9gdfpfa9sd23wgl7mlncxf"))
(file-name (string-append name "-" version ".zip"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; fails to build otherwise
#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(delete 'configure))
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))))
(native-inputs
`(("unzip" ,unzip)
("vim" ,vim))) ; for xxd
(home-page "http://microscheme.org/")
(synopsis "Scheme subset for Atmel microcontrollers")
(description
"Microscheme, or @code{(ms)} for short, is a functional programming
language for the Arduino, and for Atmel 8-bit AVR microcontrollers in general.
Microscheme is a subset of Scheme, in the sense that every valid @code{(ms)}
program is also a valid Scheme program (with the exception of Arduino
hardware-specific primitives). The @code{(ms)} compiler performs function
inlining, and features an aggressive tree-shaker, eliminating unused top-level
definitions. Microscheme has a robust @dfn{Foreign Function Interface} (FFI)
meaning that C code may be invoked directly from (ms) programs.")
(license license:expat)))
+66 -4
View File
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -148,7 +148,8 @@ backups (called chunks) to allow easy burning to CD/DVD.")
(patches
(list (search-patch "libarchive-mtree-filename-length-fix.patch")
(search-patch "libarchive-fix-lzo-test-case.patch")
(search-patch "libarchive-CVE-2013-0211.patch")))))
(search-patch "libarchive-CVE-2013-0211.patch")
(search-patch "libarchive-bsdtar-test.patch")))))
(build-system gnu-build-system)
;; TODO: Add -L/path/to/nettle in libarchive.pc.
(inputs
@@ -347,8 +348,16 @@ rdiff-backup is easy to use and settings have sensible defaults.")
(inputs
`(("acl" ,acl)
("openssl" ,openssl)
("python-llfuse" ,python-llfuse)
("python-msgpack" ,python-msgpack)))
("python-msgpack" ,python-msgpack)
;; Attic is probably incompatible with llfuse > 0.41.
;; These links are to discussions of llfuse compatibility from
;; the borg project. Borg is a recent fork of attic, and attic
;; has not been updated since the fork, so it's likely that
;; llfuse compatibility requirements are still the same.
;; https://github.com/borgbackup/borg/issues/642
;; https://github.com/borgbackup/borg/issues/643
("python-llfuse" ,python-llfuse-0.41)))
(synopsis "Deduplicating backup program")
(description "Attic is a deduplicating backup program. The main goal of
Attic is to provide an efficient and secure way to backup data. The data
@@ -397,3 +406,56 @@ compression, and more. The library itself implements storage techniques such
as content-addressable storage, content hash keys, Merkle trees, similarity
detection, and lossless compression.")
(license license:gpl3+)))
(define-public borg
(package
(name "borg")
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "borgbackup" version))
(sha256
(base32
"0wa6cvqs3rni5nwrgagigchcly8a53rxk56z0zn8iaii2cqrw2sh"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-env
(lambda* (#:key inputs #:allow-other-keys)
(let ((openssl (assoc-ref inputs "openssl"))
(lz4 (assoc-ref inputs "lz4")))
(setenv "BORG_OPENSSL_PREFIX" openssl)
(setenv "BORG_LZ4_PREFIX" lz4)
(setenv "PYTHON_EGG_CACHE" "/tmp")
#t)))
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(man (string-append out "/share/man/man1")))
(and
(zero? (system* "python3" "setup.py" "build_ext" "--inplace"))
(zero? (system* "make" "-C" "docs" "man"))
(begin
(install-file "docs/_build/man/borg.1" man)
#t))))))))
(native-inputs
`(("python-setuptools-scm" ,python-setuptools-scm)
;; For generating the documentation.
("python-sphinx" ,python-sphinx)
("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme)))
(inputs
`(("acl" ,acl)
("lz4" ,lz4)
("openssl" ,openssl)
("python-llfuse" ,python-llfuse)
("python-msgpack" ,python-msgpack)))
(synopsis "Deduplicated, encrypted, authenticated and compressed backups")
(description "Borg is a deduplicating backup program. Optionally, it
supports compression and authenticated encryption. The main goal of Borg is to
provide an efficient and secure way to backup data. The data deduplication
technique used makes Borg suitable for daily backups since only changes are
stored. The authenticated encryption technique makes it suitable for backups
to not fully trusted targets. Borg is a fork of Attic.")
(home-page "https://borgbackup.github.io/borgbackup/")
(license license:bsd-3)))
+28 -15
View File
@@ -1,10 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -73,16 +74,18 @@ command-line arguments, multiple languages, and so on.")
(define-public grep
(package
(name "grep")
(version "2.21")
(version "2.22")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/grep/grep-"
version ".tar.xz"))
(sha256
(base32
"1pp5n15qwxrw1pibwjhhgsibyv5cafhamf8lwzjygs6y00fa2i2j"))
(patches (list (search-patch "grep-CVE-2015-1345.patch")))))
"1srn321x7whlhs5ks36zlcrrmj4iahll8fxwsh1vbz3v04px54fa"))
(patches
(list (search-patch "grep-timing-sensitive-test.patch")))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl))) ;some of the tests require it
(synopsis "Print lines matching a pattern")
(description
"grep is a tool for finding text inside files. Text is found by
@@ -170,7 +173,7 @@ standard utility.")
"16d2r9kpivaak948mxzc0bai45mqfw73m113wrkmbffnalv1b5gx"))
(patches (list (search-patch "patch-hurd-path-max.patch")))))
(build-system gnu-build-system)
(native-inputs `(("ed", ed)))
(native-inputs `(("ed" ,ed)))
(synopsis "Apply differences to originals, with optional backups")
(description
"Patch is a program that applies changes to files based on differences
@@ -206,17 +209,17 @@ interactive means to merge two files.")
(define-public findutils
(package
(name "findutils")
(version "4.4.2")
(version "4.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/findutils/findutils-"
version ".tar.gz"))
(sha256
(base32
"0amn0bbwqvsvvsh6drfwz20ydc2czk374lzw5kksbh6bf78k4ks3"))
"178nn4dl7wbcw499czikirnkniwnx36argdnqgz4ik9i6zvwkm6y"))
(patches (map search-patch
'("findutils-absolute-paths.patch"
"findutils-localstatedir.patch")))))
'("findutils-localstatedir.patch"
"findutils-test-xargs.patch")))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list
@@ -324,7 +327,7 @@ functionality beyond that which is outlined in the POSIX standard.")
"19gwwhik3wdwn0r42b7xcihkbxvjl9r2bdal8nifc3k5i4rn3iqb"))
(patches (list (search-patch "make-impure-dirs.patch")))))
(build-system gnu-build-system)
(native-inputs `(("pkg-config", pkg-config))) ; to detect Guile
(native-inputs `(("pkg-config" ,pkg-config))) ; to detect Guile
(inputs `(("guile" ,guile-2.0)))
(outputs '("out" "debug"))
(arguments
@@ -485,7 +488,8 @@ store.")
'("glibc-ldd-x86_64.patch"
"glibc-locale-incompatibility.patch"
"glibc-versioned-locpath.patch"
"glibc-o-largefile.patch")))))
"glibc-o-largefile.patch"
"glibc-CVE-2015-7547.patch")))))
(build-system gnu-build-system)
;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc
@@ -595,6 +599,15 @@ store.")
(string-append "#define _PATH_BSHELL \""
bash "/bin/bash\"\n")))
;; Nscd uses __DATE__ and __TIME__ to create a string to
;; make sure the client and server come from the same
;; libc. Use something deterministic instead.
(substitute* "nscd/nscd_stat.c"
(("static const char compilation\\[21\\] =.*$")
(string-append
"static const char compilation[21] = \""
(string-take (basename out) 20) "\";\n")))
;; Make sure we don't retain a reference to the
;; bootstrap Perl.
(substitute* "malloc/mtrace.pl"
@@ -862,7 +875,7 @@ command.")
(define-public tzdata
(package
(name "tzdata")
(version "2015c")
(version "2015g")
(source (origin
(method url-fetch)
(uri (string-append
@@ -870,7 +883,7 @@ command.")
version ".tar.gz"))
(sha256
(base32
"0nin48g5dmkfgckp25bngxchn3sw3yyjss5sq7gs5xspbxgsq3w6"))))
"0qb1awqrn3215zd2jikpqnmkzrxwfjf0d3dw2xmnk4c40yzws8xr"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
@@ -917,7 +930,7 @@ command.")
version ".tar.gz"))
(sha256
(base32
"0bplibiy70dvlrhwqzkzxgmg81j6d2kklvjgi2f1g2zz1nkb3vkz"))))))
"1i3y1kzjiz2j62c7vd4wf85983sqk9x9lg3473njvbdz4kph5r0q"))))))
(home-page "http://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)
+27 -14
View File
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -92,7 +93,11 @@
(36 "0z6jbyy70lfdm6d3x0sbazbqdxb3xnpn9bmz7madpvrnbd284pxc")
(37 "04sqr8zkl6s5fccfvb775ppn3ldij5imria9swc39aq0fkfp1w9k")
(38 "0rv3g14mpgv8br267bf7rmgqlgwnc4v6g3g8y0sjba571i8amgmd")
(39 "1v3l3vkc3g2b6fjycqwlakr8xhiw6bmw6q0zd6bi0m0m4bnxr55b")))
(39 "1v3l3vkc3g2b6fjycqwlakr8xhiw6bmw6q0zd6bi0m0m4bnxr55b")
(40 "0sypv66vsldmc95gwvf7ylz1k7y37vnvdsjg8ajjr6b2j9mkkfw4")
(41 "06ic2gdpbi1afik3wqf9d4vh95if4bz8bmhcgr555621dsb35i2f")
(42 "06a90k0p6bqc4wk2dsmapna69124an76xvlnlj3xm497vci968dc")))
(define (download-patches store count)
"Download COUNT Bash patches into store. Return a list of
number/base32-hash tuples, directly usable in the 'patch-series' form."
@@ -143,17 +148,18 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
;; guile-bash expect.
(let ((include (string-append (assoc-ref outputs "include")
"/include/bash"))
(includes "^\\./include/[^/]+\\.h$")
(headers "^\\./(builtins/|lib/glob/|lib/tilde/|)[^/]+\\.h$"))
(mkdir-p include)
(for-each (lambda (file)
(when ((@ (ice-9 regex) string-match) headers file)
(let ((directory (string-append include "/"
(dirname file))))
(mkdir-p directory)
(copy-file file
(string-append directory "/"
(basename file))))))
(when (string-match includes file)
(install-file file include))
(when (string-match headers file)
(install-file file
(string-append include "/"
(dirname file)))))
(find-files "." "\\.h$"))
(delete-file (string-append include "/" "y.tab.h"))
#t)))
(version "4.3"))
(package
@@ -177,8 +183,9 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
(build-system gnu-build-system)
(outputs '("out"
"include")) ;headers used by extensions
(native-inputs `(("bison" ,bison))) ;to rebuild the parser
"doc" ;1.7 MiB of HTML and extra files
"include")) ;headers used by extensions
(native-inputs `(("bison" ,bison))) ;to rebuild the parser
(inputs `(("readline" ,readline)
("ncurses" ,ncurses))) ;TODO: add texinfo
(arguments
@@ -191,7 +198,7 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
;; Bash is reportedly not parallel-safe. See, for instance,
;; <http://patches.openembedded.org/patch/32745/> and
;; <http://git.buildroot.net/buildroot/commit/?h=79e2d802ae7e376a413c02097790493e1f65c3a4>.
;; <http://git.buildroot.net/buildroot/commit/?h=79e2d802a>.
#:parallel-build? #f
#:parallel-tests? #f
@@ -199,10 +206,14 @@ number/base32-hash tuples, directly usable in the 'patch-series' form."
;; for now.
#:tests? #f
#:modules ((ice-9 regex)
(guix build utils)
(guix build gnu-build-system))
#:phases (modify-phases %standard-phases
(add-after 'install 'post-install ,post-install-phase)
(add-after 'install 'install-headers
,install-headers-phase))))
,install-headers-phase))))
(synopsis "The GNU Bourne-Again SHell")
(description
"Bash is the shell, or command-line interpreter, of the GNU system. It
@@ -290,8 +301,10 @@ without modification.")
(completions (string-append out
"/share/bash-completion"
"/completions"))
(already (find-files (string-append util-linux
"/etc/bash_completion.d"))))
(already (find-files
(string-append
util-linux
"/etc/bash_completion.d"))))
(with-directory-excursion completions
(for-each (lambda (file)
(when (file-exists? file)
+5 -3
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -39,7 +39,9 @@
(arguments
;; Make it so that we don't rely on /proc. This is especially useful in
;; an initrd run before /proc is mounted.
'(#:configure-flags '("CPPFLAGS=-DUSE_LIBC_PRIVATES")))
'(#:configure-flags '("CPPFLAGS=-DUSE_LIBC_PRIVATES"
;; Install gc_cpp.h et al.
"--enable-cplusplus")))
(outputs '("out" "debug"))
(synopsis "The Boehm-Demers-Weiser conservative garbage collector
for C and C++")
@@ -103,4 +105,4 @@ lock-free code, experiment with thread programming paradigms, etc.")
(inputs `(("libatomic-ops" ,libatomic-ops)))
;; 'USE_LIBC_PRIVATES' is now the default.
(arguments '())))
(arguments '(#:configure-flags '("--enable-cplusplus")))))
File diff suppressed because it is too large Load Diff
+106 -12
View File
@@ -1,6 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,22 +23,28 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system glib-or-gtk)
#:use-module ((guix licenses) #:prefix l:)
#:use-module (gnu packages libevent)
#:use-module (gnu packages curl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages file)
#:use-module (gnu packages linux)
#:use-module ((gnu packages compression)
#:select (zlib))
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages adns)
#:use-module (gnu packages check)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages cyrus-sasl)
#:use-module (gnu packages tls))
#:use-module (gnu packages databases)
#:use-module (gnu packages file)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages nettle)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages ssh)
#:use-module (gnu packages tls)
#:use-module (gnu packages xml))
(define-public transmission
(package
@@ -149,3 +157,89 @@ full encryption, DHT, PEX, and Magnet Links. It can also be controlled via
XML-RPC over SCGI.")
(home-page "https://github.com/rakshasa/rtorrent")
(license l:gpl2+)))
(define-public transmission-remote-cli
(package
(name "transmission-remote-cli")
(version "1.7.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/fagga/"
"transmission-remote-cli/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1y0hkpcjf6jw9xig8yf484hbhy63nip0pkchx401yxj81m25l4z9"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2 ; only supports Python 2
#:tests? #f ; no test suite
#:phases (modify-phases %standard-phases
;; The software is just a Python script that must be
;; copied into place.
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/share/man/man1"))
;; FIXME install zsh completions
(completions (string-append out "/etc/bash_completion.d")))
(install-file "transmission-remote-cli" bin)
(install-file "transmission-remote-cli.1" man)
(install-file
(string-append
"completion/bash/"
"transmission-remote-cli-bash-completion.sh")
completions)))))))
(synopsis "Console client for the Transmission BitTorrent daemon")
(description "Transmission-remote-cli is a console client, with a curses
interface, for the Transmission BitTorrent daemon.")
(home-page "https://github.com/fagga/transmission-remote-cli")
(license l:gpl3+)))
(define-public aria2
(package
(name "aria2")
(version "1.21.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/tatsuhiro-t/aria2/"
"releases/download/release-" version "/"
name "-" version ".tar.xz"))
(sha256
(base32
"1035rzx9y7qv4p7cv04f461343dxha7ikprch059x2fci8n5yp12"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--enable-libaria2")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'delete-socket-tests
(lambda _
(substitute* "test/LpdMessageDispatcherTest.cc"
(("CPPUNIT_TEST_SUITE_REGISTRATION\\(LpdMessageDispatcherTest\\);" text)
(string-append "// " text)))
(substitute* "test/LpdMessageReceiverTest.cc"
(("CPPUNIT_TEST_SUITE_REGISTRATION\\(LpdMessageReceiverTest\\);" text)
(string-append "// " text))))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("c-ares" ,c-ares)
("cppunit" ,cppunit) ; for the tests
("gnutls" ,gnutls)
("gmp" ,gmp)
("libssh2" ,libssh2)
("libxml2" ,libxml2)
("nettle" ,nettle)
("sqlite" ,sqlite)
("zlib" ,zlib)))
(home-page "http://aria2.sourceforge.net/")
(synopsis "Utility for parallel downloading files")
(description
"Aria2 is a lightweight, multi-protocol & multi-source command-line
download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
Aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.")
(license l:gpl2+)))
+28 -28
View File
@@ -2,6 +2,7 @@
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
@@ -33,7 +34,7 @@
(define-public boost
(package
(name "boost")
(version "1.58.0")
(version "1.60.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -42,8 +43,7 @@
".tar.bz2"))
(sha256
(base32
"1rfkqxns60171q62cppiyzj8pmsbwp1l8jd7p6crriryqd7j1z7x"))
(patches (list (search-patch "boost-mips-avoid-m32.patch")))))
"0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8"))))
(build-system gnu-build-system)
(inputs `(("zlib" ,zlib)))
(native-inputs
@@ -63,38 +63,38 @@
;; so we disable that too.
,@(if (string-prefix? "mips64" (or (%current-target-system)
(%current-system)))
'("--without-context" "--without-coroutine")
'("--without-context"
"--without-coroutine" "--without-coroutine2")
'()))))
`(#:tests? #f
#:phases
(alist-replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* '("libs/config/configure"
"libs/spirit/classic/phoenix/test/runtest.sh"
"tools/build/doc/bjam.qbk"
"tools/build/src/engine/execunix.c"
"tools/build/src/engine/Jambase"
"tools/build/src/engine/jambase.c")
(("/bin/sh") (which "sh")))
(modify-phases %standard-phases
(replace
'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* '("libs/config/configure"
"libs/spirit/classic/phoenix/test/runtest.sh"
"tools/build/doc/bjam.qbk"
"tools/build/src/engine/execunix.c"
"tools/build/src/engine/Jambase"
"tools/build/src/engine/jambase.c")
(("/bin/sh") (which "sh")))
(setenv "SHELL" (which "sh"))
(setenv "CONFIG_SHELL" (which "sh"))
(setenv "SHELL" (which "sh"))
(setenv "CONFIG_SHELL" (which "sh"))
(zero? (system* "./bootstrap.sh"
(string-append "--prefix=" out)
"--with-toolset=gcc"))))
(alist-replace
'build
(lambda* (#:key outputs #:allow-other-keys)
(zero? (system* "./b2" ,@build-flags)))
(alist-replace
(zero? (system* "./bootstrap.sh"
(string-append "--prefix=" out)
"--with-toolset=gcc")))))
(replace
'build
(lambda* (#:key outputs #:allow-other-keys)
(zero? (system* "./b2" ,@build-flags))))
(replace
'install
(lambda* (#:key outputs #:allow-other-keys)
(zero? (system* "./b2" "install" ,@build-flags)))
%standard-phases))))))
(zero? (system* "./b2" "install" ,@build-flags))))))))
(home-page "http://boost.org")
(synopsis "Peer-reviewed portable C++ source libraries")
+5 -5
View File
@@ -40,12 +40,12 @@
"12v7nri79v8gns3inmz4k24q7pcnwi00hybs0wddfkcy1afh42xf"))))
(build-system gnu-build-system)
(arguments
`(#:phases
`(#:phases
(alist-replace
'configure
'configure
(lambda _ (zero? (system* "make" "defconfig")))
(alist-replace
'check
'check
(lambda _
(substitute* '("testsuite/du/du-s-works"
"testsuite/du/du-works")
@@ -70,7 +70,7 @@
;; So mark it with SKIP_KNOWN_BUGS like the others.
;; Presumably it wasn't known at the time of release ...
;; (It is strange that they release software which they know to have bugs)
(("testing \"grep -w \\^str doesn't match str not at the beginning\"")
(("testing \"grep -w \\^str doesn't match str not at the beginning\"")
"test x\"$SKIP_KNOWN_BUGS\" = x\"\" && testing \"grep -w ^str doesn't match str not at the beginning\""))
;; This test cannot possibly pass.
@@ -79,7 +79,7 @@
(delete-file "testsuite/which/which-uses-default-path")
(rmdir "testsuite/which")
(zero? (system* "make"
(zero? (system* "make"
;; "V=1"
"SKIP_KNOWN_BUGS=1"
"SKIP_INTERNET_TESTS=1"
+76 -1
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,9 +22,16 @@
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build utils)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (gnu packages base)
#:use-module (gnu packages databases)
#:use-module (gnu packages dav)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages perl))
#:use-module (gnu packages perl)
#:use-module (gnu packages python))
(define-public libical
(package
@@ -50,3 +58,70 @@
"Libical is an implementation of the iCalendar protocols and protocol
data units.")
(license lgpl2.1)))
(define-public khal
(package
(name "khal")
(version "0.7.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "khal" version))
(sha256
(base32
"00llxj7cv31mjsx0j6zxmyi9s1q20yvfkn025xcy8cv1ylfwic66"))
(modules '((guix build utils)))
;; Patch broken path in 'doc' Makefile.
;; Patch sent upstream: https://github.com/geier/khal/pull/307
(snippet
'(substitute* "doc/source/Makefile"
(("../../../khal/khal/settings/khal.spec")
"../../khal/settings/khal.spec" )))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
;; Bug reported: https://github.com/geier/khal/issues/309
(add-after 'unpack 'disable-test
(lambda _
(substitute* "tests/khalendar_test.py"
(("test_only_update_old_event")
"disabled_only_update_old_event"))))
;; Building the manpage requires khal to be installed.
(add-after 'install 'manpage
(lambda* (#:key outputs #:allow-other-keys)
(setenv "PYTHONPATH"
(string-append
(getenv "PYTHONPATH") ":" (assoc-ref outputs "out")))
(zero? (system* "make" "--directory=doc/" "man"))
(install-file
"doc/build/man/khal.1"
(string-append (assoc-ref outputs "out") "/share/man/man1"))))
;; The tests require us to choose a timezone.
(replace 'check
(lambda* (#:key inputs #:allow-other-keys)
(setenv "TZ"
(string-append (assoc-ref inputs "tzdata")
"/share/zoneinfo/Zulu"))
(zero? (system* "py.test" "tests")))))))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-setuptools-scm" ,python-setuptools-scm)
;; Required for tests
("tzdata" ,tzdata)
;; Required to build manpage
("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed)
("python-sphinx" ,python-sphinx)))
(inputs
`(("sqlite" ,sqlite)))
(propagated-inputs
`(("python-configobj" ,python-configobj)
("python-dateutil-2" ,python-dateutil-2)
("python-icalendar" ,python-icalendar)
("python-tzlocal" ,python-tzlocal)
("python-urwid" ,python-urwid)
("python-pyxdg" ,python-pyxdg)
("vdirsyncer" ,vdirsyncer)))
(synopsis "Console calendar program")
(description "Khal is a standards based console calendar program,
able to synchronize with CalDAV servers through vdirsyncer.")
(home-page "http://lostpackets.de/khal/")
(license expat)))
+3 -4
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -28,7 +28,7 @@
(define-public ccache
(package
(name "ccache")
(version "3.2.2")
(version "3.2.4")
(source
(origin
(method url-fetch)
@@ -36,7 +36,7 @@
version ".tar.xz"))
(sha256
(base32
"1jm0qb3h5sypllaiyj81zp6m009vm50hzjnx994ril94kxlrj3ag"))))
"0pga3hvd80f2p7mz88jmmbwzxh4vn5ihyjx5f6na8y2fclzsjg8w"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl))) ;for test.sh
(inputs `(("zlib" ,zlib)))
@@ -46,7 +46,6 @@
(lambda _
(substitute* '("test/test_hashutil.c" "test.sh")
(("#!/bin/sh") (string-append "#!" (which "sh"))))
(setenv "SHELL" (which "sh"))
#t)
%standard-phases)))
(home-page "https://ccache.samba.org/")
+43 -49
View File
@@ -3,6 +3,7 @@
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -43,14 +44,14 @@
(define-public libcddb
(package
(name "libcddb")
(version "1.3.0")
(version "1.3.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libcddb/libcddb-"
version ".tar.bz2"))
(sha256
(base32
"1y8bfy12dwm41m1jahayn3v47dm34fmz7m9cjxyh7xcw6fp3lzaf"))))
"0fr21a7vprdyy1bq6s99m0x420c9jm5fipsd63pqv8qyfkhhxkim"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; tests rely on access to external servers
(home-page "http://libcddb.sourceforge.net/")
@@ -125,14 +126,14 @@ libcdio.")
(define-public xorriso
(package
(name "xorriso")
(version "1.4.0")
(version "1.4.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/xorriso/xorriso-"
version ".tar.gz"))
(sha256
(base32
"0mhfxn2idkrw1i65a5y4gnb1fig85zpnszb9ax7w4a2v062y1l8b"))))
"1cq4a0904lnz6nygbgarnlq49cz4qnfdyvz90s3nfk5as7gbwhr8"))))
(build-system gnu-build-system)
(inputs
`(("acl" ,acl)
@@ -157,7 +158,8 @@ files.")
(version "10.2")
(source (origin
(method url-fetch)
(uri (string-append "http://downloads.xiph.org/releases/cdparanoia/cdparanoia-III-"
(uri (string-append "http://downloads.xiph.org/releases/"
"cdparanoia/cdparanoia-III-"
version ".src.tgz"))
(sha256
(base32
@@ -187,14 +189,14 @@ reconstruction capability.")
(define-public dvdisaster
(package
(name "dvdisaster")
(version "0.72.6")
(version "0.79.5")
(source (origin
(method url-fetch)
(uri (string-append "http://dvdisaster.net/downloads/dvdisaster-"
version ".tar.bz2"))
(sha256
(base32
"0sqrprc5rh3shnfli25m2wy0i5f83db54iv04s5s7bxf77m7sy79"))))
"0f8gjnia2fxcbmhl8b3qkr5b7idl8m855dw7xw2fnmbqwvcm6k4w"))))
(build-system gnu-build-system)
(inputs
`(("gtk+" ,gtk+-2)))
@@ -206,14 +208,7 @@ reconstruction capability.")
`(;; Parallel builds appear to be unsafe, see
;; <http://hydra.gnu.org/build/49331/nixlog/1/raw>.
#:parallel-build? #f
#:tests? #f ; no check target
#:phases
(alist-cons-before
'patch-source-shebangs 'sanitise
(lambda _
;; delete dangling symlink
(delete-file ".#GNUmakefile"))
%standard-phases)))
#:tests? #f)) ; no check target
(home-page "http://dvdisaster.net/en/index.html")
(synopsis "Error correcting codes for optical media images")
(description "Optical media (CD,DVD,BD) keep their data only for a
@@ -238,7 +233,7 @@ capacity is user-selectable.")
(version "1.4.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libcue/libcue-"
(uri (string-append "https://github.com/lipnitsk/libcue/archive/v"
version ".tar.bz2"))
(sha256
(base32
@@ -284,15 +279,15 @@ from an audio CD.")
(define-public abcde
(package
(name "abcde")
(version "2.7")
(home-page "http://abcde.einval.com/")
(version "2.7.1")
(home-page "https://abcde.einval.com/")
(source (origin
(method url-fetch)
(uri (string-append home-page "/download/abcde-"
version ".tar.gz"))
(sha256
(base32
"0ikpffzvacadh6vj9qlary8126j1zrd2knp9gvivmp7y1656jj01"))
"0l7j0nk8p30s97285i418rv9ym9bgns7bn6l8gldw3mjhnby609l"))
(modules '((guix build utils)))
(snippet
'(substitute* "Makefile"
@@ -302,37 +297,36 @@ from an audio CD.")
(string-append "etcdir = $(prefix)/etc\n"))))))
(build-system gnu-build-system)
(arguments
'(#:phases (alist-replace
'configure
(lambda* (#:key outputs inputs #:allow-other-keys)
(substitute* "Makefile"
(("^prefix = .*$")
(string-append "prefix = "
(assoc-ref outputs "out")
"\n"))))
(alist-cons-after
'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((wget (assoc-ref inputs "wget"))
(vorbis (assoc-ref inputs "vorbis-tools"))
(parano (assoc-ref inputs "cdparanoia"))
(which (assoc-ref inputs "which"))
(discid (assoc-ref inputs "cd-discid"))
(out (assoc-ref outputs "out")))
(define (wrap file)
(wrap-program file
`("PATH" ":" prefix
(,(string-append out "/bin:"
wget "/bin:"
which "/bin:"
vorbis "/bin:"
discid "/bin:"
parano "/bin")))))
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs inputs #:allow-other-keys)
(substitute* "Makefile"
(("^prefix = .*$")
(string-append "prefix = "
(assoc-ref outputs "out")
"\n")))))
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((wget (assoc-ref inputs "wget"))
(vorbis (assoc-ref inputs "vorbis-tools"))
(parano (assoc-ref inputs "cdparanoia"))
(which (assoc-ref inputs "which"))
(discid (assoc-ref inputs "cd-discid"))
(out (assoc-ref outputs "out")))
(define (wrap file)
(wrap-program file
`("PATH" ":" prefix
(,(string-append out "/bin:"
wget "/bin:"
which "/bin:"
vorbis "/bin:"
discid "/bin:"
parano "/bin")))))
(for-each wrap
(find-files (string-append out "/bin")
".*"))))
%standard-phases))
(for-each wrap
(find-files (string-append out "/bin")
".*"))))))
#:tests? #f))
(inputs `(("wget" ,wget)
+55 -9
View File
@@ -3,6 +3,8 @@
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,6 +28,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial))
@@ -87,15 +90,14 @@ with a flexible variety of user interfaces.")
(define-public cppunit
(package
(name "cppunit")
(version "1.12.1")
(version "1.13.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/cppunit/" name "/"
name "-"
version ".tar.gz"))
(uri (string-append "http://dev-www.libreoffice.org/src/"
name "-" version ".tar.gz"))
(sha256
(base32
"0jm49v5rmc5qw34vqs56gy8xja1dhci73bmh23cig4kcir6a0a5c"))))
"17s2kzmkw3kfjhpp72rfppyd7syr7bdq5s69syj2nvrlwd3d4irz"))))
;; Explicitly link with libdl. This is expected to be done by packages
;; relying on cppunit for their tests. However, not all of them do.
;; If we added the linker flag to such packages, we would pollute all
@@ -103,7 +105,7 @@ with a flexible variety of user interfaces.")
(arguments
`(#:make-flags '("LDFLAGS=-ldl")))
(build-system gnu-build-system)
(home-page "http://sourceforge.net/projects/cppunit/")
(home-page "https://wiki.freedesktop.org/www/Software/cppunit/")
(synopsis "Unit testing framework for C++")
(description "CppUnit is the C++ port of the famous JUnit framework for
unit testing. Test output is in XML for automatic testing and GUI based for
@@ -113,17 +115,17 @@ supervised tests.")
(define-public catch-framework
(package
(name "catch")
(version "1.1.3") ;Sub-minor is the build number
(version "1.3.5") ;Sub-minor is the build number
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/philsquared/Catch")
;; Semi-arbitrary.
(commit "c51e86819d")))
(commit "ae5ee2cf63d6d67bd1369b512d2a7b60b571c907")))
(file-name (string-append name "-" version))
(sha256
(base32
"0kgi7wxxysgjbpisqfj4dj0k19cyyai92f001zi8gzkybd4fkgv5"))))
"1yfb3lxv929szqy1nw9xw3d45wzkppziqshkjxvrb1fdmf46x564"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@@ -147,3 +149,47 @@ supervised tests.")
"Catch stands for C++ Automated Test Cases in Headers and is a
multi-paradigm automated test framework for C++ and Objective-C.")
(license boost1.0)))
(define-public cmocka
(package
(name "cmocka")
(version "1.0.1")
(source (origin
(method url-fetch)
(uri (string-append "https://cmocka.org/files/1.0/cmocka-"
version ".tar.xz"))
(sha256
(base32
"0fvm6rdalqcxckbddch8ycdw6n2ckldblv117n09chi2l7bm0q5k"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; No test target
(home-page "https://cmocka.org/")
(synopsis "Unit testing framework for C")
(description "Cmocka is a unit testing framework for C with support for
mock objects. It only requires the standard C library, and works with
different compilers. Cmocka supports several different message output formats
like Test Anything Protocol, Subunit, xUnit XML or the original cmockery output
format.")
(license asl2.0)))
(define-public cppcheck
(package
(name "cppcheck")
(version "1.72")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/danmar/cppcheck/archive/"
version ".tar.gz"))
(sha256
(base32 "0zxaixhqi4vmj7xj56gzadggcbjhbjjm6abyr86qlan23sg98667"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system cmake-build-system)
(home-page "http://cppcheck.sourceforge.net")
(synopsis "Static C/C++ code analyzer")
(description "Cppcheck is a static code analyzer for C and C++. Unlike
C/C++ compilers and many other analysis tools it does not detect syntax errors
in the code. Cppcheck primarily detects the types of bugs that the compilers
normally do not detect. The goal is to detect only real errors in the code
(i.e. have zero false positives).")
(license gpl3+)))
+3 -2
View File
@@ -66,7 +66,8 @@
"Source/cmExecProgramCommand.cxx"
"Utilities/cmbzip2/Makefile-libbz2_so"
"Utilities/Release/release_cmake.cmake"
"Utilities/cmlibarchive/libarchive/archive_write_set_format_shar.c"
"Utilities/cmlibarchive/libarchive/\
archive_write_set_format_shar.c"
"Tests/CMakeLists.txt"
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
(("/bin/sh") (which "sh"))))
@@ -76,7 +77,7 @@
;; Help cmake's bootstrap process to find system libraries
(begin
(setenv "CMAKE_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
(setenv "CMAKE_INCLUDE_PATH" (getenv "CPATH"))
(setenv "CMAKE_INCLUDE_PATH" (getenv "C_INCLUDE_PATH"))
;; Get verbose output from failed tests
(setenv "CTEST_OUTPUT_ON_FAILURE" "TRUE")))
(alist-replace
+51 -19
View File
@@ -2,6 +2,7 @@
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -67,14 +68,14 @@ a major mode for Emacs for examining the flowcharts that it produces.")
(define-public complexity
(package
(name "complexity")
(version "1.3")
(version "1.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/complexity/complexity-"
version ".tar.gz"))
version ".tar.xz"))
(sha256
(base32
"19bc64sxpqd5rqylqaa7dijz2x7qp2b0dg3ah3fb3qbcvd8b4wgy"))))
"0lr0l9kj2w3jilz9h9y4np9pf9i9ccpy6331lanki2fnz4z8ldvd"))))
(build-system gnu-build-system)
(native-inputs
`(("texinfo" ,texinfo)
@@ -91,14 +92,14 @@ highlighting your own code that seemed comprehensible when you wrote it.")
(define-public global ; a global variable
(package
(name "global")
(version "6.5.1")
(version "6.5.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/global/global-"
version ".tar.gz"))
(sha256
(base32
"1y34nbazsw2p6r2jhv27z15qvm9mhy5xjchpz8pwps00shkm578f"))))
"07qx3dbjwkbd1dn42qs7zgj77rxdj2psfrf7bx7yx9al38f87z60"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)
("libltdl" ,libltdl)
@@ -110,18 +111,17 @@ highlighting your own code that seemed comprehensible when you wrote it.")
(string-append "--with-sqlite3="
(assoc-ref %build-inputs "sqlite")))
#:phases (alist-cons-after
'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
;; Install the Emacs Lisp file in the right place.
(let* ((out (assoc-ref outputs "out"))
(data (string-append out "/share/gtags"))
(lisp (string-append out "/share/emacs/site-lisp")))
(install-file (string-append data "/gtags.el")
lisp)
(delete-file (string-append data "/gtags.el"))
#t))
%standard-phases)))
#:phases
(modify-phases %standard-phases
(add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
;; Install the Emacs Lisp file in the right place.
(let* ((out (assoc-ref outputs "out"))
(data (string-append out "/share/gtags"))
(lisp (string-append out "/share/emacs/site-lisp")))
(install-file (string-append data "/gtags.el") lisp)
(delete-file (string-append data "/gtags.el"))
#t))))))
(home-page "http://www.gnu.org/software/global/")
(synopsis "Cross-environment source code tag system")
(description
@@ -190,7 +190,7 @@ COCOMO model or user-provided parameters.")
(define-public the-silver-searcher
(package
(name "the-silver-searcher")
(version "0.29.1")
(version "0.31.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -198,7 +198,7 @@ COCOMO model or user-provided parameters.")
version ".tar.gz"))
(sha256
(base32
"0ah7vcqprl9hhafi68bvzaiywy7dfm28zf7kpw3xrlqzfn0vg7kp"))
"1a3xncsq3x8pci194k484s5mdqij2sirpz6dj6711n2p8mzq5g31"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(native-inputs
@@ -280,3 +280,35 @@ stack traces.")
;; Sources are released under Expat license, but since BFD is licensed
;; under the GPLv3+ the combined work is GPLv3+ as well.
(license license:gpl3+)))
(define-public lcov
(package
(name "lcov")
(version "1.12")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/ltp/lcov-"
version ".tar.gz"))
(sha256
(base32
"19wfifdpxxivhq9adbphanjfga9bg9spms9v7c3589wndjff8x5l"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (let ((out (assoc-ref %outputs "out")))
(list (string-append "PREFIX=" out)
(string-append "BIN_DIR=" out "/bin")
(string-append "MAN_DIR=" out "/share/man")))
#:phases (modify-phases %standard-phases
(delete 'configure))
#:tests? #f)) ;no 'check' target
(inputs `(("perl" ,perl)))
(home-page "http://ltp.sourceforge.net/coverage/lcov.php")
(synopsis "Code coverage tool that enhances GNU gcov")
(description
"LCOV is an extension of @command{gcov}, a tool part of the
GNU@tie{}Binutils, which provides information about what parts of a program
are actually executed (i.e., \"covered\") while running a particular test
case. The extension consists of a set of Perl scripts which build on the
textual @command{gcov} output to implement the following enhanced
functionality such as HTML output.")
(license license:gpl2+)))
+104 -57
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
@@ -92,12 +92,15 @@
,@%bootstrap-inputs)
#:guile %bootstrap-guile)))
(package (inherit p)
(name "diffutils-boot0")
(arguments `(#:tests? #f ; the test suite needs diffutils
,@(package-arguments p)))))))
(define findutils-boot0
(package-with-bootstrap-guile
(package-with-explicit-inputs findutils
(package-with-explicit-inputs (package
(inherit findutils)
(name "findutils-boot0"))
`(("make" ,gnu-make-boot0)
("diffutils" ,diffutils-boot0) ; for tests
,@%bootstrap-inputs)
@@ -106,7 +109,9 @@
(define file-boot0
(package-with-bootstrap-guile
(package-with-explicit-inputs file
(package-with-explicit-inputs (package
(inherit file)
(name "file-boot0"))
`(("make" ,gnu-make-boot0)
,@%bootstrap-inputs)
(current-source-location)
@@ -204,7 +209,8 @@
"--disable-libssp"
"--disable-libquadmath"
"--disable-decimal-float")
(remove (cut string-match "--enable-languages.*" <>)
(remove (cut string-match
"--(with-system-zlib|enable-languages.*)" <>)
,flags)))
((#:phases phases)
`(alist-cons-after
@@ -230,7 +236,7 @@
(package-full-name lib)
char-set:letter)
,(package-name lib)))
(list gmp mpfr mpc))))
(list gmp-6.0 mpfr mpc))))
(alist-cons-after
'install 'symlink-libgcc_eh
(lambda* (#:key outputs #:allow-other-keys)
@@ -244,7 +250,7 @@
(symlink "libgcc.a" "libgcc_eh.a"))))
,phases))))))
(inputs `(("gmp-source" ,(package-source gmp))
(inputs `(("gmp-source" ,(package-source gmp-6.0))
("mpfr-source" ,(package-source mpfr))
("mpc-source" ,(package-source mpc))
("binutils-cross" ,binutils-boot0)
@@ -259,11 +265,26 @@
(package-native-inputs gcc))))))
(define perl-boot0
(package-with-bootstrap-guile
(package-with-explicit-inputs perl
%boot0-inputs
(current-source-location)
#:guile %bootstrap-guile)))
(let ((perl (package
(inherit perl)
(name "perl-boot0")
(replacement #f)
(arguments
(substitute-keyword-arguments (package-arguments perl)
((#:phases phases)
`(modify-phases ,phases
;; Pthread support is missing in the bootstrap compiler
;; (broken spec file), so disable it.
(add-before 'configure 'disable-pthreads
(lambda _
(substitute* "Configure"
(("^libswanted=(.*)pthread" _ before)
(string-append "libswanted=" before))))))))))))
(package-with-bootstrap-guile
(package-with-explicit-inputs perl
%boot0-inputs
(current-source-location)
#:guile %bootstrap-guile))))
(define (linux-libre-headers-boot0)
"Return Linux-Libre header files for the bootstrap environment."
@@ -285,7 +306,7 @@
;; Also, use %BOOT0-INPUTS to avoid building Perl once more.
(let ((texinfo (package (inherit texinfo)
(native-inputs '())
(inputs (alist-delete "ncurses" (package-inputs texinfo))))))
(inputs `(("perl" ,perl-boot0))))))
(package-with-bootstrap-guile
(package-with-explicit-inputs texinfo %boot0-inputs
(current-source-location)
@@ -409,14 +430,22 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(current-source-location)
#:guile %bootstrap-guile)))
(bison (package (inherit bison)
(native-inputs `(("perl" ,perl-boot0)))
(propagated-inputs `(("m4" ,m4)))
(inputs '()) ;remove Flex...
(arguments '(#:tests? #f))))) ;... and thus disable tests
(package-with-bootstrap-guile
(package-with-explicit-inputs bison %boot0-inputs
(current-source-location)
#:guile %bootstrap-guile))))
(arguments
'(#:tests? #f ;... and thus disable tests
;; Zero timestamps in liby.a; this must be done
;; explicitly here because the bootstrap Binutils don't
;; do that (default is "cru".)
#:make-flags '("ARFLAGS=crD" "RANLIB=ranlib -D"
"V=1"))))))
(package
(inherit (package-with-bootstrap-guile
(package-with-explicit-inputs bison %boot0-inputs
(current-source-location)
#:guile %bootstrap-guile)))
(native-inputs `(("perl" ,perl-boot0))))))
(define static-bash-for-glibc
;; A statically-linked Bash to be used by GLIBC-FINAL in system(3) & co.
@@ -424,17 +453,19 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
glibc-final-with-bootstrap-bash
(car (assoc-ref %boot1-inputs "bash"))))
(bash (package (inherit static-bash)
(native-inputs `(("bison" ,bison-boot1)))
(arguments
`(#:guile ,%bootstrap-guile
,@(package-arguments static-bash))))))
(package-with-bootstrap-guile
(package-with-explicit-inputs bash
`(("gcc" ,gcc)
("libc" ,glibc-final-with-bootstrap-bash)
,@(fold alist-delete %boot1-inputs
'("gcc" "libc")))
(current-source-location)))))
,@(package-arguments static-bash)))))
(inputs `(("gcc" ,gcc)
("libc" ,glibc-final-with-bootstrap-bash)
,@(fold alist-delete %boot1-inputs
'("gcc" "libc")))))
(package
(inherit (package-with-bootstrap-guile
(package-with-explicit-inputs bash inputs
(current-source-location)
#:guile %bootstrap-guile)))
(native-inputs `(("bison" ,bison-boot1))))))
(define gettext-boot0
;; A minimal gettext used during bootstrap.
@@ -526,7 +557,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(arguments
`(#:guile ,%bootstrap-guile
#:implicit-inputs? #f
#:allowed-references ("out")
#:out-of-source? #t
#:phases (alist-cons-before
'configure 'chdir
@@ -548,6 +579,25 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(propagated-inputs '())
(synopsis "GNU C++ standard library (intermediate)"))))
(define zlib-final
;; Zlib used by GCC-FINAL.
(package-with-bootstrap-guile
(package
(inherit zlib)
(arguments
`(#:guile ,%bootstrap-guile
#:implicit-inputs? #f
#:allowed-references ("out" ,glibc-final)
,@(package-arguments zlib)))
(inputs %boot2-inputs))))
(define ld-wrapper-boot3
;; A linker wrapper that uses the bootstrap Guile.
(make-ld-wrapper "ld-wrapper-boot3"
#:binutils binutils-final
#:guile %bootstrap-guile
#:bash (car (assoc-ref %boot2-inputs "bash"))))
(define gcc-final
;; The final GCC.
(package (inherit gcc-boot0)
@@ -562,7 +612,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
`(#:guile ,%bootstrap-guile
#:implicit-inputs? #f
#:allowed-references ("out" "lib"
#:allowed-references ("out" "lib" ,zlib-final
,glibc-final ,static-bash-for-glibc)
;; Things like libasan.so and libstdc++.so NEED ld.so for some
@@ -582,18 +632,16 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
((_ rest ...)
(loop rest)))))
((#:make-flags flags)
;; Since $LIBRARY_PATH and $CPATH are not honored, add the
;; relevant flags.
`(cons (string-append "CPPFLAGS=-I"
(assoc-ref %build-inputs "libstdc++")
"/include")
(map (lambda (flag)
(if (string-prefix? "LDFLAGS=" flag)
(string-append flag " -L"
(assoc-ref %build-inputs "libstdc++")
"/lib")
flag))
,flags)))
;; Since $LIBRARY_PATH is not honored, add the relevant flags.
`(let ((zlib (assoc-ref %build-inputs "zlib")))
(map (lambda (flag)
(if (string-prefix? "LDFLAGS=" flag)
(string-append flag " -L"
(assoc-ref %build-inputs "libstdc++")
"/lib -L" zlib "/lib -Wl,-rpath="
zlib "/lib")
flag))
,flags)))
((#:phases phases)
`(alist-delete 'symlink-libgcc_eh ,phases)))))
@@ -605,20 +653,15 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
("static-bash" ,static-bash-for-glibc)
,@(package-native-inputs gcc-boot0)))
(inputs `(("gmp-source" ,(bootstrap-origin (package-source gmp)))
(inputs `(("gmp-source" ,(bootstrap-origin (package-source gmp-6.0)))
("mpfr-source" ,(package-source mpfr))
("mpc-source" ,(package-source mpc))
("ld-wrapper" ,ld-wrapper-boot3)
("binutils" ,binutils-final)
("libstdc++" ,libstdc++)
("zlib" ,zlib-final)
,@%boot2-inputs))))
(define ld-wrapper-boot3
;; A linker wrapper that uses the bootstrap Guile.
(make-ld-wrapper "ld-wrapper-boot3"
#:binutils binutils-final
#:guile %bootstrap-guile
#:bash (car (assoc-ref %boot2-inputs "bash"))))
(define %boot3-inputs
;; 4th stage inputs.
`(("gcc" ,gcc-final)
@@ -628,11 +671,13 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
(define bash-final
;; Link with `-static-libgcc' to make sure we don't retain a reference
;; to the bootstrap GCC.
(package-with-bootstrap-guile
(package-with-explicit-inputs (static-libgcc-package bash)
%boot3-inputs
(current-source-location)
#:guile %bootstrap-guile)))
(package
(inherit (package-with-bootstrap-guile
(package-with-explicit-inputs (static-libgcc-package bash)
%boot3-inputs
(current-source-location)
#:guile %bootstrap-guile)))
(native-inputs `(("bison" ,bison-boot1)))))
(define %boot4-inputs
;; Now use the final Bash.
@@ -702,7 +747,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
;; The final grep. Gzip holds a reference to it (via zgrep), so it must be
;; built before gzip.
(package-with-bootstrap-guile
(package-with-explicit-inputs grep
(package-with-explicit-inputs (package
(inherit grep)
(native-inputs `(("perl" ,perl-boot0))))
%boot5-inputs
(current-source-location)
#:guile guile-final)))
@@ -824,10 +871,10 @@ and binaries, plus debugging symbols in the 'debug' output), and Binutils.")
("libc-debug" ,glibc-final "debug")))))
(define-public gcc-toolchain-4.8
(gcc-toolchain gcc-final))
(gcc-toolchain gcc-4.8))
(define-public gcc-toolchain-4.9
(gcc-toolchain gcc-4.9))
(gcc-toolchain gcc-final))
(define-public gcc-toolchain-5
(gcc-toolchain gcc-5))
+35 -6
View File
@@ -7,7 +7,8 @@
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -32,15 +33,17 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages valgrind)
#:use-module ((srfi srfi-1) #:select (last)))
(define-public zlib
(package
(name "zlib")
(version "1.2.7")
(version "1.2.8")
(source
(origin
(method url-fetch)
@@ -50,7 +53,7 @@
version ".tar.gz")))
(sha256
(base32
"1i96gsdvxqb6skp9a58bacf1wxamwi9m9pg4yn7cpf7g7239r77s"))))
"039agw5rqvqny92cpkrfn243x2gd4xn13hs3xi6isk55d2vqqr9n"))))
(build-system gnu-build-system)
(arguments
`(#:phases (alist-replace
@@ -241,7 +244,7 @@ decompression.")
"1vk6065dv3a47p86vmp8hv3n1ygd9hraz0gq89gvzlx7lmcb6fsp"))))
(build-system gnu-build-system)
(inputs
`(("bzip2", bzip2)))
`(("bzip2" ,bzip2)))
(arguments
`(#:tests? #f ; no tests
#:phases (modify-phases %standard-phases
@@ -260,7 +263,7 @@ compressed with pbzip2 can be decompressed with bzip2).")
(define-public xz
(package
(name "xz")
(version "5.0.4")
(version "5.2.2")
(source (origin
(method url-fetch)
(uri (list (string-append "http://tukaani.org/xz/xz-" version
@@ -269,7 +272,7 @@ compressed with pbzip2 can be decompressed with bzip2).")
version ".tar.gz")))
(sha256
(base32
"1dl35ca8fdss9z2d6y234gxh24ixq904xksizrjmjr5dimwhax6n"))))
"18h2k4jndhzjs8ln3a54qdnfv59y6spxiwh9gpaqniph6iflvpvk"))))
(build-system gnu-build-system)
(synopsis "General-purpose data compression")
(description
@@ -659,3 +662,29 @@ multiple processors and multiple cores when compressing data.")
;; Things under zopfli/ are under ASL2.0, but 4 files at the top-level,
;; written by Mark Adler, are under another non-copyleft license.
(license license:asl2.0)))
(define-public pixz
(package
(name "pixz")
(version "1.0.6")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/vasi/pixz/releases/download/v" version
"/pixz-" version ".tar.xz"))
(sha256
(base32
"1s3j7zw6j5zi3fhdxg287ndr3wf6swac7z21mqd1pyiln530gi82"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("libarchive" ,libarchive)))
(home-page "https://github.com/vasi/pixz")
(synopsis "Parallel indexing implementation of LZMA")
(description
"The existing XZ Utils provide great compression in the .xz file format,
but they produce just one big block of compressed data. Pixz instead produces
a collection of smaller blocks which makes random access to the original data
possible and can compress in parallel. This is especially useful for large
tarballs.")
(license license:bsd-2)))
+4 -4
View File
@@ -76,7 +76,7 @@ services (Search, Gmail, Maps, Reader, etc.), Del.icio.us, Reddit, Last.fm and
YouTube. For easier editing of form fields, it can spawn external editors.")
(home-page "http://conkeror.org")
;; Conkeror is triple licensed.
(license (list license:gpl2
license:lgpl2.1
;; MPL 1.1 -- this license is not GPL compatible
))))
(license (list
;; MPL 1.1 -- this license is not GPL compatible
license:gpl2
license:lgpl2.1))))
+4 -4
View File
@@ -35,17 +35,17 @@
(method url-fetch)
(uri (string-append
"http://miller.emu.id.au/pmiller/software/cook/cook-" version
".tar.gz"))
".tar.gz"))
(sha256
(base32
"104saqnqql1l7zr2pm3f718fdky3ds8j07c6xvwrs1rfkhrw58yw"))))
(build-system gnu-build-system)
(arguments
`(#:parallel-build? #f ; There are some nasty racy rules in the Makefile.
#:phases
#:phases
(alist-cons-before
'configure 'pre-conf
(lambda _
(lambda _
(substitute* (append '("common/env.c")
(find-files "test" "\\.sh"))
(("/bin/sh") (which "sh")))
@@ -57,7 +57,7 @@
;; which plays havoc with this test, for which correct timestamps
;; are very important. Adding the U flag undoes the effect of
;; --enable-deterministic-archives and allows this test to work
;; again.
;; again.
(substitute* "test/00/t0077a.sh"
(("ar qc") "ar qcU"))
+2 -1
View File
@@ -35,7 +35,8 @@
version ".tar.bz2"))
(sha256
(base32
"0vi9q475h1rki53100zml75vxsykzyhrn70hidy41s5c2rc8r6bh"))))
"0vi9q475h1rki53100zml75vxsykzyhrn70hidy41s5c2rc8r6bh"))
(patches (list (search-patch "cpio-CVE-2016-2037.patch")))))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/cpio/")
(synopsis "Manage cpio and tar file archives")
+9 -6
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -105,11 +105,12 @@ may be either a libc package or #f.)"
"--disable-libcilkrts")
`( ;; Disable features not needed at this stage.
"--disable-shared" "--enable-static"
"--enable-languages=c,c++"
;; Disable C++ because libstdc++'s configure
;; script otherwise fails with "Link tests are not
;; allowed after GCC_NO_EXECUTABLES."
"--enable-languages=c"
;; libstdc++ cannot be built at this stage
;; ("Link tests are not allowed after
;; GCC_NO_EXECUTABLES.").
"--disable-libstdc++-v3"
"--disable-threads" ;libgcc, would need libc
"--disable-libatomic"
@@ -181,12 +182,14 @@ may be either a libc package or #f.)"
(string-append libc "/lib"))
(let ((cpath (search-path-as-string->list
(getenv "CPATH")))
(getenv "C_INCLUDE_PATH")))
(libpath (search-path-as-string->list
(getenv "LIBRARY_PATH"))))
(setenv "CPATH"
(list->search-path-as-string
(remove cross? cpath) ":"))
(for-each unsetenv
'("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"))
(setenv "LIBRARY_PATH"
(list->search-path-as-string
(remove cross? libpath) ":"))
+7 -3
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 David Thompson <davet@gnu.org>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -29,9 +30,12 @@
(version "1.0.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://download.libsodium.org/libsodium/releases/libsodium-"
version ".tar.gz"))
(uri (list (string-append
"http://download.libsodium.org/libsodium/"
"releases/libsodium-" version ".tar.gz")
(string-append
"https://download.libsodium.org/libsodium/"
"releases/old/libsodium-" version ".tar.gz")))
(sha256
(base32
"19f9vf0shfp4rc4l791r6xjg06z4i8psj1zkjkm3z5b640yzxlff"))))
+3 -2
View File
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -37,7 +38,7 @@
(define-public cups-filters
(package
(name "cups-filters")
(version "1.0.75")
(version "1.4.0")
(source (origin
(method url-fetch)
(uri
@@ -45,7 +46,7 @@
"cups-filters-" version ".tar.xz"))
(sha256
(base32
"0wrh9jmd2rm4z8c8nb50llb10shj1hik9vwqnr0djcvf63mfqsbw"))
"16jpqqlixlv2dxqv8gak5qg4qnsnw4p745xr6rhw9dgylf13z9ha"))
(modules '((guix build utils)))
(snippet
;; install backends, banners and filters to cups-filters output
+6 -5
View File
@@ -3,6 +3,7 @@
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,14 +40,14 @@
(define-public curl
(package
(name "curl")
(version "7.45.0")
(version "7.47.0")
(source (origin
(method url-fetch)
(uri (string-append "http://curl.haxx.se/download/curl-"
(uri (string-append "https://curl.haxx.se/download/curl-"
version ".tar.lzma"))
(sha256
(base32
"0bamqik0mi2rmai016iakwrwmsz0s5xad1ghkbwsd3zkv08rgkcn"))))
"1n284wdqzwb4bkmv0fnh36zl6lhlzy3clw2b7pn28kpgdy09ly7p"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ;1.2 MiB of man3 pages
@@ -95,8 +96,8 @@
;; test 1510...[HTTP GET connection cache limit (CURLOPT_MAXCONNECTS)]
;;
;; 1510: output (log/stderr1510) FAILED:
;; --- log/check-expected 2015-06-27 07:45:53.166720834 +0000
;; +++ log/check-generated 2015-06-27 07:45:53.166720834 +0000
;; --- log/check-expected 2015-06-27 07:45:53.166720834 +0000
;; +++ log/check-generated 2015-06-27 07:45:53.166720834 +0000
;; @@ -1,5 +1,5 @@
;; * Connection #0 to host server1.example.com left intact[LF]
;; * Connection #1 to host server2.example.com left intact[LF]

Some files were not shown because too many files have changed in this diff Show More