1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-07-08 19:54:07 +02:00

Compare commits

..

3894 Commits

Author SHA1 Message Date
Danny Milosavljevic 9563893a6e doc: Fix qemu-system-x86_64 example.
Reported by Fox <firefox@firemail.cc>.
Fixes <https://bugs.gnu.org/27052>.

* doc/guix.texi (Running GuixSD in a VM): Fix qemu-system-x86_64 example.
2017-05-31 23:21:20 +02:00
Jan Nieuwenhuizen 75ebfc8834 Revert "gnu: emacs-exwm: Update to 0.14."
This reverts commit be930f24f3.
2017-05-26 15:18:48 +02:00
Jan Nieuwenhuizen 35866c8106 Revert "gnu: Add emacs-exwm-x. WIP"
This reverts commit bc2a4daec6.
2017-05-26 15:18:36 +02:00
Jan Nieuwenhuizen bc2a4daec6 gnu: Add emacs-exwm-x. WIP
* gnu/packages/emacs.scm (emacs-exwm-x): New variable.
2017-05-25 13:22:24 +02:00
Jan Nieuwenhuizen be930f24f3 gnu: emacs-exwm: Update to 0.14.
* gnu/packages/emacs.scm (emacs-exwm): Update to 0.14.
2017-05-25 13:22:13 +02:00
Marius Bakke 8e82009169 doc: Update for UEFI systems.
* doc/guix.texi (USB Stick Installation): Mention UEFI.
(Preparing for Installation): Add notes about EFI System Partition, and
mounting partitions before init.
(Proceeding with the Installation): Mention the GRUB-EFI package.
(Using the Configuration System): Lightweight desktop is now a UEFI system.
(GRUB Configuration): Expand on package field. Add indexes.
* gnu/system/examples/lightweight-desktop.tmpl: Adjust to native EFI configuration.
2017-05-24 02:56:34 +02:00
Ludovic Courtès 7c63fff6d0 Update NEWS. 2017-05-22 17:25:08 +02:00
Ludovic Courtès e9c53359e7 gnu: guix: Update to a6d728b. 2017-05-21 16:59:04 +02:00
Ludovic Courtès a6d728b7aa gnu: guix: Update to 0.13.0. 2017-05-21 16:58:53 +02:00
Ludovic Courtès df671177f8 doc: Replace fingerprint of OpenPGP signing key.
* doc/guix.texi (OPENPGP-SIGNING-KEY-ID): Change to Ludo's key.
2017-05-21 13:46:35 +02:00
Ludovic Courtès 31025edc94 Update NEWS. 2017-05-21 13:45:54 +02:00
Ludovic Courtès 9d0c24d1be tests: ssh: Use 'guile2.0-ssh'.
Fixes a regression introduced in 4d8806c3d6.

* gnu/tests/ssh.scm (run-ssh-test): Use GUILE2.0-SSH instead of GUILE-SSH.
2017-05-21 11:56:29 +02:00
Ludovic Courtès 8a29dc07a4 guix system: Don't warn about old distros for "guix system init".
* guix/scripts/system.scm (process-action): Don't call
'warn-about-old-distro' when ACTION is 'init' or 'build'.
2017-05-21 11:49:07 +02:00
Ludovic Courtès 092c58e745 guix system: Increase image size for 'guix system vm'.
This is a followup to 9a1bfe7648.

* guix/scripts/system.scm (system-derivation-for-action): Add 40MiB to
the default size for 'vm'.
2017-05-21 01:25:16 +02:00
Ludovic Courtès 324499184a gnu: unionfs-fuse-static: Remove 'unionfsctl' executable.
This avoids pulling in glibc & co.  Fixes a regression introduced in
2f861edf5c (the 'unionfsctl' executable
did not exist in unionfs-fuse 0.26).

* gnu/packages/linux.scm (unionfs-fuse/static)[arguments]
<post-install>: Remove 'unionfsctl' binary.
2017-05-21 01:17:11 +02:00
Marius Bakke a588e34e0d vm: Increase default disk size to account for ESP partition.
Fixes a test regression introduced by ecf5d53769.

* gnu/system/vm.scm (system-qemu-image/shared-store-script): 30MiB -> 70MiB.
2017-05-21 01:17:08 +02:00
Ricardo Wurmus 402f241da4 Update NEWS. 2017-05-20 23:39:30 +02:00
Ludovic Courtès 96afb480f8 pack: Use 'guile2.0-json' when building with Guile 2.0.
Fixes <http://bugs.gnu.org/27005>.
Reported by Pjotr Prins <pjotr.public12@thebird.nl>.

Fixes a regression introduced in commit
2252f087d4.

* guix/scripts/pack.scm (docker-image)[json]: New variable.
[build]: Use it.
2017-05-20 14:39:50 +02:00
Leo Famulari 7dccad95b6 gnu: icedtea@2: Update to 2.6.10 [security fixes].
Fixes CVE-2017-{3509,3511,3512,3514,3526,3533,3539,3544}.

* gnu/packages/java.scm (icedtea-7): Update to 2.6.10.
2017-05-20 14:39:50 +02:00
Leo Famulari 6a9defd747 gnu: dropbear: Update to 2017.75 [fixes CVE-2017-{9078,9079}].
* gnu/packages/ssh.scm (dropbear): Update to 2017.75.
2017-05-20 14:39:50 +02:00
Ludovic Courtès 429046e9dd system: Use Guile 2.2 rather than 2.0 in %BASE-PACKAGES.
* gnu/system.scm (%base-packages): Change GUILE-2.0 to GUILE-2.2.
2017-05-20 14:39:49 +02:00
Marius Bakke 6520904b3e vm: Add UEFI loader to disk images.
* gnu/build/vm.scm (install-efi): New procedure.
(initialize-hard-disk): Generate EFI blob when ESP is present.
* gnu/system/vm.scm (qemu-image): Append 40MiB EFI System Partition.

(cherry picked from commit ecf5d53769)
2017-05-20 10:57:00 +02:00
Marius Bakke 03119da211 vm: Support creating FAT partitions.
* gnu/build/vm.scm (create-ext-file-system, create-fat-file-system): New procedures.
(format-partition): Use them. Error for unknown file systems.
* gnu/system/vm.scm (qemu-image): Include DOSFSTOOLS.
* gnu/system/linux-initrd.scm (base-initrd): Always add nls_is8859-1.ko.
2017-05-20 10:20:35 +02:00
Marius Bakke fd5a30ab7b vm: Support arbitrary partition flags.
* gnu/build/vm.scm (<partition>): Change BOOTABLE? to FLAGS.
(initialize-partition-table): Pass each flag to parted.
(initialize-hard-disk): Locate boot partition.
* gnu/system/vm.scm (qemu-image): Adjust partition flags.
2017-05-20 10:17:52 +02:00
Ludovic Courtès c383dc520f gnu: guile-ssh: Fix potential double-free/use-after-free issue.
Fixes <http://bugs.gnu.org/26976>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/packages/patches/guile-ssh-double-free.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ssh.scm (guile-ssh)[source](patches): Add it.
2017-05-20 10:17:49 +02:00
Ludovic Courtès 4ee6584cbf modules: Add more source-less modules.
* guix/modules.scm (%source-less-modules): New variable.
(source-module-dependencies): Use it.
2017-05-20 10:17:43 +02:00
Ludovic Courtès 4a628d57fc publish: Fix narinfo rendering for already-compressed items.
Fixes <http://bugs.gnu.org/26975>.
Reported by Mark H Weaver <mhw@netris.org>.

* guix/scripts/publish.scm (bake-narinfo+nar): Pass #f as the 2nd
argument to 'stat' and properly handle #f.
* tests/publish.scm (wait-for-file): New procedure.
("with cache"): Remove 'wait-for-file' procedure.
("with cache, uncompressed"): New test.
2017-05-20 10:17:36 +02:00
Ludovic Courtès 36c99429a3 union: Gracefully handle dangling symlinks in the input.
Fixes <http://bugs.gnu.org/26949>.
Reported by Pjotr Prins <pjotr.public12@thebird.nl>.

* guix/build/union.scm (file-is-directory?): Return #f when FILE does
not exist or is a dangling symlink.
(file=?): Pass #f as a second argument to 'stat'; return #f when both
ST1 or ST2 is #f.
* tests/profiles.scm (test-equalm): New macro.
("union vs. dangling symlink"): New test.
2017-05-20 10:17:14 +02:00
Ludovic Courtès 51fe9cd38d services: user-homes: Do not create home directories marked as no-create.
Fixes a bug whereby GuixSD would create the /nonexistent directory, from
user 'nobody', even though it has 'create-home-directory?' set to #f.

* gnu/build/activation.scm (activate-users+groups): Add comment for
\#:create-home?.
(activate-user-home)[ensure-user-home]: Skip when CREATE-HOME? is #f or
SYSTEM? is #t.
* gnu/tests/base.scm (run-basic-test)["no extra home directories"]: New
tests.
2017-05-20 10:17:10 +02:00
Marius Bakke f3f8938fe0 install: Enable SSH in installation image.
* gnu/system/install.scm (%installation-services): Add OPENSSH-SERVICE-TYPE.
* doc/guix.texi (Preparing for Installation)[Networking]: Document it.
2017-05-20 10:16:37 +02:00
Marius Bakke e13b55ae79 services: openssh: Don't depend on networking.
* gnu/services/ssh.scm (openssh-shepherd-service): Drop requirement.
2017-05-20 10:16:34 +02:00
Leo Famulari a6c642ef63 maint: The 'release' target builds a VM image.
* gnu/system/examples/vm-image.tmpl: New file.
* Makefile.am (GUIXSD_VM_SYSTEMS, GUIXSD_VM_IMAGE_BASE,
GUIXSD_VM_IMAGE_SIZE): New variables.
(release): Add logic to build a VM image.
(EXAMPLES): Add 'gnu/system/examples/vm-image.tmpl'.
* doc/guix.texi (Running GuixSD in a VM, Installing GuixSD in a VM): Mention the
pre-built VM image.
2017-05-20 10:16:23 +02:00
Ludovic Courtès 56a03975eb gnu: aspell: 'dict-dir' set to ~/.guix-profile/lib/aspell or $ASPELL_DICT_DIR.
See <https://bugs.gnu.org/25836> for background.

* gnu/packages/patches/aspell-default-dict-dir.patch: New file.
* gnu/packages/aspell.scm (aspell)[source](patches): New field.
[native-search-paths]: New field.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-05-20 10:16:14 +02:00
Alex Kost 37fd956771 build: Compile stackage only if 'guile-json' is available.
Fixes <http://bugs.gnu.org/26860>.
This is a followup to commit 3089b5d3f5.

* Makefile.am (MODULES): Move "guix/scripts/import/stackage.scm" within
'if HAVE_GUILE_JSON'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-20 10:16:02 +02:00
Leo Famulari c90fd5564c gnu: qemu: Fix CVE-2017-7493.
* gnu/packages/patches/qemu-CVE-2017-7493.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/qemu.scm (qemu)[source]: Use it.
2017-05-20 10:15:53 +02:00
Maxim Cournoyer 6d1ae43dcb profiles: Add elapsed time to manual-database hook to output message.
* guix/profiles.scm (manual-database): Add elapsed time to manual-database
hook to output message.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-20 10:15:47 +02:00
Ricardo Wurmus d03b34cf19 gnu: glibc/hurd: Do not apply i686 patch.
This is a follow-up to commit c2e4f14ac8.

* gnu/packages/base.scm (glibc/hurd)[arguments]: Override pre-configure phase
with a copy that does not include the patch application.
2017-05-20 10:15:31 +02:00
Ricardo Wurmus 5d6e38a6c3 gnu: glibc/hurd: Use modify-phases syntax.
* gnu/packages/base.scm (glibc/hurd)[arguments]: Use modify-phases syntax.
2017-05-20 10:15:28 +02:00
Efraim Flashner ed5e3ab8ab gnu: tor: Update to 0.3.0.7.
* gnu/packages/tor.scm (tor): Update to 0.3.0.7.
2017-05-20 10:15:00 +02:00
Ludovic Courtès 920803fbf4 maint: Add 'update-NEWS' target.
* build-aux/update-NEWS.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(GUIX_MAINTENANCE_DIRECTORY): New variable.
(update-NEWS): New target.
(.PHONY): Add it.
2017-05-18 16:24:02 +02:00
Ricardo Wurmus 266d281d25 Update NEWS. 2017-05-17 23:04:59 +02:00
Ludovic Courtès 43e5a262aa Update NEWS. 2017-05-16 15:18:12 +02:00
Ludovic Courtès 33ec536b90 gnu: guix: Update snapshot.
* gnu/packages/package-management.scm (guix): Update to ce92d26.
2017-05-16 15:18:12 +02:00
Ludovic Courtès ce92d269fe ui: Disable Guile deprecation warnings by default.
* guix/ui.scm (initialize-guix): Call (debug-disable 'warn-deprecated)
when "GUILE_WARN_DEPRECATED" is not set.
2017-05-16 14:31:37 +02:00
Ludovic Courtès 5a3429bcc5 gnu: guile-ssh: Fix bug in 'node-guile-version'.
* gnu/packages/patches/guile-ssh-rexec-bug.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ssh.scm (guile-ssh)[source](patches): New field.
2017-05-16 14:16:56 +02:00
Ludovic Courtès d116695b31 hydra: Cross-build Guile 2.2.
* build-aux/hydra/gnu-system.scm (%core-packages): Add GUILE-2.2.
2017-05-16 14:16:56 +02:00
Leo Famulari 4a3495d57c gnu: khard: Update to 0.11.4.
* gnu/packages/mail.scm (khard): Update to 0.11.4.
2017-05-15 22:27:53 -04:00
Ludovic Courtès a068300628 gnu: bind: Rename variable to 'isc-bind'.
Reported by Leo Famulari.

* gnu/packages/dns.scm (bind): Rename to...
(isc-bind): ... this.
* gnu/packages/sssd.scm (sssd)[inputs]: Adjust accordingly.
2017-05-16 00:00:03 +02:00
Ludovic Courtès 0e2bfa3ae1 doc: Mention 'sync' after 'dd'.
Suggested by librenoob on #guix.

* doc/guix.texi (USB Stick Installation): Add 'sync' invocation.
2017-05-15 23:55:10 +02:00
Ludovic Courtès c22c9fa589 services: guix: Authorize the key for bayfront.guixsd.org.
* gnu/services/base.scm (%default-authorized-guix-keys): Add
"bayfront.guixsd.org".
2017-05-15 23:55:10 +02:00
Ludovic Courtès b7ebcfe352 doc: Mention 'GUIX_PACKAGE_PATH' in "Defining Packages".
* doc/guix.texi (Defining Packages): Mention 'GUIX_PACKAGE_PATH'.
2017-05-15 23:55:10 +02:00
Ludovic Courtès f411124321 utils: 'compressed-file?' matches ".lzma" files.
* guix/utils.scm (compressed-file?): Add "lzma" to the list.
2017-05-15 23:55:10 +02:00
Ricardo Wurmus 6d225e89db gnu: antlr2: Minor stylistic changes.
* gnu/packages/java.scm (antlr2)[source]: Fix indentation; end snippet on #t;
add comment next to disabled tests.
2017-05-15 23:39:44 +02:00
Ricardo Wurmus 3ad9039515 gnu: antlr2: Simplify build phases.
* gnu/packages/java.scm (antl2)[arguments]: Simplify build phases.
2017-05-15 23:35:51 +02:00
Ricardo Wurmus 4511e0db23 gnu: Add non-timeline.
* gnu/packages/music.scm (non-timeline): New variable.
2017-05-15 23:01:24 +02:00
Ricardo Wurmus 46bb58b864 gnu: Add non-mixer.
* gnu/packages/music.scm (non-mixer): New variable.
2017-05-15 23:01:20 +02:00
Ricardo Wurmus a5cdcf6c09 gnu: Add java-javax-mail.
* gnu/packages/java.scm (java-javax-mail): New variable.
2017-05-15 22:33:17 +02:00
Ricardo Wurmus 095494ed6c licenses: Add EDL 1.0.
* guix/licenses.scm (edl1.0): New variable.
2017-05-15 22:33:17 +02:00
Ricardo Wurmus 0e660c4de9 gnu: Add java-log4j-api.
* gnu/packages/java.scm (java-log4j-api): New variable.
2017-05-15 22:33:17 +02:00
Ricardo Wurmus c24d11b734 gnu: Add java-eclipse-jdt-core.
* gnu/packages/java.scm (java-eclipse-jdt-core): New variable.
2017-05-15 22:33:17 +02:00
Ricardo Wurmus bf96acf7e5 gnu: Add java-eclipse-text.
* gnu/packages/java.scm (java-eclipse-text): New variable.
2017-05-15 22:33:17 +02:00
Ricardo Wurmus 31342529b2 gnu: Add java-eclipse-core-commands.
* gnu/packages/java.scm (java-eclipse-core-commands): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus 1bb191fc4b gnu: Add java-eclipse-team-core.
* gnu/packages/java.scm (java-eclipse-team-core): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus afb5858dd1 gnu: Add java-eclipse-compare-core.
* gnu/packages/java.scm (java-eclipse-compare-core): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus 1d4234d4c2 gnu: Add java-icu4j.
* gnu/packages/icu4c.scm (java-icu4j): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus 6636f6388f gnu: Add java-eclipse-core-resources.
* gnu/packages/java.scm (java-eclipse-core-resources): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus 7c3d479e83 gnu: Add java-eclipse-ant-core.
* gnu/packages/java.scm (java-eclipse-ant-core): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus e8d0f7c8f9 gnu: Add java-eclipse-core-variables.
* gnu/packages/java.scm (java-eclipse-core-variables): New variable.
2017-05-15 22:33:16 +02:00
Ricardo Wurmus e96060de20 gnu: Add java-eclipse-core-expressions.
* gnu/packages/java.scm (java-eclipse-core-expressions): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus b3806a1506 gnu: Add java-eclipse-core-filesystem.
* gnu/packages/java.scm (java-eclipse-core-filesystem): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus 6a7f7e49b3 gnu: Add java-eclipse-core-runtime.
* gnu/packages/java.scm (java-eclipse-core-runtime): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus 4ad3d4f337 gnu: Add java-eclipse-core-contenttype.
* gnu/packages/java.scm (java-eclipse-core-contenttype): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus 3f97021441 gnu: Add java-eclipse-equinox-preferences.
* gnu/packages/java.scm (java-eclipse-equinox-preferences): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus 65214c872a gnu: Add java-eclipse-equinox-app.
* gnu/packages/java.scm (java-eclipse-equinox-app): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus fbaf09ebf2 gnu: Add java-eclipse-equinox-registry.
* gnu/packages/java.scm (java-eclipse-equinox-registry): New variable.
2017-05-15 22:33:15 +02:00
Ricardo Wurmus 90368ad9d8 gnu: Add java-eclipse-core-jobs.
* gnu/packages/java.scm (java-eclipse-core-jobs): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus 8af92c8ffd gnu: Add java-osgi-service-event.
* gnu/packages/java.scm (java-osgi-service-event): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus 81b55b1e77 gnu: Add java-eclipse-equinox-common.
* gnu/packages/java.scm (java-eclipse-equinox-common): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus 674e93a057 gnu: Add java-eclipse-osgi.
* gnu/packages/java.scm (java-eclipse-osgi): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus 37e2e5d434 gnu: Add java-osgi-core.
* gnu/packages/java.scm (java-osgi-core): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus 6ee6d0b58a gnu: Add java-osgi-annotation.
* gnu/packages/java.scm (java-osgi-annotation): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus 77d7b57cdc gnu: Add java-simple-xml.
* gnu/packages/xml.scm (java-simple-xml): New variable.
2017-05-15 22:33:14 +02:00
Ricardo Wurmus ff3f67668d gnu: Add java-rsyntaxtextarea.
* gnu/packages/textutils.scm (java-rsyntaxtextarea): New variable.
2017-05-15 22:33:13 +02:00
Ricardo Wurmus 423b6840b3 gnu: Add java-usb4java.
* gnu/packages/libusb.scm (java-usb4java): New variable.
2017-05-15 22:33:13 +02:00
Ricardo Wurmus 18fe5ef152 gnu: Add libusb4java.
* gnu/packages/libusb.scm (libusb4java): New variable.
2017-05-15 22:33:13 +02:00
Ricardo Wurmus b13a7cf82d gnu: Add java-commons-net.
* gnu/packages/java.scm (java-commons-net): New variable.
2017-05-15 22:33:13 +02:00
Ricardo Wurmus d44bcd7ac7 gnu: Add java-asm.
* gnu/packages/java.scm (java-asm): New variable.
2017-05-15 22:33:13 +02:00
Leo Famulari c48a145fbb system: grub: Actually default to 'gfxterm' for displaying the GRUB menu.
This is a followup to commit e0b2e93005.

* gnu/system/grub.scm (eye-candy): Re-order the elements of the generated
GRUB configuration.
2017-05-15 16:22:17 -04:00
Ricardo Wurmus a62446987e gnu: Add java-commons-compress.
* gnu/packages/java.scm (java-commons-compress): New variable.
2017-05-15 22:00:35 +02:00
Ricardo Wurmus 808cb58f86 gnu: Add java-jsch.
* gnu/packages/java.scm (java-jsch): New variable.
2017-05-15 22:00:30 +02:00
Ricardo Wurmus 4b34c21ff0 gnu: Add java-commons-net.
* gnu/packages/java.scm (java-commons-net): New variable.
2017-05-15 22:00:25 +02:00
Ricardo Wurmus cbce5de265 gnu: Add java-httpcomponents-httpmime.
* gnu/packages/java.scm (java-httpcomponents-httpmime): New variable.
2017-05-15 22:00:21 +02:00
Ricardo Wurmus 14a671d8f9 gnu: Add java-httpcomponents-httpclient.
* gnu/packages/java.scm (java-httpcomponents-httpclient): New variable.
2017-05-15 22:00:16 +02:00
Ricardo Wurmus e1dd78f68a gnu: Add java-httpcomponents-httpcore-ab.
* gnu/packages/java.scm (java-httpcomponents-httpcore-ab): New variable.
2017-05-15 22:00:11 +02:00
Ricardo Wurmus 3a068b4307 gnu: Add java-httpcomponents-httpcore-nio.
* gnu/packages/java.scm (java-httpcomponents-httpcore-nio): New variable.
2017-05-15 22:00:06 +02:00
Ricardo Wurmus 4f4d2e470d gnu: Add java-httpcomponents-httpcore.
* gnu/packages/java.scm (java-httpcomponents-httpcore): New variable.
2017-05-15 22:00:00 +02:00
Ricardo Wurmus 90e65abe42 gnu: Add java-mockito-1.
* gnu/packages/java.scm (java-mockito): New variable.
2017-05-15 21:59:54 +02:00
John Darrington cdb2a21160 gnu: Add mia.
* gnu/packages/image-processing.scm (mia): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-15 21:34:09 +02:00
Ricardo Wurmus 7fe4e556c0 gnu: Add sssd.
* gnu/packages/sssd.scm (sssd): New variable.
2017-05-15 21:28:29 +02:00
Ricardo Wurmus dbe874dcbf gnu: Add ding-libs.
* gnu/packages/sssd.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-05-15 21:26:50 +02:00
Ricardo Wurmus 751f8582b5 gnu: Add http-parser.
* gnu/packages/web.scm (http-parser): New variable.
2017-05-15 21:24:43 +02:00
John Darrington 504c285d10 gnu: Add dcmtk.
* gnu/packages/image-processing.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-15 21:22:06 +02:00
Ricardo Wurmus 9fdda0b2f8 gnu: librecad: Use modular Qt.
* gnu/packages/engineering.scm (librecad)[inputs]: Remove "qt", add "qtbase"
and "qtsvg".
2017-05-15 21:22:06 +02:00
Ricardo Wurmus 6365733555 doc: Document certificate environment variable needed for R.
* doc/guix.texi (X.509 Certificates): Document R as a special case.
2017-05-15 21:22:05 +02:00
Marius Bakke 9b22c4dd5e gnu: ffmpeg: Update to 3.3.1.
* gnu/packages/video.scm (ffmpeg): Update to 3.3.1.
2017-05-15 19:50:55 +02:00
Hartmut Goebel 9eb0f43031 gnu: Update kde frameworks to 5.34.0.
* gnu/packages/kde-frameworks.scm (solid): Update to 5.34.0 [native-inputs]:
  Add dbus. <check>: Replace standard phase.
  (networkmanager-qt): Update to 5.34.0. [source]: Remove patches.
  (kfilemetadata) Update to 5.32.0. <check-setup>: New phase <check> Move
  phase after install phase.  [inputs] Add catdoc, exiv2, ffmpeg, poppler,
  taglib.
  (attica, baloo, bluez-qt, breeze-icons, extra-cmake-modules, kactivities,
  kactivities-stats, kapidox, karchive, kauth, kbookmarks, kcmutils, kcodecs,
  kcompletion, kconfig, kconfigwidgets, kcoreaddons, kcrash, kdbusaddons,
  kdeclarative, kded, kdesignerplugin, kdesu, kdnssd, kdoctools, kemoticons,
  kglobalaccel, kguiaddons, ki18n, kiconthemes, kidletime, kimageformats,
  kinit, kio, kitemmodels, kitemviews, kjobwidgets, knewstuff, knotification,
  knotifyconfig, kpackages, kparts, kpeople, kplotting, kpty, krunner,
  kservice, ksyntaxhighlighting, ktexteditor, ktextwidgets, kunitconversion,
  kwallet, kwayland, kwidgetsaddons, kwindowsystem, kxmlgui, kxmlrpcclient,
  modemmanager-qt, networkmanager-qt, oxygen-icons, plasma-framework, sonnet,
  threadweaver): Update to 5.34.0.
* gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch,
  gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch:
  Remove files.
* gnu/local.mk (dist_patch_DATA): Remove the patch files.
2017-05-15 12:41:08 +02:00
Hartmut Goebel d0abaf8960 gnu: Add catdoc.
* gnu/packages/textutils.scm (catdoc): New variable.
2017-05-15 12:41:08 +02:00
Brendan Tildesley 1edbdb0bfc gnu: par2cmdline: Update to 0.7.0
* gnu/packages/backup.scm (par2cmdline): Update to 0.7.0
[source]: Remove old test fix incorporated upstream.
[arguments]: Disable parallel tests.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-14 22:05:48 -04:00
Christopher Allan Webber d7fa39ccec services: Add 'thermald-service-type'.
* gnu/services/pm.scm (<thermald-configuration>): New record type.
(thermald-shepherd-service, thermald-service-type): New variables.
* doc/guix.texi (Thermal Management): New section documenting thermald.
2017-05-14 18:56:32 -05:00
Christopher Allan Webber 5898968438 gnu: Add thermald.
* gnu/packages/admin.scm (thermald): New variable.
2017-05-14 18:56:27 -05:00
Ludovic Courtès 73c791b8f3 maint: 'release' now depends on 'dist', not 'distcheck'.
* Makefile.am (release): Depend on 'dist' instead of 'distcheck'.
2017-05-14 22:16:34 +02:00
Ludovic Courtès 6344e959ea maint: Really build GuixSD for different systems.
* Makefile.am (release): Add missing --system flag to 'guix system
disk-image'.  Reported by Leo Famulari.
2017-05-14 22:16:34 +02:00
Leo Famulari e0b2e93005 system: grub: Expose GRUB's interactive interface settings.
* gnu/system/grub.scm (<grub-configuration>): Add new fields
terminal-outputs, terminal-inputs, serial-unit, and serial-speed.
(grub-setup-io, setup-gfxterm): New procedures.
* doc/guix.texi (GRUB Configuration): Document the new fields.
2017-05-14 14:12:26 -04:00
Leo Famulari 4100698d93 doc: Suggest a network test command that will definitely be available.
* doc/guix.texi (Running GuixSD in a VM): Suggest the use of `guix
download` to test network connectivity.
2017-05-14 13:07:41 -04:00
Jan Nieuwenhuizen 4be014128e gnu: Add Nyacc.
* gnu/packages/mes.scm (nyacc): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-14 15:49:50 +02:00
Ludovic Courtès c65d05b5ac maint: Do not update PO files upon "make dist".
This works around a non-determinstic build failure when doing
"make distcheck -j4".

* po/guix/Makevars (DIST_DEPENDS_ON_UPDATE_PO): New variable.
* po/packages/Makevars (DIST_DEPENDS_ON_UPDATE_PO): New variable.
2017-05-14 15:49:49 +02:00
Ludovic Courtès dfd248648f build: 'assert-no-store-file-names' depends on ChangeLog.
This fixes a bug whereby "make distcheck -j4" might invoke
'assert-no-store-file-names' when the temporary $(distdir)/cl-t
exists (and contains store file names), before $(distdir)/ChangeLog has
been created.

* Makefile.am (assert-no-store-file-names): Depend on $(distdir)/ChangeLog.
(dist-hook): Depend on $(distdir)/ChangeLog instead of 'gen-ChangeLog'.
(gen-ChangeLog): Add $(distdir)/ChangeLog left of the colon.
2017-05-14 15:49:49 +02:00
Tobias Geerinckx-Rice b6b281a5ba gnu: weechat: Update to 1.8.
* gnu/packages/irc.scm (weechat): Update to 1.8.
2017-05-14 15:06:26 +02:00
Tobias Geerinckx-Rice a88f2c33d6 gnu: pv: Use HTTPS.
* gnu/packages/pv.scm (pv)[source, home-page]: Use HTTPS.
2017-05-14 14:49:10 +02:00
Ludovic Courtès 916b5eba0d doc: Document the branching and rebuild scheduling strategy.
* doc/contributing.texi (Submitting Patches): Document the branching
scheme.
2017-05-13 22:25:23 +02:00
Ludovic Courtès 4d8806c3d6 gnu: guile-ssh: Rename "guile2.2-ssh" to "guile-ssh".
* gnu/packages/ssh.scm (guile-ssh)[inputs]: Change GUILE-2.0 to
GUILE-2.2.
(guile2.2-ssh): Define using 'deprecated-package'.
(guile2.0-ssh): New variable.
* gnu/packages/package-management.scm (guix)[propagated-inputs]: Adjust
accordingly.
2017-05-13 22:25:23 +02:00
Ludovic Courtès 2252f087d4 gnu: guile-json: Rename "guile2.2-json" to "guile-json".
* gnu/packages/guile.scm (guile-json)[native-inputs]: Change GUILE-2.0
to GUILE-2.2.
(guile2.2-json): Define using 'deprecated-package'.
(guile2.0-json): New variable.
* gnu/packages/bioinformatics.scm (rcas-web)[inputs]: Update accordingly.
* gnu/packages/ci.scm (cuirass)[inputs]: Likewise.
* gnu/packages/package-management.scm (guix)[inputs]: Likewise.
2017-05-13 22:25:22 +02:00
Ethan R. Jones a76ca052d6 gnu: Add nnn.
* gnu/packages/admin.scm (nnn): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-05-13 17:55:34 +02:00
Arun Isaac 92d9cfef6b gnu: emacs-clojure-mode: Enable tests.
* gnu/packages/emacs.scm (emacs-clojure-mode)[arguments]: Add 'check' phase.
[native-inputs]: Add emacs-dash, emacs-s and ert-runner.
2017-05-13 20:44:59 +05:30
Arun Isaac 8744901365 gnu: Add ert-runner.
* gnu/packages/emacs.scm (ert-runner): New variable.
2017-05-13 20:44:58 +05:30
Arun Isaac 605ecbcb2a gnu: Add emacs-commander.
* gnu/packages/emacs.scm (emacs-commander): New variable.
2017-05-13 20:44:58 +05:30
Arun Isaac 99d406c92d gnu: Add emacs-ansi.
* gnu/packages/emacs.scm (emacs-ansi): New variable.
2017-05-13 20:44:58 +05:30
Ludovic Courtès 1812205cf5 bournish: 'ls' adjusts the column width depending on the entries.
* guix/build/bournish.scm (display-tabulated): Remove #:columns and
  #:column-width parameters.  Add #:terminal-width and #:column-gap.
  Compute COLUMN-WIDTH and COLUMNS.
2017-05-13 16:52:11 +02:00
Ludovic Courtès c7d1b061f5 bournish: 'ls' lists directory contents.
Suggested by Ricardo Wurmus.

* guix/build/bournish.scm (ls-command-implementation): When FILE is a
directory, list its contents rather than FILE itself.
2017-05-13 16:52:11 +02:00
Alex Sassmannshausen 0e40b75506 gnu: php: Add '--with-mysqli' configure option.
* gnu/packages/php.scm: Add '--with-mysqli' configure option.
2017-05-13 13:58:37 +02:00
Alex Sassmannshausen 4cd1d1c12e gnu: php: Remove '--enable-threads' configure option.
* gnu/packages/php.scm (php): Remove '--enable-threads' configure option, as
  it is no longer recognized in PHP 7.
2017-05-13 13:58:27 +02:00
Arun Isaac a742becd6c gnu: emacs-key-chord: Set source file-name.
* gnu/packages/emacs.scm (emacs-key-chord)[source]: Add file-name field.
2017-05-13 16:41:54 +05:30
Arun Isaac 8a421ddb29 gnu: emacs-transpose-frame: Set source file-name.
* gnu/packages/emacs.scm (emacs-transpose-frame)[source]: Add file-name field.
2017-05-13 16:41:54 +05:30
Arun Isaac 6669a93284 gnu: emacs-goto-chg: Set source file-name.
* gnu/packages/emacs.scm (emacs-goto-chg)[source]: Add file-name field.
2017-05-13 16:41:54 +05:30
Mathieu Othacehe 22fc581db3 import: pypi: Robustify latest-release.
* guix/import/pypi.scm (latest-release): Check if pypi-fetch has
  failed. If so return #f, else construct the <upstream-source>.
2017-05-13 12:40:20 +02:00
Mathieu Othacehe db427602d8 import: cran: Robustify cran-package?.
* guix/import/cran.scm (package->upstream-name): Return #f if url
  start and end index could not be determined.
  (cran-package?): Check if the upstream-name can be extracted from
  given package.
* tests/cran.scm: Add "r-minimal is not a cran package" to make sure that
  r-minimal is not detected as a cran package.

This fixes a failure of guix refresh on r-minimal because no
upsteam-name can be determined from ".../R-version.tar.gz" uri.
2017-05-13 12:40:20 +02:00
Mathieu Othacehe a5e8f5972c gnu: python-termcolor: Fix uri.
* gnu/packages/python.scm (python-termcolor): Remove "python-" from
  pypi uri.

This was causing guix refresh to fail on this package.
2017-05-13 12:40:20 +02:00
ng0 498abb3ed1 .gitignore: Ignore Emacs auto-save files.
* .gitignore: Add entries for temporary files created by Emacs.

Co-authored-by: Alex Kost <alezost@gmail.com>
2017-05-13 12:14:28 +03:00
Alex Kost 4e4e018525 system: Export 'read-boot-parameters'.
This partially reverts commit 9530e73b49.

* gnu/system.scm: Export 'read-boot-parameters' for backward compatibility.
2017-05-13 12:14:28 +03:00
Leo Famulari a23e0a9f87 gnu: gimp: Update to 2.8.22 [fixes CVE-2007-3126].
* gnu/packages/gimp.scm (gimp): Update to 2.8.22.
2017-05-12 21:44:14 -04:00
ng0 3312fda09d gnu: Add e3.
* gnu/packages/text-editors.scm (e3): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-05-13 00:03:46 +02:00
Ludovic Courtès e06ca952ed scripts: Do not create the config directory.
This fixes runs of 'guix package' and 'guix system' tests in
environments where $HOME is read-only.

* guix/ui.scm (config-directory): Add #:ensure? parameter and honor it.
* guix/scripts.scm (warn-about-old-distro): Pass #:ensure? #f to
'config-directory'.
2017-05-13 00:03:46 +02:00
Ludovic Courtès 0be9b4a9c1 doc: Update "Limitations".
* doc/guix.texi (Limitations): Mention LXDE; increase the package
count; reword sentence about services.
2017-05-13 00:03:46 +02:00
Ludovic Courtès e2f9832f45 tests: "basic" test loads (guix …) modules from the right place.
This is a followup to 7561881f2a.

* gnu/tests/base.scm (run-basic-test)["/run/current-system is a GC
root"]: Remove 'set!' statements, add 'add-to-load-path' statement for
GUIX.
2017-05-13 00:03:46 +02:00
Ludovic Courtès d5094c8115 tests: Strengthen GC root test.
* gnu/tests/base.scm (run-basic-test)["/run/current-system is a GC
root"]: Check for a specific return value, 'success!.
2017-05-13 00:03:46 +02:00
Mathieu Othacehe 2088513214 gnu: reptry: Fix build.
* gnu/packages/patches/reptyr-fix-gcc-7.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add new patch.
* gnu/packages/screen.scm (reptyr): Use patch.
2017-05-12 20:19:13 +02:00
Marius Bakke 9bd42f1dc3 gnu: postgresql: Update to 9.6.3 [fixes CVE-2017-{7484,7485,7486}].
* gnu/packages/databases.scm (postgresql): Update to 9.6.3.
2017-05-12 19:27:11 +02:00
Marius Bakke ffed9eabcc gnu: Add lierolibre.
* gnu/packages/patches/lierolibre-check-unaligned-access.patch,
gnu/packages/patches/lierolibre-is-free-software.patch,
gnu/packages/patches/lierolibre-remove-arch-warning.patch,
gnu/packages/patches/lierolibre-try-building-other-arch.patch,
gnu/packages/patches/lierolibre-newer-libconfig.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/games.scm (lierolibre): New variable.
2017-05-12 15:42:08 +02:00
Marius Bakke ace41d5071 gnu: openvpn: Update to 2.4.2 [fixes CVE-2017-7478, CVE-2017-7479].
* gnu/packages/vpn.scm (openvpn): Update to 2.4.2.
2017-05-12 15:22:56 +02:00
Marius Bakke d7b344c5cd gnu: rocksdb: Disable tests on 32-bit systems.
* gnu/packages/databases.scm (rocksdb)[arguments]: Make #:tests? conditional.
Delete unnecessary 'build' phase. Move portability environment variable
before check phase.
2017-05-12 15:00:59 +02:00
Marius Bakke ae836e513e gnu: cryptsetup: Update to 1.7.5.
* gnu/packages/cryptsetup.scm (cryptsetup): Update to 1.7.5.
2017-05-12 13:47:26 +02:00
Marius Bakke 0ed81d0476 gnu: kbd: Set home page to kbd-project.org.
* gnu/packages/linux.scm (kbd)[home-page]: Update.
2017-05-12 13:44:27 +02:00
Marius Bakke aa9c221f74 gnu: psmisc: Update to 22.21.
* gnu/packages/linux.scm (psmisc): Update to 22.21.
[home-page]: Update.
2017-05-12 13:44:27 +02:00
Ludovic Courtès b9048a14b1 gnu: proot: Add statically-linked variant.
* gnu/packages/linux.scm (proot-static): New variable.
2017-05-12 13:31:35 +02:00
Ludovic Courtès 602db62c7c gnu: talloc: Add static variant.
* gnu/packages/samba.scm (talloc/static): New variable.
2017-05-12 13:31:34 +02:00
Clément Lassieur 864704212f gnu: emacs-ag: Propagate the-silver-searcher.
This allows emacs-ag to be used on remote systems.

* gnu/packages/emacs.scm (emacs-ag)[inputs]: Remove.  Move THE-SILVER-SEARCHER
to...
[propagated-inputs]: ... here.
[arguments]: Remove 'patch-exec-paths' phase.
2017-05-12 10:38:42 +02:00
Marius Bakke d231fe0a9b gnu: miniupnpc: Fix CVE-2017-8798.
* gnu/packages/patches/miniupnpc-CVE-2017-8798.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/upnp.scm (miniupnpc)[source]: Use it.
2017-05-12 00:40:28 +02:00
Marius Bakke 2253477e6f gnu: cryptsetup-static: Fix FTBFS with lvm2-static@2.02.171.
* gnu/packages/cryptsetup.scm (cryptsetup-static)[arguments]<#:configure-flags>:
Add "-lm" to LIBS.
2017-05-11 23:51:53 +02:00
Ludovic Courtès a3ac1bc285 nls: Update 'fr' translation. 2017-05-11 23:31:29 +02:00
Ludovic Courtès d5e7d014dd gnu: lxde-common: Provide 'startlxde' with the 'lxsession' file name.
Fixes <https://bugs.gnu.org/26688>.

* gnu/packages/lxde.scm (lxde-common)[arguments, inputs]: New fields.
2017-05-11 23:31:28 +02:00
Julien Lepiller 4ad8aed77f gnu: Add antlr3 and stringtemplate4.
* gnu/packages/java.scm (antlr3, stringtemplate4): New variables.
2017-05-11 22:25:40 +02:00
Julien Lepiller a0f15effce gnu: Add stringtemplate3.
* gnu/packages/java.scm (stringtemplate3): New variable.
2017-05-11 22:25:36 +02:00
Julien Lepiller 9f68e74a48 gnu: Add antlr2.
* gnu/packages/java.scm (antlr2): New variable.
2017-05-11 22:25:12 +02:00
Julien Lepiller 2601171ee0 gnu: Add pootle.
* gnu/packages/django.scm (pootle): New variable.
2017-05-11 21:58:41 +02:00
Julien Lepiller f048db5aac gnu: Fix python2-django-allauth.
* gnu/packages/python.scm (python-openid)[properties]: Use python2-variant.
2017-05-11 21:58:31 +02:00
Julien Lepiller 919d4ad079 gnu: python-pytest-django: Update to 3.1.2.
* gnu/packages/django.scm (python-pytest-django, python2-pytest-django):
Update to 3.1.2.
2017-05-11 21:58:27 +02:00
Julien Lepiller f77d82f105 gnu: Add python-django-statici18n.
* gnu/packages/django.scm (python-django-statici18n, python2-django-statici18n):
New variables.
2017-05-11 21:58:25 +02:00
Julien Lepiller 9f4a305961 gnu: Add python-django-appconf.
* gnu/packages/django.scm (python-django-appconf, python2-django-appconf):
New variables.
2017-05-11 21:58:22 +02:00
Julien Lepiller b0395dd68e gnu: Add python-django-sortedm2m.
* gnu/packages/django.scm (python-django-sortedm2m, python2-django-sortedm2m):
New variables.
2017-05-11 21:58:18 +02:00
Julien Lepiller cb9b6095dc gnu: Add python-django-rq.
* gnu/packages/django.scm (python-django-rq, python2-django-rq): New variables.
2017-05-11 21:58:15 +02:00
Julien Lepiller b939953b9a gnu: Add python-django-redis.
* gnu/packages/django.scm (python-django-redis, python2-django-redis):
New variables.
2017-05-11 21:58:12 +02:00
Julien Lepiller 91154d4a40 gnu: Add python-fakeredis.
* gnu/packages/python.scm (python-fakeredis, python2-fakeredis): New variables.
2017-05-11 21:58:09 +02:00
Julien Lepiller c009e93451 gnu: Add python-hiredis.
* gnu/packages/python.scm (python-hiredis, python2-hiredis): New variables.
2017-05-11 21:58:07 +02:00
Julien Lepiller 932462536b gnu: Add python-django-overextends.
* gnu/packages/django.scm (python-django-overextends, python2-django-overextends):
New variables.
2017-05-11 21:58:04 +02:00
Julien Lepiller 659692c0c3 gnu: Add python-django-contrib-comments.
* gnu/packages/django.scm (python-django-contrib-comments,
python2-django-contrib-comments): New variables.
2017-05-11 21:58:02 +02:00
Julien Lepiller 03a34e87b8 gnu: Add python-django-contact-form.
* gnu/packages/django.scm (python-django-contact-form, python2-django-contact-form):
New variables.
2017-05-11 21:57:59 +02:00
Julien Lepiller afbfe56497 gnu: Add python-django-bulk-update.
* gnu/packages/django.scm (python-django-bulk-update, python2-django-bulk-update):
New variables.
2017-05-11 21:57:57 +02:00
Julien Lepiller a326384be4 gnu: Add python-dj-database-url.
* gnu/packages/django.scm (python-dj-database-url, python2-dj-database-url):
New variables.
2017-05-11 21:57:54 +02:00
Julien Lepiller 6c17e963b0 gnu: Add python-django-jsonfield.
* gnu/packages/django.scm (python-django-jsonfield, python2-django-jsonfield):
New variables.
2017-05-11 21:57:51 +02:00
Julien Lepiller 01c64cb83f gnu: Add python-django-assets.
* gnu/packages/django.scm (python-django-assets, python2-django-assets):
New variables.
2017-05-11 21:57:48 +02:00
Julien Lepiller 3b08d1a612 gnu: Add python-mysqlclient.
* gnu/packages/python.scm (python-mysqlclient, python2-mysqlclient): New variables.
2017-05-11 21:57:45 +02:00
Julien Lepiller 5f25fd69df gnu: Add python-translate-toolkit.
* gnu/packages/python.scm (python-translate-toolkit, python2-translate-toolkit):
New variables.
2017-05-11 21:57:42 +02:00
Julien Lepiller 54153b85c7 gnu: Add python-factory-boy.
* gnu/packages/python.scm (python-factory-boy, python2-factory-boy): New variables.
2017-05-11 21:57:37 +02:00
Julien Lepiller 18c2546078 gnu: Add python2-stemming.
* gnu/packages/python.scm (python2-stemming): New variable.
2017-05-11 21:57:35 +02:00
Julien Lepiller 38a370d2bc gnu: Add python-scandir.
* gnu/packages/python.scm (python-scandir, python2-scandir): New variables.
2017-05-11 21:57:32 +02:00
Julien Lepiller a17ccbbb12 gnu: Add python-levenshtein.
* gnu/packages/python.scm (python-levenshtein, python2-levenshtein):
New variables.
2017-05-11 21:57:29 +02:00
Julien Lepiller e139c7a742 gnu: python-dateutil: Update to 2.6.0.
* gnu/packages/python.scm (python-dateutil, python2-dateutil): Update to 2.6.0.
2017-05-11 21:57:27 +02:00
Julien Lepiller afdfbb1dca gnu: Add python-elasticsearch.
* gnu/packages/python.scm (python-elasticsearch, python2-elasticsearch):
New variables.
2017-05-11 21:57:24 +02:00
Julien Lepiller 1b16f1ecb1 gnu: Add python-nosexcover.
* gnu/packages/python.scm (python-nosexcover, python2-nosexcover): New variables.
2017-05-11 21:57:21 +02:00
Julien Lepiller d15a47911a gnu: Add python-dirsync.
* gnu/packages/python.scm (python-dirsync, python2-dirsync): New variables.
2017-05-11 21:57:18 +02:00
Julien Lepiller 186d4f8d08 gnu: Add python-diff-match-patch.
* gnu/packages/python.scm (python-diff-match-patch, python2-diff-match-patch):
New variables.
2017-05-11 21:57:16 +02:00
Julien Lepiller 03ded2fd3b gnu: Add python-cssmin.
* gnu/packages/python.scm (python-cssmin, python2-cssmin): New variables.
2017-05-11 21:57:13 +02:00
Julien Lepiller eed206cb8a gnu: python-rq: Update to 0.7.1.
* gnu/packages/python.scm (python-rq, python2-rq): Update to 0.7.1.
[source]: Use pypi-uri.
2017-05-11 21:57:10 +02:00
Julien Lepiller 4c066b727c gnu: Add python-sphinx-me.
* gnu/packages/python.scm (python-sphinx-me, python2-sphinx-me): New variables.
2017-05-11 21:57:08 +02:00
Julien Lepiller 709a5a9365 gnu: Add python-webassets.
* gnu/packages/python.scm (python-webassets, python2-webassets): New variables.
2017-05-11 21:57:05 +02:00
Julien Lepiller 75805449cf gnu: Add python-utils.
* gnu/packages/python.scm (python-utils, python2-utils): New variables.
2017-05-11 21:57:02 +02:00
Julien Lepiller 2d6e56baa7 gnu: Add python-pytest-catchlog.
* gnu/packages/python.scm (python-pytest-catchlog, python2-pytest-catchlog):
New variables.
2017-05-11 21:56:58 +02:00
Julien Lepiller 59a972885c gnu: Add python-pytest-warnings.
* gnu/packages/python.scm (python-pytest-warnings, python2-pytest-warnings):
New variables.
2017-05-11 21:56:54 +02:00
Julien Lepiller 047160f2f1 gnu: python-pytest-runner: Update to 2.11.1.
* gnu/packages/python.scm (python-pytest-runner)
(python2-pytest-runner): Update to 2.11.1.
2017-05-11 21:56:35 +02:00
Marius Bakke 2d4deb5d21 gnu: lvm2: Fix static build after 62ec02bf21.
Fixes <https://bugs.gnu.org/26874>.

* gnu/packages/patches/lvm2-static-link.patch: Link with -lm.
2017-05-11 21:30:35 +02:00
Arun Isaac e0d4331a93 gnu: emacs-smartparens: Update to 1.10.1.
* gnu/packages/emacs.scm (emacs-smartparens): Update to 1.10.1.
2017-05-12 00:15:32 +05:30
Ludovic Courtès 62b28c0e7b gnu: Add PRoot.
* gnu/packages/linux.scm (proot): New variable.
* gnu/packages/patches/proot-test-fhs.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-05-11 18:05:42 +02:00
Ludovic Courtès 77abe3f091 gnu: hwloc: Update to 1.11.7.
* gnu/packages/mpi.scm (hwloc): Update to 1.11.7.
2017-05-11 18:05:42 +02:00
Ludovic Courtès 5db5dff53d substitute: Honor 'Cache-Control' on 404 responses.
* guix/scripts/substitute.scm (cached-narinfo): When VALUE is #f, use
the TTL that is read instead of %NARINFO-NEGATIVE-TTL.
(cached-narinfo-expiration-time): Likewise.
2017-05-11 18:05:42 +02:00
Ludovic Courtès 24b21720f7 publish: Advertise a short TTL for "baking" 404s.
* guix/scripts/publish.scm (not-found): Add #:phrase and #:ttl
parameters and honor them.
* tests/publish.scm ("with cache"): Check the 'cache-control' header on
of the 404 response.
2017-05-11 18:05:42 +02:00
Roel Janssen 5899fafbfe graph: Add Cypher backend.
* guix/graph.scm (%cypher-backend): New variable.
* doc/guix.texi: Add documentation for the Cypher backend of 'guix graph'.
2017-05-11 16:17:49 +02:00
Efraim Flashner 70cb7610ca gnu: libffcall: Update to 1.12.
* gnu/packages/libffcall.scm (libffcall): Update to 1.12.
[source]: Source code is now stored in git.
2017-05-11 13:19:36 +03:00
Mark H Weaver fed5502125 gnu: git@2.10: Update to 2.10.3 [fixes CVE-2017-8386].
* gnu/packages/version-control.scm (git@2.10): Update to 2.10.3.
2017-05-11 01:25:50 -04:00
Leo Famulari c0ad28087c gnu: elfutils: Update to 0.169.
* gnu/packages/elf.scm (elfutils): Update to 0.169.
2017-05-11 00:08:20 -04:00
ng0 bc84735d14 gnu: Add neovim-syntastic.
* gnu/packages/vim.scm (neovim-syntastic): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-10 23:59:10 -04:00
ng0 86db4486b2 gnu: Add vim-syntastic.
* gnu/packages/vim.scm (vim-syntastic): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-10 23:59:10 -04:00
Leo Famulari cb542830a2 gnu: python-kitchen: Update home-page URL.
* gnu/packages/python.scm (python-kitchen, python2-kitchen)[home-page]:
Update URL.
2017-05-10 23:37:24 -04:00
Ethan R. Jones 5ee684ff2f gnu: python2-dogtail: Update home-page URL.
* gnu/packages/python.scm (python2-dogtail)[home-page]: Update URL.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-10 23:37:23 -04:00
Ethan R. Jones 4929a0617a gnu: libaio: Remove dead source URL.
* gnu/packages/linux.scm (libaio)[source]: Remove fedorahosted.org URL.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-10 23:37:23 -04:00
Ethan R. Jones 779669abfd gnu: font-liberation: Update source and homepage URLs.
* gnu/packages/fonts.scm (font-liberation)[source]: Update URL.
[home-page]: Update URL.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-10 23:37:23 -04:00
Ethan R. Jones c18594dd95 gnu: libpwquality: Update source and home-page URLs.
* gnu/packages/password-utils.scm (libpwquality)[source]: Update URL.
[home-page]: Update URL.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-10 23:37:19 -04:00
Leo Famulari 68ab3e6c9a gnu: python-icalendar: Update to 3.11.4.
* gnu/packages/python.scm (python-icalendar): Update to 3.11.4.
2017-05-10 21:58:06 -04:00
Kei Kebreau 1b775fd1df gnu: Add python-tmx.
* gnu/packages/game-development.scm (python-tmx, python2-tmx): New
variables.
2017-05-10 20:00:50 -04:00
Kei Kebreau 45f8e7f75e gnu: Add python-sge-pygame.
* gnu/packages/game-development.scm (python-sge-pygame, python2-sge-pygame):
New variables.
2017-05-10 19:55:47 -04:00
Ludovic Courtès bc0e6c9312 scripts: Fix singular/plural message mismatch.
* guix/scripts.scm (warn-about-old-distro): Swap singular and plural
forms in 'N_' call.
2017-05-10 23:38:04 +02:00
Ben Woodcroft c033f5d6b5 gnu: Add pplacer.
* gnu/packages/bioinformatics.scm (pplacer, pplacer-scripts): New
variables.
2017-05-10 22:13:55 +02:00
Ben Woodcroft ad0ae297d4 gnu: Add taxtastic.
* gnu/packages/bioinformatics.scm (taxtastic): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft de59e24abe gnu: Add ocaml4.01-batteries.
* gnu/packages/ocaml.scm (ocaml4.01-batteries): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft 9bf9b3c05f gnu: Add ocaml4.01-xmlm.
* gnu/packages/ocaml.scm (ocaml4.01-xmlm): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft abd593c71a gnu: Add ocaml4.01-ounit.
* gnu/packages/ocaml.scm (ocaml4.01-ounit): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft 0274521a19 gnu: Add ocaml4.01-qtest.
* gnu/packages/ocaml.scm (ocaml4.01-qtest): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft 6824387a4f gnu: Add ocaml4.01-camlzip.
* gnu/packages/ocaml.scm (ocaml4.01-camlzip): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft b32208e7b5 gnu: Add ocaml4.01-mcl.
* gnu/packages/machine-learning.scm (ocaml4.01-mcl): New variable.
2017-05-10 22:13:55 +02:00
Ben Woodcroft 7adaab9fe7 gnu: Add ocaml4.01-gsl.
* gnu/packages/maths.scm (ocaml4.01-gsl): New variable.
2017-05-10 22:13:54 +02:00
Ben Woodcroft 3dc671e147 gnu: Add ocaml4.01-csv.
* gnu/packages/ocaml.scm (ocaml4.01-csv): New variable.
2017-05-10 22:13:54 +02:00
Ben Woodcroft 17bd460f02 gnu: Add ocaml4.01-sqlite3.
* gnu/packages/ocaml.scm: (ocaml4.01-sqlite3): New variable.
2017-05-10 22:13:54 +02:00
Ben Woodcroft 1345231cc2 gnu: Add ocaml4.01-bisect.
* gnu/packages/ocaml.scm (ocaml4.01-bisect): New variable.
(ocaml-bisect)[properties]: New field.
2017-05-10 22:13:54 +02:00
Ben Woodcroft c6cfec42b0 build-system: Add package-with-ocaml4.01.
* guix/build-system/ocaml.scm (default-ocaml4.01, default-ocaml4.01-findlib,
package-with-explicit-ocaml, package-with-ocaml4.01,
strip-ocaml4.01-variant): New variables.
2017-05-10 22:13:54 +02:00
Ben Woodcroft fa01cb5226 gnu: Add ocaml4.01-findlib.
* gnu/packages/ocaml.scm (ocaml4.01-findlib): New variable.
2017-05-10 22:13:54 +02:00
Ben Woodcroft ec43671780 gnu: Add ocaml-4.01.
* gnu/packages/ocaml.scm (ocaml-4.01): New variable.
2017-05-10 22:13:54 +02:00
Ludovic Courtès 0d43b12d1d gnu: cuirass: Update snapshot; switch to Guile 2.2.
* gnu/packages/ci.scm (cuirass): Update to commit 870e8d6.  Increment
REVISION.
[source]: Change URL to git.savannah.gnu.org.
[arguments]: Add #:modules.  In 'wrap-program' phase, get the Guile
effective version and honor it.
[inputs]: Use GUILE-2.2 instead of GUILE-2.0 and GUILE2.2-JSON instead
of GUILE-JSON.
[home-page]: Set to the Guix home page.
2017-05-10 22:09:13 +02:00
Ludovic Courtès 99bde93b83 gnu: guile-sqlite3: Switch to Guile 2.2.
* gnu/packages/guile.scm (guile-sqlite3)[version]: Set revision to 1.
[inputs]: Use GUILE-2.2 instead of GUILE-2.0.
2017-05-10 22:09:13 +02:00
Ludovic Courtès 7fd952e052 scripts: Warn about old distro.
Fixes <http://bugs.gnu.org/25852>.
Suggested by Mark H Weaver <mhw@netris.org>.

* guix/scripts.scm (%distro-age-warning): New variable.
(warn-about-old-distro): New procedure.
* guix/scripts/package.scm (process-actions): Call
'warn-about-old-distro'.
* guix/scripts/system.scm (process-action): Likewise.
2017-05-10 22:09:08 +02:00
Ludovic Courtès 30d2397f73 ui: 'string->duration' correctly handles hours.
* guix/ui.scm (string->duration): Add missing '=>' for hours.
* tests/ui.scm ("duration, 2 hours"): New test.
2017-05-10 22:05:21 +02:00
Ricardo Wurmus af8f8281db gnu: Add java-commons-logging-minimal.
* gnu/packages/java.scm (java-commons-logging-minimal): New variable.
2017-05-10 21:44:53 +02:00
Ricardo Wurmus 4f3e47ea82 gnu: Add java-guava.
* gnu/packages/java.scm (java-guava): New variable.
2017-05-10 21:43:51 +02:00
Ricardo Wurmus 0d4a0d60f1 gnu: Add java-jsr305.
* gnu/packages/java.scm (java-jsr305): New variable.
2017-05-10 21:42:12 +02:00
Ricardo Wurmus 439c59da52 gnu: Add java-hamcrest-all.
* gnu/packages/java.scm (java-hamcrest-all): New variable.
2017-05-10 21:39:52 +02:00
Roel Janssen 91a9c65c7b gnu: Add darktable.
* gnu/packages/photo.scm (darktable): New variable.
2017-05-10 19:46:55 +02:00
Ricardo Wurmus fae0b4ca11 gnu: java-hamcrest-core: Declare test target.
* gnu/packages/java.scm (java-hamcrest-core)[arguments]: Add value for
test-target.
2017-05-10 17:59:25 +02:00
Ricardo Wurmus f12ad6c768 gnu: Add java-jmock-1.
* gnu/packages/java.scm (java-jmock-1): New variable.
2017-05-10 17:59:25 +02:00
Hartmut Goebel 7d91c1b9a0 gnu: Add java-commons-daemon.
* gnu/packages/java.scm (java-commons-daemon): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:25 +02:00
Hartmut Goebel 0a8519bc11 gnu: Add java-commons-codec.
* gnu/packages/java.scm (java-commons-codec): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:25 +02:00
Hartmut Goebel 1c188f4e18 gnu: Add java-commons-cli.
* gnu/packages/java.scm (java-commons-cli): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:25 +02:00
Hartmut Goebel 82e1886461 gnu: Add java-commons-lang3.
* gnu/packages/java.scm (java-commons-lang3): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:24 +02:00
Hartmut Goebel d631b5f358 gnu: Add java-commons-lang.
* gnu/packages/java.scm (java-commons-lang): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:24 +02:00
Hartmut Goebel 6af63e657c gnu: Add java-commons-io.
* gnu/packages/java.scm (java-commons-io): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:24 +02:00
Ricardo Wurmus 56ebb4e90d gnu: Add java-commons-collections4.
* gnu/packages/java.scm (java-commons-collections4): New variable.
2017-05-10 17:59:24 +02:00
Ricardo Wurmus 62c9bfaaff gnu: Add java-jmh.
* gnu/packages/java.scm (java-jmh): New variable.
2017-05-10 17:59:24 +02:00
Ricardo Wurmus 840969e829 gnu: Add java-commons-math3.
* gnu/packages/java.scm (java-commons-math3): New variable.
2017-05-10 17:59:24 +02:00
Ricardo Wurmus a8d3cb62ab gnu: java-hamcrest-core: Install all jars without version suffix.
* gnu/packages/java.scm (java-hamcrest-core)[arguments]: Install all three
jars and strip the version suffix.
2017-05-10 17:59:24 +02:00
Ricardo Wurmus 7aa370231d gnu: Add java-jopt-simple.
* gnu/packages/java.scm (java-jopt-simple): New variable.
2017-05-10 17:59:23 +02:00
Ricardo Wurmus ae5898767b gnu: Add java-easymock.
* gnu/packages/java.scm (java-easymock): New variable.
2017-05-10 17:59:23 +02:00
Ricardo Wurmus 33e34bfef8 gnu: Add java-objenesis.
* gnu/packages/java.scm (java-objenesis): New variable.
2017-05-10 17:59:23 +02:00
Ricardo Wurmus 607fe24ad4 gnu: Add java-cglib.
* gnu/packages/java.scm (java-cglib): New variable.
2017-05-10 17:59:23 +02:00
Ricardo Wurmus 8f8ed9aadd gnu: Add java-asm.
* gnu/packages/java.scm (java-asm): New variable.
2017-05-10 17:59:23 +02:00
Hartmut Goebel 1e555562a7 gnu: Add java-plexus-interpolation.
* gnu/packages/java.scm (java-plexus-interplation): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:23 +02:00
Ricardo Wurmus 9fb20d01c5 gnu: Add java-plexus-utils.
* gnu/packages/java.scm (java-plexus-utils): New variable.

Co-authored-by: Hartmut Goebel <h.goebel@crazy-compilers.com>
2017-05-10 17:59:23 +02:00
Hartmut Goebel 59135f0d7e guix: Add java-utils.
* guix/build/java-utils.scm: New file.
* guix/build-system/ant.scm: Use it.
* Makefile.am (MODULES): Add it.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:22 +02:00
Ricardo Wurmus 52a791f50f ant-build-system: Add default "check" target.
* guix/build-system/ant.scm (ant-build): Change default test target to
"check"; add "test-dir" argument.
* guix/build/ant-build-system.scm (default-build.xml): Add "test-dir"
argument; add ant targets "compile-tests" and "check".
(configure): Add "test-dir" argument; pass it to "default-build.xml".
2017-05-10 17:59:22 +02:00
Hartmut Goebel 8df64f7384 ant-build-system: Allow specifying source directory.
* guix/build-system/ant.scm (ant-build),
guix/build/ant-build-system.scm (default-build.xml): Add parameter
source-dir.
* guix/build/ant-build-system.scm (configure): Pass source-dir on to
default-build.xml.
* doc/guix.texi (Build Systems): Document it.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-10 17:59:22 +02:00
Marius Bakke 75f796bb73 gnu: e2fsprogs: Enable tests.
* gnu/packages/linux.scm (e2fsprogs)[native-inputs]: Add PERL and PROCPS.
[arguments]<#:tests?>: Remove.
2017-05-10 16:44:01 +02:00
Marius Bakke b047a86b6c gnu: e2fsprogs: Update to 1.43.4.
* gnu/packages/linux.scm (e2fsprogs, e2fsprogs/static, e2fsck/static): Update
to 1.43.4.
[source]: Remove obsolete gzip substitution. Move '/bin/sh' substitution to ...
[arguments] ... here. Move LDFLAGS from #:make-flags to #:configure-flags.
Enable parallel build.
2017-05-10 16:44:01 +02:00
Marius Bakke 55acb372e3 gnu: e2fsprogs: Use 'modify-phases' syntax.
* gnu/packages/linux.scm (e2fsprogs)[arguments]<#:phases>: Use 'modify-phases'.
2017-05-10 16:44:01 +02:00
Marius Bakke 62ec02bf21 gnu: lvm2: Update to 2.02.171.
* gnu/packages/linux.scm (lvm2, lvm2-static): Update to 2.02.171.
[home-page]: Use HTTPS.
2017-05-10 16:44:01 +02:00
Christopher Allan Webber a62a16a4d3 gnu: guile-sjson: Update to 0.2.1.
* gnu/packages/guile.scm (guile-sjson): Update to 0.2.1.
2017-05-10 09:30:08 -05:00
Roel Janssen 584da12dc7 gnu: Add LLVM, CLANG 3.9.1.
* gnu/packages/llvm.scm (llvm-3.9.1): New variable.
* gnu/packages/llvm.scm (clang-3.9.1): New variable.
* gnu/packages/llvm.scm (clang-runtime-3.9.1): New variable.
2017-05-10 15:34:59 +02:00
Arun Isaac 2406766e79 gnu: Add emacs-evil-commentary.
* gnu/packages/emacs.scm (emacs-evil-commentary): New variable.
2017-05-10 16:04:13 +05:30
Mark H Weaver f66f7b92bd gnu: webkitgtk: Update to 2.16.2.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.16.2.
2017-05-10 05:48:52 -04:00
Efraim Flashner 5e569afbf2 gnu: enlightenment: Update to 0.21.7.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.21.7.
[home-page]: Update.
2017-05-10 11:29:45 +03:00
Efraim Flashner 39a01619ca gnu: efl: Update to 1.18.5.
* gnu/packages/enlightenment.scm (efl): Update to 1.18.5.
[home-page]: Update.
2017-05-10 11:29:29 +03:00
Thomas Danckaert 52cb22cd5a gnu: Add dvdstyler.
* gnu/packages/cdrom.scm (dvdstyler): New variable.
2017-05-10 09:32:50 +02:00
Thomas Danckaert a689185df3 gnu: Add wxsvg.
* gnu/packages/wxwidgets.scm (wxsvg): New variable.
2017-05-10 09:32:49 +02:00
Thomas Danckaert 1d5b3f432e gnu: Add wxwidgets-3.1.
* gnu/packages/wxwidgets.scm (wxwidgets-3.1): New variable.
2017-05-10 09:32:49 +02:00
Thomas Danckaert b5b20bda17 gnu: Add dvdauthor.
* gnu/packages/video.scm (dvdauthor): New variable.
2017-05-10 09:32:49 +02:00
Thomas Danckaert ce426deb8a gnu: brasero: Embed growisofs store item.
* gnu/packages/gnome.scm (brasero)[arguments]: Add phase 'embed-growisofs.
[inputs]: Add dvd+rw-tools.
2017-05-10 09:32:48 +02:00
Thomas Danckaert 76e9845734 gnu: Add dvd+rw-tools.
* gnu/packages/cdrom.scm (dvd+rw-tools): New variable.
* gnu/packages/patches/dvd+rw-tools-add-include.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-05-10 09:32:48 +02:00
Thomas Danckaert ded5966585 gnu: Add cdrtools.
* gnu/packages/cdrom.scm (cdrtools): New variable.
* gnu/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-05-10 09:32:48 +02:00
Catonano 28a1041fa5 gnu: Add guile-miniadapton.
* gnu/packages/guile.scm (guile-miniadapton): New variable.
2017-05-10 08:54:38 +02:00
Mark H Weaver 180bd4a836 gnu: linux-libre@4.9: Update to 4.9.27.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.27.
2017-05-10 01:13:35 -04:00
Mark H Weaver c90c1ba85a gnu: linux-libre@4.4: Update to 4.4.67.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.67.
2017-05-10 01:12:35 -04:00
Leo Famulari c5d2c69785 gnu: git: Update to 2.13.0.
* gnu/packages/version-control.scm (git): Update to 2.13.0.
2017-05-09 23:38:12 -04:00
Leo Famulari 8775fc10c6 gnu: lxterminal: Fix CVE-2016-10369.
* gnu/packages/patches/lxterminal-CVE-2016-10369.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/lxde.scm (lxterminal)[source]: Use it.
2017-05-09 19:35:00 -04:00
Ludovic Courtès b4f8edb799 gnu: emacs-guix: Use Guile 2.2.
This is a followup to 7561881f2a.

* gnu/packages/emacs.scm (emacs-guix): Switch to GUILE-2.2.
2017-05-09 23:58:57 +02:00
Marius Bakke 83a8953109 gnu: dnscrypt-proxy: Update to 1.9.5.
* gnu/packages/dns.scm (dnscrypt-proxy): Update to 1.9.5.
2017-05-09 20:52:30 +02:00
Marius Bakke f8ff364ab7 gnu: re2: Update to 2017-05-01.
* gnu/packages/regex.scm (re2): Update to 2017-05-01.
2017-05-09 20:52:29 +02:00
Marius Bakke 975104d857 gnu: kodi: Update to 18.0_alpha-4-b8ad238.
* gnu/packages/kodi.scm (kodi): Update to 18.0_alpha-4-b8ad238.
2017-05-09 20:21:56 +02:00
Hartmut Goebel 49393691d7 gnu: Add f3.
* gnu/packages/disk.scm (f3): New variable.
2017-05-09 20:08:30 +02:00
Hartmut Goebel 2f8b9c4648 gnu: Add pngcrunch.
* gnu/packages/image.scm (pngcrunch): New variable.
2017-05-09 20:08:30 +02:00
Leo Famulari 1d438b03bc gnu: gstreamer: Update to 1.12.0.
* gnu/packages/gstreamer.scm (gstreamer, gst-plugins-base, gst-plugins-good,
gst-plugins-bad, gst-plugins-ugly, gst-libav, python-gst): Update to 1.12.0.
2017-05-09 13:27:33 -04:00
Julien Lepiller a979eea9c2 gnu: libetpan: Update to 1.8 [fixes CVE-2017-8825].
* gnu/packages/mail.scm (libetpan): Update to 1.8.
[license]: Change to bsd-3.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-09 13:25:03 -04:00
Ludovic Courtès 7561881f2a gnu: guix: Build with Guile 2.2.
* gnu/packages/package-management.scm (guix)[inputs]: Change GUILE-2.0
to GUILE-2.2.
[propagated-inputs]: Likewise, use GNUTLS/GUILE-2.2, GUILE2.2-JSON, and
GUILE2.2-SSH.
2017-05-09 18:08:25 +02:00
Ludovic Courtès 07a0f68fa5 pull: Build package modules without optimizations on Guile 2.2.
* guix/build/pull.scm (%default-optimizations)
(%lightweight-optimizations): New variables.
(optimization-options): New procedure.  Taken from
build-aux/compile-all.scm.
(build-guix): Pass it to 'compile-file'.
2017-05-09 18:08:24 +02:00
Ludovic Courtès 838ba73d6e pull: Build with the matching Guile major version.
Previously, 'guix pull' would always build with Guile 2.0.
Now it builds with the Guile that matches (effective-version).

* build-aux/build-self.scm (false-if-wrong-guile)
(package-for-current-guile): New procedures.
(guile-json, guile-ssh): Use it.
(guile-for-build): New procedure.
(build): Use (effective-version) instead of the hard-coded "/2.0".
Add (guix modules) closure to #:modules argument.  Pass
\#:guile-for-build argument to 'gexp->derivation'.
* guix/build/pull.scm (depends-on-guile-ssh?, all-scheme-files): New
procedures.
(build-guix): Show the output of (version).  Use the above procedures.
Filter out files that match 'depends-on-guile-ssh?' when (ssh session)
is missing.
2017-05-09 18:08:24 +02:00
Ludovic Courtès 75c260ba5a gnu: guile-ssh: Update to 0.11.0.
* gnu/packages/ssh.scm (guile-ssh): Update to 0.11.0.
[source]: Add 'modules' and 'snippet'.
(guile2.2-ssh)[version, source]: Remove.
2017-05-09 18:08:24 +02:00
Ludovic Courtès 402e98c524 pull: Use 'with-store'.
* guix/scripts/pull.scm (guix-pull): Remove call to 'open-connection'.
Use 'with-store' instead.
2017-05-09 18:08:24 +02:00
Ludovic Courtès 4902d3c4e0 pull: Honor the standard build options.
Reported by Niall Dooley <dooleyn@gmail.com>
in <https://lists.gnu.org/archive/html/help-guix/2017-05/msg00038.html>.

* guix/scripts/pull.scm (%options): Add --dry-run and all of
%STANDARD-BUILD-OPTIONS.
(show-help): Add call to 'show-build-options-help'.
(%default-options): Add 'system', 'substitutes?', 'graft?',
'max-silent-time', and 'verbosity'.
(guix-pull)[parse-options]: Remove.
Use 'parse-command-line' instead.  Honor --dry-run.
2017-05-09 18:08:24 +02:00
Sergei Trofimovich f0b7dc7ede gnu: sbcl: Add missing '#:modules' imports.
Fixes <https://bugs.gnu.org/26843>.

* gnu/packages/lisp.scm (sbcl): Add missing '#:modules' imports.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-05-09 17:52:39 +02:00
Sergei Trofimovich 1d698a8ba6 gnu: go-1.4: Add missing '#:modules' imports.
Fixes <https://bugs.gnu.org/26840>.

* gnu/packages/golang.scm (go-1.4): Add missing '#:modules' imports.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-05-09 17:52:39 +02:00
Sergei Trofimovich 3369de907a gnu: zip: Add missing '#:modules' imports.
Fixes <https://bugs.gnu.org/26842>.

* gnu/packages/zip.scm (zip): Add missing '#:modules' imports.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-05-09 17:52:39 +02:00
Kei Kebreau a3b1021719 gnu: Add libgme.
* gnu/packages/music.scm (libgme): New variable.
2017-05-09 11:47:27 -04:00
Ludovic Courtès 2a3962660a maint: Tweak the 'release' target.
* Makefile.am (SUPPORTED_SYSTEMS, GUIXSD_SUPPORTED_SYSTEMS): Use "?="
instead of "=".
(release): Do "git checkout ." in po/ early on.  Abort upon uncommitted
changes.  Print a message at the end.
2017-05-09 12:58:43 +02:00
Ludovic Courtès aa1c3a0000 maint: update-guix-package: Protect the checkout from GC.
* build-aux/update-guix-package.scm (main): Define 'root', and call
'add-indirect-root' to protect SOURCE from GC.
2017-05-09 12:58:42 +02:00
Efraim Flashner 59898500dd gnu: wxwidgets: Fix building on aarch64-linux.
* gnu/packages/wxwidgets.scm (wxwidgets)[arguments]: On aarch64-linux
us a '--build' configure-flag to work around ancient autotools.
2017-05-09 08:51:24 +03:00
Kei Kebreau 9034dc8f2a gnu: libarchive: Replace with 3.3.1 [security fixes].
Fixes CVE-2016-{10209,10350} and CVE-2017-5601.

* gnu/packages/backup.scm (libarchive)[replacement]: New field.
(libarchive-3.3.1): New variable.
2017-05-08 20:02:29 -04:00
Leo Famulari d14b8dbb74 gnu: nfs-utils: Adjust indentation.
* gnu/packages/nfs.scm (nfs-utils): Re-indent.
2017-05-08 19:16:13 -04:00
Leo Famulari a472f0d075 gnu: nfs-utils: Update to 2.1.1.
* gnu/packages/nfs.scm (nfs-utils): Update to 2.1.1.
[inputs]: Remove gss.
2017-05-08 19:16:09 -04:00
Ludovic Courtès 334dce1451 maint: Add 'release' target.
Suggested by Jan Nieuwenhuizen.

* Makefile.am (releasedir, PACKAGE_FULL_TARNAME, SOURCE_TARBALLS)
(SUPPORTED_SYSTEMS, BINARY_TARBALLS, GUIXSD_SUPPORTED_SYSTEMS)
(GUIXSD_IMAGE_BASE, GUIXSD_INSTALLATION_IMAGE_SIZE): New variables.
(release): New target.
(.PHONY): Add it.
2017-05-09 00:18:05 +02:00
Ludovic Courtès ff39342c22 gnu: guile2.2-ssh: Update snapshot.
* gnu/packages/ssh.scm (guile2.2-ssh): Update to commit ca717e9.
[source]: Change URL to upstream's.
2017-05-09 00:18:05 +02:00
Ludovic Courtès 76f429ad9b system: grub: Use the native Guile-Cairo and Guile-SVG.
* gnu/system/grub.scm (svg->png): Use 'ungexp-native' aka. #+ when
referring to GUILE-CAIRO, GUILE-SVG, and SVG.
2017-05-09 00:18:05 +02:00
Kei Kebreau 4d8fd825a8 gnu: Add gnustep-make.
* gnu/packages/gnustep.scm (gnustep-make): New variable.
2017-05-08 17:46:58 -04:00
Ethan R. Jones 6e75ea481b gnu: Add neofetch.
* gnu/packages/admin.scm (neofetch): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-05-08 23:11:01 +02:00
Ricardo Wurmus e586257b55 system: Allow root to run "su" without password.
* gnu/system/pam.scm (unix-pam-service): Add pam-entry for "pam_rootok.so" to
auth field when ALLOW-ROOT? is #T.
(base-pam-services): Allow root to run "su" without authentication.
2017-05-08 23:11:01 +02:00
Danny Milosavljevic f000828575 system: Remove circular dependency between (gnu system) and (gnu system grub).
Followup to 087efec496.

* gnu/system.scm: (operating-system-bootcfg): Refer to (gnu system grub)
by module-ref.
2017-05-08 23:00:16 +02:00
Kei Kebreau c5196ac7ee gnu: Move lynx to web-browsers.scm.
* gnu/packages/lynx.scm: Remove file and move lynx...
* gnu/packages/web-browsers.scm: ...here.
* gnu/packages/man.scm (define-module): Remove unused module import of
(gnu packages lynx).
* gnu/packages/ocaml.scm (define-module): Adjust module import to use
(gnu packages web-browsers).
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove lynx.scm.
2017-05-08 15:16:24 -04:00
Kei Kebreau 8bdc36d4bd gnu: Move links to web-browsers.scm.
* gnu/packages/links.scm: Remove file and move links...
* gnu/packages/web-browsers.scm: ...here.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove links.scm.
2017-05-08 15:07:48 -04:00
Clément Lassieur 65584b91c7 build: Add doc/guix.html to .gitignore.
* .gitignore: Add entry for the above directory which is created by 'make
html'.
2017-05-08 20:08:23 +02:00
Clément Lassieur bff33e6cca gnu: Add 0ad.
* gnu/packages/games.scm (0ad, 0ad-data): New variables.

Co-authored-by: ng0 <ng0@no-reply.pragmatique.xyz>
2017-05-08 19:53:38 +02:00
Clément Lassieur 29f381bac7 gnu: Add mozjs-38 (Mozilla SpiderMonkey 38).
* gnu/packages/gnuzilla.scm (mozjs-38): New variable.
* gnu/packages/patches/mozjs38-pkg-config-version.patch,
gnu/packages/patches/mozjs38-shell-version.patch,
gnu/packages/patches/mozjs38-tracelogger.patch,
gnu/packages/patches/mozjs38-version-detection.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.

Co-authored-by: ng0 <ng0@no-reply.pragmatique.xyz>
2017-05-08 17:25:44 +02:00
Ludovic Courtès a7e5944e9c maint: Check whether binaries cross-built to "arm-linux-gnueabihf" are available.
* build-aux/check-available-binaries.scm: Add "arm-linux-gnueabihf" as a
cross target.
2017-05-08 16:29:24 +02:00
Ludovic Courtès 8872fc0e09 maint: 'check-available-binaries' forces use of the official servers.
* build-aux/check-available-binaries.scm: Pass #:substitute-urls to
'set-build-options'.
2017-05-08 16:29:24 +02:00
Ludovic Courtès d9a0bd4c69 maint: Add bayfront.guixsd.org signing key.
* bayfront.guixsd.org.pub: New file.
* Makefile.am (dist_pkgdata_DATA): Add it.
2017-05-08 16:29:23 +02:00
Ludovic Courtès c298fb133a services: nscd: Adjust activation snippet for /etc/resolv.conf symlinks.
Fixes <http://bugs.gnu.org/26809>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/services/base.scm (nscd-activation): Use 'lstat' instead of
'file-exists?'.
2017-05-08 16:29:23 +02:00
Ludovic Courtès ddce2d3aae maint: "distcheck" inherits the test root directory.
* Makefile.am (AM_DISTCHECK_CONFIGURE_FLAGS): Add 'ac_cv_guix_test_root'.
2017-05-08 16:29:23 +02:00
Ludovic Courtès c8ba269c26 maint: Use 'G_' in build-aux/ scripts.
This is a followup to 69daee23af.

* build-aux/check-final-inputs-self-contained.scm (assert-valid-substitute):
Use 'G_' instead of '_'.
2017-05-08 16:29:23 +02:00
Ludovic Courtès 1d248adb32 gnu: perl-net-dns-resolver-programmable: Shorten patch file name.
This avoids a warning from GNU tar upon "make dist" about file names
that are too long for POSIX tar.

* gnu/packages/patches/perl-net-dns-resolver-programmable-Fix-broken-interface.patch:
Rename to...
* gnu/packages/patches/perl-net-dns-resolver-programmable-fix.patch:
... this.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/networking.scm (perl-net-dns-resolver-programmable)[source]:
Likewise.
2017-05-08 16:29:23 +02:00
Danny Milosavljevic 087efec496 system: Remove circular dependency between (gnu system) and (gnu system grub).
Followup to 8e815c5b69.

* gnu/system.scm: Remove (gnu system grub) import.
(operating-system-bootcfg): Refer to (gnu system grub) within the procedure.
2017-05-08 15:45:37 +02:00
Adriana Peluso f9f67fcb0f gnu: Fix attributions for Adriano Peluso.
* gnu/packages/emacs.scm, gnu/packages/perl.scm, gnu/packages/python.scm,
gnu/packages/xml.scm: Update copyright attributions for Adriano Peluso.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-07 20:17:55 -04:00
Leo Famulari 3586a3e9a9 gnu: grub: Update to 2.0.2.
* gnu/packages/bootloaders.scm (grub): Update to 2.0.2.
[source]: Fetch source using the GNU mirror and use upstream file-name.
2017-05-07 19:26:15 -04:00
Pjotr Prins 151960e436 gnu: elixir: Update to 1.4.2.
* gnu/packages/elixir.scm (elixir): Update to 1.4.2.
* gnu/packages/patches/elixir-disable-failing-tests.patch: Adjust.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-07 19:17:08 -04:00
Ludovic Courtès 4b7917f2f3 gnu: guix: Update snapshot.
* gnu/packages/package-management.scm (guix): Update to ba2260d.
[version]: Take 7 characters from COMMIT.
[arguments]: Pass 'ac_cv_guix_test_root' to #:configure-flags.
2017-05-08 00:25:15 +02:00
Leo Famulari af6e2385b3 gnu: pcre2: Fix build configuration for pcre2.
* gnu/packages/pcre.scm (pcre2)[arguments]: Remove unknown configure flag
'--enable-unicode-properties' and adapt other flags for pcre2.
2017-05-07 17:46:00 -04:00
Leo Famulari 37f46a4bc5 gnu: pcre2: Fix CVE-2017-8786.
* gnu/packages/patches/pcre2-CVE-2017-8786.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/pcre.scm (pcre2)[source]: Use it.
2017-05-07 17:46:00 -04:00
Muriithi Frederick Muriuki 86ab11205e gnu: Add python-pytest-httpbin
* gnu/packages/web.scm (python-pytest-httpbin, python2-pytest-httbin): New
variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-07 15:22:42 -04:00
Muriithi Frederick Muriuki ce949c10e5 gnu: Add python-httpbin
* gnu/packages/web.scm (python-httpbin, python2-httpbin): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-07 15:22:41 -04:00
ng0 fddee154b6 gnu: lchat: Update to 0.0.0-2.25d90f4.
* gnu/packages/suckless.scm (lchat): Update to 0.0.0-2.25d90f4.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-07 14:22:19 -04:00
Ludovic Courtès ba2260dbbc git-download: Fix 'git-predicate' file membership.
Previously, it the predicate would return #t for "m4/ChangeLog" if
"ChangeLog" (in the top-level directory) was in FILES.  This commit
fixes the ambiguity.

* guix/git-download.scm (git-predicate): Add 'inodes' variable.  Use it
to determine file membership.
2017-05-07 18:08:11 +02:00
Sergei Trofimovich 4da1816628 gnu: serf: Add missing '#:modules' imports.
Fixes <https://bugs.gnu.org/26808>.

* gnu/packages/web.scm (serf): Add missing '#:modules' imports.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-05-07 17:35:33 +02:00
Sergei Trofimovich 7a4a64e99e gnu: re2: Add missing '#:modules' imports.
Fixes <https://bugs.gnu.org/26813>.

* gnu/packages/regex.scm (re2): Add missing '#:modules' imports.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-05-07 17:35:07 +02:00
Kei Kebreau 484f7a8862 gnu: libtiff: Add fixes several security flaws.
Fixes CVE-2017-{7593, 7594, 7595, 7596, 7597, 7598, 7599, 7600, 7601, 7602}.

* gnu/packages/patches/libtiff-CVE-2017-7593.patch,
gnu/packages/patches/libtiff-CVE-2017-7594.patch,
gnu/packages/patches/libtiff-multiple-UBSAN-crashes.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/image.scm (libtiff)[replacement]: New field.
(libtiff/fixed): New variable.
2017-05-07 06:57:53 -04:00
Ludovic Courtès 8e815c5b69 system: Define <boot-parameters> before first use.
Fixes <http://bugs.gnu.org/26791>.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/system.scm (<boot-parameters>, read-boot-parameters)
(read-boot-parameters-file): Move before first use of the
'boot-parameters' macro.
2017-05-07 11:30:24 +02:00
Mark H Weaver 0fd8e6d39f gnu: icecat: Update to 52.1.0-gnu1. Add fixes from upstream ESR 52.1.1.
* gnu/packages/gnuzilla.scm (icecat): Update to 52.1.0-gnu1.  Remove patches
that are included in the new release.  In the snippet, don't try to remove
dom/devicestorage, which has since been removed upstream.  Add selected fixes
from upstream mozilla-esr52, up to the ESR 52.1.1 release.
* gnu/packages/patches/icecat-bug-1299500-pt10.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-05-06 23:34:54 -04:00
Tobias Geerinckx-Rice f930ef5c01 gnu: speedtest-cli: Update to 1.0.6.
* gnu/packages/networking.scm (speedtest-cli): Update to 1.0.6.
2017-05-07 02:56:50 +02:00
Tobias Geerinckx-Rice 2d51ed9e04 gnu: meson: Update to 0.40.1.
* gnu/packages/build-tools.scm (meson): Update to 0.40.1.
2017-05-07 02:33:29 +02:00
Tobias Geerinckx-Rice 0d74a8fde6 gnu: youtube-dl: Update to 2017.05.07.
* gnu/packages/video.scm (youtube-dl): Update to 2017.05.07.
2017-05-07 00:50:06 +02:00
Ludovic Courtès 1a0adad83f tests: Corrupt archive import test is robust against different store prefixes.
* tests/store.scm ("import corrupt path"): Set 'index' to #x70.
2017-05-07 00:18:36 +02:00
Ludovic Courtès 33349e91f9 build: Use 'guix pack -K' for the 'guix-binary*.tar.xz' targets.
* Makefile.am (guix-binary.%.tar.xz): Add -K flag for 'guix pack'.
2017-05-07 00:18:36 +02:00
Ludovic Courtès 7f4da8ff6b maint: Add 'time-monotonic' bug workaround in build-aux/hydra/evaluate.scm.
* build-aux/hydra/evaluate.scm: Add 'time-monotonic' workaround for
Guile 2.2.
2017-05-07 00:18:36 +02:00
Ludovic Courtès 94fa8d7616 maint: Add 'update-guix-package' target.
* build-aux/update-guix-package.scm: New file.
* Makefile.am (EXTRA_DIST): Add it.
(update-guix-package): New target.
(.PHONY): Add it.
* gnu/packages/package-management.scm (guix): Mention it.
2017-05-07 00:18:36 +02:00
Ludovic Courtès 994a149479 gnu: guix: Remove the stable-release 'guix' package.
* gnu/packages/package-management.scm (guix-release): Remove.
(guix-devel): Rename to...
(guix): ... this.  Incorporate fields from former 'guix-release'.
(guix-devel): New variable.
2017-05-07 00:18:36 +02:00
Ludovic Courtès 950d51c9d9 store: Use 'TCP_NODELAY' when connecting to a daemon over PF_INET.
* guix/store.scm (open-inet-socket): Add 'cond-expand' form to define
'TCP_NODELAY' when needed.  Add call to 'setsockopt' after 'connect'.
2017-05-07 00:18:36 +02:00
Julien Lepiller 74b8671378 gnu: hexchat: Update to 2.12.4.
* gnu/packages/messaging.scm (hexchat): Update to 2.12.4.
[source]: Remove incorrectly bootstrapped files.
[native-inputs]: Add autoconf, autoconf-archive, automake, libtool,
pkg-config.
[arguments]: Add ‘bootstrap’ phase.

Co-authored-by: Tobias Geerinckx-Rice <me@tobias.gr>
2017-05-07 00:01:23 +02:00
Mathieu Othacehe 5ed48cedc0 gnu: cppcheck: Update to 1.78.
* gnu/packages/check.scm (cppcheck): Update to 1.78.
2017-05-06 22:33:10 +02:00
Leo Famulari 2f0ad2a423 Revert "gnu: hexchat: Update to 2.12.4."
This reverts commit 09270a97d9.

The source derivation failed to build with:

/gnu/store/19lkrck1844idbcfq6ajzr0akmr8rshj-hexchat-2.12.4.tar.xz-builder:1:2293:
In procedure #<procedure f6fdc0 ()>:
/gnu/store/19lkrck1844idbcfq6ajzr0akmr8rshj-hexchat-2.12.4.tar.xz-builder:1:2293:
In procedure module-lookup: Unbound variable: inputs
2017-05-06 15:53:58 -04:00
Leo Famulari 17139eff16 gnu: certbot, python-acme: Update to 0.14.0.
* gnu/packages/tls.scm (certbot, python-acme, python2-acme): Update to 0.14.0.
2017-05-06 14:58:13 -04:00
Arun Isaac a993add160 gnu: Add emacs-evil-surround.
* gnu/packages/emacs.scm (emacs-evil-surround): New variable.
2017-05-06 22:34:36 +05:30
Kei Kebreau 7610c3ca55 gnu: Move qutebrowser to web-browsers.scm.
* gnu/packages/web.scm: Move qutebrowser...
* gnu/packages/web-browsers.scm: ...here.
2017-05-06 10:59:06 -04:00
ng0 b468f8e0c9 gnu: limnoria: Update to 20170330.
* gnu/packages/irc.scm (limnoria): Update to 20170330.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-06 16:00:33 +02:00
ng0 28a671ed23 gnu: fish: Reference 'groff' to fix output of 'fish --help'.
* gnu/packages/shells.scm (fish)[inputs-inputs]: Add 'groff'.
[arguments]: Add 'nroff' substitution in 'embed-store-paths' phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-06 15:52:25 +02:00
Pjotr Prins 5c4ea87224 gnu: erlang: Update to 19.3.
* gnu/packages/erlang.scm (erlang): Update to 19.3.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-06 15:50:56 +02:00
Kyle Meyer a34242eedc gnu: Add emacs-key-chord.
* gnu/packages/emacs.scm (emacs-key-chord): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-05-06 16:16:11 +05:30
宋文武 c0326ebcb5 gnu: Add lightdm-gtk-greeter.
* gnu/packages/display-managers.scm (lightdm-gtk-greeter): New variable.
2017-05-06 18:14:24 +08:00
宋文武 a041d56ebb gnu: nix: Update to 1.11.9.
* gnu/packages/package-management.scm (nix): Update to 1.11.9.
2017-05-06 17:43:01 +08:00
Ricardo Wurmus e981ca3665 gnu: pcb: Update to 4.0.0.
* gnu/packages/engineering.scm (pcb): Update to 4.0.0.
[arguments]: Add pre-check phase to start Xvfb for tests.
[native-inputs]: Add imagemagick, gerbv, ghostscript, and xorg-server for
tests.
2017-05-06 11:19:45 +02:00
Ricardo Wurmus eba9ecd4d2 gnu: minixml: Update to 2.10.
* gnu/packages/xml.scm (minixml): Update to 2.10.
[home-page]: Update to new home page.
2017-05-06 11:19:45 +02:00
Ricardo Wurmus 2337067778 gnu: augeas: Update to 1.8.0.
* gnu/packages/augeas.scm (augeas): Update to 1.8.0.
2017-05-06 11:19:45 +02:00
Ricardo Wurmus 4606f3a3ef gnu: Add lightdm.
* gnu/packages/display-managers.scm (lightdm): New variable.

Co-authored-by: 宋文武 <iyzsong@gmail.com>
2017-05-06 11:19:44 +02:00
Julien Lepiller 09270a97d9 gnu: hexchat: Update to 2.12.4.
* gnu/packages/messaging.scm (hexchat): Update to 2.12.4.
[source]: Remove incorrectly bootstrapped files.
[native-inputs]: Add autoconf, autoconf-archive, automake, libtool,
pkg-config.
[arguments]: Add ‘bootstrap’ phase.
2017-05-06 10:09:10 +02:00
Julien Lepiller cae491ab02 gnu: Add lugaru.
* gnu/packages/games.scm (lugaru): New variable.
2017-05-06 10:05:25 +02:00
Julien Lepiller fe0915cf24 doc: Document (list package output) syntax in operanting-system-packages.
* doc/guix.texi (Globally-Visible Packages): Document (PACKAGE OUTPUT) syntax.
2017-05-06 10:02:26 +02:00
Arun Isaac 860f73c699 gnu: Add emacs-transpose-frame.
* gnu/packages/emacs.scm (emacs-transpose-frame): New variable.
2017-05-06 10:07:19 +05:30
Leo Famulari 40d728a87d Revert "guix: git: Add new module."
This reverts commit a70b784708.

Commit a70b784708 caused `guix pull` to fail:

ERROR: In procedure scm-error:
ERROR: no code for module (git)
2017-05-05 20:12:57 -04:00
Arun Isaac 99c1554c9b gnu: Add linuxdcpp.
* gnu/packages/direct-connect.scm (linuxdcpp): New variable.
2017-05-06 02:26:03 +05:30
Vasile Dumitrascu d7dcaf8a31 gnu: emacs-org: Update to 20170502.
* gnu/packages/emacs.scm (emacs-org): Update to 20170502.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-05-06 02:05:12 +05:30
Leo Famulari 6cf8e576e9 gnu: mariadb: Update to 10.1.23 [security fixes].
Fixes CVE-2017-{3302,3313,3308,3309,3453,3456,3464 }.

* gnu/packages/databases.scm (mariadb): Update to 10.1.23.
[arguments]: Disable features that depend on libarchive.
2017-05-05 16:32:09 -04:00
rennes cc3bc027eb gnu: gnome-shell: Fix CVE-2017-8288.
* gnu/packages/patches/gnome-shell-CVE-2017-8288.patch:	New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (gnome-shell)[source]: Use it.

Co-authored-by: Leo Famulari <leo@famulari.name>
2017-05-05 16:12:01 -04:00
Leo Famulari c39a54f431 gnu: rpcbind, libtirpc: Fix CVE-2017-8779.
* gnu/packages/patches/libtirpc-CVE-2017-8779.patch,
gnu/packages/patches/rpcbind-CVE-2017-8779.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/onc-rpc.scm (rpcbind, libtirpc)[source]: Use them.
2017-05-05 15:33:00 -04:00
Leo Famulari 2beb879b4b gnu: libtirpc: Update to 1.0.1.
* gnu/packages/onc-rpc.scm (libtirpc): Update to 1.0.1.
2017-05-05 15:32:59 -04:00
Leo Famulari 65df7d4fe4 gnu: rpcbind: Update to 0.2.4.
* gnu/packages/onc-rpc.scm (rpcbind): Update to 0.2.4.
2017-05-05 15:32:59 -04:00
Alex Kost 784618562e gnu: emacs-guix: Update to 0.3.1.
* gnu/packages/emacs.scm (emacs-guix): Update to 0.3.1.
[home-page]: Update.
2017-05-05 21:57:04 +03:00
Mathieu Othacehe a70b784708 guix: git: Add new module.
* guix/git.scm: New file.
* configure.ac: Check for (guile git).
* Makefile.am: Build guix/git.scm if (guile git) is available.
2017-05-05 19:52:38 +02:00
Marius Bakke d2b18f1211 gnu: nano: Update to 2.8.2.
* gnu/packages/nano.scm (nano): Update to 2.8.2.
[source]: Use '.xz' tarball.
2017-05-05 17:28:27 +02:00
Marius Bakke f9082e7d88 gnu: xf86-input-libinput: Update to 0.25.1.
* gnu/packages/xorg.scm (xf86-input-libinput): Update to 0.25.1.
2017-05-05 17:28:27 +02:00
Ricardo Wurmus 310da3b544 gnu: ant: Update to 1.9.9.
* gnu/packages/java.scm (ant): Update to 1.9.9.
2017-05-05 17:27:56 +02:00
Danny Milosavljevic 360874dd1c system: Clarify that SYSTEM is either a derivation or #f.
* gnu/system.scm (operating-system-boot-parameters):  Clarify that SYSTEM is
either a derivation or #f.
2017-05-05 15:03:48 +02:00
Danny Milosavljevic 7e3f7acbe0 scripts: Remove profile-grub-entries.
* guix/scripts/system.scm (profile-grub-entries): Delete variable.
2017-05-05 15:03:48 +02:00
Danny Milosavljevic bf8b09169c system: grub: Use boot-parameters instead of menu-entry where possible.
* gnu/system/grub.scm (boot-parameters->menu-entry): New variable.
(grub-configuration-file): Use boot-parameters
instead of menu-entry where possible.
* guix/scripts/system.scm (profile-boot-parameters): Update docstring.
(reinstall-grub): Use profile-boot-parameters.
(perform-action): Use profile-boot-parameters.
2017-05-05 15:03:48 +02:00
Danny Milosavljevic 370ae085b5 system: Use operating-system-boot-parameters directly.
* gnu/system.scm (operating-system-bootcfg): Use
operating-system-boot-parameters directly.
2017-05-05 15:03:47 +02:00
Danny Milosavljevic 83071b052a system: vm: Use operating-system-kernel-arguments.
* gnu/system/vm.scm (system-qemu-image/shared-store-script):
Use operating-system-kernel-arguments.
2017-05-05 15:03:47 +02:00
Danny Milosavljevic 0315abe608 scripts: Make boot-parameters label include generation number and time.
* guix/scripts/system.scm (system->boot-parameters): Make label include
generation number and time.
2017-05-05 15:03:47 +02:00
Danny Milosavljevic 9530e73b49 system: Introduce read-boot-parameters-file.
* gnu/system.scm (read-boot-parameters): Remove export.
(read-boot-parameters-file): New variable. Export it.
* guix/scripts/system.scm (profile-boot-parameters): Use
read-boot-parameters-file.
(profile-grub-entries): Use read-boot-parameters-file.
(reinstall-grub): Use read-boot-parameters-file.
(display-system-generation): Use read-boot-parameters-file.
2017-05-05 15:03:47 +02:00
Danny Milosavljevic 33f0aa8815 system: Introduce operating-system-kernel-arguments and use it.
* gnu/system.scm (bootable-kernel-arguments): New variable.
(operating-system-kernel-arguments):  New variable.
(operating-system-bootcfg): Use operating-system-kernel-arguments.
(operating-system-boot-parameters): Use operating-system-kernel-arguments.
2017-05-05 15:03:47 +02:00
Danny Milosavljevic 40fad1c24c system: Factorize operating-system-boot-parameters-file.
* gnu/system.scm (operating-system-boot-parameters): New variable.
(operating-system-boot-parameters-file): Modify.
2017-05-05 15:03:46 +02:00
Ricardo Wurmus 3339abfeff gnu: ansible: Update to 2.3.0.0.
* gnu/packages/admin.scm (ansible): Update to 2.3.0.0.
2017-05-05 14:59:38 +02:00
Ricardo Wurmus b067ad3e49 gnu: aide: Update to 0.16.
* gnu/packages/admin.scm (aide): Update to 0.16.
[inputs]: Add pcre.
2017-05-05 14:55:17 +02:00
Tobias Geerinckx-Rice 6bd7d164a7 gnu: zstd: Update to 1.2.0.
* gnu/packages/compression.scm (zstd): Update to 1.2.0.
2017-05-05 14:18:48 +02:00
Ricardo Wurmus 5c97ce1ea9 gnu: abiword: Update to 3.0.2.
* gnu/packages/patches/abiword-explictly-cast-bools.patch: Update patch.
* gnu/packages/patches/abiword-black-drawing-with-gtk322.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/abiword.scm (abiword): Update to 3.0.2.
[source]: Remove outdated snippet; add new patch.
[arguments]: Pass CXXFLAGS.
2017-05-05 13:25:56 +02:00
Ricardo Wurmus ad7f6e5f0d gnu: jalv-select: Fix regular expression.
* gnu/packages/music.scm (jalv-select)[arguments]: Fix substitution to find
the available jalv executables.
2017-05-05 09:47:43 +02:00
Ricardo Wurmus f5e0ff0f45 gnu: gxtuner: Update to 2.4.
* gnu/packages/music.scm (gxtuner): Update to 2.4.
[inputs]: Replace gtk+-2 with gtk+.
2017-05-05 09:43:34 +02:00
Ricardo Wurmus eaace76c0c gnu: jalv-select: Update to 0.8.
* gnu/packages/music.scm (jalv-select): Update to 0.8.
2017-05-05 09:28:54 +02:00
Ricardo Wurmus e13fff2cf4 gnu: qsynth: Update to 0.4.4.
* gnu/packages/audio.scm (qsynth): Update to 0.4.4.
2017-05-05 09:23:27 +02:00
Ricardo Wurmus 5ffa7cb1f3 gnu: qjackctl: Build with JACK 1.
We build all packages with JACK 1.  It is compatible with JACK 2, which users
may install to get additional features.

* gnu/packages/audio.scm (qjackctl)[inputs]: Replace "jack-2" with "jack-1".
2017-05-05 09:21:14 +02:00
Ricardo Wurmus 1538bc33cd gnu: qjackctl: Update to 0.4.5.
* gnu/packages/audio.scm (qjackctl): Update to 0.4.5.
2017-05-05 09:20:38 +02:00
Ricardo Wurmus ab7ec90f48 gnu: samplv1: Update to 0.8.2.
* gnu/packages/music.scm (samplv1): Update to 0.8.2.
2017-05-05 08:58:57 +02:00
Ricardo Wurmus 1b11601369 gnu: drumkv1: Update to 0.8.2.
* gnu/packages/music.scm (drumkv1): Update to 0.8.2.
2017-05-05 08:58:34 +02:00
Ricardo Wurmus 291a905f2b gnu: synthv1: Update to 0.8.2.
* gnu/packages/music.scm (synthv1): Update to 0.8.2.
2017-05-05 08:18:09 +02:00
Mark H Weaver 95011cb6a5 gnu: linux-libre@4.9: Update to 4.9.26.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.26.
2017-05-05 00:13:33 -04:00
Mark H Weaver a501a66168 gnu: linux-libre@4.4: Update to 4.4.66.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.66.
2017-05-05 00:12:39 -04:00
Petter f9ff014bf6 gnu: Add cool-retro-term.
* gnu/packages/terminals.scm (cool-retro-term): New variable.
* gnu/packages/patches/cool-retro-term-remove-non-free-fonts.patch,
gnu/packages/patches/cool-retro-term-fix-array-size.patch,
gnu/packages/patches/cool-retro-term-memory-leak-1.patch,
gnu/packages/patches/cool-retro-term-remove-non-free-fonts.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.

Co-authored-by: Eric Bavier <bavier@member.fsf.org>
2017-05-04 21:56:54 -05:00
Leo Famulari 7d3373a063 gnu: openssh: groff is a native-input.
* gnu/packages/ssh.scm (openssh)[inputs]: Move groff ...
[native-inputs]: ... here.
2017-05-04 20:51:12 -04:00
Ludovic Courtès e9491fb5ca gnu: guix: The variable for the last release is now 'guix-release'.
* gnu/packages/package-management.scm (guix-0.12.0): Rename to...
(guix-release): ... this.  Adjust users.
2017-05-04 23:51:45 +02:00
Ludovic Courtès e6860b5e7f build: Use Gnulib's 'git-version-gen'.
* Makefile.am (EXTRA_DIST, BUILT_SOURCES): Add $(top_srcdir)/.version.
($(top_srcdir)/.version, gen-tarball-version): New targets.
(dist-hook): Depend on 'gen-tarball-version'.
(.PHONY): Add 'gen-tarball-version'.
* build-aux/git-version-gen: New file, from Gnulib v0.1-1312-ga87d5e5c6.
* configure.ac: Use it in 'AC_INIT'.  Use 'https' for the URL.
2017-05-04 23:51:45 +02:00
Ludovic Courtès 1d1ddf26d5 build: Remove 'sync-descriptions' target.
This target predates 'guix lint'.  Nowadays it makes little sense to run
it upon 'make dist'.

* Makefile.am (sync-descriptions): Remove.
(dist-hook, .PHONY): Remove reference to 'sync-descriptions'.
2017-05-04 23:51:45 +02:00
Alex Kost da99126ca2 dir-locals.el: Add 'modify-phases' keywords.
* .dir-locals.el: Add indentation rules for 'replace', 'add-before' and
'add-after'.
2017-05-04 22:45:53 +03:00
Alex Kost 97658183ed etc: indent-code.el: Define source tree by "indent-code.el".
* etc/indent-code.el.in: Set default directory by "indent-code.el"
itself, otherwise it works only when called from the top directory of
the guix source tree.
2017-05-04 22:45:53 +03:00
Alex Kost 8ca0c88a89 doc: Add references to Emacs-Guix manual.
* doc/htmlxref.cnf: Add links to the real manual.
* doc/contributing.texi (Formatting Code): Add reference to it.
* doc/guix.texi (Package Management): Likewise.
2017-05-04 22:45:53 +03:00
Efraim Flashner 49e6b0d951 gnu: qca: Update to 2.1.3.
* gnu/packages/kde.scm (qca): Update to 2.1.3.
[home-page]: Use new home-page.
2017-05-04 22:24:20 +03:00
Ludovic Courtès 396d12faea store: Use 'write-bytevector' instead of hand-coded equivalent.
* guix/store.scm (process-stderr): Use 'write-bytevector' in the
%STDERR-READ case.
2017-05-04 18:05:05 +02:00
Ludovic Courtès cd041b268e store: Add store path computation procedures.
* guix/derivations.scm (compressed-hash, store-path)
(output-path, fixed-output-path): Move to...
* guix/store.scm: ... here.
2017-05-04 18:05:05 +02:00
ng0 4032dd81d5 gnu: fish-guix: Adjust the home-page.
* gnu/packages/shells.scm (fish-guix)[home-page]: Use the correct website.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-04 18:05:05 +02:00
Ludovic Courtès d7ecab74ee gnu: Add gcc-toolchain@7.
* gnu/packages/commencement.scm (gcc-toolchain-7): New variable.
2017-05-04 18:05:05 +02:00
Ludovic Courtès 67d84d6335 tests: Use 'fold-module-public-variables' for discovery.
* gnu/tests.scm (fold-system-tests): Write in terms of
'fold-module-public-variables'.
2017-05-04 18:05:05 +02:00
Ludovic Courtès 8eb55df488 nls: Mark (guix discovery) as translatable.
This is a followup to cd903ef787.

* po/guix/POTFILES.in: Add 'guix/discovery.scm'.
2017-05-04 18:05:05 +02:00
Ricardo Wurmus 3e961de434 gnu: neovim: Update to 0.2.0.
* gnu/packages/vim.scm (neovim): Update to 0.2.0.
2017-05-04 17:34:54 +02:00
Ricardo Wurmus 0cdc3343ad gnu: lua5.2-libmpack: Fix make flags.
This is a follow-up to commit. b523612106.

* gnu/packages/serialization.scm (lua5.2-libmpack)[arguments]: Adjust make
flags.
2017-05-04 17:09:16 +02:00
Ricardo Wurmus 7ec309af90 gnu: lua-libmpack: Update to new upstream source.
Inheriting the source from libmpack no longer works, because upstream has
moved the Lua bindings to a separate repository.

This is a follow-up to commit b523612106.

* gnu/packages/serialization.scm (lua-libmpack)[source]: Use new upstream
source.
[arguments]: Adjust make flags and build phases.
[native-inputs]: Add package sources of libmpack.
[home-page]: Use new home page URL.
2017-05-04 17:09:00 +02:00
Ricardo Wurmus 6ba4eca234 gnu: llvm-3.5: Fix build of clang-3.5.
* gnu/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch: New file
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/llvm.scm (llvm-3.5)[source]: Add patch.
2017-05-04 14:20:10 +02:00
Mathieu Othacehe e8e1ace039 gnu: guile-bytestructures: Install sld files.
* gnu/packages/guile.scm (guile-bytestructures): Build and install sld
  files in r7 repository.

It fixes this kind of errors while using guile-bytestructures:

ice-9/psyntax.scm:3245:33: ice-9/psyntax.scm:3245:33: Syntax error:
/gnu/store/ny9mp091yw51ylv1q59z25z5vdw8bi56-profile/share/guile/site/2.2/bytestructures/guile/base.scm:8:19: include-from-path: file not found in path in subform "bytestructures/r7/base.exports.sld" of (include-from-path "bytestructures/r7/base.exports.sld")
2017-05-04 13:47:23 +02:00
Tobias Geerinckx-Rice f4129cdd6a gnu: man-pages: Update to 4.11.
* gnu/packages/man.scm (man-pages): Update to 4.11.
2017-05-04 12:52:23 +02:00
Tobias Geerinckx-Rice 74067fedce environment: Correct typo.
* guix/scripts/environment.scm (create-environment): Fix typo.
2017-05-04 12:52:23 +02:00
Leo Famulari 55a797999a gnu: capnproto: Update to 0.6.0.
* gnu/packages/serialization.scm (capnproto): Update to 0.6.0.
2017-05-03 19:36:15 -04:00
Leo Famulari b523612106 gnu: libmpack: Update to 1.0.5.
* gnu/packages/serialization.scm (libmpack): Update to 1.0.5.
2017-05-03 19:36:15 -04:00
Leo Famulari e54ae862d2 gnu: msgpack: Update to 1.4.2.
* gnu/packages/serialization.scm (msgpack): Update to 1.4.2.
2017-05-03 19:36:15 -04:00
Leo Famulari 481a042b44 gnu: dmenu: Update to 4.7.
* gnu/packages/suckless.scm (dmenu): Update to 4.7.
2017-05-03 19:36:11 -04:00
Vasile Dumitrascu ecc7aa893d gnu: bind: Update to 9.11.1.
* gnu/packages/dns.scm (bind): Update to 9.11.1.
[license]: Change isc to mpl2.0.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-03 18:41:39 -04:00
humanitiesNerd fc06b15e86 doc: Add 'Debugging Build Failures' node.
* doc/guix.texi (Debugging Build Failures): New node.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-05-03 23:50:15 +02:00
Ludovic Courtès 634088a565 refresh: Use (guix discovery).
* guix/scripts/refresh.scm (maybe-updater, list-updaters): Remove.
(importer-modules): New procedure.
(%updaters): Define using 'fold-module-public-variables'.  Turn into a
promise and adjust users.
2017-05-03 23:50:15 +02:00
Ludovic Courtès cd903ef787 Add (guix discovery).
* guix/discovery.scm, tests/discovery.scm: New files.
* gnu/packages.scm (scheme-files, file-name->module-name)
(scheme-modules, all-package-modules): Remove.
(fold-packages): Rewrite in terms of 'fold-module-public-variables'.
* gnu/tests.scm: Use (guix discovery).
* Makefile.am (MODULES): Add guix/discovery.scm.
(SCM_TESTS): Add tests/discovery.scm.
2017-05-03 23:50:15 +02:00
ng0 1dc0a66591 gnu: Add fish-guix.
* gnu/packages/shells.scm (fish-guix): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-03 23:50:15 +02:00
Clément Lassieur 0ea45ef422 gnu: Add missing copyright line.
* gnu/packages/version-control.scm: Add missing copyright line for commit
db88b5a.
2017-05-03 22:10:30 +02:00
Clément Lassieur db88b5a857 gnu: gitolite: Avoid references to the store in authorized_keys.
* gnu/packages/version-control.scm (gitolite)[arguments]: Substitute
'$glshell' with 'gitolite-shell' in ssh-authkeys.
2017-05-03 21:41:47 +02:00
Arun Isaac 21b99aade1 gnu: Add emacs-gnuplot.
* gnu/packages/emacs.scm (emacs-gnuplot): New variable.
2017-05-04 00:54:29 +05:30
Efraim Flashner 90027924b7 gnu: Add gfortran@7.
* gnu/packages/gcc.scm (gfortran@7): New variable.
2017-05-03 22:16:54 +03:00
Efraim Flashner 2ed12d3fb0 gnu: libressl: Update to 2.5.4.
* gnu/packages/tls.scm (libressl): Update to 2.5.4.
[home-page]: Use https.
2017-05-03 21:58:02 +03:00
Tobias Geerinckx-Rice cef3f14644 gnu: tlp: Install all files.
* gnu/packages/linux.scm (tlp)[arguments]: Add ‘fix-installation’ phase so
the installation no longer aborts half-way, and use ‘zero?’ in the install
phase so this cannot go undetected again.
2017-05-03 18:26:29 +02:00
Ludovic Courtès 69daee23af ui: Rename '_' to 'G_'.
This avoids collisions with '_' when the latter is used as a 'match'
pattern for instance.  See
<https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00464.html>.

* guix/ui.scm: Rename '_' to 'G_'.
* po/guix/Makevars (XGETTEXT_OPTIONS): Adjust accordingly.
* build-aux/compile-all.scm (warnings): Remove 'format'.
* gnu/packages.scm,
gnu/services.scm,
gnu/services/shepherd.scm,
gnu/system.scm,
gnu/system/shadow.scm,
guix/gnupg.scm,
guix/http-client.scm,
guix/import/cpan.scm,
guix/import/elpa.scm,
guix/import/pypi.scm,
guix/nar.scm,
guix/scripts.scm,
guix/scripts/archive.scm,
guix/scripts/authenticate.scm,
guix/scripts/build.scm,
guix/scripts/challenge.scm,
guix/scripts/container.scm,
guix/scripts/container/exec.scm,
guix/scripts/copy.scm,
guix/scripts/download.scm,
guix/scripts/edit.scm,
guix/scripts/environment.scm,
guix/scripts/gc.scm,
guix/scripts/graph.scm,
guix/scripts/hash.scm,
guix/scripts/import.scm,
guix/scripts/import/cpan.scm,
guix/scripts/import/cran.scm,
guix/scripts/import/crate.scm,
guix/scripts/import/elpa.scm,
guix/scripts/import/gem.scm,
guix/scripts/import/gnu.scm,
guix/scripts/import/hackage.scm,
guix/scripts/import/nix.scm,
guix/scripts/import/pypi.scm,
guix/scripts/import/stackage.scm,
guix/scripts/lint.scm,
guix/scripts/offload.scm,
guix/scripts/pack.scm,
guix/scripts/package.scm,
guix/scripts/perform-download.scm,
guix/scripts/publish.scm,
guix/scripts/pull.scm,
guix/scripts/refresh.scm,
guix/scripts/size.scm,
guix/scripts/substitute.scm,
guix/scripts/system.scm,
guix/ssh.scm,
guix/upstream.scm: Use 'G_' instead of '_'.  Most of this change was
obtained by running: "sed -i -e's/(_ "/(G_ "/g' `find -name \*.scm`".
2017-05-03 16:16:17 +02:00
Jan Nieuwenhuizen 1c7a78f157 gnu: Add mes.
* gnu/packages/mes.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-03 16:16:17 +02:00
Efraim Flashner 0c5658df96 gnu: Add gcc@7.
* gnu/packages/gcc.scm (gcc@7): New variable.
2017-05-03 16:35:37 +03:00
Mathieu Othacehe 723f0ce797 gnu: connman: Update to 1.34.
* gnu/packages/connman.scm (connman): Update to 1.34.
2017-05-03 12:05:28 +02:00
Mathieu Othacehe 5e03b122cf services: herd: Make %shepherd-socket-file a parameter and export it.
* gnu/services/herd.scm (%shepherd-socket-file): Make it an exported
  parameter.
(open-connection): Adapt.
2017-05-03 11:35:25 +02:00
Efraim Flashner 4b13e28a8d gnu: Add gfortran@6.
* gnu/packages/gcc.scm (gfortran@6): New variable.
2017-05-03 07:33:35 +03:00
Leo Famulari 14dbab425a gnu: imagemagick: Update to 6.9.8-4.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.8-4.
2017-05-03 00:11:44 -04:00
Danny Milosavljevic 06110559bb gnu: build: file-systems: Add ISO-9660.
Fixes <https://bugs.gnu.org/26751>.

* gnu/build/file-systems.scm (iso9660-superblock?,
read-iso9660-primary-volume-descriptor, read-iso9660-superblock,
iso9660-superblock-uuid, iso9660-uuid->string,
iso9660-superblock-volume-name): New variables.
(%partition-label-readers): Add iso9660.
(%partition-uuid-readers): Add iso9660.
2017-05-03 00:18:33 +02:00
Petter 2f3108ad03 gnu: Avoid circular dependencies by Perl license.
* guix/licenses.scm (perl-license): New variable.
* gnu/packages/bioinformatics.scm: Change (package-license perl) to perl-license.
* gnu/packages/compression.scm: Same.
* gnu/packages/databases.scm: Same.
* gnu/packages/gd.scm: Same.
* gnu/packages/language.scm: Same.
* gnu/packages/libevent.scm: Same.
* gnu/packages/mail.scm: Same.
* gnu/packages/messaging.scm: Same.
* gnu/packages/ncurses.scm: Same.
* gnu/packages/networking.scm: Same.
* gnu/packages/photo.scm: Same.
* gnu/packages/tcl.scm: Same.
* gnu/packages/tex.scm: Same.
* gnu/packages/tls.scm: Same.
* gnu/packages/web.scm: Same.
* gnu/packages/wm.scm: Same.
* gnu/packages/xml.scm: Same.
* gnu/packages/xorg.scm: Same.
* gnu/packages/zip.scm: Same.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-02 23:41:14 +02:00
Ludovic Courtès dcb95c1fc9 monads: Add a template and specialization mechanism for monadic procedures.
* guix/monads.scm (%templates, %template-instances): New variables.
(register-template!, register-template-instance!): New procedures.
(template-directory, define-template): New macro.
(foldm, sequence, anym): Define using 'define-template'.  Avoid replace
ellipses with dots.
(mapm): Likewise, but do not use 'foldm'.
* guix/store.scm: Add 'template-directory' invocation.
2017-05-02 23:41:13 +02:00
Ludovic Courtès 7b9ac883ea download: Continue handshake upon TLS warning alerts.
This allows us to download from site such as
<https://fusionforge.int-evry.fr> where the server does not recognize
the server name passed via the 'server_name' extension.

* guix/build/download.scm (tls-wrap): Catch 'gnutls-error' around
'handshake'.  Upon ERROR/WARNING-ALERT-RECEIVED, print a message and
call 'handshake'.
2017-05-02 23:41:13 +02:00
Ludovic Courtès 756be979cb licenses: Add CeCILL and CeCILL-B.
* guix/licenses.scm (cecill, cecill-b): New variables.
2017-05-02 23:41:13 +02:00
Tobias Geerinckx-Rice beba0c09b9 gnu: youtube-dl: Update to 2017.05.01.
* gnu/packages/video.scm (youtube-dl): Update to 2017.05.01.
2017-05-02 23:35:59 +02:00
Tobias Geerinckx-Rice 8a1bb37817 gnu: hdparm: Update to 9.52.
* gnu/packages/linux.scm (hdparm): Update to 9.52.
2017-05-02 23:35:24 +02:00
Danny Milosavljevic 7e16478f18 gnu: Add python-mwclient.
Fixes <https://bugs.gnu.org/26744>.

* gnu/packages/python.scm (python-mwclient, python2-mwclient): New variables.
2017-05-02 22:21:36 +02:00
Danny Milosavljevic 1aecfe176a gnu: python-pytest-cov: Update to 2.4.0.
Fixes <https://bugs.gnu.org/26743>.

* gnu/packages/python.scm (python-pytest-cov): Update to 2.4.0.
2017-05-02 22:20:44 +02:00
Efraim Flashner 341ccb0f3b gnu: obs: Update to 18.0.2.
* gnu/packages/video.scm (obs): Update to 18.0.2.
2017-05-02 22:24:34 +03:00
Ludovic Courtès 4aabc8eaa2 build: Install gnu/build/svg.scm.
Fixes a regression introduced in
commit 960887b297.

* Makefile.am (MODULES_NOT_COMPILED): New variable.
(nobase_dist_guilemodule_DATA): Add $(MODULES_NOT_COMPILED).
(EXTRA_DIST): Remove gnu/build/svg.scm.
* gnu/local.mk (MODULES_NOT_COMPILED): New variable.
2017-05-02 15:44:35 +02:00
Ludovic Courtès 693f12ce23 build: 'check-system' now depends on the bootstrap Guile tarballs.
Reported by Chris Marusich <cmmarusich@gmail.com>.

* gnu/local.mk (BOOTSTRAP_GUILE_TARBALLS): New variable.
(DISTCLEANFILES): Define as an alias for 'BOOTSTRAP_GUILE_TARBALLS'.
* Makefile.am (check-system): Depend on $(BOOTSTRAP_GUILE_TARBALLS).
2017-05-02 15:10:05 +02:00
Ludovic Courtès 8a2105078b substitute: Validate substitute URLs.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>
at <https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00548.html>.

* guix/scripts/substitute.scm (validate-uri): New procedure.
(guix-substitute): Use it.
2017-05-02 12:32:52 +02:00
Ludovic Courtès 49f9d7f697 services: nscd: Create /etc/resolv.conf if it does not exist.
* gnu/services/base.scm (nscd-activation): Create /etc/resolv.conf if it
does not exist yet.
2017-05-02 12:32:52 +02:00
Ludovic Courtès 1fd0fc0db4 gnu: parallel: Update to 20170422.
* gnu/packages/parallel.scm (parallel): Update to 20170422.
2017-05-02 12:32:52 +02:00
Ludovic Courtès 915d7792ac gnu: ocrad: Update to 0.26.
* gnu/packages/ocr.scm (ocrad): Update to 0.26.
2017-05-02 12:32:52 +02:00
Ludovic Courtès 5c6b6827e9 gnu: libiconv: Update to 1.15.
* gnu/packages/base.scm (libiconv): Update to 1.15.
2017-05-02 12:32:52 +02:00
Ludovic Courtès ebc4b6e0cf gnu: less: Update to 487.
* gnu/packages/less.scm (less): Update to 487.
2017-05-02 12:32:52 +02:00
Ludovic Courtès 005375f53b gnu: acct: Update to 6.6.3.
* gnu/packages/acct.scm (acct): Update to 6.6.3.
2017-05-02 12:32:52 +02:00
Ludovic Courtès 20832afbf2 gnu: emacs-emms: Update to 4.3.
* gnu/packages/emacs.scm (emms): Update to 4.3.
2017-05-02 12:32:51 +02:00
Ludovic Courtès e723178a10 publish: Use a larger zlib buffer for compression with '--cache'.
* guix/scripts/publish.scm (bake-narinfo+nar): Pass #:buffer-size to
'call-with-gzip-output-port'.
2017-05-02 12:32:51 +02:00
Mark H Weaver 7020a6ab8b gnu: ghostscript: Fix grafting of ghostscript/x and ghostscript/cups.
* gnu/packages/cups.scm (ghostscript/cups): Use package/inherit.
* gnu/packages/ghostscript.scm (ghostscript/x): Use package/inherit.
(ghostscript/fixed)[replacement]: Override to #f.
2017-05-02 04:19:11 -04:00
Mark H Weaver bedba06426 Add package/inherit.
* guix/packages.scm (package/inherit): New public macro.
2017-05-02 04:19:09 -04:00
Mark H Weaver ee3401d018 gnu: icecat: Add more fixes from upstream mozilla-esr52.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add selected fixes from the
upstream mozilla-esr52 repository.
2017-05-02 04:19:03 -04:00
Danny Milosavljevic 6e7302e93b gnu: Add python-flask-oidc.
Fixes <https://bugs.gnu.org/26731>.

* gnu/packages/python.scm (python-flask-oidc): New variable.
2017-05-02 09:27:18 +02:00
Danny Milosavljevic f3f8d159c3 gnu: Add python-oauth2client.
* gnu/packages/python.scm (python-oauth2client): New variable.
2017-05-02 09:27:17 +02:00
Mark H Weaver 60c9e80444 gnu: linux-libre: Update to 4.11.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.11.
(%linux-libre-hash): Update hash.
* gnu/packages/aux-files/linux-libre/4.10-i686.conf,
gnu/packages/aux-files/linux-libre/4.10-x86_64.conf: Delete files.
* gnu/packages/aux-files/linux-libre/4.11-i686.conf,
gnu/packages/aux-files/linux-libre/4.11-x86_64.conf: New files.
* Makefile.am (AUX_FILES): Adjust accordingly.
2017-05-01 21:48:15 -04:00
Brendan Tildesley f3744a01e6 gnu: Add font-cns11643-swjz.
* gnu/packages/fonts.scm (font-cns11643-swjz): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-05-02 00:58:32 +02:00
Brendan Tildesley 840b713613 gnu: Add font-cns11643.
* gnu/packages/fonts.scm (font-cns11643): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-05-02 00:14:20 +02:00
Christopher Baines 99aa2dce5d gnu: Add tailon.
* gnu/packages/logging.scm (tailon): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-05-01 23:59:29 +02:00
Christopher Baines 6fdeb324a0 gnu: python-tornado: Update to 4.5.1.
* gnu/packages/python.scm (python-tornado): Update to 4.5.1.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-05-01 23:59:22 +02:00
Christopher Baines e537c917e8 gnu: Add python-sockjs-tornado.
* gnu/packages/python.scm (python-sockjs-tornado): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-05-01 23:59:15 +02:00
Mark H Weaver dd5bb841bf Revert "gnu: linux-libre: Update to 4.11."
This reverts commit cfd2ca8244.
2017-05-01 17:38:34 -04:00
Leo Famulari 1c4a500aae gnu: libsndfile: Fix CVE-2017-{8361,8362,8363,8365}.
* gnu/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch,
gnu/packages/patches/libsndfile-CVE-2017-8362.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/pulseaudio.scm (libsndfile)[replacement]: New field.
(libsndfile/fixed): New variable.
2017-05-01 15:52:58 -04:00
Clément Lassieur d5b091290d gnu: font-bitstream-vera: Change license to fsdg-compatible.
This license is not X11-style because of its clause that makes it non-free.

* gnu/packages/fonts.scm (font-bitstream-vera)[license]: Change to
fsdg-compatible Bitstream Vera.
2017-05-01 21:32:16 +02:00
Clément Lassieur 3314396138 licenses: Add new meta-license fsdg-compatible.
* guix/licenses.scm (fsdg-compatible): New record with constructor.
2017-05-01 21:32:15 +02:00
Leo Famulari 78df8948c8 gnu: bitcoin-core: Update to 0.14.1.
* gnu/packages/finance.scm (bitcoin-core): Update to 0.14.1.
2017-05-01 14:47:59 -04:00
Leo Famulari 116ac0582c gnu: linux-libre@4.4: Update to 4.4.65.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.65.
2017-05-01 13:39:59 -04:00
Mathieu Othacehe cfd2ca8244 gnu: linux-libre: Update to 4.11.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.11.
(%linux-libre-hash): Update hash.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-05-01 13:39:59 -04:00
Ludovic Courtès dff3189c7d publish: Produce a "FileSize" narinfo field when possible.
* guix/scripts/publish.scm (narinfo-string): Add #:file-size parameter.
Produce a "FileSize" field when COMPRESSION is eq? to '%no-compression'
or when FILE-SIZE is true.
(bake-narinfo+nar): Pass #:file-size.
* tests/publish.scm ("/*.narinfo")
("/*.narinfo with properly encoded '+' sign")
("with cache"): Check for "FileSize".
2017-05-01 17:28:20 +02:00
Maxim Cournoyer e93793059d gnu: python2-urwid: Disable vterm tests.
* gnu/packages/python.scm (python2-urwid)['delete-test_vterm]: Add phase to
delete problematic test modules.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-05-01 17:28:20 +02:00
Ludovic Courtès e30c2be10d packages: Remove support for PACKAGE-VERSION deprecated syntax.
This syntax had been deprecated since 2016-02-28.

* gnu/packages.scm (%find-package): Remove #:fallback? parameter and handling.
* tests/guix-build.sh: Remove test for "time-1.7" syntax.
* doc/guix.texi (Invoking guix lint): Update 'guix lint' output in example.
2017-05-01 17:27:54 +02:00
Ludovic Courtès 6d1a5e5ffd refresh: Report packages using the "@" syntax.
* guix/scripts/refresh.scm (list-dependents)[full-name]: New procedure.
Use 'full-name' instead of 'package-full-name'.
* doc/guix.texi (Invoking guix refresh): Adjust example accordingly.
2017-05-01 16:38:30 +02:00
Roel Janssen f432254237 gnu: vcftools: Update to 0.1.15.
* gnu/packages/bioinformatics.scm (vcftools): Update to 0.1.15.
2017-05-01 16:18:39 +02:00
Julien Lepiller fa936915ce gnu: services: nginx: Fix key verification.
* gnu/services/web.scm (default-nginx-server-config): Fix wrong variable name.
2017-05-01 10:12:49 +02:00
Julien Lepiller 5a10cd4736 gnu: services: Create logs directory.
* gnu/services/web.scm (nginx-activation): Create logs directory so nginx can
log its startup messages before it loads its configuration.
2017-05-01 09:57:03 +02:00
Julien Lepiller 0f4740f4fa gnu: services: nginx: Test certificate presence.
* gnu/services/web.scm (default-nginx-server-config): Test certificate
presence when https is requested at configure time.
2017-05-01 09:56:57 +02:00
ng0 9416112ed2 gnu: neomutt: Update to 20170428.
* gnu/packages/mail.scm (neomutt): Update to 20170428.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-30 19:27:44 -04:00
Mathieu Othacehe dd69ff6d45 gnu: emacs-mu4e-alert: Update to 1.0.
* gnu/packages/emacs.scm (emacs-mu4e-alert): Update to 1.0.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-30 19:23:18 -04:00
Danny Milosavljevic 7cf06d62bf gnu: Add gcc-vc4.
Fixes <https://bugs.gnu.org/26541>.

* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add vc4-elf.
* gnu/packages/embedded.scm (gcc-vc4): New variable.
2017-05-01 01:14:27 +02:00
Mathieu Othacehe b3542d77fe gnu: guile-git: Update to revision 2.
* gnu/packages/guile.scm (guile-git): Update to revision 2.
[arguments]: remove "ccache -> site-ccache" substitution because it
has been ported upstream.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-30 19:07:09 -04:00
Leo Famulari 4d31d14397 gnu: python-llfuse: Update to 1.2.
* gnu/packages/python.scm (python-llfuse, python2-llfuse): Update to 1.2.
2017-04-30 17:15:37 -04:00
Leo Famulari 436c05586e gnu: fuse: Update to 2.9.7.
* gnu/packages/linux.scm (fuse): Update to 2.9.7.
2017-04-30 17:15:36 -04:00
Leo Famulari 68f12ea0d2 gnu: radicale: Update to 1.1.2 [fixes CVE-2017-8342].
* gnu/packages/dav.scm (radicale): Update to 1.1.2.
2017-04-30 16:50:08 -04:00
Leo Famulari fbaf9376f6 Revert "gnu: Move netsurf to web-browsers.scm."
This change caused building Guix to fail with:

 393: 1 [eval #<memoized glib-or-gtk-build-system> (# "3.6" "netsurf" . #)]

This reverts commit a39ee1accb.
2017-04-30 15:08:59 -04:00
Kei Kebreau a39ee1accb gnu: Move netsurf to web-browsers.scm.
* gnu/packages/web.scm: Move netsurf...
* gnu/packages/web-browsers.scm: ...here.
2017-04-30 14:11:16 -04:00
Ricardo Wurmus c2e4f14ac8 gnu: glibc/linux: Fix build of glibc-intermediate.
This is a follow-up to commit b2fd8f6367.

* gnu/packages/base.scm (glibc/linux)[arguments]: Take patch from either
native-inputs or just inputs; fix syntax error; report errors on patch
failure.
2017-04-30 13:01:20 +02:00
Efraim Flashner dc00f63527 gnu: femtolisp: Remove aarch64-linux from supported-architectures.
* gnu/packages/lisp.scm (femtolisp)[supported-systems]: Remove
aarch64-linux from supported-systems.
2017-04-30 13:03:09 +03:00
Thomas Danckaert 300200b637 gnu: Add netcdf-fortran.
* gnu/packages/maths.scm (netcdf-fortran): New variable.
2017-04-30 11:50:50 +02:00
Efraim Flashner 06be316111 gnu: jemalloc: Disable transparent huge pages on non-Intel systems.
* gnu/packages/jemalloc.scm (jemalloc)[arguments]: On non-Intel systems
add '--disable-thp' to #:configure-flags. Adjust #:phases to remove
offending test which incorrectly tests transparent huge pages.
2017-04-30 11:04:38 +03:00
Christopher Allan Webber b9ce9eca23 python-sphinxcontrib-programoutput: Update to 0.10.
* gnu/packages/python.scm (python-sphinxcontrib-programoutput): Update to 0.10.
2017-04-29 18:50:53 -05:00
Marius Bakke 564324f457 gnu: xapian: Update to 1.4.4.
* gnu/packages/search.scm (xapian): Update to 1.4.4.
2017-04-29 23:50:57 +02:00
Ricardo Wurmus b2fd8f6367 gnu: glibc/linux: Fix runtime crashes on i686 systems.
* gnu/packages/patches/glibc-memchr-overflow-i686.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]:
Add the patch conditionally for i686 systems.
* gnu/packages/base.scm (glibc/linux)[native-inputs]: Add the patch
conditionally for i686 systems.
[arguments]: Apply the patch conditionally on i686 systems.
2017-04-29 23:31:35 +02:00
Efraim Flashner e18e17ea4e gnu: lsof: Update to 4.89.
* gnu/packages/lsof.scm (lsof): Update to 4.89.
2017-04-29 23:41:06 +03:00
Efraim Flashner 4ae3549f7c gnu: lsof: Shorten 'install phase.
* gnu/packages/lsof.scm (lsof)[arguments]: Use 'install-file during the
'install phase.
2017-04-29 23:41:05 +03:00
Efraim Flashner b6ea329a32 gnu: lsof: Use 'modify-phases' syntax.
* gnu/packages/lsof.scm (lsof)[arguments]: Use 'modify-phases' syntax.
2017-04-29 23:25:22 +03:00
Efraim Flashner d5fa9fd1fe gnu: lsof: Add to mirror list.
* gnu/packages/lsof.scm (lsof)[source]: Add to mirror list.
2017-04-29 23:20:47 +03:00
Efraim Flashner 90f83099e8 gnu: r-genomeinfodbdata: Fix source url.
* gnu/packages/bioinformatics.scm (r-genomeinfodbdata)[source]: Use
source uri and not bioconductor-uri shortener.
2017-04-29 22:53:43 +03:00
Leo Famulari 86f48a8dbf gnu: freetype: Fix CVE-2017-{8105,8287}.
* gnu/packages/patches/freetype-CVE-2017-8105.patch,
gnu/packages/patches/freetype-CVE-2017-8287.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/fontutils.scm (freetype)[replacement]: New field.
(freetype/fixed): New variable.
2017-04-29 12:14:03 -04:00
Julien Lepiller e24d527131 gnu: ocaml-qtest: Use ocaml-qcheck.
* gnu/packages/ocaml.scm (ocaml-qtest)[propagated-inputs]: Add ocaml-qcheck.
2017-04-29 17:51:49 +02:00
Julien Lepiller 2c6ef0dd3b gnu: Add ocaml-qcheck.
* gnu/packages/ocaml.scm (ocaml-qcheck): New variable.
2017-04-29 17:51:27 +02:00
Danny Milosavljevic 0660d3276c gnu: python-openid: Fix package.
Fixes <https://bugs.gnu.org/26692>.

* gnu/packages/python.scm (python-openid)[arguments]: Replace 'check phase.
[propagated-inputs]: Add python-defusedxml.
[native-inputs]: Add python-psycopg2, python-django.
2017-04-29 10:52:55 +02:00
Leo Famulari 45fe973645 gnu: ghostscript-with-cups: Avoid inheriting replacement field.
This is a followup to commit a01f15759a.

* gnu/packages/cups.scm (ghostscript/cups)[replacement]: New field.
2017-04-29 01:16:57 -04:00
Tobias Geerinckx-Rice a7c61512e4 gnu: radeontop: Update to 1.0.
* gnu/packages/linux.scm (radeontop): Update to 1.0.
[inputs]: Add libxcb.
2017-04-29 01:03:02 +02:00
Leo Famulari a01f15759a gnu: ghostscript: Fix CVE-2017-8291.
* gnu/packages/patches/ghostscript-CVE-2017-8291.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ghostscript.scm (ghostscript)[replacement]: New field.
(ghostscript/fixed): New variable.
(ghostscript-with-x)[replacement]: New field.
2017-04-28 17:02:42 -04:00
Arun Isaac 73749ae9f1 gnu: youtube-dl: Update to 2017.04.28.
* gnu/packages/video.scm (youtube-dl): Update to 2017.04.28.
2017-04-28 22:06:58 +05:30
Ricardo Wurmus 162a4a0323 gnu: Add enigma.
* gnu/packages/games.scm (enigma): New variable.
2017-04-28 17:46:39 +02:00
Ricardo Wurmus d00d6cea66 gnu: Add xerces-c.
* gnu/packages/xml.scm (xerces-c): New variable.
2017-04-28 17:46:39 +02:00
Kei Kebreau 8832c96340 gnu: schismtracker: Update to 20170420.
* gnu/packages/music.scm (schismtracker): Update to 20170420.
2017-04-28 11:34:13 -04:00
David Thompson 0cb9fba3dc gnu: awscli: Add python-pyyaml input.
Without this input, 'aws ec2 import-key-pair' doesn't work.

* gnu/packages/python.scm (awscli)[propagated-inputs]: Add python-pyyaml.
2017-04-28 09:20:37 -04:00
宋文武 28172178b1 gnu: virt-manager: Update to 1.4.1.
* gnu/packages/qemu.scm (virt-manager): Update to 1.4.1.
2017-04-28 21:01:01 +08:00
宋文武 9271dfddc9 gnu: python-libvirt: Update to 3.2.0.
* gnu/packages/qemu.scm (python-libvirt, python2-libvirt): Update to 3.2.0.
2017-04-28 20:53:15 +08:00
宋文武 c3c0316215 gnu: libvirt-glib: Update to 1.0.0.
* gnu/packages/qemu.scm (libvirt-glib): Update to 1.0.0.
2017-04-28 20:23:56 +08:00
宋文武 52caf4b9fd gnu: libvirt: Update to 3.2.0.
* gnu/packages/qemu.scm (libvirt): Update to 3.2.0.
2017-04-28 20:19:20 +08:00
Roel Janssen 4646a79c65 gnu: r-preprocesscore: Update to 1.38.0.
* gnu/packages/statistics.scm (r-preprocesscore): Update to 1.38.0.
2017-04-28 11:05:43 +02:00
Roel Janssen 524bfe2dbf gnu: r-msnid: Update to 1.10.0.
* gnu/packages/bioinformatics.scm (r-msnid): Update to 1.10.0.
2017-04-28 11:05:42 +02:00
Roel Janssen 82359c72cb gnu: r-msnbase: Update to 2.2.0.
* gnu/packages/bioinformatics.scm (r-msnbase): Update to 2.2.0.
2017-04-28 11:05:41 +02:00
Roel Janssen 5bfa6e090d gnu: r-pcamethods: Update to 1.68.0.
* gnu/packages/bioinformatics.scm (r-pcamethods): Update to 1.68.0.
2017-04-28 11:05:40 +02:00
Roel Janssen 63bf2102cd gnu: r-mzid: Update to 1.14.0.
* gnu/packages/bioinformatics.scm (r-mzid): Update to 1.14.0.
2017-04-28 11:05:38 +02:00
Roel Janssen 60c08b2ff4 gnu: r-vsn: Update to 3.44.0.
* gnu/packages/bioinformatics.scm (r-vsn):
[source]: Update to 3.44.0,
[propagated-inputs]: Add r-hexbin.
2017-04-28 11:05:37 +02:00
Roel Janssen bd3cc4cc52 gnu: r-affy: Update to 1.54.0.
* gnu/packages/bioinformatics.scm (r-affy): Update to 1.54.0.
2017-04-28 11:05:37 +02:00
Roel Janssen 71abcc4cbf gnu: r-affyio: Update to 1.46.0.
* gnu/packages/bioinformatics.scm (r-affyio): Update to 1.46.0.
2017-04-28 11:05:36 +02:00
Roel Janssen e440ad6d4f gnu: r-mzr: Update to 2.10.0.
* gnu/packages/bioinformatics.scm (r-mzr): Update to 2.10.0.
2017-04-28 11:05:35 +02:00
Roel Janssen 5b1337cc60 gnu: r-protgenerics: Update to 1.8.0.
* gnu/packages/bioinformatics.scm (r-protgenerics): Update to 1.8.0.
2017-04-28 11:05:33 +02:00
Roel Janssen 1d09d017db gnu: r-sva: Update to 3.24.0.
* gnu/packages/bioinformatics.scm (r-sva): Update to 3.24.0.
2017-04-28 11:05:20 +02:00
Roel Janssen d52d2d623a gnu: r-copywriter: Update to 2.8.0.
* gnu/packages/bioinformatics.scm (r-copywriter): Update to 2.8.0.
2017-04-28 11:05:19 +02:00
Roel Janssen 7d72f2a803 gnu: r-chipseq: Update to 1.26.0.
* gnu/packages/bioinformatics.scm (r-chipseq): Update to 1.26.0.
2017-04-28 11:05:18 +02:00
Roel Janssen 04049a5f2c gnu: r-rhdf5: Update to 2.20.0.
* gnu/packages/bioinformatics.scm (r-rhdf5): Update to 2.20.0.
2017-04-28 11:05:18 +02:00
Roel Janssen ff58a1af98 gnu: r-tximport: Update to 1.4.0.
* gnu/packages/bioinformatics.scm (r-tximport): Update to 1.4.0.
2017-04-28 11:05:16 +02:00
Roel Janssen cf4ac4e465 gnu: r-mutationalpatterns: Update to 1.2.0.
* gnu/packages/bioinformatics.scm (r-mutationalpatterns):
[source]: Update to 1.2.0,
[propagated-inputs]: Add r-bsgenome-hsapiens-1000genomes-hs37d5,
  r-bsgenome-hsapiens-ucsc-hg19.
2017-04-28 11:05:13 +02:00
Roel Janssen ccd2aade98 gnu: r-bamsignals: Update to 1.8.0.
* gnu/packages/bioinformatics.scm (r-bamsignals): Update to 1.8.0.
2017-04-28 11:05:12 +02:00
Roel Janssen 37631ddc28 gnu: r-rhtslib: Update to 1.8.0.
* gnu/packages/bioinformatics.scm (r-rhtslib): Update to 1.8.0.
2017-04-28 11:05:11 +02:00
Roel Janssen 8444f6067a gnu: r-zlibbioc: Update to 1.22.0.
* gnu/packages/bioinformatics.scm (r-zlibbioc): Update to 1.22.0.
2017-04-28 11:05:10 +02:00
Roel Janssen a7b90ea990 gnu: r-motifrg: Update to 1.20.0.
* gnu/packages/bioinformatics.scm (r-motifrg): Update to 1.20.0.
2017-04-28 11:05:09 +02:00
Roel Janssen 0fce7d9be5 gnu: r-seqlogo: Update to 1.42.0.
* gnu/packages/bioinformatics.scm (r-seqlogo): Update to 1.42.0.
2017-04-28 11:05:08 +02:00
Roel Janssen 3ae82c8dfe gnu: r-genomation: Update to 1.8.0.
* gnu/packages/bioinformatics.scm (r-genomation): Update to 1.8.0.
2017-04-28 11:05:07 +02:00
Roel Janssen 08b9224d2d gnu: r-seqpattern: Update to 1.8.0.
* gnu/packages/bioinformatics.scm (r-seqpattern): Update to 1.8.0.
2017-04-28 11:05:06 +02:00
Roel Janssen 5999359f56 gnu: r-impute: Update to 1.50.0.
* gnu/packages/bioinformatics.scm (r-impute): Update to 1.50.0.
2017-04-28 11:05:06 +02:00
Roel Janssen c54a702a28 gnu: r-bsgenome: Update to 1.44.0.
* gnu/packages/bioinformatics.scm (r-bsgenome): Update to 1.44.0.
2017-04-28 11:05:04 +02:00
Roel Janssen 6e70b6d63c gnu: r-topgo: Update to 2.28.0.
* gnu/packages/bioinformatics.scm (r-topgo): Update to 2.28.0.
2017-04-28 11:05:03 +02:00
Roel Janssen 56373771b3 gnu: r-graph: Update to 1.54.0.
* gnu/packages/bioinformatics.scm (r-graph): Update to 1.54.0.
2017-04-28 11:05:02 +02:00
Roel Janssen 5d0301a339 gnu: r-genomicfeatures: Update to 1.28.0.
* gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.28.0.
2017-04-28 11:05:01 +02:00
Roel Janssen 2ea7155b04 gnu: r-rtracklayer: Update to 1.36.0.
* gnu/packages/bioinformatics.scm (r-rtracklayer): Update to 1.36.0.
2017-04-28 11:05:00 +02:00
Roel Janssen 5f16d1e47d gnu: r-genomicalignments: Update to 1.12.0.
* gnu/packages/bioinformatics.scm (r-genomicalignments): Update to 1.12.0.
2017-04-28 11:04:59 +02:00
Roel Janssen d006ee31af gnu: r-summarizedexperiment: Update to 1.6.0.
* gnu/packages/bioinformatics.scm (r-summarizedexperiment):
[source]: Update to 1.6.0,
[propagated-inputs]: Add r-delayedarray.
2017-04-28 11:04:58 +02:00
Roel Janssen 6bf5543be8 gnu: r-rsamtools: Update to 1.28.0.
* gnu/packages/bioinformatics.scm (r-rsamtools): Update to 1.28.0.
2017-04-28 11:04:57 +02:00
Roel Janssen 3ed41af6b5 gnu: r-biostrings: Update to 2.44.0.
* gnu/packages/bioinformatics.scm (r-biostrings): Update to 2.44.0.
2017-04-28 11:04:56 +02:00
Roel Janssen 502da6ffc7 gnu: r-biocparallel: Update to 1.10.0.
* gnu/packages/bioinformatics.scm (r-biocparallel): Update to 1.10.0.
2017-04-28 11:04:55 +02:00
Roel Janssen 78e7a589c9 gnu: r-biomart: Update to 2.32.0.
* gnu/packages/bioinformatics.scm (r-biomart): Update to 2.32.0.
2017-04-28 11:04:47 +02:00
Roel Janssen aafaab22d3 gnu: r-annotationdbi: Update to 1.38.0.
* gnu/packages/bioinformatics.scm (r-annotationdbi): Update to 1.38.0.
2017-04-28 11:04:46 +02:00
Roel Janssen b2fff403c8 gnu: r-biobase: Update to 2.36.0.
* gnu/packages/bioinformatics.scm (r-biobase): Update to 2.36.0.
2017-04-28 11:04:44 +02:00
Roel Janssen 1859712bef gnu: r-genomicranges: Update to 1.28.0.
* gnu/packages/bioinformatics.scm (r-genomicranges): Update to 1.28.0.
2017-04-28 11:04:42 +02:00
Roel Janssen 17a02f5149 gnu: r-xvector: Update to 0.16.0.
* gnu/packages/bioinformatics.scm (r-xvector): Update to 0.16.0.
2017-04-28 11:04:42 +02:00
Roel Janssen abf5a14e11 gnu: r-limma: Update to 3.32.0.
* gnu/packages/bioinformatics.scm (r-limma): Update to 3.32.0.
2017-04-28 11:04:41 +02:00
Roel Janssen d2d7af9832 gnu: r-variantannotation: Update to 1.22.0.
* gnu/packages/bioinformatics.scm (r-variantannotation): Update to 1.22.0.
2017-04-28 11:04:40 +02:00
Roel Janssen 00ffd55fa1 gnu: r-edger: Update to 3.18.0.
* gnu/packages/bioinformatics.scm (r-edger): Update to 3.18.0.
2017-04-28 11:04:39 +02:00
Roel Janssen 38b99ccc57 gnu: r-genomeinfodb: Update to 1.12.0.
* gnu/packages/bioinformatics.scm (r-genomeinfodb): [source] Update to 1.12.0,
[propagated-inputs]: Add r-genomeinfodbdata.
2017-04-28 11:04:37 +02:00
Roel Janssen 7d9ab5d920 gnu: r-iranges: Update to 2.10.0.
* gnu/packages/bioinformatics.scm (r-iranges): Update to 2.10.0.
2017-04-28 11:04:36 +02:00
Roel Janssen f1f380185b gnu: r-s4vectors: Update to 0.14.0.
* gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.14.0.
2017-04-28 11:04:34 +02:00
Roel Janssen 9b02d49cb0 gnu: r-dnacopy: Update to 1.50.0.
* gnu/packages/bioinformatics.scm (r-dnacopy): Update to 1.50.0.
2017-04-28 11:04:33 +02:00
Roel Janssen 2e11beec48 gnu: r-bioccheck: Update to 1.12.0.
* gnu/packages/bioinformatics.scm (r-bioccheck): Update to 1.12.0.
2017-04-28 11:04:32 +02:00
Roel Janssen 3bef24c968 gnu: r-biocstyle: Update to 2.4.0.
* gnu/packages/bioinformatics.scm (r-biocstyle): [source] Update to 2.4.0.
[propagated-inputs]: Add r-bookdown, r-knitr, r-rmarkdown, r-yaml.
2017-04-28 11:04:31 +02:00
Roel Janssen 68eac34974 gnu: r-biocviews: Update to 1.44.0.
* gnu/packages/bioinformatics.scm (r-biocviews): Update to 1.44.0.
2017-04-28 11:04:30 +02:00
Roel Janssen 3bef15286a gnu: r-biocinstaller: Update to 1.26.0.
* gnu/packages/bioinformatics.scm (r-biocinstaller): Update to 1.26.0.
2017-04-28 11:04:28 +02:00
Roel Janssen 28a5b3f2c6 gnu: r-biocgenerics: Update to 0.22.0.
* gnu/packages/bioinformatics.scm (r-biocgenerics): Update to 0.22.0.
2017-04-28 11:04:26 +02:00
Roel Janssen 795a604526 gnu: r-grohmm: Update to 1.10.0.
* gnu/packages/bioinformatics.scm (r-grohmm): Update to 1.10.0.
2017-04-28 11:04:25 +02:00
Roel Janssen 026dc7e4fc gnu: r-systempiper: Update to 1.10.0.
* gnu/packages/bioinformatics.scm (r-systempiper): Update to 1.10.0.
2017-04-28 11:04:24 +02:00
Roel Janssen 34c276f761 gnu: r-shortread: Update to 1.34.0.
* gnu/packages/bioinformatics.scm (r-shortread): Update to 1.34.0.
2017-04-28 11:04:22 +02:00
Roel Janssen 9511773423 gnu: r-gostats: Update to 2.42.0.
* gnu/packages/bioinformatics.scm (r-gostats): Update to 2.42.0.
2017-04-28 11:04:21 +02:00
Roel Janssen ca0289aee7 gnu: r-category: Update to 2.42.0.
* gnu/packages/bioinformatics.scm (r-category): Update to 2.42.0.
2017-04-28 11:04:20 +02:00
Roel Janssen c584a07ffd gnu: r-gseabase: Update to 1.38.0.
* gnu/packages/bioinformatics.scm (r-gseabase): Update to 1.38.0.
2017-04-28 11:04:19 +02:00
Roel Janssen 8ab6f241ea gnu: r-rbgl: Update to 1.52.0.
* gnu/packages/bioinformatics.scm (r-rbgl): Update to 1.52.0.
2017-04-28 11:04:16 +02:00
Roel Janssen 46972a4427 gnu: r-annotationforge: Update to 1.18.0.
* gnu/packages/bioinformatics.scm (r-annotationforge): Update to 1.18.0.
2017-04-28 11:04:12 +02:00
Roel Janssen 3ae74e451c gnu: r-deseq2: Update to 1.16.0.
* gnu/packages/bioinformatics.scm (r-deseq2): Update to 1.16.0.
2017-04-28 11:04:09 +02:00
Roel Janssen b5bc3a3963 gnu: r-genefilter: Update to 1.58.0.
* gnu/packages/bioinformatics.scm (r-genefilter): Update to 1.58.0.
2017-04-28 11:04:06 +02:00
Roel Janssen 97a50e4f34 gnu: r-geneplotter: Update to 1.54.0.
* gnu/packages/bioinformatics.scm (r-geneplotter): Update to 1.54.0.
2017-04-28 11:03:59 +02:00
Roel Janssen dbab99b6d2 gnu: r-annotate: Update to 1.54.0.
* gnu/packages/bioinformatics.scm (r-annotate): Update to 1.54.0.
2017-04-28 11:03:47 +02:00
Roel Janssen 7c3e4660a5 import: Update Bioconductor release to 3.5.
* guix/import/cran.scm: Change Bioconductor release to 3.5.
2017-04-28 11:02:26 +02:00
Roel Janssen ffef27f3d2 gnu: Add r-genomeinfodbdata.
* gnu/packages/bioinformatics.scm (r-genomeinfodbdata): New variable.
2017-04-28 10:17:06 +02:00
Roel Janssen 71e34e6b5b gnu: Add r-delayedarray.
* gnu/packages/bioinformatics.scm (r-delayedarray): New variable.
2017-04-28 10:15:12 +02:00
Roel Janssen 2abfc5b827 gnu: Add r-bookdown.
* gnu/packages/bioinformatics.scm (r-bookdown): New variable.
2017-04-28 10:09:31 +02:00
Mark H Weaver 833361a483 gnu: linux-libre: Update to 4.10.13.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.13.
(%linux-libre-hash): Update hash.
2017-04-28 00:42:46 -04:00
Mark H Weaver f28851be95 gnu: linux-libre@4.9: Update to 4.9.25.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.25.
2017-04-28 00:40:48 -04:00
Mark H Weaver 01c58cb3e9 gnu: linux-libre@4.4: Update to 4.4.64.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.64.
2017-04-28 00:39:53 -04:00
Marius Bakke 244d4f4877 gnu: serf: Update to 1.3.9.
* gnu/packages/patches/serf-comment-style-fix.patch,
gnu/packages/patches/serf-deflate-buckets-test-fix.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/web.scm (serf): Update to 1.3.9.
[source]: Remove patches.
2017-04-27 17:58:43 +02:00
Marius Bakke decb4c26fa gnu: serf: Disable expired SSL tests.
Fixes <https://bugs.gnu.org/26671>.

* gnu/packages/web.scm (serf)[arguments]<#:phases>: Add 'disable-broken-tests'.
2017-04-27 17:58:43 +02:00
Marius Bakke 0d29f5aac5 gnu: kodi: Update to 18.0_alpha-3-749c61e.
* gnu/packages/kodi.scm (kodi): Update to 18.0_alpha-3-749c61e.
2017-04-27 17:58:43 +02:00
Tobias Geerinckx-Rice 6373cddf42 gnu: tor: Update to 0.3.0.6.
* gnu/packages/tor.scm (tor): Update to 0.3.0.6.
2017-04-27 13:00:45 +02:00
Tobias Geerinckx-Rice baca533370 gnu: simple-scan: Update to 3.24.1.
* gnu/packages/gnome.scm (simple-scan): Update to 3.24.1.
2017-04-27 09:37:32 +02:00
Arun Isaac d39a84e80c gnu: Add mdbtools.
* gnu/packages/databases.scm (mdbtools): New variable.
2017-04-27 10:15:51 +05:30
Leo Famulari 2018eea07b Merge branch 'staging' 2017-04-27 00:33:06 -04:00
Efraim Flashner be58ffa4aa gnu: owncloud-client: Update to 2.3.1.
* gnu/packages/sync.scm (owncloud-client): Update to 2.3.1.
[arguments]: Enable more tests.
2017-04-26 22:04:01 +03:00
Vasile Dumitrascu c9ba67a5f2 gnu: synergy: Update to 1.8.8.
* gnu/packages/synergy.scm (synergy): Update to 1.8.8.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-27 00:03:20 +05:30
Petter b63106089a gnu: Add Xfce Notification Daemon.
* gnu/packages/xfce.scm (xfce4-notifyd): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-26 16:32:24 +02:00
Danny Milosavljevic 2766f9e84f gnu: Add volk.
Fixes <http://bugs.gnu.org/26614>.

* gnu/packages/engineering.scm (volk): New variable.
2017-04-26 15:59:09 +02:00
Ricardo Wurmus fadae857b7 gnu: nss-pam-ldapd: Add Kerberos support.
* gnu/packages/openldap.scm (nss-pam-ldapd)[inputs]: Add mit-krb5.
2017-04-26 13:10:00 +02:00
Ricardo Wurmus 289a89801a gnu: nss-pam-ldapd: Look for nslcd.conf in global /etc/ directory.
* gnu/packages/openldap.scm (nss-pam-ldapd)[arguments]: Set
"--with-ldap-conf-file" to look for global configuration file; add build phase
to install example configuration file in the package output directory.
2017-04-26 13:09:13 +02:00
Mathieu Othacehe efba832751 gnu: ethtool: Update to 4.10.
* gnu/packages/networking.scm (ethtool): Update to 4.10.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-26 11:42:16 +02:00
Marius Bakke ce09f04ea0 gnu: ceph: Update to 12.0.2.
* gnu/packages/storage.scm (ceph): Update to 12.0.2.
[arguments]<#:phases>: Disable new test.
* gnu/packages/patches/ceph-disable-cpu-optimizations.patch: Adjust.
2017-04-26 11:39:33 +02:00
Marius Bakke 011b858b94 gnu: vte-ng: Update to 0.48.2.a.
* gnu/packages/gnome.scm (vte-ng): Update to 0.48.2.a.
[native-inputs]: Change GPERF-3.0 to GPERF.
2017-04-26 11:39:31 +02:00
Efraim Flashner b27aacbfe2 gnu: Add gcompris-qt.
* gnu/packages/education.scm (gcompris-qt): New variable.
2017-04-26 12:04:26 +03:00
Efraim Flashner 4ad70ad8de gnu: qtkeychain: Update to 0.8.0.
* gnu/packages/qt.scm (qtkeychain): Update to 0.8.0.
2017-04-26 09:42:13 +03:00
Efraim Flashner cd48a54902 gnu: fuse: Patch conflicting headers with the kernel.
* gnu/packages/linux.scm (fuse)[source]: Add patch.
* gnu/packages/patches/fuse-overlapping-headers.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
2017-04-26 08:45:24 +03:00
Christopher Allan Webber d26ae96c3d gnu: Add guile-sjson.
* gnu/packages/guile.scm (guile-sjson): Add guile-sjson.
2017-04-25 22:44:52 -05:00
Catonano 623fb4d162 gnu: Add freexl.
* gnu/packages/xml.scm (freexl): New variable.
2017-04-25 22:15:34 +02:00
Thomas Danckaert b8ebbefee2 gnu: duplicity: Update to 0.7.12.
* gnu/packages/backup.scm (duplicity): Update to 0.7.12.
2017-04-25 21:04:04 +02:00
Arun Isaac b5f57f60d5 Update name on email address for Mathieu Othacehe. 2017-04-26 00:11:17 +05:30
Leo Famulari 39d2d9a7ab Merge branch 'master' into staging 2017-04-25 14:27:03 -04:00
Mathieu Othacehe c2bae4a219 gnu: cmst: Update to 2017.03.18.
* gnu/packages/connman.scm (cmst): Update to 2017.03.18.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-25 23:33:08 +05:30
Ricardo Wurmus 31c374e081 gnu: python-pysam: Disable tests.
* gnu/packages/bioinformatics.scm (python-pysam): Disable tests.
2017-04-25 14:05:59 +02:00
Efraim Flashner 43ba5dd4eb gnu: mpv: Update to 0.25.0.
* gnu/packages/video.scm (mpv): Update to 0.25.0.
[arguments]: Add explicit configure-flags to enable cdda, dvdread and dvdnav.
2017-04-24 22:38:14 +03:00
Mathieu Othacehe a2a15f6b21 gnu: speedtest-cli: Update to 1.0.5.
* gnu/packages/networking.scm (speedtest-cli): Update to 1.0.5.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2017-04-24 21:25:14 +03:00
Ricardo Wurmus b2955e224e gnu: python-pysam: Fix tests, again.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Run nosetests
explicitly with a single process.
2017-04-24 18:46:28 +02:00
Efraim Flashner c136240efc gnu: diamond: Enable building on all architectures.
* gnu/packages/bioinformatics.scm (diamond)[supported-systems]: Remove
field.
2017-04-24 19:30:10 +03:00
Efraim Flashner f0ef7b47d3 gnu: libevent: Disable regress tests.
* gnu/packages/libevent.scm (libevent)[arguments]: Disable the 'regress'
tests.
2017-04-24 19:30:02 +03:00
Kei Kebreau 0611abff32 gnu: wmfire: Update source code for new GDK versions.
* gnu/packages/patches/wmfire-update-for-new-gdk-versions.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnustep.scm (wmfire)[source]: Add patch.
2017-04-24 11:23:31 -04:00
Efraim Flashner 094f4b53af gnu: unionfs-fuse: Enable tests.
* gnu/packages/linux.scm (unionfs-fuse)[arguments]: Replace 'check phase.
[native-inputs]: Add python, python-pytest.
2017-04-24 12:11:55 +03:00
Efraim Flashner 2f861edf5c gnu: unionfs-fuse: Update to 2.0.
* gnu/packages/linux.scm (unionfs-fuse): Update to 2.0.
[home-page]: Update to Github page.
2017-04-24 12:10:32 +03:00
Efraim Flashner 092b7b3e69 gnu: wiredtiger: Enable building on aarch64-linux.
* gnu/packages/databases.scm (wiredtiger)[supported-systems]: Add
aarch64-linux to supported-systems.
2017-04-24 11:35:43 +03:00
Efraim Flashner 0aa872eadf gnu: reptyr: Remove aarch64 from supported systems.
* gnu/packages/screen.scm (reptyr)[supported-systems]: Remove
aarch64-linux from supported-systems.
2017-04-24 11:35:39 +03:00
Efraim Flashner 8df1ee3f33 gnu: sdl-gfx: Enable building on all architectures.
* gnu/packages/sdl.scm (sdl-gfx)[arguments]: On non-Intel architectures
disable mmx processor instructions.
[supported-systems]: Remove field.
2017-04-24 11:35:35 +03:00
Efraim Flashner b9af056408 gnu: libsmpeg: Set source file-name.
* gnu/packages/video.scm (libsmpeg)[source]: Add file-name field.
2017-04-24 10:30:21 +03:00
Leo Famulari 43acfcb2c7 libcroco: Fix CVE-2017-{7960,7961}.
* gnu/packages/gnome.scm (libcroco)[replacement]: New field.
(libcroco/fixed): New variable.
* gnu/packages/patches/libcroco-CVE-2017-7960.patch,
gnu/packages/patches/libcroco-CVE-2017-7961.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
2017-04-24 01:10:23 -04:00
Marius Bakke 8030679397 gnu: xorg-server@1.19.3: Correct hash.
This hash got reset back to 1.19.2 when 1f49cd546e was merged (1524851f58).

* gnu/packages/xorg.scm (xorg-server-1.19.3)[source]: Update sha256 checksum.
2017-04-24 00:55:28 +02:00
Vasile Dumitrascu 638787307e gnu: Add emacs-google-maps.
* gnu/packages/emacs.scm (emacs-google-maps): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-23 16:52:06 -04:00
Ricardo Wurmus a71d769d1e gnu: r-minimal: Update to 3.4.0.
* gnu/packages/statistics.scm (r-minimal): Update to 3.4.0.
[arguments]: Set timezone to UTC+1 in "set-timezone" phase to avoid regression
test failure.
2017-04-23 22:48:19 +02:00
Ricardo Wurmus d28fa5cc70 gnu: Add font-linuxlibertine.
* gnu/packages/fonts.scm (font-linuxlibertine): New variable.
2017-04-23 22:48:19 +02:00
Efraim Flashner f3bd17281a gnu: obs: Mark as supported only on Intel systems.
* gnu/packages/video.scm (obs)[supported-systems]: New field.
[arguments]: Remove armhf and mips specific substitutions.
2017-04-23 22:16:46 +03:00
Marius Bakke 769df80ded gnu: nss: Further increase test timeouts on armhf.
* gnu/packages/gnuzilla.scm (nss)[arguments]<#:phases>: Add a substitution
when target platform is armhf.
2017-04-23 11:34:45 +02:00
Sergei Trofimovich 644f95111c Increase "TasksMax" in 'guix-daemon.service'.
* etc/guix-daemon.service.in (TasksMax): Increase to 8192.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-22 20:45:08 -04:00
Ludovic Courtès fd6ec6bd99 gnu: coreutils@8.27: Do not apply 'coreutils-cut-huge-range-test.patch'.
This patch is not needed in 8.27.
Reported by Mark H Weaver <mhw@netris.org>.

* gnu/packages/base.scm (coreutils-8.27)[arguments]: New field.
2017-04-23 01:24:57 +02:00
Daniel Pimentel b59af0c0ce gnu: Add aspell-dict-pt-br.
* gnu/packages/aspell.scm (aspell-dict-pt-br): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-23 01:24:42 +02:00
Amirouche 946742e3e5 gnu: guile-bytestructures: Update to 91d042e
* gnu/packages/guile.scm (guile-bytestructures): Update to 91d042e.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-23 01:00:39 +02:00
Leo Famulari 1524851f58 Merge branch 'master' into staging 2017-04-22 18:27:12 -04:00
Ludovic Courtès ed9fb46b16 gnu: emacs-guix: Adjust to both 2.2 and 2.0.
* gnu/packages/emacs.scm (emacs-guix)[arguments]: In #:configure-flags,
use 'find-files' to determine the --with-guix-site-dir argument.
2017-04-23 00:03:17 +02:00
Ludovic Courtès ab2419e56a gnu: guix: Honor the effective Guile version.
* gnu/packages/package-management.scm (guix-0.12.0)[arguments]: In
'wrap-program' phase, use the effective Guile version rather than "2.0".
Add #:modules argument.
2017-04-23 00:03:17 +02:00
Ludovic Courtès 38f10b0c4e gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to 25a4929.
2017-04-23 00:03:17 +02:00
Ricardo Wurmus 3b74b7a283 gnu: r-caret: Update to 6.0-76.
* gnu/packages/statistics.scm (r-caret): Update to 6.0-76.
[propagated-inputs]: Add r-lattice and r-nlme.
2017-04-22 23:30:38 +02:00
Ricardo Wurmus 96071a6db2 gnu: r-lme4: Update to 1.1-13.
* gnu/packages/statistics.scm (r-lme4): Update to 1.1-13.
[propagated-inputs]: Add r-lattice and r-matrix.
2017-04-22 23:30:38 +02:00
Ricardo Wurmus 0d5bc9382a gnu: r-quantreg: Update to 5.33.
* gnu/packages/statistics.scm (r-quantreg): Update to 5.33.
[propagated-inputs]: Add r-matrix.
2017-04-22 23:30:38 +02:00
Ricardo Wurmus f1a313dfde gnu: r-compquadform: Update to 1.4.3.
* gnu/packages/statistics.scm (r-compquadform): Update to 1.4.3.
2017-04-22 23:30:38 +02:00
Ricardo Wurmus 50d0b2c158 gnu: r-zoo: Update to 1.8-0.
* gnu/packages/statistics.scm (r-zoo): Update to 1.8-0.
2017-04-22 23:30:37 +02:00
Ricardo Wurmus 1c21e2cf17 gnu: r-matrixstats: Update to 0.52.2.
* gnu/packages/statistics.scm (r-matrixstats): Update to 0.52.2.
2017-04-22 23:30:37 +02:00
Ricardo Wurmus c9d200e3af gnu: r-r-rsp: Update to 0.41.0.
* gnu/packages/statistics.scm (r-r-rsp): Update to 0.41.0.
2017-04-22 23:30:37 +02:00
Ricardo Wurmus 96338a91d5 gnu: r-rtsne: Update to 0.13.
* gnu/packages/statistics.scm (r-rtsne): Update to 0.13.
2017-04-22 23:30:37 +02:00
Ricardo Wurmus 78a237f6b6 gnu: r-rcpparmadillo: Update to 0.7.800.2.0.
* gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.7.800.2.0.
2017-04-22 23:30:37 +02:00
Ricardo Wurmus 050d41ca87 gnu: r-memoise: Update to 1.1.0.
* gnu/packages/statistics.scm (r-memoise): Update to 1.1.0.
2017-04-22 23:30:36 +02:00
Ricardo Wurmus aa745eb61f gnu: r-markdown: Update to 0.8.
* gnu/packages/statistics.scm (r-markdown): Update to 0.8.
2017-04-22 23:30:36 +02:00
Ricardo Wurmus 958d0ee485 gnu: r-assertthat: Update to 0.2.0.
* gnu/packages/statistics.scm (r-assertthat): Update to 0.2.0.
2017-04-22 23:30:36 +02:00
Ricardo Wurmus 2219e691bb gnu: r-rpart: Update to 4.1-11.
* gnu/packages/statistics.scm (r-rpart): Update to 4.1-11.
2017-04-22 23:30:36 +02:00
Ricardo Wurmus b3360e09a7 gnu: r-mass: Update to 7.3-47.
* gnu/packages/statistics.scm (r-mass): Update to 7.3-47.
2017-04-22 23:30:35 +02:00
Ricardo Wurmus 4d76947e50 gnu: r-boot: Update to 1.3-19.
* gnu/packages/statistics.scm (r-boot): Update to 1.3-19.
2017-04-22 23:30:35 +02:00
Ricardo Wurmus 5ece8321af gnu: r-curl: Update to 2.5.
* gnu/packages/web.scm (r-curl): Update to 2.5.
2017-04-22 23:30:35 +02:00
Ricardo Wurmus 1a84edeb0b gnu: r-seqminer: Update to 5.9.
* gnu/packages/bioinformatics.scm (r-seqminer): Update to 5.9.
2017-04-22 23:30:31 +02:00
Ricardo Wurmus f8fe0e9db7 gnu: Add nss-pam-ldapd.
* gnu/packages/openldap.scm (nss-pam-ldapd): New variable.
2017-04-22 23:10:49 +02:00
Manolis Ragkousis cc4faa35f8 gnu: Add the Hurd.
* gnu/packages/hurd.scm (hurd): New variable.
* gnu/packages/patches/hurd-fix-eth-multiplexer-dependency.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-04-22 23:01:30 +03:00
Manolis Ragkousis b005a37ac2 gnu: hurd: Add hurd-source-url procedure.
* gnu/packages/hurd.scm (hurd-source-url): New procedure.
  (hurd-headers)[source]: Adjust accordingly.
2017-04-22 23:01:24 +03:00
Danny Milosavljevic 71d0420202 system: Rename operating-system-parameters-file to operating-system-boot-parameters-file.
* gnu/system.scm (operating-system-parameters-file): Rename to ...
(operating-system-boot-parameters-file): ... this.
(operating-system-directory-base-entries): Adapt call site.
2017-04-22 20:54:43 +02:00
Danny Milosavljevic af98d25a12 system: Rename operating-system-kernel-arguments to operating-system-user-kernel-arguments.
* gnu/system.scm (operating-system-kernel-arguments): Rename to ...
(operating-system-user-kernel-arguments): ... this.
(<operating-system>): Adapt accordingly.
(operating-system-bootcfg): Adapt accordingly.
(operating-system-parameters-file): Adapt accordingly.
* gnu/system/vm.scm (system-qemu-image/shared-store-script): Adapt
accordingly.
2017-04-22 20:54:31 +02:00
Tobias Geerinckx-Rice 10b91ccaaa gnu: weechat: Update to 1.7.1.
* gnu/packages/irc.scm (weechat): Update to 1.7.1.
[source, home-page]: Use HTTPS.
2017-04-22 20:35:50 +02:00
Tobias Geerinckx-Rice d65db1d55d gnu: weechat: Mention ‘IRC’.
* gnu/packages/irc.scm (weechat)[description]: Mention the search term
‘IRC’, split into paragraphs, and other small tweaks.
2017-04-22 20:35:50 +02:00
Kei Kebreau a7086b154f gnu: hyperrogue: Update to 9.4g.
* gnu/packages/games.scm (hyperrogue): Update to 9.4g.
2017-04-22 13:57:55 -04:00
Kei Kebreau 7d873e0c26 gnu: gnuplot: Update to 5.0.6.
* gnu/packages/maths.scm (gnuplot): Update to 5.0.6.
2017-04-22 13:33:09 -04:00
Ludovic Courtès 25a49294ca cache: Work around 'time-monotonic' bug in Guile 2.2.2.
* guix/cache.scm (time-monotonic) [guile-2.2]: New variable.
* tests/cache.scm (time-monotonic) [guile-2.2]: Likewise.
* guix/build/download.scm (time-monotonic) [guile-2.2]: Adjust comment:
it's a 2.2.2 bug.
2017-04-22 14:42:15 +02:00
Ludovic Courtès 8a8e2d2ed5 derivations: Adjust builder encoding test.
This is a followup to 9231ef12f2.

* tests/derivations.scm ("build-expression->derivation and builder
encoding"): Set '%default-port-encoding' to "UTF-8".
2017-04-22 14:07:46 +02:00
Marius Bakke 611924eb87 gnu: xf86-video-nouveau: Update to 1.0.15.
* gnu/packages/xorg.scm (xf86-video-nouveau): Update to 1.0.15.
[home-page]: Use HTTPS.
2017-04-22 12:13:36 +02:00
Marius Bakke 1f8c4c53db gnu: emacs: Update to 25.2.
* gnu/packages/emacs.scm (emacs, emacs-minimal, emacs-no-x,
emacs-no-x-toolkit): Update to 25.2.
2017-04-22 12:13:36 +02:00
Marius Bakke fa8a585e0f gnu: xdg-utils: Update to 1.1.1.
* gnu/packages/freedesktop.scm (xdg-utils): Update to 1.1.1.
[source]: Adjust file name.
[native-inputs]: Add DOCBOOK-XSL, DOCBOOK-XML-4.1.2, LIBXSLT, W3M and XMLTO.
[arguments]<#:phases>: Add 'patch-hardcoded-paths' and 'locate-catalog-files'
phases. New parameter.
[home-page]: Update to new home.
2017-04-22 12:13:36 +02:00
Mark H Weaver 1efcd3d672 gnu: linux-libre: Update to 4.10.12.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.12.
(%linux-libre-hash): Update hash.
2017-04-21 22:06:10 -04:00
Mark H Weaver 7b7770f205 gnu: linux-libre@4.9: Update to 4.9.24.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.24.
2017-04-21 22:05:33 -04:00
Mark H Weaver bd5424d487 gnu: linux-libre@4.4: Update to 4.4.63.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.63.
2017-04-21 22:04:48 -04:00
Ludovic Courtès befbaebf72 gnu: Add guile2.2-ssh.
* gnu/packages/ssh.scm (guile2.2-ssh): New variable.
2017-04-22 01:25:22 +02:00
Ludovic Courtès 1fe958d62a download: Work around Guile 2.2 bug with 'time-monotonic' objects.
* guix/build/download.scm (time-monotonic) [guile-2.2]: New variable.
2017-04-22 01:25:22 +02:00
Ricardo Wurmus 6ef94ecbaa gnu: Add policycoreutils.
* gnu/packages/selinux.scm (policycoreutils): New variable.
2017-04-22 00:36:43 +02:00
Ricardo Wurmus 41da8dbe12 gnu: Add python-setools.
* gnu/packages/selinux.scm (python-setools): New variable.
2017-04-22 00:36:43 +02:00
Ricardo Wurmus 42c939a859 gnu: Add python-ipy.
* gnu/packages/networking.scm (python-ipy): New variable.
2017-04-22 00:36:43 +02:00
Ricardo Wurmus d7e2d273e1 gnu: Add python-sepolgen.
* gnu/packages/selinux.scm (python-sepolgen): New variable.
2017-04-22 00:36:43 +02:00
Ricardo Wurmus c837027d38 gnu: Add secilc.
* gnu/packages/selinux.scm (secilc): New variable.
2017-04-22 00:36:43 +02:00
Ricardo Wurmus 32be66011a gnu: Add libsemanage.
* gnu/packages/selinux.scm (libsemanage): New variable.
2017-04-22 00:36:42 +02:00
Ricardo Wurmus 4724d7297f gnu: Add libselinux.
* gnu/packages/selinux.scm (libselinux): New variable.
2017-04-22 00:36:42 +02:00
Ricardo Wurmus 66af08fb5a gnu: Add checkpolicy.
* gnu/packages/selinux.scm (checkpolicy): New variable.
2017-04-22 00:36:42 +02:00
Ricardo Wurmus f269ad2536 gnu: Add libsepol.
* gnu/packages/selinux.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-04-22 00:36:42 +02:00
Ricardo Wurmus ba85174035 gnu: ibus-libpinyin: Update to 1.9.0.
* gnu/packages/ibus.scm (ibus-libpinyin): Update to 1.9.0.
2017-04-22 00:09:27 +02:00
Ricardo Wurmus 49d49b69f8 gnu: libpinyin: Adjust indentation.
* gnu/packages/ibus.scm (libpinyin)[arguments]: Adjust indentation.
2017-04-22 00:09:26 +02:00
Ricardo Wurmus 31e619385a gnu: libpinyin: Update to 2.0.0.
* gnu/packages/ibus.scm (libpinyin): Update to 2.0.0.
2017-04-22 00:09:26 +02:00
Leo Famulari 04b9067991 gnu: Remove unused patches.
* gnu/packages/patches/gcc-libiberty-printf-decl.patch,
gnu/packages/patches/grub-CVE-2015-8370.patch,
gnu/packages/patches/grub-freetype.patch,
gnu/packages/patches/grub-gets-undeclared.patch,
gnu/packages/patches/guile-arm-fixes.patch,
gnu/packages/patches/mplayer2-theora-fix.patch,
gnu/packages/patches/soprano-find-clucene.patch,
gnu/packages/patches/util-linux-CVE-2017-2616.patch,
gnu/packages/patches/xf86-video-intel-compat-api.patch,
gnu/packages/patches/xf86-video-intel-glibc-2.20.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-04-21 18:03:04 -04:00
Ludovic Courtès 904c6c42eb tests: Adjust to the addition of a new Coreutils version.
* tests/scripts-build.scm ("options->transformation, with-input"): Use
'specification->package' rather than refer to Coreutils by its
variable.  This is a followup to e162050dfc.
2017-04-21 22:53:59 +02:00
Ludovic Courtès 9231ef12f2 derivations: Restore UTF-8 encoding of build scripts.
Reported by Mark H Weaver <mhw@netris.org>
at <https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00457.html>.

* guix/derivations.scm (build-expression->derivation): Use a string
output port for the expression.  This reverts part of
2dce88d5bb.
* tests/derivations.scm ("build-expression->derivation and builder
encoding"): New test.
2017-04-21 22:45:29 +02:00
Leo Famulari 0a3bed8819 gnu: libsodium: Update to 1.0.12.
* gnu/packages/crypto.scm (libsodium): Update to 1.0.12.
2017-04-21 16:37:37 -04:00
nee dd37a545f6 gnu: Add crawl.
* gnu/packages/games.scm (crawl): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-22 01:47:46 +05:30
Corentin Bocquillon 9d62551216 gnu: Add libbson.
* gnu/packages/serialization.scm (libbson): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-21 15:57:52 -04:00
Leo Famulari eeaea41236 gnu: mutt: Update to 1.8.2.
* gnu/packages/mail.scm (mutt): Update to 1.8.2.
2017-04-21 15:24:11 -04:00
Leo Famulari 324faf82c4 gnu: neomutt: Don't rewrite the source file-name.
* gnu/packages/mail.scm (neomutt)[file-name]: Remove field.
2017-04-21 15:21:27 -04:00
ng0 aa20b004d5 gnu: neomutt: Update to 20170421.
* gnu/packages/mail.scm (neomutt): Update to 20170421.
[native-inputs]: Add 'gettext-minimal'.
[description]: Clarify the state of neomutt as it is now a microfork of mutt.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-21 15:21:26 -04:00
Clément Lassieur 6e75740f89 gnu: icecat: Fix GTK 3 file chooser crash.
* gnu/packages/gnuzilla.scm (icecat)[arguments]: Add a 'wrap-program' phase to
set XDG_DATA_DIRS.
2017-04-21 21:05:28 +02:00
nee 4ee81d3794 gnu: Add mcomix.
* gnu/packages/image-viewers.scm (mcomix): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-21 23:21:48 +05:30
Ludovic Courtès 285f63e805 store: Support 'ssh://' URIs in 'GUIX_DAEMON_SOCKET'.
This allows 'guix' commands to talk to a remote store over SSH.

* guix/store.scm (connect-to-daemon)[connect]: Call 'resolve-interface'
for unknown URI schemes.
* guix/store/ssh.scm: New file.
* Makefile.am (MODULES): Add it.
* doc/guix.texi (The Store): Document it.  Mark remote access as
experimental.
2017-04-21 19:17:36 +02:00
Ludovic Courtès e537833726 ssh: Decompose 'connect-to-remote-daemon'.
* guix/ssh.scm (remote-daemon-channel): New procedure.
(connect-to-remote-daemon): Implement in terms of it.
2017-04-21 19:17:36 +02:00
Ludovic Courtès 615c5298f7 ssh: Move 'open-ssh-session' to (guix ssh).
* guix/scripts/copy.scm (%compression, open-ssh-session): Move to...
* guix/ssh.scm: ... here.  Use '&message' conditions instead of calling
'leave'.
2017-04-21 19:17:34 +02:00
Ludovic Courtès ba97e454bf offload: Avoid using '_' as a 'match' pattern.
* guix/scripts/offload.scm (host-key->type+key, machine-load)
(process-request, guix-offload): Do not use '_' as a 'match' pattern.
2017-04-21 17:23:37 +02:00
Ludovic Courtès 3dff90ce34 store: Add support for remote connections via 'guix://' URIs.
* guix/store.scm (open-inet-socket): New procedure.
(connect-to-daemon): Support the 'guix' URI scheme.
* doc/guix.texi (The Store): Document it.
2017-04-21 17:23:37 +02:00
Ludovic Courtès 3b5cd17a97 store: Add 'system-error-to-connection-error' macro.
* guix/store.scm (system-error-to-connection-error): New macro.
(open-unix-domain-socket): Use it instead of 'catch'.
2017-04-21 17:23:37 +02:00
Ludovic Courtès 1397b422e2 store: 'GUIX_DAEMON_SOCKET' can now be a URI.
* guix/store.scm (%daemon-socket-file): Rename to...
(%daemon-socket-uri): ... this.
(connect-to-daemon): New procedure.
(open-connection): Rename 'file' to 'uri'.  Use 'connect-to-daemon'
instead of 'open-unix-domain-socket'.
* guix/tests.scm (open-connection-for-tests): Rename 'file' to 'uri'.
* tests/guix-build.sh: Add tests.
* tests/store.scm ("open-connection with file:// URI"): New tests.
2017-04-21 17:23:37 +02:00
Andy Wingo 031e6087c4 gnu: guile: Update to 2.2.2.
* gnu/packages/guile.scm (guile-2.2): Update to 2.2.2.
2017-04-21 16:58:13 +02:00
Marius Bakke 0802f3a034 gnu: libsamplerate: Correct license after 0.1.9 update.
This is a followup to e1f68c9668.

* gnu/packages/pulseaudio.scm (libsamplerate)[license]: Change GPL2+ to BSD-2.
2017-04-21 16:10:12 +02:00
Marius Bakke 1aa78816f9 gnu: imlib2: Update to 1.4.10.
* gnu/packages/image.scm (imlib2): Update to 1.4.10.
2017-04-21 15:36:37 +02:00
Marius Bakke b5ceea9f0d gnu: sdl-gfx: Update to 2.0.26.
* gnu/packages/sdl.scm (sdl-gfx): Update to 2.0.26.
2017-04-21 15:36:37 +02:00
Marius Bakke 80420acb5e gnu: portaudio: Update to 190600.20161030.
* gnu/packages/audio.scm (portaudio): Update to 190600.20161030.
* gnu/packages/patches/portaudio-audacity-compat.patch: Adjust line endings.
2017-04-21 15:36:37 +02:00
Marius Bakke eb3574fb7d gnu: soxr: Update to 0.1.2.
* gnu/packages/audio.scm (soxr): Update to 0.1.2.
2017-04-21 15:36:37 +02:00
Marius Bakke 833df99d62 gnu: python-pyopenssl: Update to 17.0.0.
* gnu/packages/python.scm (python-pyopenssl, python2-pyopenssl): Update to 17.0.0.
[native-inputs]: Change PYTHON-PYTEST to PYTHON-PYTEST-3.0.
* gnu/packages/patches/python-pyopenssl-skip-network-test.patch: Adjust.
2017-04-21 15:36:36 +02:00
Ben Woodcroft a7d12a9e71 gnu: proteinortho: Update to 5.16.
* gnu/packages/bioinformatics.scm (proteinortho): Update to 5.16.
2017-04-21 23:03:56 +10:00
Ben Woodcroft 37199768e8 gnu: diamond: Update to 0.8.38.
* gnu/packages/bioinformatics.scm (diamond): Update to 0.8.38.
2017-04-21 23:03:55 +10:00
Tobias Geerinckx-Rice 8a6f168c48 gnu: miniupnpc: Use @dfn mark-up.
gnu/packages/upnp.scm (miniupnpc)[description]: Use @dfn.
2017-04-21 14:46:49 +02:00
Tobias Geerinckx-Rice 05b1feb92a gnu: miniupnpc: Update to 2.0.20170421.
gnu/packages/upnp.scm (miniupnpc): Update to 2.0.20170421.
2017-04-21 14:46:15 +02:00
Tobias Geerinckx-Rice ef27b4345f gnu: fortify-headers: Use @code mark-up.
* gnu/packages/suckless.scm (fortify-headers)[description]: Use @code.
2017-04-21 12:32:54 +02:00
Tobias Geerinckx-Rice fea8b72989 gnu: Use HTTPS on 2f30.org.
* gnu/packages/suckless.scm (spoon, xbattmon, wificurse, skroll, sbm)
(prout, noice, fortify-headers, colors)[source, home-page]: Use HTTPS.
(human)[home-page]: Likewise.
* gnu/packages/version-control.scm (stagit)[source, home-page]: Likewise.
2017-04-21 12:32:53 +02:00
Tobias Geerinckx-Rice 9006f8bc59 gnu: version-control: Use HTTPS where possible.
* gnu/packages/version-control.scm (git)[home-page]: Use HTTPS.
(cvs)[source, home-page]: Likewise.
2017-04-21 12:32:53 +02:00
Tobias Geerinckx-Rice 79990ce31f gnu: git-crypt: Double-space Texinfo mark-up.
* gnu/packages/version-control.scm (git-crypt)[description]: Use two spaces
where one would suffice.
2017-04-21 12:32:53 +02:00
Tobias Geerinckx-Rice 0aea268ae1 gnu: diffstat: Use @command mark-up.
* gnu/packages/version-control.scm (diffstat)[synopsis, description]:
Use @command.
2017-04-21 12:32:53 +02:00
Tobias Geerinckx-Rice 86bc52f9ba gnu: diffstat: Update to 1.61.
* gnu/packages/version-control.scm (diffstat): Update to 1.61.
[source]: Add http://invisible-mirror.net mirror.
2017-04-21 12:32:52 +02:00
Tobias Geerinckx-Rice 35ad6b2e95 gnu: neon: Use @enumerate mark-up.
* gnu/packages/version-control.scm (neon)[description]: Use @enumerate.
2017-04-21 12:32:52 +02:00
Tobias Geerinckx-Rice 51eb4df69a gnu: neon: Update to 0.30.2.
* gnu/packages/version-control.scm (neon): Update to 0.30.2.
2017-04-21 12:32:24 +02:00
Vasile Dumitrascu 136968fbde gnu: cgit: Update to 1.1.
* gnu/packages/version-control.scm (cgit): Update to 1.1.
(git@2.9): Rename to...
(git@2.10): ... this.  Update to 2.10.
(cgit)[inputs]: Replace git@2.9 with git@2.10.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-21 10:54:23 +02:00
Vasile Dumitrascu 9b323c25d0 gnu: tmux: Update to 2.4.
* gnu/packages/tmux.scm (tmux): Update to 2.4.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-21 10:53:07 +02:00
Danny Milosavljevic f0eb0a4bb1 gnu: cargo: Simplify unpacking.
Fixes <http://bugs.gnu.org/26166>.

* gnu/packages/rust.scm (cargo)
[arguments]<:modules>: Add (srfi srfi-1).
[arguments]<:phases>: Adapt 'unpack-submodule-sources' phase to more clearly
seperate the tasks it does.  Add helper procedures 'unpack', 'touch',
'install-rust-library'.
[arguments]<:phases>: Rename 'set-cargo-home' to 'set-environment-up' and
make it use official cargo directories.
[arguments]<:phases>: Remove 'configure' phase.
2017-04-21 10:18:23 +02:00
Mark H Weaver 002c3e6dd6 gnu: icecat: Update to 52.0.2-gnu1; add fixes from ESR 52.1.
* gnu/packages/gnuzilla.scm (icecat): Update to 52.0.2-gnu1.
[source]: Remove all patches except "icecat-avoid-bundled-libraries.patch".
Add selected fixes from the upstream mozilla-esr52 repository, up to 52.1.
Remove "dom/devicestorage" in the snippet.
[inputs]: Remove gstreamer and gst-plugins-base.  Add ffmpeg and gtk+3.  Move
yasm to native-inputs.
[native-inputs]: Add autoconf-2.13 and yasm.
[arguments]: In configure-flags, remove the following switches which are no
longer accepted: --enable-{pango,svg,canvas,mathml,gstreamer=1.0} and
"--disable-gnomevfs".  Use "--enable-default-toolkit=cairo-gtk3" to switch to
Gtk+3.  Remove the 'remove-h264parse-from-blacklist' phase.  Adapt the
'arrange-to-link-libxul-with-libraries-it-might-dlopen' phase as needed.  In
the 'configure' phase, set the AUTOCONF environment variable.
(mozilla-patch): Update the URL pattern to fetch from the mozilla-esr52
repository.
* gnu/packages/patches/icecat-avoid-bundled-libraries.patch: Adapt to mozilla-esr52.
* gnu/packages/patches/icecat-binutils.patch: Remove file.
* gnu/packages/patches/icecat-bug-1299500-pt10.patch: New file.
* gnu/local.mk (dist_patch_DATA): Remove "icecat-binutils.patch".
Add "icecat-bug-1299500-pt10.patch".
2017-04-21 00:04:45 -04:00
Mark H Weaver fe18e2571c gnu: Add autoconf@2.13.
* gnu/packages/autotools.scm (autoconf-2.13): New variable.
2017-04-21 00:04:43 -04:00
Mark H Weaver 6be43d95b5 gnu: nss: Disable long b64 tests.
Suggested by Marius Bakke <mbakke@fastmail.com> in
<https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00440.html>.

* gnu/packages/patches/nss-disable-long-b64-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnuzilla.scm (nss)[source]: Add patch.
2017-04-21 00:04:42 -04:00
Mark H Weaver 1aa9e42214 gnu: nss: Update to 3.30.2 [fixes CVE-2017-5461].
* gnu/packages/gnuzilla.scm (nss): Update to 3.30.2.
2017-04-21 00:04:40 -04:00
Mark H Weaver bab9a8ba0f gnu: graphite2: Add fixes for CVE-2017-5436 and other bugs.
* gnu/packages/fontutils.scm (graphite2)[replacement]: New field.
(graphite2/fixed): New variable.
* gnu/packages/patches/graphite2-CVE-2017-5436.patch,
gnu/packages/patches/graphite2-check-code-point-limit.patch,
gnu/packages/patches/graphite2-fix-32-bit-wrap-arounds.patch,
gnu/packages/patches/graphite2-non-linear-classes-even-number.patch:
New files.
* gnu/local.mk (dist_patch_DATA): Add them.
2017-04-21 00:04:34 -04:00
Eric Bavier f920e79426 gnu: hypre: Delete unused patches.
* gnu/packages/patches/hypre-doc-tables.patch,
gnu/packages/patches/hypre-ldflags.patch: Delete.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-04-20 22:06:00 -05:00
Ludovic Courtès 2dce88d5bb derivations: Avoid string-to-bytevector conversions.
On Guile 2.2.1, this yields a 5% speedup on:

  guix build libreoffice xmonad certbot -n --no-substitutes --no-build-hook

* guix/derivations.scm (derivation->string): Rename to...
(derivation->bytevector): ... this.  Use 'open-bytevector-output-port'
instead of 'call-with-output-string'.
(derivation-hash): Remove string-to-bytevector conversion before
'sha256' call.
(build-expression->derivation): Use 'add-data-to-store' and an
bytevector port instead of a string port for the expression.
2017-04-20 23:35:55 +02:00
Marius Bakke 358b10b22b gnu: ceph: Disable SSE3 instructions.
Some early 64-bit AMD processors do not support this instruction set.

* gnu/packages/patches/ceph-disable-cpu-optimizations.patch: Disable SSE3.
2017-04-20 20:28:15 +02:00
Marius Bakke daaec43120 gnu: nss-certs: Update to 3.30.2.
* gnu/packages/certs.scm (nss-certs): Update to 3.30.2.
2017-04-20 20:28:15 +02:00
Leo Famulari 45636d08eb gnu: gst-plugins-base: Remove dead comment.
This is a followup to 1d8e727357.

* gnu/packages/gstreamer.scm (gst-plugins-base): Remove dead comment.
2017-04-20 14:23:35 -04:00
Leo Famulari dfa663c963 gnu: qemu: Update to 2.9.0 [security fixes].
Fixes CVE-2017-{5857,5973,5987,6058,6505,7377,7471,7718}.

* gnu/packages/qemu.scm (qemu): Update to 2.9.0.
[source]: Remove obsolete patches.
* gnu/packages/patches/qemu-CVE-2016-10155.patch,
gnu/packages/patches/qemu-CVE-2017-5525.patch,
gnu/packages/patches/qemu-CVE-2017-5526.patch,
gnu/packages/patches/qemu-CVE-2017-5552.patch,
gnu/packages/patches/qemu-CVE-2017-5578.patch,
gnu/packages/patches/qemu-CVE-2017-5579.patch,
gnu/packages/patches/qemu-CVE-2017-5856.patch,
gnu/packages/patches/qemu-CVE-2017-5898.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-04-20 14:21:31 -04:00
Marius Bakke 7252964244 gnu: tuxpaint: Disable parallel build.
* gnu/packages/games.scm (tuxpaint)[arguments]<#:parallel-build?>: New parameter.
2017-04-20 19:31:45 +02:00
Ludovic Courtès 1f49cd546e gnu: xorg-server: Hide the for-test variant.
* gnu/packages/xorg.scm (xorg-server-1.19.2): Wrap in 'hidden-package'
call.
2017-04-20 18:37:00 +02:00
Corentin Bocquillon 162dd29000 gnu: Add Meson.
* gnu/packages/build-tools.scm (meson): New variables.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-04-20 18:37:00 +02:00
ng0 eba3cd31fd gnu: gnurl: Update to 7.54.0 [fixes CVE-2017-7468]
* gnu/packages/gnunet.scm (gnurl): Update to 7.54.0.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-20 12:06:41 -04:00
Leo Famulari e795a3d2ce gnu: icu4c: Fix CVE-2017-{7867,7868}.
* gnu/packages/patches/icu4c-CVE-2017-7867-CVE-2017-7868.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/icu4c.scm (icu4c/fixed)[source]: Use it.
2017-04-20 11:59:05 -04:00
Tobias Geerinckx-Rice 46cb089f31 gnu: python-nbxmpp: Update to 0.5.5.
* gnu/packages/messaging.scm (python-nbxmpp): Update to 0.5.5.
[source]: Use PYPI-URI.
[home-page]: Use HTTPS.
[description]: Fix up.
2017-04-20 17:43:10 +02:00
ng0 9a14cd7f35 mailmap: Update entries for ng0.
* .mailmap: Add new address for ng0 and map all existing commits to it.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2017-04-20 17:29:25 +02:00
Efraim Flashner 95de359b30 gnu: moreutils: Update to 0.60.
* gnu/packages/moreutils.scm (moreutils): Update to 0.60.
2017-04-20 17:50:45 +03:00
Efraim Flashner 80678090e2 gnu: ffmpeg: Update to 3.3.
* gnu/packages/video.scm (ffmpeg): Update to 3.3.
[arguments]: Remove 'enable-x11grab' from #:configure-flags.
2017-04-20 17:50:41 +03:00
Mark H Weaver ad00ac6811 gnu: icecat: Label patches that have since been assigned CVEs.
Label patches that address the following CVEs: CVE-2017-5429, CVE-2017-5432,
CVE-2017-5433, CVE-2017-5434, CVE-2017-5435, CVE-2017-5436, CVE-2017-5438,
CVE-2017-5439, CVE-2017-5440, CVE-2017-5441, CVE-2017-5442, CVE-2017-5443,
CVE-2017-5444, CVE-2017-5445, CVE-2017-5446, CVE-2017-5447, CVE-2017-5448,
CVE-2017-5459, CVE-2017-5460, CVE-2017-5464, CVE-2017-5465, and CVE-2017-5469.

* gnu/packages/gnuzilla.scm (icecat)[source][patches]: Add comments indicating
CVE assignments.
2017-04-19 20:38:24 -04:00
Leo Famulari 90d118cab6 gnu: Delete unused patches.
* gnu/packages/patches/icu4c-CVE-2014-6585.patch,
gnu/packages/patches/icu4c-CVE-2015-1270.patch,
gnu/packages/patches/icu4c-CVE-2015-4760.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-04-19 19:28:48 -04:00
Leo Famulari e1444afa2d gnu: curl: Replace with curl@7.54.0 [fixes CVE-2017-7468]
* gnu/packages/curl.scm (curl)[replacement]: New field.
(curl-7.54.0): New variable.
2017-04-19 18:29:00 -04:00
Ludovic Courtès 87e3210178 gnu: guile: Update to 2.2.1.
* gnu/packages/guile.scm (guile-2.2): Update to 2.2.1.
2017-04-19 23:43:51 +02:00
Ludovic Courtès e1bbc0e38d publish: Add a handler for / and /index.html.
Suggested by Quiliro <quiliro@riseup.net>
in <https://bugs.gnu.org/26567>.

* guix/scripts/publish.scm (render-home-page): New procedure.
(make-request-handler): Handle it.
2017-04-19 23:43:51 +02:00
Carlo Zancanaro 63422bbb0a doc: Update exim service documentation.
* doc/guix.texi (Mail Services): Update exim service documentation to remove
mail-aliases, add mail-aliases-service-type documentation.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-19 23:43:51 +02:00
Carlo Zancanaro 950026ac7f tests: mail: Add test for exim
* gnu/tests/mail.scm (%exim-os, %test-exim): New variables.
(run-exim-test): New procedure.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-19 23:43:50 +02:00
Carlo Zancanaro b065f78e94 services: Make exim-service-type use mail-aliases-service-type
* gnu/services/mail.scm (exim-configuration)[aliases]: Remove field.
(exim-activation, exim-shepherd-service): Remove alias from matches.
(exim-etc): Remove procedure.
(exim-service-type): Extend mail-aliases-service-type instead of
etc-service-type.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-19 23:43:50 +02:00
Carlo Zancanaro 8d17cf1c2f services: Add mail-aliases-service-type.
* gnu/services/mail.scm (mail-aliases-etc): New procedure.
(mail-aliases-service-type): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-19 23:43:50 +02:00
Marius Bakke e162050dfc gnu: Add workaround for date regression in coreutils@8.26.
See <https://bugs.gnu.org/23035> and <https://bugs.gnu.org/26238>.

* gnu/packages/base.scm (coreutils-8.27): New variable.
* gnu/system.scm (%base-packages): Use that instead of COREUTILS.
2017-04-19 22:07:18 +02:00
Feng Shu 11f8e028d2 gnu: emacs-exwm: Let shell wrapper work with arguments.
* gnu/packages/emacs.scm (emacs-exwm): Pass shell wrapper arguments to emacs.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-19 22:13:03 +05:30
Ludovic Courtès a35136cb56 services: guix-publish: Add 'cache', 'workers', and 'ttl' config knobs.
* gnu/services/base.scm (<guix-publish-configuration>)[cache, workers,
ttl]: New fields.
(guix-publish-shepherd-service): Honor them.
(guix-publish-activation): New procedure.
(guix-publish-service-type): Extend ACTIVATION-SERVICE-TYPE.
* doc/guix.texi (Base Services): Document it.
2017-04-19 17:51:39 +02:00
Ludovic Courtès 2363bdd707 gexp: 'gexp-modules' accepts plain Scheme objects.
* guix/gexp.scm (gexp-modules): Return '() when not (gexp? GEXP).
* tests/gexp.scm ("gexp-modules and literal Scheme object"): New test.
2017-04-19 17:51:39 +02:00
Ludovic Courtès f2767d3e89 services: guix-publish: Fix getter names.
Fixes a typo introduced in 697ddb8850.

* gnu/services/base.scm (<guix-publish-configuration>): Add missing
'configuration' word in getters for 'compression-level' and 'nar-path'.
2017-04-19 17:51:39 +02:00
rennes 7c16151a7c gnu: Add balsa.
* gnu/packages/mail.scm (balsa): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-19 15:05:03 +05:30
Mark H Weaver acf2863788 gnu: linux-libre: Update to 4.10.11.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.11.
(%linux-libre-hash): Update hash.
2017-04-18 21:17:49 -04:00
Mark H Weaver f8616113db gnu: linux-libre@4.9: Update to 4.9.23.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.23.
2017-04-18 21:16:44 -04:00
Mark H Weaver 06d707d3ea gnu: linux-libre@4.4: Update to 4.4.62.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.62.
2017-04-18 21:15:51 -04:00
Leo Famulari 165d45540a gnu: mesa: Fix build for 32-bit systems.
* gnu/packages/patches/mesa-fix-32bit-test-failures.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gl.scm (mesa)[source]: Use it.
2017-04-18 20:36:04 -04:00
Kei Kebreau 9be54b1507 gnu: baobab: Update to 3.24.0.
* gnu/packages/gnome.scm (baobab): Update to 3.24.0.
2017-04-18 20:18:13 -04:00
Kei Kebreau 29548d26e3 gnu: adwaita-icon-theme: Update to 3.24.0.
* gnu/packages/gnome.scm (adwaita-icon-theme): Update to 3.24.0.
2017-04-18 20:04:00 -04:00
Kei Kebreau 274b7fd0ff gnu: gnome-terminal: Update to 3.24.1.
* gnu/packages/gnome.scm (gnome-terminal): Update to 3.24.1.
2017-04-18 19:13:28 -04:00
Ludovic Courtès 05afdb7744 gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to d72b420.
2017-04-18 23:45:11 +02:00
Ludovic Courtès a2d648992a gnu: libressl: Do not use 'getentropy'.
* gnu/packages/tls.scm (libressl)[arguments]: New field.
2017-04-18 23:45:11 +02:00
Julien Lepiller 5315fcfd77 gnu: Add adb.
* gnu/packages/android.scm: New file.
* gnu/packages/patches/libbase-fix-includes.patch: New file.
* gnu/packages/patches/libbase-use-own-logging.patch: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES, dist_patch_DATA): Add them.

Co-Authored-By: Marius Bakke <mbakke@fastmail.com>
2017-04-18 23:32:07 +02:00
Ludovic Courtès d72b42064b publish: Remove expired cache entries when '--ttl' is used.
* guix/scripts/publish.scm (narinfo-files): New procedure.
(render-narinfo/cached)[delete-file]: New procedure.  Add call to
'maybe-remove-expired-cache-entries'.
* doc/guix.texi (Invoking guix publish): Document the interation between
--cache and --ttl.
2017-04-18 23:19:30 +02:00
Ludovic Courtès 2ea2aac6e9 Add (guix cache) and use it in (guix scripts substitute).
* guix/cache.scm, tests/cache.scm: New files.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* guix/scripts/substitute.scm (obsolete?): Remove.
(remove-expired-cached-narinfos): Rename to...
(cached-narinfo-expiration-time): ... this.  Remove the removal part and
only keep the expiration time part.
(narinfo-cache-directories): Add optional 'directory' parameter and
honor it.
(maybe-remove-expired-cached-narinfo): Remove.
(cached-narinfo-files): New procedure.
(guix-substitute): Use 'maybe-remove-expired-cache-entries' instead of
'maybe-remove-expired-cached-narinfo'.
2017-04-18 23:19:30 +02:00
Ludovic Courtès 00753f7038 publish: Add '--cache' and '--workers'.
Fixes <http://bugs.gnu.org/26201>.
Reported by <dian_cecht@zoho.com>.

These options allow nars to be "baked" off-line and cached instead of
being compressed on the fly.  As a side-effect, this allows us to
provide a 'Content-Length' header for nars.

* guix/scripts/publish.scm (show-help, %options): Add '--cache' and
'--workers'.
(%default-options): Add 'workers'.
(nar-cache-file, narinfo-cache-file, run-single-baker): New procedures.
(single-baker): New macro.
(render-narinfo/cached, bake-narinfo+nar)
(render-nar/cached): New procedures.
(make-request-handler): Add #:cache and #:pool parameters and honor
them.
(run-publish-server): Likewise.
(guix-publish): Honor '--cache' and '--workers'.
* tests/publish.scm ("with cache"): New test.
* doc/guix.texi (Invoking guix publish): Document it.
2017-04-18 23:18:41 +02:00
Ludovic Courtès 339a79fd6a publish: Use 'sendfile' when possible.
* guix/scripts/publish.scm (http-write): In the
'application/octet-stream' case, use 'sendfile' when OUTPUT is a file
port.
2017-04-18 23:17:18 +02:00
Ludovic Courtès 905ae5276d publish: Introduce 'actual-compression'.
* guix/scripts/publish.scm (actual-compression): New procedure.
(narinfo-string): Use it.
2017-04-18 23:17:18 +02:00
Ludovic Courtès 1563d6c79f Add (guix workers).
* guix/workers.scm, tests/workers.scm: New files.
* Makefile.am (MODULES, SCM_TESTS): Add them.
* .dir-locals.el: Add rule for 'eventually'.
2017-04-18 23:17:17 +02:00
Julien Lepiller 54412ebfeb services: nginx: Use mime.types.
* gnu/service/web.scm (default-nginx-config): Add 'nginx' parameter
and honor it.  Adjust callers.
2017-04-18 23:15:52 +02:00
Kei Kebreau 73f0e1ab79 gnu: vte: Update to 0.48.2.
* gnu/packages/gnome.scm (vte): Update to 0.48.2.
2017-04-18 15:14:41 -04:00
Ben Sturmfels 1b5b24c92d gnu: fabric: Enable tests.
* gnu/packages/patches/fabric-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/admin.scm (fabric)[source]: Use it.
[native-inputs]: Add PYTHON2-FUDGE, PYTHON2-JINJA2 and PYTHON2-NOSE.
[arguments]<#:tests>: Remove.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-18 19:16:45 +02:00
Ben Sturmfels 16fe516e78 gnu: Add python-fudge.
* gnu/packages/python.scm (python-fudge): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-18 19:16:45 +02:00
Marius Bakke fbdd3526a1 gnu: libsndfile: Fix build failure on armhf.
* gnu/packages/patches/libsndfile-armhf-type-checks.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/pulseaudio.scm (libsndfile)[source]: Use it.
2017-04-18 18:34:46 +02:00
Marius Bakke 8c4b4b6562 Merge branch 'master' into staging 2017-04-18 18:30:13 +02:00
Mathieu Othacehe f8818360d5 doc: Replace --no-grub by --no-bootloader.
Fixes <http://bugs.gnu.org/26551>.

Followup to a9eadc06ac.

* doc/guix.texi: Replace all references to "--no-grub" by
"--no-bootloader".

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-18 16:35:28 +02:00
Marius Bakke 7f412f335d gnu: multipath-tools: Update to 0.7.1.
* gnu/packages/linux.scm (multipath-tools): Update to 0.7.1.
[native-inputs]: Add PERL and PKG-CONFIG.
[inputs]: Add JSON-C.
[arguments]: Add two more substitutions in 'patch-source' phase.
2017-04-18 16:32:47 +02:00
Marius Bakke b5fb9430ba gnu: multipath-tools: Don't install to /usr sub-folders.
* gnu/packages/linux.scm (multipath-tools)<#:make-flags>: Add SYSTEMDPATH entry.
<#:phases>: Add new 'patch-source' phase.
2017-04-18 16:32:47 +02:00
Feng Shu 2b3b745c00 gnu: Add emacs-exwm.
* gnu/packages/emacs.scm (emacs-exwm): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-18 19:02:21 +05:30
Feng Shu deddeb44f9 gnu: Add emacs-xelb.
* gnu/packages/emacs.scm (emacs-xelb): New variable.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-18 19:02:21 +05:30
Kei Kebreau 40522a7e89 gnu: gtk+: Update to 3.22.12.
* gnu/packages/gtk.scm (gtk+): Update 3.22.12.
2017-04-17 21:25:17 -04:00
Kei Kebreau 4e85f8d9d5 gnu: mate-themes: Update to 3.22.10.
* gnu/packages/mate.scm (mate-themes): Update to 3.22.10.
2017-04-17 21:22:40 -04:00
Feng Shu f0bc6ca1f2 gnu: you-get: Update to 0.4.715.
* gnu/packages/video.scm (you-get): Update to 0.4.715.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-18 00:29:50 +02:00
Marius Bakke 8bbd50e968 Revert "gnu: nss, nss-certs: Update to 3.30.1."
This version fails to build on some architectures:

https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00365.html
https://bugzilla.mozilla.org/show_bug.cgi?id=1351459

This reverts commit 96e98d51a7.
2017-04-18 00:29:03 +02:00
Marius Bakke 54fbac3fb5 Revert "gnu: nss: Increase test timeouts."
This turned out to be a red herring:

https://lists.gnu.org/archive/html/guix-devel/2017-04/msg00365.html

This reverts commit a790f26207.
2017-04-18 00:29:00 +02:00
Ludovic Courtès e16c823f80 serialization: Remove Guile < 2.0.9 workaround.
* guix/serialization.scm (write-contents): Assume 'sendfile' is always
defined.
2017-04-17 23:31:28 +02:00
Ludovic Courtès 94df39cc08 records: Slight simplification.
* guix/records.scm (make-syntactic-constructor): Simplify 'find' expression.
2017-04-17 23:31:28 +02:00
Marius Bakke f11ae44fa1 gnu: Use netfilter mirror where applicable.
* gnu/packages/linux.scm (iptables, libmnl, libnftnl)[source]: Use
mirror://netfilter.org.
2017-04-17 23:07:37 +02:00
Marius Bakke 7c7b802cce download: Add netfilter mirror.
* guix/download.scm (%mirrors): Add mirrors for www.netfilter.org.
2017-04-17 23:05:46 +02:00
Tobias Geerinckx-Rice f5c6edd60c gnu: sshfs-fuse: Update to 2.9.
* gnu/packages/linux.scm (sshfs-fuse): Update to 2.9.
[home-page]: Point to new home page.
2017-04-17 22:55:27 +02:00
Stefan Reichoer 05bdb5e64d gnu: Add ponymix.
* gnu/packages/pulseaudio.scm (ponymix): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-17 16:37:21 -04:00
José Miguel Sánchez García 7eaa8cf2b9 gnu: vis: Update to 0.3.
* gnu/packages/text-editors.scm (vis): Update to 0.3.
[arguments]: Remove #:make-flags.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-17 16:03:35 -04:00
Leo Famulari 3a0cfe675f gnu: capnproto: Update to 0.5.3.1 [security fixes].
See this document for more information about the security issues fixed in this
release:

<https://github.com/sandstorm-io/capnproto/blob/master/security-advisories/2017-04-17-0-apple-clang-elides-bounds-check.md>

* gnu/packages/serialization.scm (capnproto): Update to 0.5.3.1.
2017-04-17 15:59:39 -04:00
Chris Marusich 794223bc77 gnu: Add youtube-dl-gui.
* gnu/packages/video.scm (youtube-dl-gui): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-17 15:43:28 -04:00
Marius Bakke 0315b20a2c gnu: mesa: Update to 17.0.4.
* gnu/packages/patches/mesa-skip-disk-cache-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gl.scm (mesa): Update to 17.0.4.
[source]: Adapt URI to new directory structure.
[arguments]: End phases on #t. Remove stray whitespaces.
[home-page]: Use HTTPS.
2017-04-17 21:26:41 +02:00
Marius Bakke 84080b4362 gnu: libdrm: Update to 2.4.80.
* gnu/packages/xdisorg.scm (libdrm): Update to 2.4.80.
2017-04-17 21:26:39 +02:00
Clément Lassieur 483ab08f84 gnu: icecat: Use system ICU.
* gnu/packages/gnuzilla.scm (icecat)[arguments] <#:configure-flags>: Remove
comment for "--with-system-icu".
2017-04-17 20:41:17 +02:00
Clément Lassieur a408e75766 gnu: icu4c: Fix crashes in programs using system ICU.
Fixes <http://bugs.gnu.org/26462>.

* gnu/packages/patches/icu4c-reset-keyword-list-iterator.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/icu4c.scm (icu4c)[replacement]: New field.
(icu4c/fixed): New variable.
2017-04-17 20:41:16 +02:00
Petter c04ef86e81 gnu: go: Update to 1.8.1.
* gnu/packages/golang.scm (go-1.7): Replace with ...
(go-1.8): New variable.
[arguments]: Update substitutions in 'prebuild' phase.
(go): Update to go-1.8.
2017-04-17 14:16:26 -04:00
Leo Famulari 13223c8e59 gnu: iptables: Update to 1.6.1.
* gnu/packages/linux.scm (iptables): Update to 1.6.1.
[source], [home-page]: Use HTTPS URLs.
[inputs]: Add libmnl and libnftnl.
[native-inputs]: Add bison, flex, and pkg-config.
2017-04-17 13:57:02 -04:00
Leo Famulari b754c6121b gnu: Add libnftnl.
* gnu/packages/linux.scm (libnftnl): New variable.
2017-04-17 13:57:01 -04:00
Leo Famulari 2f4a58b512 gnu: Add libmnl.
* gnu/packages/linux.scm (libmnl): New variable.
2017-04-17 13:57:01 -04:00
Tobias Geerinckx-Rice 4ca077d572 gnu: v4l-utils: Update to 1.12.3.
* gnu/packages/video.scm (v4l-utils): Update to 1.12.3.
[native-inputs]: Add perl.
2017-04-17 19:17:10 +02:00
Tobias Geerinckx-Rice b8a3190856 gnu: video: Always use HTTPS on videolan.org.
* gnu/packages/video.scm (libdca, libdvdread, libdvdnav, libdvdnav-4)
(libdvdcss)[source]: Use HTTPS.
(libdca, libdvdcss, libbdplus, libaacs)[home-page]: Likewise.
2017-04-17 19:17:10 +02:00
Kei Kebreau 67ba411ce3 gnu: freedink-data: Update to 1.08.20170401.
* gnu/packages/games.scm (freedink-data): Update to 1.08.20170401.
2017-04-17 12:16:05 -04:00
Mathieu Othacehe a9eadc06ac scripts: system: Rename --no-grub option to --no-bootloader.
* guix/scripts/system.scm (%options, show-help): Adjust accordingly.
Keep "--no-grub" for compatibility reasons, but do not mention it in the help.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-17 17:41:54 +02:00
Danny Milosavljevic e5f0563d5d gnu: node: Actually set timeout to 1 h.
* gnu/packages/node.scm (node)[properties]: Actually set timeout to 1 h.
2017-04-17 16:59:17 +02:00
宋文武 9505dafb99 retroarch: Update to 1.5.0.
* gnu/packages/games.scm (retroarch): Update to 1.5.0.
2017-04-17 22:35:17 +08:00
Jelle Licht 3759deaba1 gnu: node: Update to 7.8.0.
* gnu/packages/node.scm (node): Update to 7.8.0.
[properties]: Add timeout of 1 h.
2017-04-17 14:55:16 +02:00
Tobias Geerinckx-Rice 9b9cc951bd gnu: yadifa: Update to 2.2.4.
* gnu/packages/dns.scm (yadifa): Update to 2.2.4.
2017-04-17 02:04:08 +02:00
Tobias Geerinckx-Rice c9d7cd4762 gnu: perl-sys-cpu: Re-write description.
* gnu/packages/perl.scm (perl-sys-cpu)[description]: Fix some typos by
re-writing most of the description.
2017-04-17 02:04:08 +02:00
Tobias Geerinckx-Rice d1e4ad1b02 gnu: Fix typos in descriptions.
* gnu/packages/admin.scm (di)[description]: Likewise.
* gnu/packages/bioinformatics.scm (r-annotate)[description]: Likewise.
* gnu/packages/datastructures.scm (sparsehash)[description]: Likewise.
* gnu/packages/dns.scm (knot)[description]: Likewise.
* gnu/packages/emacs.scm (emacs-idle-highlight)[synopsis, description]:
Likewise.
* gnu/packages/gnome.scm (libpeas)[description]: Likewise.
* gnu/packages/gtk.scm (python2-pygtk)[description]: Likewise.
* gnu/packages/kde-frameworks.scm (kactivities)[description]: Fix typo.
* gnu/packages/libevent.scm (perl-anyevent)[description]: Likewise.
* gnu/packages/machine-learning.scm (ghmm)[description]: Likewise.
* gnu/packages/mail.scm (mlmmj)[description]: Likewise.
* gnu/packages/maths.scm (vc)[description]: Likewise.
* gnu/packages/music.scm (gx-super-fuzz-lv2)[description]: Likewise.
* gnu/packages/networking.scm (nload)[description]: Likewise.
* gnu/packages/python.scm (python-execnet)[description]: Likewise.
* gnu/packages/terminals.scm (tilda)[description]: Likewise.
* gnu/packages/python.scm (python-execnet, python-tables)
(python2-coverage-test-runner, python2-rope)[description]: Likewise.
2017-04-17 02:04:08 +02:00
Marius Bakke 0d82fafea4 gnu: fio: Update to 2.19.
* gnu/packages/benchmark.scm (fio): Update to 2.19.
2017-04-16 21:23:51 +02:00
Marius Bakke a790f26207 gnu: nss: Increase test timeouts.
* gnu/packages/patches/nss-increase-test-timeout.patch: Wait up to 60s before
regarding a test as failed.
2017-04-16 21:23:51 +02:00
Kei Kebreau a7ccfefd53 gnu: diffoscope: Update to 81.
* gnu/packages/package-management.scm (diffoscope): Update to 81.
2017-04-16 09:14:47 -04:00
Ludovic Courtès 1730c5b509 lint: Avoid non-literal format strings.
Reported by Mathieu Othacehe <m.othacehe@gmail.com>
at <http://bugs.gnu.org/26498>.

* guix/scripts/lint.scm (warn-if-package-has-input): Rename to...
(package-input-intersection): ... this.  Remove 'linted' and 'message'
parameters.  Return a list of inputs.
(check-inputs-should-be-native): Adjust accordingly.
(check-inputs-should-not-be-an-input-at-all): Likewise.
2017-04-16 12:08:30 +02:00
Vasile Dumitrascu 3689043671 gnu: Add emacs-calfw.
* gnu/packages/emacs.scm (emacs-calfw): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-04-16 12:18:25 +03:00
Alex Kost c6726a5f88 gnu: guile-xosd, guile-daemon: Switch to Guile 2.2.
* gnu/packages/guile.scm (guile-xosd)[inputs]: Replace GUILE-2.0 with
GUILE-2.2.
(guile-daemon)[inputs]: Likewise.
2017-04-16 12:18:24 +03:00
Alex Kost 5245399f47 gnu: guile-daemon: Update to 0.1.2.
* gnu/packages/guile.scm (guile-daemon): Update to 0.1.2.
2017-04-16 12:18:24 +03:00
Roel Janssen 61af2675d3 gnu: Add graphene.
* gnu/packages/gtk.scm (graphene): New variable.
2017-04-15 21:10:27 -04:00
Kei Kebreau 2ff8deaeee gnu: gdk-pixbuf: Update to 2.36.6.
* gnu/packages/gtk.scm (gdk-pixbuf): Update to 2.36.6.
2017-04-15 20:56:22 -04:00
Tobias Geerinckx-Rice fd22791e2c gnu: bullet: Update to 2.86.1.
* gnu/packages/game-development.scm (bullet): Update to 2.86.1.
2017-04-16 02:18:37 +02:00
Tobias Geerinckx-Rice 167f0e823e gnu: game-development: Use HTTPS where possible.
* gnu/packages/game-development.scm (sfml)[home-page]: Use HTTPS.
(physfs)[source, home-page]: Likewise.
(aseprite)[home-page]: Likewise.
(python-pygame)[home-page]: Likewise.
2017-04-16 02:18:37 +02:00
Tobias Geerinckx-Rice f12fc528a5 gnu: thefuck: Update to 3.16.
* gnu/packages/admin.scm (thefuck): Update to 3.16.
2017-04-16 02:18:36 +02:00
Tobias Geerinckx-Rice 34529f8d35 gnu: offlineimap: Update to 7.1.0.
* gnu/packages/mail.scm (offlineimap): Update to 7.1.0.
2017-04-16 02:18:36 +02:00
Tobias Geerinckx-Rice f06c154f0b gnu: youtube-dl: Update to 2017.04.16.
* gnu/packages/video.scm (youtube-dl): Update to 2017.04.16.
2017-04-16 02:18:36 +02:00
ng0 37e726cb95 gnu: vim: Update to 8.0.0566.
* gnu/packages/vim.scm (vim): Update to 8.0.0566.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-15 19:14:30 -04:00
Ludovic Courtès cbe0af11b2 tests: dicod: Bail out if we cannot connect within 20 seconds.
* gnu/tests/dict.scm (run-dicod-test)["connect inside"]: Bail out after
20 seconds of failure to connect.
2017-04-16 00:48:08 +02:00
Ludovic Courtès 3d3c565008 services: Add a default value to various service types.
* gnu/services/admin.scm (rottlog-service-type)[default-value]: New
field.
* gnu/services/base.scm (guix-service-type)[default-value]: New field.
(guix-publish-service-type)[default-value]: New field.
* gnu/services/cups.scm (cups-service-type)[default-value]: New field.
* gnu/services/dict.scm (dicod-service-type)[default-value]: New field.
* gnu/services/mcron.scm (mcron-service-type)[default-value]: New field.
* gnu/services/networking.scm (<tor-configuration>)[config-file]: Add
default value.
(tor-service-type)[default-value]: New field.
(<bitlbee-configuration>)[interface, port, extra-settings]: Add default
values.
(bitlbee-service-type)[default-value]: New field.
(wpa-supplicant-service-type)[default-value]: New field.
(tlp-service-type)[default-value]: New field.
(openssh-service-type)[default-value]: New field.
* doc/guix.texi (Base Services, Log Rotation)
(Networking Services, Printing Services):
(Power management Services): Adjust examples accordingly.
2017-04-16 00:48:08 +02:00
Ludovic Courtès 1bb895eabf services: Service types can now specify a default value for instances.
* gnu/services.scm (&no-default-value): New variable.
(<service-type>)[default-value]: New field.
(<service>): Rename constructor from 'service' to 'make-service'.
(service): New macro.
(%service-with-default-value): New procedure.
(&missing-value-service-error): New error condition.
* tests/services.scm ("services, default value"): New test.
* doc/guix.texi (Service Types and Services): Document 'default-value'.
(Service Reference): Explain default values.
2017-04-16 00:48:08 +02:00
Ludovic Courtès f816dba680 ui: Gracefully report '&message' conditions.
* guix/ui.scm (report-load-error, warn-about-load-error)
(read/eval): Add special-case for SRFI-35 &message conditions.
2017-04-16 00:48:07 +02:00
Ludovic Courtès efe7d19a9e services: 'service-parameters' becomes 'service-value'.
* gnu/services.scm (<service>)[parameters]: Rename to...
[value]: ... this.
Change calls to 'service-parameters' to 'service-value'.
* gnu/system.scm, gnu/tests/base.scm,
guix/scripts/system.scm, tests/services.scm: Likewise.
* doc/guix.texi (Service Reference): Adjust accordingly.
2017-04-16 00:48:07 +02:00
Arun Isaac af3f64477c gnu: racket: Update to 6.8.
* gnu/packages/scheme.scm (racket): Update to 6.8.
2017-04-16 02:50:41 +05:30
Danny Milosavljevic 958a1fda9e system: Make grub use <menu-entry> instead of <boot-parameters> again.
* gnu/system/grub.scm: Remove boot-parameters->menu-entry.
(grub-configuration): Don't use boot-parameters->menu-entry.
* gnu/system.scm (operating-system-bootcfg): Use menu-entry.
* guix/scripts/system.scm (reinstall-grub): Use profile-grub-entries.
(perform-action): Use profile-grub-entries.
2017-04-15 22:02:38 +02:00
Nicolas Goaziou 2f36d90f2d gnu: giac-xcas: Update to 1.2.3-37.
* gnu/packages/algebra.scm (giac-xcas): Update to 1.2.3-37.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-15 19:46:41 +02:00
Nicolas Goaziou 891f3dc022 gnu: asymptote: Update to 2.41
* gnu/packages/plotutils.scm (asymptote): Update to 2.41.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-15 19:46:41 +02:00
Peter Mikkelsen 178670c9eb gnu: idris: Fix idris-default-arguments.
* gnu/packages/idris.scm (idris-default-arguments): Don't set IDRIS_LIBRARY_PATH before
building and change --install to --build.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-15 19:46:40 +02:00
Peter Mikkelsen b74f224744 gnu: idris: Update to 1.0.
* gnu/packages/idris.scm (idris): Update to 1.0.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-15 19:46:40 +02:00
Mathieu Othacehe 3cd501c859 gnu: speedtest-cli: Update to 1.0.3.
* gnu/packages/networking.scm (speedtest-cli): Update to 1.0.3.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-15 19:46:40 +02:00
Danny Milosavljevic abae042ea4 scripts: system: Introduce profile-boot-parameters.
* guix/scripts/system.scm (profile-boot-parameters): New variable.
(reinstall-grub): Use profile-boot-parameters.
(perform-action): Use profile-boot-parameters.

Follow-up to 2e58e05bb6.
2017-04-15 19:34:00 +02:00
Marius Bakke 8c326cf644 gnu: ceph: Disable failing test.
* gnu/packages/patches/ceph-disable-unittest-throttle.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/storage.scm (ceph)[source]: Use it.
2017-04-15 18:51:00 +02:00
Marius Bakke f91c677c03 gnu: rocksdb: Don't build static library.
* gnu/packages/databases.scm (rocksdb)[arguments]<#:phases>: Add new Makefile
substitution. Remove 'delete-static-library' phase. Adjust
'build-release-libraries' phase to match.
<#:make-flags>: Remove redundant flag.
2017-04-15 18:51:00 +02:00
Marius Bakke bf144793ae gnu: rocksdb: Disable failing test.
* gnu/packages/databases.scm (rocksdb)[arguments]<#:phases>: Add one more
test to 'disable-failing-tests' phase.
2017-04-15 18:51:00 +02:00
Marius Bakke f71f29cab2 gnu: bc: Update to 1.07.1.
* gnu/packages/algebra.scm (bc): Update to 1.07.1.
[native-inputs]: Add ED and TEXINFO.
[arguments]<#:phases>: Remove.
2017-04-15 18:51:00 +02:00
Marius Bakke e5da4d8b40 gnu: mupdf: Update to 1.11.
Also delete two stray patches that were added in
92ae98e2a0 and lost in a subsequent merge
(mupdf/fixed was already gone at e90e0fad1b).

* gnu/packages/patches/mupdf-CVE-2017-5896.patch,
gnu/packages/patches/mupdf-CVE-2017-5991.patch,
gnu/packages/patches/mupdf-mujs-CVE-2016-10132.patch,
gnu/packages/patches/mupdf-mujs-CVE-2016-10133.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/patches/mupdf-build-with-openjpeg-2.1.patch: Adjust.
* gnu/packages/pdf.scm (mupdf): Update to 1.11.
[source]: Remove mujs patches. Adjust snippet to source rename.
2017-04-15 18:51:00 +02:00
Marius Bakke f46eb986c2 gnu: xf86-video-intel: Update to 2.99.917-5-b57abe2.
* gnu/packages/xorg.scm (xf86-video-intel): Update to 2.99.917-5-b57abe2.
2017-04-15 18:50:59 +02:00
Marius Bakke 4ec1f82c63 gnu: kodi: Update to 18.0_alpha-2-478d306.
* gnu/packages/kodi.scm (kodi): Update to 18.0_alpha-2-478d306.
[arguments]<#:configure-flags>: Remove obsolete flag.
2017-04-15 18:50:59 +02:00
Mathieu Othacehe 2e58e05bb6 system: Pass boot-parameters to (gnu system grub).
* gnu/system.scm (operating-system-bootcfg): Pass boot-parameters.
* gnu/system/grub.scm (boot-parameters->menu-entry): New variable.
(grub-configuration-file): Use boot-parameters->menu-entry.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 16:37:55 +02:00
Danny Milosavljevic 0ab1e8ae88 system: grub: Use (first all-entries) instead of (first entries).
* gnu/system/grub.scm (grub-configuration-file): Use (first all-entries)
instead of (first entries).
2017-04-15 15:49:47 +02:00
Danny Milosavljevic 99828febe0 tests: Remove unused import (gnu system grub).
* gnu/tests/web.scm: Remove unused import.
2017-04-15 15:32:25 +02:00
Mathieu Othacehe e61519ab9c scripts: system: Rename grub? and install-grub? to bootloader? and install-bootloader?.
* guix/scripts/system.scm (perform-action): Rename grub? to bootloader,
(%options): rename install-grub? to install-bootloader?,
(%default-options): ditto,
(process-action): reindent and rename grub? to bootloader?.
2017-04-15 15:22:47 +02:00
Mathieu Othacehe 7085ca9690 system: Rename (internal) grub-device to fs->boot-device.
* gnu/system.scm (grub-device): Rename to...
(fs->boot-device): ... this.
(operating-system-grub.cfg): Adapt.
(operating-system-parameters-file): Adapt.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 14:42:50 +02:00
Mathieu Othacehe 07f812c404 vm: Reword grub.cfg to bootcfg.
* gnu/build/vm.scm (register-grub.cfg-root): Reword grub.cfg to bootcfg,
(initialize-hard-disk): ditto,
* gnu/system/vm.scm (system-disk-image): ditto,
(system-qemu-image): ditto,
(system-qemu-image/shared-store): ditto.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 14:42:15 +02:00
Mathieu Othacehe c76b3046f6 system: Rename operating-system-grub.cfg to operating-system-bootcfg.
* gnu/system.scm (operating-system-grub.cfg): Rename to...
(operating-system-bootcfg): ... this.
* gnu/system/vm.scm (system-disk-image): Use operating-system-bootcfg.
(system-qemu-image): Use operating-system-bootcfg.
(system-qemu-image/shared-store): Use operating-system-bootcfg.
* guix/scripts/system.scm (perform-action): Use operating-system-bootcfg.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 14:41:10 +02:00
Danny Milosavljevic 03daeaa70f scripts: system: Back out operating-system-bootcfg change.
Follow-up to 475e2ce211.

* guix/scripts/system.scm (perform-action): Back out operating-system-bootcfg
change.
2017-04-15 14:41:10 +02:00
Nicolas Goaziou 32380cdbb1 gnu: wireshark: Update to 2.2.6.
* gnu/packages/networking.scm (wireshark): Update to 2.2.6.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-15 17:45:41 +05:30
Danny Milosavljevic 475e2ce211 scripts: system: Move save-load-path-excursion and save-environment-excursion macros to the top.
* guix/scripts/system.scm (save-load-path-excursion,
save-environment-excursion): Move definitions to the top of the file.
It allows to use them in the whole file.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 13:28:25 +02:00
Mathieu Othacehe c2e9942b8f system: Rename kernel->grub-label to kernel->boot-label.
* gnu/system.scm (kernel->grub-label): Rename to kernel->boot-label.
(operating-system-grub.cfg): Adapt.
(operating-system-parameters-file): Ditto.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 12:39:27 +02:00
Mathieu Othacehe a41134b442 scripts: system: Move save-load-path-excursion and save-environment-excursion macros to the top.
* guix/scripts/system.scm (save-load-path-excursion,
save-environment-excursion): Move definitions to the top of the file.
It allows to use them in the whole file.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-04-15 12:33:56 +02:00
宋文武 53201c0def gnu: Add orca.
* gnu/packages/gnome.scm (orca): New package.
2017-04-15 13:10:25 +08:00
宋文武 3e00ac47d6 gnu: Add python-pyatspi.
* gnu/packages/gnome.scm (python-pyatspi): New package.
2017-04-15 13:10:07 +08:00
宋文武 904f8a31ab gnu: speech-dispatcher: Add more inputs.
* gnu/packages/speech.scm (speech-dispatcher)[inputs]: Add espeak,
pulseaudio and python.
2017-04-15 13:00:21 +08:00
Leo Famulari 9866cf1457 gnu: samba: Update to 4.5.8.
This fixes a regression introduced by the security fixes for CVE-2017-2619.

* gnu/packages/samba.scm (samba): Update to 4.5.8.
2017-04-14 19:34:57 -04:00
Leo Famulari 7736bae9b7 gnu: mutt: Update to 1.8.1.
* gnu/packages/mail.scm (mutt): Update to 1.8.1.
[source]: Use HTTPS URL.
2017-04-14 14:29:23 -04:00
Leo Famulari c57ce31a89 Merge branch 'master' into staging 2017-04-14 13:07:16 -04:00
Leo Famulari 8439c9c05e gnu: gpgme: Update to 1.9.0.
* gnu/packages/gnupg.scm (gpgme): Update to 1.9.0.
2017-04-14 12:53:33 -04:00
Leo Famulari 2f64f4444a gnu: ncmpc: Update to 0.27.
* gnu/packages/mpd.scm (ncmpc): Update to 0.27.
2017-04-14 12:53:33 -04:00
Leo Famulari ed8a6c1384 gnu: libmpdclient: Update to 2.11.
* gnu/packages/mpd.scm (libmpdclient): Update to 2.11.
2017-04-14 12:53:33 -04:00
Leo Famulari ab71ea93a4 gnu: mysql: Update to 5.7.18.
* gnu/packages/databases.scm (mysql): Update to 5.7.18.
2017-04-14 12:53:28 -04:00
Tobias Geerinckx-Rice 2ff7703b0d gnu: youtube-dl: Update to 2017.04.14.
* gnu/packages/video.scm (youtube-dl): Update to 2017.04.14.
2017-04-14 18:27:42 +02:00
Tobias Geerinckx-Rice 27a5c60465 gnu: dub: Flesh out synopsis & description.
* gnu/packages/ldc.scm (dub)[synopsis, description]: Actually explain what
dub is and does.
2017-04-14 18:27:42 +02:00
Ludovic Courtès b31b0155ea build: Download aarch64 bootstrap binaries from alpha.gnu.org.
* build-aux/download.scm (file-name->uri): Remove flashner.co.il URL.
* gnu/packages/package-management.scm (boot-guile-uri): Likewise.
2017-04-14 18:17:58 +02:00
Arun Isaac 4e644ab8a6 gnu: emacs-company: Enable tests.
* gnu/packages/emacs.scm (emacs-company)[arguments]: Add a 'check' phase.
2017-04-14 18:16:15 +05:30
Mathieu Othacehe 960887b297 build: Stop building gnu/build/svg.scm.
* Makefile.am (EXTRA_DIST): Add gnu/build/svg.scm.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove gnu/build/svg.scm.

It fixes the following build warnings:

gnu/build/svg.scm:36:12: warning: possibly unbound variable `cairo-create'
gnu/build/svg.scm:36:26: warning: possibly unbound variable `cairo-image-surface-create'
gnu/build/svg.scm:38:4: warning: possibly unbound variable `cairo-scale'
gnu/build/svg.scm:39:4: warning: possibly unbound variable `cairo-set-source-surface'

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-14 12:29:20 +02:00
Mathieu Othacehe e60ee79040 build-system/cargo: Remove store reference.
* guix/build/cargo-build-system.scm (generate-checksums): Remove store
  reference from comment. This comment was matching
  assert-no-store-file-names regexp in Makefile.am.
  Also, edit procedure docstring to precise that DIR-NAME is a store
  directory.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-14 12:29:20 +02:00
Mathieu Othacehe 11e2087e25 build: Remove build-aux/hydra/demo-os.scm from EXTRA_DIST.
* Makefile.am (EXTRA_DIST): Remove build-aux/hydra/demo-os.scm. The
  file was removed of guix in this commit
  a3a2774501.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-14 12:29:20 +02:00
David Thompson f252d6df8b gnu: Add guile-syntax-highlight.
* gnu/packages/guile.scm (guile-syntax-highlight): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-04-14 12:29:20 +02:00
Ricardo Wurmus 116b29bffb gnu: julia: Update to 0.5.1.
* gnu/packages/julia.scm (julia): Update to 0.5.1.
2017-04-14 11:03:04 +02:00
Arun Isaac 8d50a9906d gnu: Add emacs-cdlatex.
* gnu/packages/emacs.scm (emacs-cdlatex): New variable.
2017-04-14 11:15:20 +05:30
Ben Woodcroft 88eb119f95 gnu: mafft: Update to 7.310.
* gnu/packages/bioinformatics.scm (mafft): Update to 7.310.
2017-04-14 15:19:37 +10:00
Ricardo Wurmus e02f166364 gnu: Add fillets-ng.
* gnu/packages/games.scm (fillets-ng): New variable.
2017-04-13 23:17:01 +02:00
Ricardo Wurmus b77e3a1c4e gnu: Add teeworlds.
* gnu/packages/games.scm (teeworlds): New variable.
* gnu/packages/patches/teeworlds-use-latest-wavpack.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.
2017-04-13 23:17:00 +02:00
Ricardo Wurmus 33f79a74b8 gnu: Add bam.
* gnu/packages/build-tools.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-04-13 23:17:00 +02:00
Arun Isaac 4264db2209 gnu: password-store: Update to 1.7.1.
* gnu/packages/password-utils.scm (password-store): Update to 1.7.1.
[source]: Remove "password-store-gnupg-compat.patch".
* gnu/packages/patches/password-store-gnupg-compat.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-04-14 00:43:26 +05:30
Julien Lepiller 83f9aa5e91 gnu: php: Update to 7.1.4.
* gnu/packages/php.scm (php): Update to 7.1.4.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-13 23:18:08 +05:30
Vasile Dumitrascu b9d38ad1bc gnu: postgresql: Update to 9.6.2.
* gnu/packages/databases.scm (postgresql): Update to 9.6.2.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-13 18:52:40 +05:30
Vasile Dumitrascu 07716c6842 gnu: emacs-zenburn-theme: Update to 2.5.
* gnu/packages/emacs.scm (emacs-zenburn-theme): Update to 2.5.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-13 18:30:22 +05:30
Vasile Dumitrascu 50edf7fc43 gnu: emacs-flycheck: Update to 30.
* gnu/packages/emacs.scm (emacs-flycheck): Update to 30.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-13 18:29:52 +05:30
Vasile Dumitrascu f8d69be008 gnu: emacs-clojure-mode: Update to 5.4.0.
* gnu/packages/emacs.scm (emacs-clojure-mode): Update to 5.4.0.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-13 18:28:18 +05:30
Vasile Dumitrascu 1262a2abca gnu: emacs-company: Update to 0.9.3.
* gnu/packages/emacs.scm (emacs-company): Update to 0.9.3.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-13 17:30:26 +05:30
Catonano ca8f3f9a51 gnu: Add libxls.
* gnu/packages/xml.scm (libxls): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-04-13 13:10:50 +02:00
Ricardo Wurmus bd71525b7a gnu: Add kiki.
* gnu/packages/games.scm (kiki): New variable.
* gnu/packages/patches/kiki-level-selection-crash.patch,
gnu/packages/patches/kiki-makefile.patch,
gnu/packages/patches/kiki-missing-includes.patch,
gnu/packages/patches/kiki-portability-64bit.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
2017-04-13 13:08:26 +02:00
Ricardo Wurmus 0da0f434c6 gnu: Add freeglut-2.8.
* gnu/packages/gl.scm (freeglut-2.8): New variable.
2017-04-13 13:08:25 +02:00
Mark H Weaver 44fd838987 gnu: linux-libre: Update to 4.10.10.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.10.
(%linux-libre-hash): Update hash.
2017-04-13 04:16:26 -04:00
Mark H Weaver c8d6d510f6 gnu: linux-libre@4.9: Update to 4.9.22.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.22.
2017-04-13 04:15:38 -04:00
Mark H Weaver 9dae0a7611 gnu: linux-libre@4.4: Update to 4.4.61.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.61.
2017-04-13 04:14:41 -04:00
Leo Famulari 2e37447307 gnu: libsndfile: Update to 1.0.28 [fixes CVE-2017-{7585,7586,7741,7742}].
* gnu/packages/pulseaudio.scm (libsndfile)[replacement]: New field.
(libsndfile-1.0.28): New variable.
2017-04-12 22:47:34 -04:00
Leo Famulari efc95e7bc6 gnu: libsamplerate: Update to 0.1.9 [fixes CVE-2017-7697].
* gnu/packages/pulseaudio.scm (libsamplerate)[replacement]: New field.
(libsamplerate-0.1.9): New variable.
2017-04-12 22:47:31 -04:00
Leo Famulari 098bb004be gnu: isc-dhcp: Update bundled bind to 9.9.9-P8 [security fixes].
Fixes CVE-2017-{3136,3137,3138}.

* gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.9-P8.
2017-04-12 22:08:36 -04:00
Mark H Weaver d24b989424 gnu: icecat: Add more fixes from mozilla-esr45.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add fixes from the upstream
mozilla-esr45 repository.
2017-04-12 21:40:05 -04:00
Marius Bakke 61b64acf41 gnu: bind: Update to 9.10.4-P8 [fixes CVE-2017-{3136,3137,3138}].
* gnu/packages/dns.scm (bind): Update to 9.10.4-P8.
2017-04-13 02:50:24 +02:00
Marius Bakke f575efa12c gnu: libva: Update to 1.8.1.
* gnu/packages/video.scm (libva): Update to 1.8.1.
2017-04-13 01:27:55 +02:00
Ludovic Courtès ee295346ce services: tor: Run in a container.
* gnu/services/networking.scm (tor-shepherd-service): Use (gnu build
shepherd) and use 'make-forkexec-constructor/container' instead of
'make-forkexec-constructor'.
2017-04-13 00:12:42 +02:00
Ludovic Courtès bb5cad4eb2 file-systems: Allow for bind-mounts of named sockets.
Previously a named socket such as /dev/log would fail
the 'regular-file?' test and we'd end up mkdir'ing it.

* gnu/build/file-systems.scm (regular-file?): Remove.
(mount-file-system): Change (regular-file? source)
to (not (file-is-directory? source)).
2017-04-13 00:12:42 +02:00
Ludovic Courtès 6ddf4fcfae services: Define '%linux-bare-metal-service' using 'simple-service'.
* gnu/services.scm (linux-bare-metal-service-type): Remove.
(%linux-bare-metal-service): Define in terms of 'simple-service'.
2017-04-13 00:12:42 +02:00
Leo Famulari 012863081d gnu: certbot: Remove unused dependency.
This dependency was removed in certbot@0.10.0:

https://github.com/certbot/certbot/commit/d54cb76432a2eff43cc9cc3c1cc4d9136eac2221

* gnu/packages/tls.scm (certbot)[propagated-inputs]: Remove
python2-pythondialog.
2017-04-12 17:03:51 -04:00
Leo Famulari 57fe07dbc0 gnu: python-acme: Remove unused dependencies.
Removed in python-acme@0.10.0 and 0.4.1, respectively:

https://github.com/certbot/certbot/commit/edbb3a73c6085219bef0cbf008bd1c82088bfcf6
https://github.com/certbot/certbot/commit/df383ee6e408f3be4bc3beb59aa33abc8e90f268

* gnu/packages/tls.scm (python-acme, python2-acme)[propagated-inputs]:
Remove python-ndg-httpsclient and python-werkzeug.
2017-04-12 17:03:50 -04:00
George Clemmer 99517d9270 gnu: emacs-ag: Build and install info.
* gnu/packages/emacs.scm (emacs-ag)[arguments]: Add 'make-info' and
'install-info' phases.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-04-12 21:09:49 +03:00
Alex Kost 352074d5a9 gnu: emacs-ivy: Update to 0.9.1.
* gnu/packages/emacs.scm (emacs-ivy): Update to 0.9.1.
2017-04-12 21:09:49 +03:00
Efraim Flashner fc901d168b gnu: nano: Update to 2.8.1.
* gnu/packages/nano.scm (nano): Update to 2.8.1.
2017-04-12 20:55:17 +03:00
Marius Bakke 4e5dbf92f7 gnu: nginx: Update to 1.12.0.
* gnu/packages/web.scm (nginx): Update to 1.12.0.
2017-04-12 18:34:09 +02:00
Marius Bakke 1fc8476d36 gnu: certbot, python-acme: Build documentation in separate phase.
* gnu/packages/tls.scm (python-acme)[arguments]<:phases>: Add
'build-documentation' phase. Rename 'docs' phase to 'install-documentation'.
(certbot)[arguments]<:phases>: Adjust accordingly.
2017-04-12 18:29:00 +02:00
Marius Bakke 79f93e2a4f gnu: libdrm: Update to 2.4.79.
* gnu/packages/xdisorg.scm (libdrm): Update to 2.4.79.
2017-04-12 17:44:18 +02:00
Leo Famulari eea2f45369 doc: Use OpenSSH instead of lsh in bare-bones template.
* gnu/system/examples/bare-bones.tmpl (services): Use openssh-service-type
instead of lsh-service.
2017-04-12 11:42:52 -04:00
Marius Bakke e1f68c9668 gnu: libsamplerate: Update to 0.1.9.
* gnu/packages/pulseaudio.scm (libsamplerate): Update to 0.1.9.
2017-04-12 17:39:42 +02:00
Arun Isaac 0ee59b81c7 gnu: Add emacs-xmlgen.
* gnu/packages/emacs.scm (emacs-xmlgen): New variable.
2017-04-12 18:55:51 +05:30
Arun Isaac a7a4345de1 gnu: darkhttpd: Update source URI.
* gnu/packages/web.scm (darkhttpd)[source]: Update URI.
2017-04-12 18:48:48 +05:30
Tobias Geerinckx-Rice 4d6ce834bb gnu: dovecot: Update to 2.2.29.1.
* gnu/packages/mail.scm (dovecot): Update to 2.2.29.1.
[source]: Remove 'dovecot-fix-failing-test.patch'.
* gnu/packages/patches/dovecot-fix-failing-test.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-04-12 14:25:00 +02:00
Chris Marusich a97f6da422 gnu: emacs-default-encrypt: Update source URI.
* gnu/packages/emacs.scm (emacs-default-encrypt)[source]: Update URI.

Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2017-04-12 14:46:43 +05:30
Hartmut Goebel 1aab5e8320 gnu: kde-frameworks: No longer setenv CTEST_OUTPUT_ON_FAILURE.
This is now done my the cmake-build-system.

* gnu/packages/kde-frameworks.scm (kcoreaddons, kwidgetsaddons, kpackage,
  kemoticons kiconthemes, kio, knewstuff, kpeople, krunner,kservice,
  ktexteditor, kxmlgui plasma-framework) [arguments] <check-setup>: Remove
  setenv CTEST_OUTPUT_ON_FAILURE.
  (kpty) [arguments] <patch-tests>: Remove setenv CTEST_OUTPUT_ON_FAILURE.
  (ksyntaxhighlighting) [arguments] <check-setup>: Remove phase.
2017-04-12 10:08:52 +02:00
Hartmut Goebel 4467c2d1dc gnu: Update kde-frameworks to 5.32.0
* gnu/packages/kde-frameworks.scm
  (breeze-icons): Update to 5.32.0. [arguments]: Re-enable tests.
  (kio): Update to 5.32.0. [source]: Remove patch.
  (ktexteditor): Update to 5.32.0. [inputs]: Add ksyntaxhighlighting.
  (networkmanager-qt): Update to 5.32.0. [source]: Add patches.
  (kunitconversion): Update to 5.32.0. [arguments]
  <disable-a-failing-test-case>: New phase.
  (ksyntaxhighlighting): Update to 5.32.0.[native-iputs]: Add qtools.
  (knewstuff): Update to 5.32.0. [inputs]: Add qtdeclarative.
  (attica, baloo, bluez-qt, extra-cmake-modules, kactivities,
  kactivities-stats, kapidox, karchive, kauth, kbookmarks, kcmutils, kcodecs,
  kcompletion, kconfig, kconfigwidgets, kcoreaddons, kcrash, kdbusaddons,
  kdeclarative, kded, kdesignerplugin, kdesu, kdnssd, kdoctools, kemoticons,
  kfilemetadata, kglobalaccel, kguiaddons, ki18n, kiconthemes, kidletime,
  kimageformats, kinit, kitemmodels, kitemviews, kjobwidgets, knotifications,
  knotifyconfig, kpackage, kparts, kpeople, kplotting, kpty, krunner,
  kservice, ktextwidgets, kwallet, kwayland, kwidgetsaddons, kwindowsystem,
  kxmlgui, kxmlrpcclient, modemmanager-qt, oxygen-icons, plasma-framework,
  solid, sonnet, threadweaver): Update to 5.32.0.
* gnu/packages/patches/kio-CVE-2017-6410.patch: Delete file.
* gnu/packages/patches/networkmanager-qt-activeconnection-test-1.patch,
  gnu/packages/patches/networkmanager-qt-activeconnection-test-2.patch:
  New files.
* gnu/local.mk (dist_patch_DATA): Remove resp. add the patch files.
2017-04-12 10:08:52 +02:00
Hartmut Goebel 446809fb35 gnu: Update phonon to 4.9.1
* gnu/packages/kde-frameworks.scm (phonon): Update to 4.9.1.
2017-04-12 10:08:52 +02:00
Hartmut Goebel d04687dc83 gnu: Update networkmanager to version 1.6.2.
* gnu/packages/gnome.scm (networkmanager): [source] Update to 1.6.2
  [arguments] <pre-configure>: Adopt to now used single Makefile.in.
  <install>: Also pass "nmstatedir".
  [native-inputs]: Add docbook-xsl, libxslt, libxml2.
  [inputs]: Add jansson.
2017-04-12 10:08:52 +02:00
Efraim Flashner 0eb0fe2d30 gnu: jasper: Fixx CVE-2017-6850.
* gnu/packages/image.scm (jasper)[source]: Add patch.
* gnu/packages/patches/jasper-CVE-2017-6850.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
2017-04-12 06:19:56 +03:00
Leo Famulari 0adb47bdc7 gnu: dovecot: Update to 2.2.29 [fixes CVE-2017-2669].
* gnu/packages/mail.scm (dovecot): Update to 2.2.29.
[source]: Use 'dovecot-fix-failing-test.patch'.
* gnu/packages/patches/dovecot-fix-failing-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-04-11 20:35:31 -04:00
Leo Famulari 69121e95cd gnu: libressl: Update to 2.5.3.
* gnu/packages/tls.scm (libressl): Update to 2.5.3.
2017-04-11 20:35:25 -04:00
Tobias Geerinckx-Rice efbca08776 gnu: youtube-dl: Update to 2017.04.11.
* gnu/packages/video.scm (youtube-dl): Update to 2017.04.11.
2017-04-11 21:19:03 +02:00
Arun Isaac 25e810b812 gnu: Add emacs-htmlize.
* gnu/packages/emacs.scm (emacs-htmlize): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-11 14:44:20 -04:00
Mathieu Othacehe 8ad5a20f41 gnu: Add emacs-strace-mode.
* gnu/packages/emacs.scm (emacs-strace-mode): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-11 14:40:14 -04:00
Tobias Geerinckx-Rice d4bcbbb994 gnu: knot: Update to 2.4.3.
* gnu/packages/dns.scm (knot): Update to 2.4.3.
2017-04-11 18:53:38 +02:00
Ben Sturmfels fb4d6f6c2a doc: Update Python Modules subtitle to refer to Monty Python.
* doc/guix.texi (Packaging Guidelines): Update Python Modules subtitle.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 18:03:35 +02:00
Ben Sturmfels b611f9c282 gnu: Add Fabric.
* gnu/packages/admin.scm (fabric): New variable.
2017-04-11 18:03:35 +02:00
Ben Sturmfels c1aba1a7c8 gnu: python-paramiko: Update to 1.17.4.
* gnu/packages/python.scm (python-paramiko): Update to 1.17.4.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 18:03:35 +02:00
Chris Marusich e23455543b gnu: Add emacs-default-encrypt.
* gnu/packages/emacs.scm (emacs-default-encrypt): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 18:03:34 +02:00
Ludovic Courtès e79bfa181a gnu: Add Luminance HDR.
* gnu/packages/image-viewers.scm (luminance-hdr): New variable.
* gnu/packages/patches/luminance-hdr-qt-printer.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-04-11 18:03:34 +02:00
Kei Kebreau acf7d4a78b gnu: Add emacspeak.
* gnu/packages/emacs.scm (emacspeak): New variable.
2017-04-11 11:16:11 -04:00
Mathieu Othacehe a5e13c3be9 build: Fix compilation warnings.
* gnu/build/linux-boot.scm (define-module): Use (guix build syscalls).
* gnu/build/linux-modules.scm (define-module): Ditto.
* gnu/build/file-systems (define-module): Stop re-exporting mount, umount and
MS_* flags as this is now safe to include (guix build syscalls) instead.
(mount): Remove procedure.
(umount): Ditto.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 11:13:26 +02:00
Mathieu Othacehe 23e525e109 syscalls: Add load-linux-module.
* guix/build/syscalls.scm (load-linux-module): New procedure. Reimplemented
from guile-linux-syscalls.patch.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 11:13:26 +02:00
Mathieu Othacehe c5cd4fad09 syscalls: Use define-as-needed for network-interface syscalls.
* guix/build/syscalls.scm (network-interface-flags): Use define-as-needed macro
and remove from export list.
(set-network-interface-flags): Ditto.
(set-network-interface-address): Ditto.
(IFF_UP, IFF_BROADCAST and IFF_LOOPBACK): Ditto.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 11:13:25 +02:00
Mathieu Othacehe 7df4d3465d syscalls: Use define-as-needed for mount and umount.
* guix/build/syscalls.scm (mount): Use define-as-needed macro
and remove from export list.
(umount): Ditto.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 11:13:25 +02:00
Mathieu Othacehe 8336df0668 syscalls: Add reboot.
* guix/build/syscalls.scm (define-as-needed): New macro.
(reboot): New procedure. Reimplemented from guile-linux-syscalls.patch.
(RB_AUTOBOOT, ..., RB_KEXEC): New flags copied from static Guile patch.

Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-11 11:13:25 +02:00
Ricardo Wurmus e40335b275 gnu: frescobaldi: Update to 3.0.0.
* gnu/packages/music.scm (frescobaldi): Update to 3.0.0.
[inputs]: Replace "python-pyqt-4" and "python-poppler-qt4" with "python-pyqt"
and "python-poppler-qt5", respectively.
2017-04-11 09:51:03 +02:00
Ricardo Wurmus 99bcae94bc gnu: Add python-poppler-qt5.
* gnu/packages/pdf.scm (python-poppler-qt5): New variable.
2017-04-11 09:51:03 +02:00
Ricardo Wurmus f0f7bf95ae gnu: Add cdogs-sdl.
* gnu/packages/games.scm (cdogs-sdl): New variable.
2017-04-11 09:43:18 +02:00
Tobias Geerinckx-Rice cd12f92224 gnu: dub: Update to 1.3.0.
* gnu/packages/ldc.scm (dub): Update to 1.3.0.
[arguments]: Add comment, remove spurious MKDIR-P, and rename OUTBIN.
2017-04-11 06:39:32 +02:00
Kei Kebreau 0c3953ea60 gnu: Move dillo to web-browsers.scm.
* gnu/packages/dillo.scm: Remove file and move dillo...
* gnu/packages/web-browsers.scm: ...here. New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove dillo.scm and add
web-browsers.scm.
2017-04-10 19:16:47 -04:00
Mathieu Othacehe ed3a9ec5ac gnu: Add gpicview.
* gnu/packages/image-viewers.scm (gpicview): New variable.
* gnu/packages/lxde.scm (lxde)[propagated-inputs]: Add gpicview.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-10 23:54:46 +02:00
Ludovic Courtès a97f0ee136 gnu: pcre: Patch CVE-2017-7186.
* gnu/packages/patches/pcre-CVE-2017-7186.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/pcre.scm (pcre)[replacement]: New field.
(pcre/fixed): New variable.
2017-04-10 23:54:46 +02:00
Ludovic Courtès 18d0cec29e gnu: pcre2: Patch CVE-2017-7186.
* gnu/packages/patches/pcre2-CVE-2017-7186.patch: New file.
* gnu/packages/pcre.scm (pcre2)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-04-10 23:54:46 +02:00
Ludovic Courtès 81eaa3f857 gnu: guile-ncurses: Switch to Guile 2.2.
* gnu/packages/guile.scm (guile-ncurses)[inputs]: Switch to GUILE-2.2.
[arguments] <fix-libguile-ncurses-file-name>: Ajust accordingly.
2017-04-10 23:54:46 +02:00
Ludovic Courtès 958d357a38 gnu: guile-ncurses: Update to 2.2.
* gnu/packages/guile.scm (guile-ncurses): Update to 2.2.
2017-04-10 23:54:46 +02:00
Kei Kebreau 0ef83ec9d0 gnu: Add tclx.
* gnu/packages/tcl.scm (tclx): New variable.
2017-04-10 17:29:07 -04:00
ng0 d81f131ff8 gnu: Add darcs.
* gnu/packages/version-control.scm (darcs): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-10 17:01:45 -04:00
Leo Famulari 64463bd7c9 gnu: gnucash: Update to 2.6.16.
* gnu/packages/gnucash.scm (gnucash): Update to 2.6.16.
2017-04-10 15:42:05 -04:00
Arun Isaac b247fb86ac gnu: Add emacs-use-package.
* gnu/packages/emacs.scm (emacs-use-package): New variable.
2017-04-11 00:49:55 +05:30
Arun Isaac 0201c5d41e gnu: Add emacs-diminish.
* gnu/packages/emacs.scm (emacs-diminish): New variable.
2017-04-11 00:49:50 +05:30
Ricardo Wurmus f1d81568b5 gnu: jalv: Update to 1.6.0.
* gnu/packages/audio.scm (jalv): Update to 1.6.0.
[inputs]: Replace "gtk+-2" with "gtk+" and "gtkmm-2" with "gtkmm".
2017-04-10 18:45:40 +02:00
Ricardo Wurmus d4d3df82bc gnu: lilv: Update to 0.24.2.
* gnu/packages/audio.scm (lilv): Update to 0.24.2.
2017-04-10 18:43:07 +02:00
Ricardo Wurmus b1d3bb765f gnu: suil: Update to 0.8.4.
* gnu/packages/audio.scm (suil): Update to 0.8.4.
2017-04-10 18:41:03 +02:00
Ricardo Wurmus 7181981fd8 gnu: sratom: Update to 0.6.0.
* gnu/packages/audio.scm (sratom): Update to 0.6.0.
2017-04-10 18:41:03 +02:00
Ricardo Wurmus a1d419c7cc gnu: sord: Update to 0.16.0.
* gnu/packages/rdf.scm (sord): Update to 0.16.0.
2017-04-10 18:41:03 +02:00
Ricardo Wurmus 7421467afb gnu: serd: Update to 0.26.0.
* gnu/packages/rdf.scm (serd): Update to 0.26.0.
2017-04-10 18:41:03 +02:00
Ricardo Wurmus 3805092385 gnu: gx-vintage-fuzz-master-lv2: Update to 0.1.
* gnu/packages/music.scm (gx-vintage-fuzz-master-lv2): Update to 0.1.
2017-04-10 18:22:52 +02:00
Ricardo Wurmus a6f39d7cd5 gnu: gx-super-fuzz-lv2: Fix description.
* gnu/packages/music.scm (gx-super-fuzz-lv2)[description]: Replace
"GxVoodooFuzz" with "GxSuperFuzz".
2017-04-10 18:22:52 +02:00
Ricardo Wurmus 34a3ecfec0 gnu: gx-super-fuzz-lv2: Update to 0.1.
* gnu/packages/music.scm (gx-super-fuzz-lv2): Update to 0.1.
2017-04-10 18:22:51 +02:00
Ricardo Wurmus cf44ebebc4 gnu: gx-voodoo-fuzz-lv2: Update to 0.1.
* gnu/packages/music.scm (gx-voodoo-fuzz-lv2): Update to 0.1.
2017-04-10 18:22:51 +02:00
Ricardo Wurmus ad67ca3d41 gnu: Fix build for packages inheriting from gx-guvnor-lv2.
This is a follow-up to commit 35f909d45c.

* gnu/packages/music.scm (gx-vbass-preamp-lv2)[arguments]: Make "install"
target independent from "all".
(gx-overdriver-lv2, gx-tone-mender-lv2, gx-push-pull-lv2, gx-saturator-lv2,
gx-switchless-wah-lv2, gx-slow-gear-lv2): Inherit from "gx-vbass-preamp-lv2".
2017-04-10 18:22:51 +02:00
Ricardo Wurmus 4396e9b54a gnu: gx-hyperion-lv2: Update to 0.1.
* gnu/packages/music.scm (gx-hyperion-lv2): Update to 0.1.
2017-04-10 17:42:17 +02:00
Ricardo Wurmus f959991dd0 gnu: gx-suppa-tone-bender-lv2: Update to 0.1.
* gnu/packages/music.scm (gx-suppa-tone-bender-lv2): Update to 0.1.
2017-04-10 17:37:38 +02:00
Ricardo Wurmus 35f909d45c gnu: gx-guvnor-lv2: Update to 0.1.
* gnu/packages/music.scm (gx-guvnor-lv2): Update to 0.1.
[source]: Use release tarball.
[arguments]: Remove obsolete Makefile patching.
2017-04-10 17:31:02 +02:00
Ricardo Wurmus 82bf45c8bd gnu: mod-host: Update to 0.10.6-2-299a39774.
* gnu/packages/music.scm (mod-host): Update to 0.10.6-2-299a39774.
2017-04-10 17:18:22 +02:00
Ricardo Wurmus 3999b6643e gnu: pianobar: Update to 2016.06.02.
* gnu/packages/music.scm (pianobar): Update to 2016.06.02.
2017-04-10 17:07:22 +02:00
Ricardo Wurmus f0c5856df7 gnu: ams-lv2: Update to 1.2.1.
* gnu/packages/music.scm (ams-lv2): Update to 1.2.1.
2017-04-10 17:06:45 +02:00
Ricardo Wurmus c66529d82d gnu: yoshimi: Update to 1.5.1.1.
* gnu/packages/music.scm (yoshimi): Update to 1.5.1.1.
2017-04-10 16:52:40 +02:00
Ricardo Wurmus 31b7af7659 gnu: jack-1: Update to 0.125.0.
* gnu/packages/audio.scm (jack-1): Update to 0.125.0.
2017-04-10 14:53:03 +02:00
Mathieu Othacehe 8b1e572d0f gnu: lxde: Add leafpad.
* gnu/packages/lxde.scm (lxde)[propagated-inputs]: Add leafpad.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-10 11:46:01 +02:00
Danny Milosavljevic 9ea0cdaf7f gnu: rustc: Update to 1.16.0. gnu: cargo: Update to 0.17.0.
* gnu/packages/rust.scm (rustc): Update to 1.16.0.
patch-configure: Patch LLVM references.
(cargo): Update to 0.17.0.
[native-inputs]: Update rust-openssl to 0.9.6.
Update rust-libssh2-sys 0.2.5.
Update rust-libz-sys 1.0.13.
Add rust-error-chain 0.7.2.
Add rust-metadeps 1.1.1.
Update rust-openssl-sys 0.9.6.
Update rust-libgit2-sys to 0.6.6.
Add rust-shell-escape 0.1.3.
2017-04-10 09:01:13 +02:00
Ricardo Wurmus ae792dbae0 gnu: Add tango-icon-theme.
* gnu/packages/gnome.scm (tango-icon-theme): New variable.
2017-04-10 08:49:31 +02:00
Efraim Flashner 1803f2493e gnu: gcl: Use 'modify-phases' syntax.
* gnu/packages/lisp.scm (gcl)[arguments]: Use 'modify-phases' syntax.
2017-04-10 05:38:44 +03:00
Efraim Flashner 47fb74aebc gnu: gcl: Clean up inputs.
* gnu/packages/lisp.scm (gcl)[arguments]: Remove readline substitution,
correctly substitute '/bin/sh' calls.
[inputs]: Add gmp, readline.
[native-inputs]: Remove readline.
2017-04-10 05:38:43 +03:00
Efraim Flashner 5c7815f205 gnu: gcl: Build with gcc@4.9.
* gnu/packages/lisp.scm (gcl)[native-inputs]: Add gcc@4.9.
2017-04-10 05:38:42 +03:00
Marius Bakke 96e98d51a7 gnu: nss, nss-certs: Update to 3.30.1.
* gnu/packages/certs.scm (nss-certs): Update to 3.30.1.
* gnu/packages/gnuzilla.scm (nss): Update to 3.30.1.
2017-04-09 23:52:24 +02:00
Kyle Meyer 6461c44c2e gnu: emacs-projectile: Update to 0.14.0.
* gnu/packages/emacs.scm (emacs-projectile): Update to 0.14.0.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-09 23:52:12 +02:00
Ricardo Wurmus 6bb9c85424 gnu: Add freegish.
* gnu/packages/games.scm (freegish): New variable.
2017-04-09 23:30:23 +02:00
Ben Woodcroft e9e0fab079 gnu: raxml: Update to 8.2.10.
* gnu/packages/bioinformatics.scm (raxml): Update to 8.2.10.
2017-04-09 21:44:14 +10:00
Ricardo Wurmus 6acdff5875 gnu: r-rsamtools: Update to 1.26.2.
* gnu/packages/bioinformatics.scm (r-rsamtools): Update to 1.26.2.
2017-04-09 13:34:53 +02:00
Ricardo Wurmus dc8ebe43af gnu: r-biocparallel: Update to 1.8.2.
* gnu/packages/bioinformatics.scm (r-biocparallel): Update to 1.8.2.
2017-04-09 13:34:53 +02:00
Ricardo Wurmus 3420ed32d8 gnu: r-jsonlite: Update to 1.4.
* gnu/packages/web.scm (r-jsonlite): Update to 1.4.
2017-04-09 13:34:52 +02:00
Mark H Weaver c8ce351afc gnu: linux-libre: Update to 4.10.9.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.9.
(%linux-libre-hash): Update hash.
2017-04-09 06:01:31 -04:00
Mark H Weaver 0ab8ff138c gnu: linux-libre@4.9: Update to 4.9.21.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.21.
2017-04-09 06:00:47 -04:00
Mark H Weaver 3ca1c5e2ec gnu: linux-libre@4.4: Update to 4.4.60.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.60.
2017-04-09 06:00:00 -04:00
Mark H Weaver 482cd367c6 Revert "gnu: Add python-openid."
This reverts commit ccda568866.
2017-04-09 03:50:40 -04:00
Eric Bavier f3cf25c3c2 gnu: torsocks: Patch references to 'getcap' and 'which'.
* gnu/packages/tor.scm (torsocks)[inputs,arguments]: New fields.
2017-04-08 22:20:06 -05:00
Efraim Flashner a3c57693e4 gnu: qjackctl: Build with modular Qt.
* gnu/packages/audio.scm (qjackctl)[source]: Use sourceforge mirror.
[inputs]: Remove qt, add qtbase, qtx11extras.
2017-04-09 05:31:39 +03:00
Leo Famulari dde5831c00 gnu: leafpad: Fix home-page URL.
* gnu/packages/text-editors.scm (leafpad)[home-page]: Fix URL.
2017-04-08 21:33:59 -04:00
Feng Shu 0bf11648fc gnu: Add leafpad.
* gnu/packages/text-editors.scm (leafpad): New variable.
2017-04-08 21:30:26 -04:00
Leo Famulari ea240de4af screen: Fix info page build failure.
* gnu/packages/patches/screen-fix-info-syntax-error.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/screen.scm (screen)[source]: Use it.
2017-04-08 15:53:00 -04:00
Leo Famulari b496bfea41 gnu: lz4: Update to 1.7.5.
* gnu/packages/compression.scm (lz4): Update to 1.7.5.
[source]: Update source URL. Use patch 'lz4-fix-test-failures.patch'.
[home-page]: Update URL.
* gnu/packages/patches/lz4-fix-test-failures.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-04-08 15:36:53 -04:00
ng0 b0eb2af2e6 gnu: Add alpine.
* gnu/packages/mail.scm (alpine): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 13:46:58 -04:00
Leo Famulari f26d6e4e9c gnu: certbot: Share python-acme's arguments.
* gnu/packages/tls.scm (certbot)[arguments]: Use substitute-keyword-arguments to
inherit from python-acme.
2017-04-08 13:24:36 -04:00
Leo Famulari f0e9fda6be gnu: certbot, python-acme: Update to 0.13.0.
* gnu/packages/tls.scm (certbot, python-acme, python2-acme): Update to 0.13.0.
[arguments]: Add 'patch-dependency' phase.
2017-04-08 13:24:31 -04:00
Kei Kebreau 99a8c8bd7d gnu: python-django-mailman3: Balance parentheses for inputs.
* gnu/packages/mail.scm (python-django-mailman3)[inputs]: Balance them.
2017-04-08 12:56:53 -04:00
ng0 d99a2add28 gnu: Add postorius.
* gnu/packages/mail.scm (postorius): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 12:40:28 -04:00
ng0 8a3741e61b gnu: Add python-django-mailman3.
* gnu/packages/mail.scm (python-django-mailman3): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 12:40:23 -04:00
ng0 14d8f6538f gnu: Add python-django-gravatar2.
* gnu/packages/django.scm (python-django-gravatar2): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 12:40:20 -04:00
ng0 e1f06e1192 gnu: Add python-django-allauth.
* gnu/packages/django.scm (python-django-allauth): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 12:40:16 -04:00
ng0 ccda568866 gnu: Add python-openid.
* gnu/packages/python.scm (python-openid): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 12:40:11 -04:00
ng0 d2b51c08fd gnu: Add python-defusedxml.
* gnu/packages/xml.scm (python-defusedxml): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-08 12:40:06 -04:00
Feng Shu 72fa66674d gnu: Add you-get.
* gnu/packages/video.scm (you-get): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-08 15:32:23 +02:00
Arun Isaac 181170c6ee gnu: octave: Build with gl2ps support.
* gnu/packages/maths.scm (octave)[inputs]: Add gl2ps.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-08 15:24:37 +02:00
Arun Isaac 725d8d2c08 gnu: Add gl2ps.
* gnu/packages/gl.scm (gl2ps): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-08 15:23:41 +02:00
Chris Marusich 8bc2183fe5 monads: Improve mlet, mlet*, and mbegin documentation.
* doc/guix.texi (The Store Monad) <mlet, mlet*, mbegin>: Clarify
their intended usage.
* guix/monads.scm (mbegin): Update docstring accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-08 14:40:51 +02:00
Chris Marusich 60a9fcb137 monads, doc: Improve mwhen and munless documentation.
* doc/guix.texi (The Store Monad) <mwhen, munless>: Document them.
* guix/monads.scm (mwhen, munless): Clarify their intended use.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-08 14:40:51 +02:00
Chris Marusich d922c8e4b7 monads: Use intent-revealing parameter names.
* guix/monads.scm (mwhen, munless): Rename parameters from 'exp0' and 'exp' to
  'mexp0' and 'mexp', respectively.  This makes it more obvious that these
  expressions must be monadic expressions.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-08 14:40:50 +02:00
Ricardo Wurmus 1d65b5379b gnu: r-vegan: Update to 2.4-3.
* gnu/packages/bioinformatics.scm (r-vegan): Update to 2.4-3.
[arguments]: Remove build phase "revert-test-deletion".
[native-inputs]: Remove "r-vegan-delete-tests-patch".
2017-04-08 10:25:50 +02:00
Ricardo Wurmus 1c8ee3fcc2 gnu: r-stringi: Update to 1.1.5.
* gnu/packages/statistics.scm (r-stringi): Update to 1.1.5.
2017-04-08 10:25:50 +02:00
Leo Famulari 4653341b23 gnu: khal: Update to 0.9.5.
* gnu/packages/calendar.scm (khal): Update to 0.9.5.
2017-04-07 22:04:51 -04:00
Mathieu Othacehe abf0880a67 vm: Add missing module.
* gnu/build/vm.scm (define-module): Use module (guix build syscalls).

It fixes the following warnings during guix build :

gnu/build/vm.scm:233:3: warning: possibly unbound variable `mount'
gnu/build/vm.scm:238:3: warning: possibly unbound variable `umount'
gnu/build/vm.scm:268:8: warning: possibly unbound variable `mount'
gnu/build/vm.scm:276:8: warning: possibly unbound variable `umount'
gnu/build/vm.scm:315:4: warning: possibly unbound variable `mount'
gnu/build/vm.scm:323:4: warning: possibly unbound variable `umount'

This was not possible until the previous commit because we had to be sure
that Guile core implementation of 'mount' and 'umount' was used in
initrd context.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-07 23:30:39 +02:00
Mathieu Othacehe f91fcd9c42 syscalls: Allow mount and umount use from static Guile.
* guix/build/syscalls.scm (mount): Use Guile core mount if called from
  static Guile, otherwise use FFI based mount implementation.
  (umount): Ditto.
  This allows to use (guix build syscalls) from a module independently
  of calling context.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-07 23:30:39 +02:00
ng0 cf47a8a51d gnu: dovecot-trees: Update to 2.1.0.
* gnu/packages/mail.scm (dovecot-trees): Update to 2.1.0.
(source): Change to use 'url-fetch'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-07 23:30:38 +02:00
Ludovic Courtès 1165b08f86 build: Include 'glibc-utf8-locales' in the binary tarball.
* Makefile.am (guix-binary.%.tar.xz): Add 'glibc-utf8-locales' and
'glibc-final' to the 'guix pack' command line.
* doc/guix.texi (Binary Installation): Mention 'etc/profile'.
2017-04-07 23:30:38 +02:00
Ludovic Courtès 5537f2d279 profiles: Slightly improve the instructions in 'etc/profile'.
* guix/build/profiles.scm (build-etc/profile): Fix typo in comment.
Add backslash in the generated shell comment.
2017-04-07 23:30:38 +02:00
Ludovic Courtès 83cfa0247b pack: Add '--expression'.
* guix/scripts/pack.scm (%options, show-help): Add '--expression'.
(guix-pack)[maybe-package-argument]: New procedure.
Use it, and remove variable 'specs'.
* doc/guix.texi (Invoking guix pack): Document '--expression'.
2017-04-07 23:30:38 +02:00
Ricardo Wurmus d10fa5c7ff gnu: Add intel-gpu-tools.
* gnu/packages/admin.scm (intel-gpu-tools): New variable.
2017-04-07 23:00:53 +02:00
Vasile Dumitrascu d71b758f3a gnu: emacs-symon: Update to 20160630.
* gnu/packagages/emacs.scm (emacs-symon): Update to 20160630 (this is
the latest tag available from the upstream).
[source]: Use github instead of melpa.
[home-page]: Update.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-04-07 20:22:29 +03:00
humanitiesNerd 350cfccb06 gnu: Add emacs-adaptive-wrap.
Suggested-by Ivan Vilata i Balaguer <ivan@selidor.net>.
Fixes <https://bugs.gnu.org/26367>.

* gnu/packages/emacs.scm (emacs-adaptive-wrap): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-04-07 20:22:29 +03:00
Alex Kost b0dd3436ed gnu: emacs-debbugs: Update to 0.14.
* gnu/packages/emacs.scm (emacs-debbugs): Update to 0.14.
2017-04-07 20:22:29 +03:00
Ludovic Courtès b25d3bd973 gnu: perf: Add support for C++ symbol demangling.
* gnu/packages/linux.scm (perf)[inputs]: Add libiberty.
2017-04-07 17:37:46 +02:00
Mathieu Othacehe f214d470d7 gnu: ratpoison: Update to 1.4.9.
* gnu/packages/ratpoison.scm (ratpoison): Update to 1.4.9.
[inputs]: Remove libxinerama. Add libxrandr.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-04-07 10:01:54 -04:00
Leo Famulari 6cfb860a7a gnu: guitarix: Disable webkit features.
The only version of webkit supported by guitarix is unmaintained and contains a
large number of security vulnerabilities, and should be removed from Guix.

* gnu/packages/audio.scm (guitarix)[inputs]: Remove webkitgtk/gtk+-2.
2017-04-07 09:37:14 -04:00
Efraim Flashner d5a3e8f019 gnu: myrepos: Use 'modify-phases' syntax.
* gnu/packages/version-control.scm (myrepos)[arguments]: Use
'modify-phases' syntax.
2017-04-07 16:16:14 +03:00
Efraim Flashner d46e9fcb2c gnu: myrepos: Update to 1.20170129.
* gnu/packages/version-control.scm (myrepos): Update to 1.20170129.
[source]: Source tarballs have been removed from Github, use
git-download to download from upstream repository.
[home-page]: Use https.
2017-04-07 16:16:13 +03:00
Efraim Flashner ecc39b3f55 gnu: gnubik: Update to 2.4.3.
* gnu/packages/games.scm (gnubik): Update to 2.4.3.
2017-04-07 16:16:13 +03:00
Ben Woodcroft 37982693ca gnu: vsearch: Update to 2.4.3.
* gnu/packages/bioinformatics.scm (vsearch): Update to 2.4.3.
2017-04-07 21:35:07 +10:00
Leo Famulari fbd6fb1a9d gnu: qemu: Update to 2.8.1 [security fixes].
Fixes CVE-2016-{9602,9603} and CVE-2017-{2615,2620,2630,5667,5931}.

* gnu/packages/qemu.scm (qemu): Update to 2.8.1.
* gnu/packages/patches/qemu-CVE-2017-2615.patch,
gnu/packages/patches/qemu-CVE-2017-2620.patch,
gnu/packages/patches/qemu-CVE-2017-2630.patch,
gnu/packages/patches/qemu-CVE-2017-5667.patch,
gnu/packages/patches/qemu-CVE-2017-5931.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-04-07 00:53:02 -04:00
Leo Famulari 0715c0e69c gnu: surf: Update to 2.0.
* gnu/packages/suckless.scm (surf): Update to 2.0.
[inputs]: Replace webkitgtk/gtk+-2 with webkitgtk.
2017-04-06 22:44:07 -04:00
Ludovic Courtès c923f83116 size: Add test to multiple 'store-profile' arguments.
* tests/size.scm ("store-profile with multiple items"): New test.
2017-04-07 00:17:16 +02:00
Ludovic Courtès 9a3762a768 size: Avoid '_' as a pattern variable in 'match'.
* guix/scripts/size.scm (display-profile, profile->page-map): Don't use
'_' as a 'match' pattern variable.
2017-04-07 00:17:16 +02:00
Ludovic Courtès 6b6aca9b36 gnu: flann: Move .mex file to a separate "octave" output.
That way the closure of flann:out is down from 1 GiB
to 290 MiB.

* gnu/packages/maths.scm (flann)[outputs]: New field.
[arguments]: Add 'set-octave-directory' phase.
2017-04-07 00:17:16 +02:00
Leo Famulari 3be437398e gnu: webkitgtk: Update to 2.16.1.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.16.1.
2017-04-06 17:24:57 -04:00
Marius Bakke 3433413b18 gnu: xorg-server@1.19.2: Update to 1.19.3.
This is to adjust for the inputs and arguments change of xorg-server proper.

* gnu/packages/xorg.scm (xorg-server-1.19.2): Rename to ...
(xorg-server-1.19.3): ... this. Update version and origin.
* gnu/packages/gtk.scm (gtk+)[native-inputs]: Adjust accordingly.
[arguments]<#:disallowed-references>: Likewise.
2017-04-06 16:03:05 +02:00
Marius Bakke 7c42cc7738 gnu: xorg-server: Update to 1.19.3.
* gnu/packages/xorg.scm (xorg-server, xorg-server-xwayland): Update to 1.19.3.
[native-inputs]: Remove FONT-UTIL, LIBTOOL, AUTOMAKE and AUTOCONF.
[arguments]: Remove 'bootstrap' phase.
2017-04-06 15:51:41 +02:00
Ricardo Wurmus fe418cc5b2 gnu: armadillo: Change license to ASL 2.0.
Armadillo versions 7.800 and onwards are licensed under the Apache License
2.0.

* gnu/packages/maths.scm (armadillo)[license]: Change to ASL 2.0.
2017-04-06 15:42:18 +02:00
Marius Bakke 3c81c4f90c gnu: libdrm: Update to 2.4.77.
* gnu/packages/xdisorg.scm (libdrm): Update to 2.4.77.
* gnu/packages/patches/libdrm-symbol-check.patch: Adjust to upstream changes.
2017-04-06 15:39:48 +02:00
Marius Bakke 9092633c7f gnu: libpciaccess: Update to 0.13.5.
* gnu/packages/xorg.scm (libpciaccess): Update to 0.13.5.
2017-04-06 15:39:42 +02:00
Marius Bakke 0eb5c4bac7 gnu: libva: Update to 1.8.0.
* gnu/packages/video.scm (libva): Update to 1.8.0.
2017-04-06 15:39:30 +02:00
Marius Bakke 2aa78c8f04 gnu: re2: Update to 2017-04-01.
* gnu/packages/regex.scm (re2): Update to 2017-04-01.
2017-04-06 15:07:55 +02:00
Marius Bakke fdcc9163d5 gnu: feh: Update to 2.18.3.
* gnu/packages/image-viewers.scm (feh): Update to 2.18.3.
2017-04-06 15:05:40 +02:00
Marius Bakke 2c273a82f3 gnu: libusb: Update to 1.0.21.
* gnu/packages/libusb.scm (libusb): Update to 1.0.21.
[home-page]: Update to new URL.
2017-04-06 15:03:07 +02:00
Marius Bakke 05b662663d gnu: libmtp: Update to 1.1.13 [security fixes].
* gnu/packages/libusb.scm (libmtp): Update to 1.1.13.
2017-04-06 14:58:05 +02:00
Ricardo Wurmus c9dccf7917 gnu: r-sourcetools: Update to 0.1.6.
* gnu/packages/statistics.scm (r-sourcetools): Update to 0.1.6.
2017-04-06 14:39:23 +02:00
Ricardo Wurmus e18c731ba0 gnu: r-seqinr: Update to 3.3-6.
* gnu/packages/bioinformatics.scm (r-seqinr): Update to 3.3-6.
2017-04-06 14:39:22 +02:00
Ricardo Wurmus 498d2553ed gnu: Remove armadillo-for-rcpparmadillo.
This package is no longer useful, because upstream does not keep the tarballs
of older releases.  We use the bundled armadillo sources in the
r-rccparmadillo package instead.

* gnu/packages/maths.scm (armadillo-for-rcpparmadillo): Remove variable.
2017-04-06 14:39:22 +02:00
Ricardo Wurmus 0685fe3c86 gnu: r-rcpparmadillo: Update to 0.7.700.0.0.
* gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.7.700.0.0.
[source]: Do not delete bundled armadillo sources, because upstream no longer
hosts previous versions.
[propagated-inputs]: Remove "armadillo-for-rcpparmadillo".
[arguments]: Remove because we no longer need to link with the armadillo
library.
* gnu/packages/bioinformatics.scm (r-deseq2)[arguments]: Remove because we no
longer need to link with armadillo library.
2017-04-06 14:39:22 +02:00
Ricardo Wurmus 133cba8cb5 gnu: armadillo: Update to 7.800.2.
* gnu/packages/maths.scm (armadillo): Update to 7.800.2.
2017-04-06 14:39:22 +02:00
Ricardo Wurmus a3656b11d2 gnu: r-annotationforge: Update to 1.16.1.
* gnu/packages/bioinformatics.scm (r-annotationforge): Update to 1.16.1.
2017-04-06 14:39:22 +02:00
Ricardo Wurmus e0d7b31820 gnu: r-shortread: Update to 1.32.1.
* gnu/packages/bioinformatics.scm (r-shortread): Update to 1.32.1.
2017-04-06 14:39:21 +02:00
Ricardo Wurmus 2cea968e41 gnu: r-s4vectors: Update to 0.12.2.
* gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.12.2.
2017-04-06 14:39:21 +02:00
Ricardo Wurmus 7d05eb2dcc gnu: r-iranges: Update to 2.8.2.
* gnu/packages/bioinformatics.scm (r-iranges): Update to 2.8.2.
2017-04-06 14:39:21 +02:00
Ricardo Wurmus e89cf15091 gnu: r-variantannotation: Update to 1.20.3.
* gnu/packages/bioinformatics.scm (r-variantannotation): Update to 1.20.3.
2017-04-06 14:39:21 +02:00
Ricardo Wurmus 3506a62762 gnu: r-limma: Update to 3.30.13.
* gnu/packages/bioinformatics.scm (r-limma): Update to 3.30.13.
2017-04-06 14:39:21 +02:00
Ricardo Wurmus 4cd4721dbb gnu: r-genomicranges: Update to 1.26.4.
* gnu/packages/bioinformatics.scm (r-genomicranges): Update to 1.26.4.
2017-04-06 14:39:20 +02:00
Ricardo Wurmus 69b356efce gnu: r-annotationdbi: Update to 1.36.2.
* gnu/packages/bioinformatics.scm (r-annotationdbi): Update to 1.36.2.
2017-04-06 14:39:20 +02:00
Ricardo Wurmus 5cc3b7a548 gnu: r-genomicalignments: Update to 1.10.1.
* gnu/packages/bioinformatics.scm (r-genomicalignments): Update to 1.10.1.
2017-04-06 14:39:20 +02:00
Ricardo Wurmus 25d8854723 gnu: r-rtracklayer: Update to 1.34.2.
* gnu/packages/bioinformatics.scm (r-rtracklayer): Update to 1.34.2.
2017-04-06 14:39:20 +02:00
Ricardo Wurmus 9ce6cb082e gnu: r-genomicfeatures: Update to 1.26.4.
* gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.26.4.
2017-04-06 14:39:20 +02:00
Ricardo Wurmus 57ac1d2f03 gnu: r-seqminer: Update to 5.7.
* gnu/packages/bioinformatics.scm (r-seqminer): Update to 5.7.
2017-04-06 14:39:19 +02:00
Ricardo Wurmus e8bec95e69 gnu: r-maldiquant: Update to 1.16.2.
* gnu/packages/bioinformatics.scm (r-maldiquant): Update to 1.16.2.
2017-04-06 14:39:19 +02:00
Ricardo Wurmus 20e97759bf gnu: r-ranger: Update to 0.7.0.
* gnu/packages/statistics.scm (r-ranger): Update to 0.7.0.
2017-04-06 14:39:19 +02:00
Ricardo Wurmus da2260f96c gnu: r-pbkrtest: Update to 0.4-7.
* gnu/packages/statistics.scm (r-pbkrtest): Update to 0.4-7.
2017-04-06 14:39:19 +02:00
Ricardo Wurmus 4328bad2cd gnu: r-rcppeigen: Update to 0.3.2.9.1.
* gnu/packages/statistics.scm (r-rcppeigen): Update to 0.3.2.9.1.
2017-04-06 14:39:19 +02:00
Ricardo Wurmus a977576780 gnu: r-mclust: Update to 5.2.3.
* gnu/packages/statistics.scm (r-mclust): Update to 5.2.3.
2017-04-06 14:39:18 +02:00
Ricardo Wurmus 0007e645d9 gnu: r-ggthemes: Update to 3.4.0.
* gnu/packages/statistics.scm (r-ggthemes): Update to 3.4.0.
2017-04-06 14:39:18 +02:00
Ricardo Wurmus 47f37fd169 gnu: r-statmod: Update to 1.4.29.
* gnu/packages/statistics.scm (r-statmod): Update to 1.4.29.
2017-04-06 14:39:18 +02:00
Ricardo Wurmus 4c7ab0309a gnu: r-vipor: Update to 0.4.5.
* gnu/packages/statistics.scm (r-vipor): Update to 0.4.5.
2017-04-06 14:39:18 +02:00
Ricardo Wurmus 2fe41e0fad gnu: r-pracma: Update to 2.0.4.
* gnu/packages/maths.scm (r-pracma): Update to 2.0.4.
2017-04-06 14:39:18 +02:00
Ricardo Wurmus 2f44ef97a5 gnu: r-mixtools: Update to 1.1.0.
* gnu/packages/statistics.scm (r-mixtools): Update to 1.1.0.
[propagated-inputs]: Remove "r-boot", add "r-survival".
2017-04-06 14:39:17 +02:00
Ricardo Wurmus 7a8efc81f8 gnu: r-viridis: Update to 0.4.0.
* gnu/packages/statistics.scm (r-viridis): Update to 0.4.0.
[propagated-inputs]: Add "r-viridislite".
2017-04-06 14:39:17 +02:00
Ricardo Wurmus b5d5344f32 gnu: r-viridislite: Update to 0.2.0.
* gnu/packages/statistics.scm (r-viridislite): Update to 0.2.0.
2017-04-06 14:39:17 +02:00
Ricardo Wurmus cdadca5e6f gnu: r-matrixstats: Update to 0.52.1.
* gnu/packages/statistics.scm (r-matrixstats): Update to 0.52.1.
2017-04-06 14:39:17 +02:00
Ricardo Wurmus af7a4cc8a8 gnu: r-mvtnorm: Update to 1.0-6.
* gnu/packages/statistics.scm (r-mvtnorm): Update to 1.0-6.
2017-04-06 14:39:17 +02:00
Ricardo Wurmus 82b281fe12 gnu: r-e1071: Update to 1.6-8.
* gnu/packages/statistics.scm (r-e1071): Update to 1.6-8.
2017-04-06 14:39:16 +02:00
Ricardo Wurmus 1d1fbb7336 gnu: r-sparsem: Update to 1.76.
* gnu/packages/statistics.scm (r-sparsem): Update to 1.76.
2017-04-06 14:39:16 +02:00
Ricardo Wurmus fb708a1c74 gnu: r-xml: Update to 3.98-1.6.
* gnu/packages/statistics.scm (r-xml): Update to 3.98-1.6.
2017-04-06 14:39:16 +02:00
Ricardo Wurmus 1c27bb8f44 gnu: r-rsqlite: Update to 1.1-2.
* gnu/packages/statistics.scm (r-rsqlite): Update to 1.1-2.
2017-04-06 14:39:16 +02:00
Ricardo Wurmus 0def707ad8 gnu: r-rmarkdown: Update to 1.4.
* gnu/packages/statistics.scm (r-rmarkdown): Update to 1.4.
2017-04-06 14:39:16 +02:00
Ricardo Wurmus ac5e810205 gnu: r-bbmisc: Update to 1.11.
* gnu/packages/statistics.scm (r-bbmisc): Update to 1.11.
2017-04-06 14:39:16 +02:00
Ricardo Wurmus f1870aef99 gnu: r-backports: Update to 1.0.5.
* gnu/packages/statistics.scm (r-backports): Update to 1.0.5.
2017-04-06 14:39:15 +02:00
Ricardo Wurmus d05e45f33c gnu: r-multitaper: Update to 1.0-13.
* gnu/packages/statistics.scm (r-multitaper): Update to 1.0-13.
2017-04-06 14:39:15 +02:00
Ricardo Wurmus 0fbae8ebca gnu: r-xml2: Update to 1.1.1.
* gnu/packages/statistics.scm (r-xml2): Update to 1.1.1.
2017-04-06 14:39:15 +02:00
Ricardo Wurmus c6e40db528 gnu: r-ade4: Update to 1.7-6.
* gnu/packages/statistics.scm (r-ade4): Update to 1.7-6.
2017-04-06 14:39:15 +02:00
Ricardo Wurmus 10ffdb94e4 gnu: r-data-table: Update to 1.10.4.
* gnu/packages/statistics.scm (r-data-table): Update to 1.10.4.
2017-04-06 14:39:15 +02:00
Ricardo Wurmus 9e8fac0c45 gnu: r-chron: Update to 2.3-50.
* gnu/packages/statistics.scm (r-chron): Update to 2.3-50.
2017-04-06 14:39:14 +02:00
Ricardo Wurmus b8acb5aa46 gnu: r-cluster: Update to 2.0.6.
* gnu/packages/statistics.scm (r-cluster): Update to 2.0.6.
2017-04-06 14:39:14 +02:00
Ricardo Wurmus e8988ff9a0 gnu: r-dbi: Update to 0.6-1.
* gnu/packages/statistics.scm (r-dbi): Update to 0.6-1.
2017-04-06 14:39:14 +02:00
Ricardo Wurmus 5e0fa201a2 gnu: r-gdtools: Update to 0.1.4.
* gnu/packages/statistics.scm (r-gdtools): Update to 0.1.4.
2017-04-06 14:39:14 +02:00
Ricardo Wurmus 7267f358a0 gnu: r-stringr: Update to 1.2.0.
* gnu/packages/statistics.scm (r-stringr): Update to 1.2.0.
2017-04-06 14:39:14 +02:00
Ricardo Wurmus 5beda28f6b gnu: r-stringi: Update to 1.1.3.
* gnu/packages/statistics.scm (r-stringi): Update to 1.1.3.
2017-04-06 14:39:14 +02:00
Ricardo Wurmus 69a8ed6a12 gnu: r-rcpp: Update to 0.12.10.
* gnu/packages/statistics.scm (r-rcpp): Update to 0.12.10.
2017-04-06 14:39:13 +02:00
Ricardo Wurmus 9948b8e24c gnu: r-digest: Update to 0.6.12.
* gnu/packages/statistics.scm (r-digest): Update to 0.6.12.
2017-04-06 14:39:13 +02:00
Ricardo Wurmus 344e4741a1 gnu: r-survival: Update to 2.41-3.
* gnu/packages/statistics.scm (r-survival): Update to 2.41-3.
2017-04-06 14:39:13 +02:00
Ricardo Wurmus a6dcc78cb0 gnu: r-mgcv: Update to 1.8-17.
* gnu/packages/statistics.scm (r-mgcv): Update to 1.8-17.
2017-04-06 14:39:13 +02:00
Ricardo Wurmus 9704bda1b3 gnu: r-matrix: Update to 1.2-8.
* gnu/packages/statistics.scm (r-matrix): Update to 1.2-8.
2017-04-06 14:39:12 +02:00
Ricardo Wurmus 9aea2cdaff gnu: r-lattice: Update to 0.20-35.
* gnu/packages/statistics.scm (r-lattice): Update to 0.20-35.
2017-04-06 14:39:12 +02:00
Ricardo Wurmus 7ceb26ee83 gnu: r-rprojroot: Update to 1.2.
* gnu/packages/statistics.scm (r-rprojroot): Update to 1.2.
2017-04-06 14:39:12 +02:00
Ricardo Wurmus e15f962fef gnu: r-htmltable: Update to 1.9.
* gnu/packages/web.scm (r-htmltable): Update to 1.9.
[propagated-inputs]: Add "r-checkmate" and "r-htmlwidgets".
2017-04-06 14:39:11 +02:00
Ricardo Wurmus d3812fb233 gnu: r-curl: Update to 2.4.
* gnu/packages/web.scm (r-curl): Update to 2.4.
2017-04-06 14:39:11 +02:00
Ricardo Wurmus 4cd07e487e gnu: r-genomeinfodb: Update to 1.10.3.
* gnu/packages/bioinformatics.scm (r-genomeinfodb): Update to 1.10.3.
[propagated-inputs]: Add "r-rcurl".
2017-04-06 14:39:11 +02:00
Ricardo Wurmus acbeb2d56b gnu: r-xvector: Update to 0.14.1.
* gnu/packages/bioinformatics.scm (r-xvector): Update to 0.14.1.
2017-04-06 14:39:11 +02:00
Ricardo Wurmus da250f733a gnu: r-bioccheck: Update to 1.10.1.
* gnu/packages/bioinformatics.scm (r-bioccheck): Update to 1.10.1.
[propagated-inputs]: Remove "r-knitr" and "r-devtools".
2017-04-06 14:39:11 +02:00
Ricardo Wurmus d51f05f769 gnu: r-tidyr: Update to 0.6.1.
* gnu/packages/statistics.scm (r-tidyr): Update to 0.6.1.
[propagated-inputs]: Add "r-tibble".
2017-04-06 14:39:10 +02:00
Ricardo Wurmus 1db293757b gnu: r-roxygen2: Update to 6.0.1.
* gnu/packages/statistics.scm (r-roxygen2): Update to 6.0.1.
[propagated-inputs]: Add "r-commonmark", "r-desc", "r-r6", and "r-xml2".
2017-04-06 14:39:10 +02:00
Ricardo Wurmus bf6dcf59eb gnu: Add r-commonmark.
* gnu/packages/statistics.scm (r-commonmark): New variable.
2017-04-06 14:39:10 +02:00
Ricardo Wurmus 1cbb07a8e4 gnu: Add r-desc.
* gnu/packages/statistics.scm (r-desc): New variable.
2017-04-06 14:39:10 +02:00
Ricardo Wurmus 67deeea41b gnu: r-readr: Update to 1.1.0.
* gnu/packages/statistics.scm (r-readr): Update to 1.1.0.
[propagated-inputs]: Remove "r-curl".
2017-04-06 14:39:09 +02:00
Ricardo Wurmus 33eb555e6f gnu: r-tibble: Update to 1.3.0.
* gnu/packages/statistics.scm (r-tibble): Update to 1.3.0.
[propagated-inputs]: Remove "r-assertthat".
2017-04-06 14:39:09 +02:00
Ricardo Wurmus aad7808526 gnu: r-jsonlite: Update to 1.3.
* gnu/packages/web.scm (r-jsonlite): Update to 1.3.
2017-04-06 14:39:09 +02:00
Ricardo Wurmus 538bce2472 gnu: ldc-bootstrap: Delete failing test.
* gnu/packages/ldc.scm (ldc-bootstrap)[arguments]: Delete failing test in
build phase.
2017-04-06 14:34:12 +02:00
Ludovic Courtès cb5be6df91 gnu: guile-aspell: Switch to Guile 2.2.
* gnu/packages/guile.scm (guile-aspell)[inputs]: Replace GUILE-2.0 with
GUILE-2.2.
2017-04-06 10:45:55 +02:00
Ludovic Courtès 7295087eb1 gnu: guile-aspell: Remove hard-coded "site/2.0" from $(guilesitedir).
* gnu/packages/guile.scm (guile-aspell)[arguments]: Remove
  #:configure-flags.  Add 'set-guilesitedir' phase.
2017-04-06 10:42:51 +02:00
Ludovic Courtès 234ea3d653 gnu: guile-aspell: Update to 0.4.
* gnu/packages/guile.scm (guile-aspell): Update to 0.4.
[arguments] <#:phases>: Adjust 'set-libaspell-file-name' to new source
tree layout.
2017-04-06 10:37:52 +02:00
Chris Marusich 5ea69d9a56 system: Support the --root option in 'guix system'.
Fixes <https://bugs.gnu.org/26271>.

* guix/scripts/system.scm (perform-action): Add #:gc-root parameter and
honor it.
(show-help): Document the --root option.
(%options): Add 'root'.
(process-action): Pass 'root' option to perform-action as #:gc-root.
* doc/guix.texi (Invoking guix system): Document '--root'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-06 10:24:32 +02:00
Chris Marusich a09b45da6f build: Add and export procedure 'register-root*'.
* guix/scripts/build.scm (register-root*): Add and export it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-06 10:11:26 +02:00
Ludovic Courtès 50f4ea18c4 environment: Deal with single-entry search paths.
This is a followup to fcd75bdbfa.

* guix/scripts/environment.scm (create-environment): Check whether
SEPARATOR is #f.
2017-04-05 22:50:21 +02:00
Ludovic Courtès 31f1f593fb doc: Add "Documentation" section.
* doc/guix.texi (Documentation): New node.
2017-04-05 22:45:42 +02:00
Maxim Cournoyer a0b87ef8ec profiles: Generate database file for man pages.
The mandb database file (index.db) is used by the "apropos" (whatis) or
"man -k" commands.  This change introduces a profile hook to generate
such database file.

* guix/profiles.scm (manual-database): New procedure.
(%default-profile-hooks): Add it.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-04-05 22:45:41 +02:00
Ludovic Courtès 1618006d0b build-system/python: 'package-with-explicit-python' uses 'package-mapping'.
* guix/build-system/python.scm (package-with-explicit-python)
[package-variant, cut?]: New procedures.
[transform]: Remove 'mlambdaq' form and input tuple handling.
Use 'package-mapping'.
2017-04-05 22:45:41 +02:00
Ludovic Courtès f37f2b83fa packages: Add 'package-mapping' and base 'package-input-rewriting' on it.
* guix/packages.scm (package-mapping): New procedure.
(package-input-rewriting): Rewrite in terms of 'package-mapping'.
* tests/packages.scm ("package-mapping"): New test.
* doc/guix.texi (Defining Packages): Document it.
2017-04-05 22:45:41 +02:00
Ludovic Courtès 79f912c710 Revert "gnu: openexr: Add IlmBase include sub-directory to 'OpenEXR.pc'."
This reverts commit 01fe019166,
which was unneeded because IlmBase is already listed as 'Requires'
in 'OpenEXR.pc'.
2017-04-05 22:45:41 +02:00
Tobias Geerinckx-Rice b28187cd0c Revert "gnu: bc: Update to 1.07."
This reverts commit dfee7daedb.  It causes
the linux-libre@4.9 build to hang (command-line usage works fine).
2017-04-05 21:23:41 +02:00
Kei Kebreau cd381c317b gnu: Move audacity to audio.scm.
* gnu/packages/audacity.scm: Remove file and move audacity...
* gnu/packages/audio.scm: ...here.
* gnu/local.mk: Remove reference to removed file.
2017-04-05 15:08:14 -04:00
Ricardo Wurmus 5ae63362ae import cran: Distinguish Bioconductor data packages.
* guix/import/cran.scm (bioconductor-package?): Exclude Bioconductor
data packages.
(bioconductor-data-package?): New procedure.
2017-04-05 18:38:51 +02:00
Ricardo Wurmus 1108a920bd gnu: sra-tools: Fix glibc naming conflict.
* gnu/packages/bioinformatics.scm (sra-tools)[arguments]: Add build phase
"patch-away-glibc-conflict" to fix a definition conflict with glibc 2.25.
2017-04-05 18:06:51 +02:00
Ricardo Wurmus beebe43176 gnu: sra-tools: Use "modify-phases" syntax.
* gnu/packages/bioinformatics.scm (sra-tools)[arguments]: Use "modify-phases"
syntax.
2017-04-05 18:06:51 +02:00
Ben Woodcroft fc5b12879f gnu: diamond: Update to 0.8.37.
* gnu/packages/bioinformatics.scm (diamond): Update to 0.8.37.
2017-04-05 22:49:01 +10:00
Leo Famulari b23c1a71be download: Update the GnuPG mirror list.
* guix/download.scm (%mirrors) <gnupg>: Use HTTP for TU Wien mirror.
2017-04-05 07:07:35 -04:00
Thomas Danckaert 52b2d666ca gnu: kdevelop: Update to 5.1.0.
* gnu/packages/kde.scm (kdevelop, kdevplatform): Update to 5.1.0.
2017-04-05 12:12:34 +02:00
Tobias Geerinckx-Rice dfee7daedb gnu: bc: Update to 1.07.
* gnu/packages/algebra.scm (bc): Update to 1.07.
[native-inputs]: Add ed and texinfo.
[arguments]: Use default ‘configure’ phase.
2017-04-05 03:31:58 +02:00
Tobias Geerinckx-Rice f0bacad682 gnu: bc: Actually use readline.
* gnu/packages/algebra.scm (bc)[arguments]: Add ‘--with-readline’
to #:configure-flags.
2017-04-05 03:31:58 +02:00
Tobias Geerinckx-Rice 5894b60491 gnu: algebra: Re-order imports.
* gnu/packages/algebra.scm: Order imports alphabetically.
2017-04-05 03:31:58 +02:00
Ludovic Courtès 01fe019166 gnu: openexr: Add IlmBase include sub-directory to 'OpenEXR.pc'.
* gnu/packages/graphics.scm (openexr)[arguments]: Add
'set-ilmbase-directory-in-pc-file' phase.
2017-04-05 00:53:03 +02:00
Ludovic Courtès f84011d04a services: cuirass: Wait for networking.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Add 'networking'
to 'requirements'.
2017-04-05 00:53:03 +02:00
Chris Marusich 1c6b2d3f98 build: Export register-root procedure.
* guix/scripts/build.scm: Export register-root procedure.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-05 00:53:03 +02:00
Clément Lassieur 8db947169f gnu: icecat: Use bundled ICU to avoid crashes.
* gnu/packages/gnuzilla.scm (icecat)[arguments] <#:configure-flags>:
Temporarily comment out "--with-system-icu".
2017-04-04 20:18:38 +02:00
Clément Lassieur cca906754d gnu: icecat: Re-enable parallel build.
* gnu/packages/gnuzilla.scm (icecat)[arguments]: Re-enable parallel build.
2017-04-04 20:18:38 +02:00
Marius Bakke 33b2520175 gnu: python-django: Specify CPE name.
* gnu/packages/django.scm (python-django, python2-django)[properties]: Add
"cpe-name".
2017-04-04 18:30:52 +02:00
Marius Bakke dcc9b6abc7 gnu: python-django: Update to 1.10.7 [fixes CVE-2017-7233 and CVE-2017-7234].
* gnu/packages/django.scm (python-django, python2-django): Update to 1.10.7.
2017-04-04 18:01:32 +02:00
Marius Bakke 4dc12417d2 gnu: gnupg: Update to 2.1.20.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.20.
[source]: Remove patch.
* gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-04-04 17:46:28 +02:00
Marius Bakke a3dea99107 gnu: python2-cython: Fix build on 32-bit platforms.
* gnu/packages/python.scm (python-cython, python2-cython)[source]: Add patch.
* gnu/packages/patches/python-cython-fix-tests-32bit.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
2017-04-04 17:46:28 +02:00
Mark Meyer 6beaa5a02a gnu: moc: Add Ogg Vorbis support.
* gnu/packages/music.scm (moc)[inputs]: Add libogg and libvorbis.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2017-04-04 15:16:25 +02:00
Mark Meyer 0d78e37746 gnu: Add qjackctl.
* gnu/packages/audio.scm (qjackctl): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-04 14:30:00 +02:00
Ludovic Courtès b7506f74df gnu: glog: Fix name demangling for GCC 5.
* gnu/packages/patches/glog-gcc-5-demangling.patch: New file.
* gnu/packages/logging.scm (glog)[sources]: Add it.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-04-04 14:30:00 +02:00
Leo Famulari 6c17422eac utils: Fix handling of shell arguments for xz compression.
Fixes test failures related to xz compression in tests/utils.scm.

This is a followup to commit 63102406f2.

* guix/utils.scm (decompressed-port, compressed-port, compressed-output-port):
Split each shell argument into its own list element.
2017-04-03 23:23:39 -04:00
Tobias Geerinckx-Rice f49ced6827 gnu: youtube-dl: Update to 2017.04.03.
* gnu/packages/video.scm (youtube-dl): Update to 2017.04.03.
2017-04-04 00:17:58 +02:00
Tobias Geerinckx-Rice f751b7596d gnu: perl-email-simple: Update to 2.213.
* gnu/packages/mail.scm (perl-email-simple): Update to 2.213.
2017-04-04 00:17:58 +02:00
Tobias Geerinckx-Rice e26f2c67d6 gnu: perl-email-mime: Update to 1.940.
* gnu/packages/mail.scm (perl-email-mime): Update to 1.940.
2017-04-04 00:17:57 +02:00
Tobias Geerinckx-Rice 153ea992e8 gnu: perl-lingua-en-tagger: Update to 0.28.
* gnu/packages/language.scm (perl-lingua-en-tagger): Update to 0.28.
2017-04-04 00:17:29 +02:00
Tobias Geerinckx-Rice 5b5b4edfcc gnu: perl-lingua-en-number-isordinal: Update to 0.05.
* gnu/packages/language.scm (perl-lingua-en-number-isordinal): Update to 0.05.
2017-04-04 00:17:29 +02:00
Tobias Geerinckx-Rice e2fb341f8f gnu: perl-lingua-en-inflect-number: Update to 1.12.
* gnu/packages/language.scm (perl-lingua-en-inflect-number): Update to 1.12.
2017-04-04 00:17:29 +02:00
Tobias Geerinckx-Rice 3581c3571a gnu: perl-lingua-en-inflect: Update to 1.901.
* gnu/packages/language.scm (perl-lingua-en-inflect): Update to 1.901.
2017-04-04 00:17:28 +02:00
Tobias Geerinckx-Rice 84f06e540c gnu: perl-lingua-en-findnumber: Update to 1.32.
* gnu/packages/language.scm (perl-lingua-en-findnumber): Update to 1.32.
2017-04-04 00:17:28 +02:00
Tobias Geerinckx-Rice dd0cfb37da gnu: perl-db-file: Update to 1.840.
* gnu/packages/databases.scm (perl-db-file): Update to 1.840.
2017-04-04 00:17:28 +02:00
Tobias Geerinckx-Rice 2273b75154 gnu: perl-dbd-sqlite: Update to 1.54.
* gnu/packages/databases.scm (perl-dbd-sqlite): Update to 1.54.
2017-04-04 00:17:28 +02:00
Tobias Geerinckx-Rice 4d40c6aab0 gnu: perl-dbd-pg: Update to 3.5.3.
* gnu/packages/databases.scm (perl-dbd-pg): Update to 3.5.3.
2017-04-04 00:17:28 +02:00
Ludovic Courtès f73bb91ebe tests: Adjust search-paths test following the introduction of aarch64.
Fixes a regression introduced in
3b88f3767d.

* tests/search-paths.scm ("evaluate-search-paths, separator is #f"):
Change the expected result to "aarch64-linux".
2017-04-04 00:10:00 +02:00
Ludovic Courtès 76c486196f packages: Catch invalid input errors for structs.
Reported by Thomas Sigurdsen <thomas.sigurdsen@gmail.com>
at <https://lists.gnu.org/archive/html/help-guix/2017-04/msg00007.html>.

* guix/packages.scm (expand-input): Add 'guard' form around call to
'package-source-derivation'.
* tests/packages.scm (dummy): New test.
2017-04-04 00:10:00 +02:00
Ludovic Courtès 3e43166ffc gexp: 'lower-object' raises an exception when passed an invalid object.
* guix/gexp.scm (&gexp-error, &gexp-input-error): New error conditions.
(lower-object): Raise &gexp-input-error when 'lookup-compiler' returns #f.
* tests/gexp.scm ("lower-object & gexp-input-error?"): New test.
* guix/ui.scm (call-with-error-handling): Add case for 'gexp-input-error?'.
2017-04-04 00:10:00 +02:00
Muriithi Frederick Muriuki b98d4ec0aa gnu: Add python-mando-0.3.1
* gnu/packages/python.scm (python-mando-0.3.1): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-04 00:10:00 +02:00
Thomas Danckaert 3cd959a429 gnu: libsndfile: Update to 1.0.28.
* gnu/packages/pulseaudio.scm (libsndfile): Update to 1.0.28.
2017-04-03 21:54:05 +02:00
Thomas Danckaert b4dcfce51b gnu: Add cifs-utils.
* gnu/packages/samba.scm (cifs-utils): New variable.
2017-04-03 21:45:53 +02:00
Marius Bakke 350a30845c gnu: python-pexpect: Use python-pytest@3.0.
* gnu/packages/python.scm (python-pexpect, python2-pexpect)[native-inputs]:
Change PYTHON-PYTEST to PYTHON-PYTEST-3.0.
2017-04-03 19:25:57 +02:00
Marius Bakke 26bad5d7eb gnu: nss, nss-certs: Update to 3.30.
* gnu/packages/gnuzilla.scm (nss): Update to 3.30.
* gnu/packages/certs.scm (nss-certs): Update to 3.30.
* gnu/packages/patches/nss-increase-test-timeout.patch: Adjust patch context.
2017-04-03 19:25:57 +02:00
Marius Bakke cd158a2b77 gnu: python-cython: Update to 0.25.2.
* gnu/packages/python.scm (python-cython, python2-cython): Update to 0.25.2.
2017-04-03 19:25:56 +02:00
Kei Kebreau 9a49129651 gnu: audacity: Update to 2.1.3.
* gnu/packages/audacity.scm (audacity): Update to 2.1.3.
[source]: Fetch gzipped tar archive instead of a zip archive; remove
unnecessary patch.
[native-inputs]: Add autoconf, automake and libtool.
[arguments]: Add autoreconf phase to detect system libraries.
* gnu/packages/patches/audacity-fix-ffmpeg-binding.patch: Delete patch.
* gnu/local.mk: Remove reference to removed patch.
2017-04-03 11:51:52 -04:00
Arun Isaac 568f977f9c gnu: emacs-elfeed: Enable tests.
* gnu/packages/emacs.scm (emacs-elfeed)[arguments]: Add a 'check' phase.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-04-02 23:08:55 -04:00
Leo Famulari 52196aea19 gnu: tzdata: Update to 2017b.
* gnu/packages/base.scm (tzdata): Update to 2017b.
2017-04-02 20:25:42 -04:00
Leo Famulari b53fa16f9c gnu: brdf-explorer: Use HTTPS source URL.
* gnu/packages/graphics.scm (brdf-explorer)[source]: Use HTTPS URL.
2017-04-02 20:00:52 -04:00
Leo Famulari 7bf837fd43 gnu: Use HTTPS URLs for GitHub home-pages.
* gnu/packages/bioinformatics.scm, gnu/packages/emacs.scm,
gnu/packages/haskell.scm, gnu/packages/libffi.scm, gnu/packages/lisp.scm,
gnu/packages/ocaml.scm, gnu/packages/openstack.scm, gnu/packages/python.scm,
gnu/packages/ruby.scm, gnu/packages/shells.scm, gnu/packages/statistics.scm,
gnu/packages/xdisorg.scm: Use HTTPS URLs for all packages with a home-page on
GitHub.
2017-04-02 20:00:51 -04:00
Leo Famulari 9167488490 gnu: jbig2dec: Fix CVE-2016-9601.
* gnu/packages/patches/jbig2dec-CVE-2016-9601.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/image.scm (jbig2dec)[source]: Use it.
2017-04-02 19:38:56 -04:00
Ludovic Courtès 2a0d5de5a9 Merge branch 'core-updates' 2017-04-03 00:13:06 +02:00
Ludovic Courtès 245575eaf3 gnu: guile-git: Install .go files to /site-ccache.
* gnu/packages/guile.scm (guile-git)[arguments] <bootstrap>: Change
"/ccache" to "/site-ccache" in Makefile.am.
2017-04-03 00:12:51 +02:00
Marius Bakke 60f37e3cb1 gnu: sddm: Build without greenisland.
This Wayland compositor is currently abandonware and has known problems.

* gnu/packages/display-managers.scm (sddm)[inputs]: Remove GREENISLAND.
2017-04-02 23:42:56 +02:00
Ricardo Wurmus 41f6d18fb6 gnu: guitarix: Update to 0.35.3.
* gnu/packages/audio.scm (guitarix): Update to 0.35.3.
2017-04-02 18:30:42 +02:00
Efraim Flashner 63102406f2 guix: Compress and decompress xz archives in parallel.
* guix/scripts/pack.scm (%compressors): Add flag '-T0' when calling "xz".
* guix/utils.scm (decompressed-port, compressed-port,
compressed-output-port): Same.
2017-04-02 14:42:20 +03:00
Kyle Meyer 6800c79701 gnu: notmuch: Update to 0.24.1.
* gnu/packages/mail.scm (notmuch, python-notmuch, python2-notmuch): Update to
0.24.1.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-04-02 11:58:08 +02:00
Ben Woodcroft cf1d581464 gnu: khmer: Build with gcc-4.
* gnu/packages/bioinformatics.scm (khmer)[inputs]: Add gcc-4.9.
2017-04-02 10:14:17 +10:00
Ben Woodcroft 800a7dd59e gnu: ruby: Replace with ruby-2.3.4.
* gnu/packages/ruby.scm (ruby)[replacement]: New field.
(ruby-2.3.4): New variable.
2017-04-02 08:21:43 +10:00
Ben Woodcroft 22a494ec25 gnu: ruby-2.2: Update to 2.2.7.
* gnu/packages/ruby.scm (ruby-2.2): Update to 2.2.7.
2017-04-02 08:20:41 +10:00
Ricardo Wurmus 750e54ecbe gnu: tuxguitar: Update to 1.4.
* gnu/packages/music.scm (tuxguitar): Update to 1.4.
[arguments]: Replace build phase "build-editor-utils" with "build-libraries";
install resources to the expected locations.
2017-04-02 17:25:05 +02:00
Ricardo Wurmus 8723fe23fa gnu: pd: Run autogen.sh script.
* gnu/packages/music.scm (pd)[arguments]: Run autogen.sh instead of
plain autoreconf.
2017-04-02 17:25:05 +02:00
Ricardo Wurmus 4712cbb0c7 gnu: pd: Fix indentation of phases.
* gnu/packages/music.scm (pd)[arguments]: Fix indentation.
2017-04-02 17:25:05 +02:00
Ricardo Wurmus 037bf4f4a0 gnu: pd: Update to 0.47-1.
* gnu/packages/music.scm (pd): Update to 0.47-1.
2017-04-02 17:25:05 +02:00
Ricardo Wurmus f9b8b54e62 gnu: tuxguitar: Update home page URL.
* gnu/packages/music.scm (tuxguitar)[home-page]: Update URL.
2017-04-02 17:25:05 +02:00
Ricardo Wurmus 8dbc5d2368 gnu: setbfree: Update to 0.8.4
* gnu/packages/music.scm (setbfree): Update to 0.8.4.
2017-04-02 17:25:05 +02:00
Ricardo Wurmus 7175f4c2c1 gnu: amsynth: Build with LASH support.
* gnu/packages/music.scm (amsynth)[inputs]: Add lash.
2017-04-02 17:25:04 +02:00
Ricardo Wurmus 7e0befd45e gnu: amsynth: Update to 1.7.1.
* gnu/packages/music.scm (amsynth): Update to 1.7.1.
[native-inputs]: Add intltool.
2017-04-02 17:25:04 +02:00
Ricardo Wurmus 14fa5bde7e gnu: samplv1: Update to 0.8.1.
* gnu/packages/music.scm (samplv1): Update to 0.8.1.
2017-04-02 17:25:04 +02:00
Ricardo Wurmus 17ca1a39a6 gnu: drumkv1: Update to 0.8.1.
* gnu/packages/music.scm (drumkv1): Update to 0.8.1.
2017-04-02 17:25:04 +02:00
Ricardo Wurmus 720de58bf7 gnu: synthv1: Update to 0.8.1.
* gnu/packages/music.scm (synthv1): Update to 0.8.1.
2017-04-02 17:25:04 +02:00
Ricardo Wurmus 5feac7b04e gnu: non-sequencer, non-session-manager: Update to 1.9.5-3.10c31e5.
* gnu/packages/music.scm (non-sequencer, non-session-manager): Update to
1.9.5-3.10c31e5.
2017-04-02 17:25:04 +02:00
Ricardo Wurmus 57f1b3b8e7 gnu: lilypond: Update to 2.19.58.
* gnu/packages/music.scm (lilypond): Update to 2.19.58.
2017-04-02 17:25:03 +02:00
Ricardo Wurmus 95708ed8d6 gnu: extempore: Update home page.
* gnu/packages/music.scm (extempore)[home-page]: Use new home page.
2017-04-02 17:25:03 +02:00
Ricardo Wurmus 0a1513513a gnu: aria-maestosa: Update to 1.4.13.
* gnu/packages/music.scm (aria-maestosa): Update to 1.4.13.
2017-04-02 17:25:03 +02:00
Tobias Geerinckx-Rice 7f661d4909 gnu: btrfs-progs: Update to 4.10.2.
* gnu/packages/linux.scm (btrfs-progs): Update to 4.10.2.
2017-04-01 16:13:02 +02:00
Clément Lassieur deb3618810 services: dovecot: Fix passwd and userdb 'args' types.
* gnu/services/mail.scm (passwd-configuration)[args]
(userdb-configuration)[args]: Change type from 'free-form-args' to
'space-separated-string-list'.
* doc/guix.texi (Mail Services): Document it.
2017-04-01 14:38:10 +02:00
Ricardo Wurmus 7070088a2d gnu: yoshimi: Update to 1.5.1.
* gnu/packages/music.scm (yoshimi): Update to 1.5.1.
2017-04-02 11:37:11 +02:00
Eric Bavier 9fc221b58c doc: Fix typos.
* doc/guix.texi (Build Systems)[ocaml-build-system]: Fix typo.
(Log Rotation)[periodic-rotations]: ditto.
(Database Services)[redis-service-type]: ditto.
(OpenSMTPD Service)[opensmtpd-configuration]: ditto.
(VPN Services)[OpenVPN]: ditto.
(Power management Services)[tlp-configuration]: ditto.
(Git daemon service)[git-daemon-service]: ditto.
(Running GuixSD in a VM): ditto.
* gnu/services/pm.scm (tlp-configuration)[runtime-pm-blacklist]: Fix typo.
* gnu/services/vpn.scm (openvpn-client-configuration)[status]: ditto.
2017-03-31 20:55:05 -05:00
Ludovic Courtès 985a8599ed tests: Add GNU dicod test.
* gnu/tests/dict.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-04-01 00:45:18 +02:00
Ludovic Courtès 892d9089a8 tests: Introduce 'simple-operating-system' and use it.
* gnu/tests.scm (%simple-os): New macro.
(simple-operating-system): New macro.
* gnu/tests/base.scm (%simple-os): Define using 'simple-operating-system'.
(%mcron-os): Use 'simple-operating-system'.
* gnu/tests/mail.scm (%opensmtpd-os): Likewise.
* gnu/tests/messaging.scm (%base-os, os-with-service): Remove.
(run-xmpp-test): Use 'simple-operating-system'.
* gnu/tests/networking.scm (%inetd-os): Likewise.
* gnu/tests/ssh.scm (%base-os, os-with-service): Remove.
(run-ssh-test): Use 'simple-operating-system'.
* gnu/tests/web.scm (%nginx-os): Likewise.
2017-04-01 00:45:18 +02:00
Huang Ying 9af7ecd959 services: dicod: Allow the configuration of "handlers".
* gnu/services/dict.scm (<dicod-configuration>)[handlers]: New field.
(<dicod-handler>): New record type.
(<dicod-database>): Add fields.
(dicod-configuration-file): Support convert handlers and enhanced databases.
configuration to config file.
* doc/guix.texi (Miscellaneous Services): Update accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-04-01 00:45:18 +02:00
Mark H Weaver bacc1d26c6 gnu: linux-libre: Update to 4.10.8 [fixes CVE-2017-7184].
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.8.
(%linux-libre-hash): Update hash.
2017-03-31 18:20:54 -04:00
Mark H Weaver 9554e5ae15 gnu: linux-libre@4.9: Update to 4.9.20 [fixes CVE-2017-7184].
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.20.
2017-03-31 18:20:20 -04:00
Mark H Weaver 232be5bcd7 gnu: linux-libre@4.4: Update to 4.4.59 [fixes CVE-2017-7184].
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.59.
2017-03-31 18:19:13 -04:00
David Thompson 4299409018 gnu: guile-opengl: Build with Guile 2.2.
* gnu/packages/gl.scm (guile-opengl): Build with Guile 2.2.
2017-03-31 13:35:20 -04:00
Tobias Geerinckx-Rice b5b46f87bd gnu: libtermkey: Update to 0.20.
gnu/packages/terminals.scm (libtermkey): Update to 0.20.
2017-03-31 15:33:16 +02:00
Tobias Geerinckx-Rice f264e838c0 substitute: Send ‘User-Agent’ header.
* guix/scripts/substitute.scm (narinfo-request): Pass ‘User-Agent’ #:headers
to ‘build-request’.
2017-03-31 15:33:16 +02:00
Tobias Geerinckx-Rice 32ea65370e gnu: xonsh: Update to 0.5.9.
* gnu/packages/shells.scm (xonsh): Update to 0.5.9.
2017-03-31 15:33:15 +02:00
Tobias Geerinckx-Rice a20d28bb7c gnu: parallel: Update to 20170322.
* gnu/packages/parallel.scm (parallel): Update to 20170322.
2017-03-31 15:33:15 +02:00
David Thompson 80e138750d gnu: tiled: Update to 0.18.2.
* gnu/packages/game-development.scm (tiled): Update to 0.18.2.
2017-03-31 09:25:51 -04:00
Efraim Flashner 823354b2a8 gnu: nano: Update to 2.8.0.
* gnu/packages/nano.scm (nano): Update to 2.8.0.
2017-03-31 16:08:04 +03:00
Tobias Geerinckx-Rice ec23833267 gnu: hdparm: Use ‘modify-phases’ syntax.
* gnu/packages/linux.scm (hdparm): Use ‘modify-phases’.
2017-03-31 04:06:08 +02:00
Tobias Geerinckx-Rice 02052b2c9b gnu: hdparm: Expand synopsis and description.
* gnu/packages/linux.scm (hdparm)[synopsis, description]: Add some more
common uses, more examples, and more objective information.
2017-03-31 04:06:08 +02:00
Tobias Geerinckx-Rice 0bea8ebe20 gnu: hdparm: Update to 9.51.
* gnu/packages/linux.scm (hdparm): Update to 9.51.
2017-03-31 04:06:08 +02:00
Tobias Geerinckx-Rice 8e320dea30 gnu: goffice: Update to 0.10.34.
* gnu/packages/gnome.scm (goffice): Update to 0.10.34.
2017-03-31 04:06:07 +02:00
Tobias Geerinckx-Rice 5ecd671731 gnu: gmime: Update to 2.6.23.
* gnu/packages/mail.scm (gmime): Update to 2.6.23.
2017-03-31 04:06:06 +02:00
Efraim Flashner 4fbed7494d gnu: rapidjson: Fix building on aarch64.
* gnu/packages/web.scm (rapidjson)[arguments]: Add custom phase for
aarch64 to fix -march detection.
2017-03-31 01:05:28 +03:00
Tobias Geerinckx-Rice 3c2b833334 gnu: freedoom: Update to 0.11.2.
* gnu/packages/games.scm (freedoom): Update to 0.11.2.
2017-03-30 23:52:17 +02:00
Ludovic Courtès 6f9f01fbf6 hydra: Don't build deprecated packages.
* build-aux/hydra/gnu-system.scm (hydra-jobs): When iterating over the
packages, exclude those that match 'package-superseded'.
2017-03-30 23:46:07 +02:00
Ludovic Courtès dca96ad395 gnu: mlocate: Update URLs.
* gnu/packages/search.scm (mlocate)[source, home-page]: Change URLs to
pagure.{org,io}.
2017-03-30 23:40:22 +02:00
Ludovic Courtès 402b03e620 gnu: ruby-concurrent: Work around test failure on ARM.
* gnu/packages/patches/ruby-concurrent-test-arm.patch: New file.
* gnu/packages/ruby.scm (ruby-concurrent)[source](patches): Add it.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-30 23:40:20 +02:00
Ludovic Courtès aef81a81b8 gnu: guix: Include the aarch64 bootstrap Guile.
* gnu/packages/package-management.scm (boot-guile-uri): Add case for aarch64.
(guix-0.12.0)[arguments] <copy-bootstrap-guile>: Handle aarch64.
[inputs]: Add "boot-guile/aarch64".
2017-03-30 23:40:17 +02:00
Leo Famulari 7044301381 gnu: sysstat: Update to 11.4.3.
* gnu/packages/linux.scm (sysstat): Update to 11.4.3.
2017-03-30 17:09:29 -04:00
Marius Bakke 84157bb8bf Merge branch 'master' into core-updates
Most conflicts are from 6fd52309b8.
2017-03-30 22:59:53 +02:00
Mark H Weaver 03d0aa8b22 gnu: linux-libre: Update to 4.10.7.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.7.
(%linux-libre-hash): Update hash.
2017-03-30 16:43:00 -04:00
Mark H Weaver f62acf1eb7 gnu: linux-libre@4.9: Update to 4.9.19.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.19.
2017-03-30 16:42:23 -04:00
Mark H Weaver 7f79df4ae8 gnu: linux-libre@4.4: Update to 4.4.58.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.58.
2017-03-30 16:41:40 -04:00
Marius Bakke fa63939acb gnu: chez-scheme: Fix build failure in 'reset-gzip-timestamps' phase.
* gnu/packages/chez.scm (chez-scheme)[arguments]: Add 'make-manpages-writable'
phase.
2017-03-30 22:39:24 +02:00
Marius Bakke 2513aac170 gnu: kodi: Update to 18.0_alpha-1-ec5d53d.
* gnu/packages/kodi.scm (kodi): Update to 18.0_alpha-1-ec5d53d.
[inputs]: Replace LIBYAJL with RAPIDJSON.
2017-03-30 22:32:46 +02:00
Marius Bakke 4951d2f386 gnu: kodi: Remove silly wrapper script.
* gnu/packages/kodi.scm (kodi)[arguments]: Add SYSTEM_LDFLAGS in
configure-flags. Remove 'wrap' phase. Enable previously failing tests.
2017-03-30 22:32:37 +02:00
Marius Bakke 8c0117371a gnu: kodi: Embed full path to tzdata.
* gnu/packages/kodi.scm (kodi)[arguments]: Add substitution for tzdata in
'patch-stuff' phase.
[inputs]: Add TZDATA.
2017-03-30 22:32:37 +02:00
Marius Bakke c3c25082e8 gnu: ceph: Update to 12.0.1.
* gnu/packages/storage.scm (ceph): Update to 12.0.1.
[arguments]: Disable one new test.
* gnu/packages/patches/ceph-disable-cpu-optimizations.patch: Adjust context.
2017-03-30 22:32:36 +02:00
Marius Bakke 2657fb6381 gnu: xcb-util-cursor: Update to 0.1.3.
* gnu/packages/xorg.scm (xcb-util-cursor): Update to 0.1.3.
[source]: Change to bz2 archive.
2017-03-30 22:31:29 +02:00
Marius Bakke ece42cb381 gnu: libevdev: Update to 1.5.6.
* gnu/packages/xorg.scm (libevdev): Update to 1.5.6.
2017-03-30 22:31:29 +02:00
Marius Bakke bdde64b079 gnu: libinput: Update to 1.7.0.
* gnu/packages/freedesktop.scm (libinput, libinput-minimal): Update to 1.7.0.
2017-03-30 22:31:28 +02:00
Marius Bakke 941a38b66e gnu: exempi: Update to 2.4.2.
* gnu/packages/freedesktop.scm (exempi): Update to 2.4.2.
2017-03-30 22:31:28 +02:00
Leo Famulari 16ab9824b2 gnu: mbedtls-apache: Update to 2.4.2 [fixes CVE-2017-2784, SLOTH and others].
See 'ChangeLog' in the source code distribution for more information about
security-related bug fixes.

* gnu/packages/tls.scm (mbedtls-apache): Update to 2.4.2.
2017-03-30 14:35:41 -04:00
Ricardo Wurmus 67656b7a86 gnu: propeller-binutils: Use flex 2.6.1.
* gnu/packages/embedded.scm (propeller-binutils)[native-inputs]: Replace
"flex" with "flex-2.6.1".
2017-03-30 17:34:34 +02:00
Kei Kebreau e3b2e943b8 gnu: milkytracker: Update to 1.0.0.
* gnu/packages/music.scm (milkytracker): Update to 1.0.0.
[source]: Change uri; add file-name; add snippet to remove non-FSDG
compliant data.
[build-system]: Change from gnu-build-system to cmake-build-system.
[arguments]: Remove #:make-flags; disable tests (which are no longer
present).
[inputs]: Change sdl to sdl2.
2017-03-30 10:18:22 -04:00
Ludovic Courtès 314120f2be gnu: guix: Update development snapshot.
The previous snapshot lacked the FTP download fix from commit
6dfd683dc7.  Thus, the daemon's "download"
built-in would fail to download over FTP.

* gnu/packages/package-management.scm (guix-devel): Update to aabece2.
2017-03-30 11:50:45 +02:00
Ludovic Courtès aabece2ef8 gnu: guile-git, guile-bytestructures: Switch to Guile 2.2.
* gnu/packages/guile.scm (guile-bytestructures)[inputs]: Replace
GUILE-2.0 with GUILE-2.2.
(guile-git)[inputs]: Likewise.
2017-03-30 11:15:17 +02:00
Ludovic Courtès e93f8d9849 gnu: guile-git: Update to latest Git snapshot.
* gnu/packages/guile.scm (guile-git): Update to 96dfb3b.
[arguments]: Remove #:parallel-tests?.
2017-03-30 11:15:17 +02:00
Andy Patterson 58b240783c gnu: ccl: Forcibly set CCL_DEFAULT_DIRECTORY.
* gnu/packages/lisp.scm (ccl)[arguments]: Unconditionally set the
CCL_DEFAULT_DIRECTORY environment variable in the wrapper script.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-30 11:15:17 +02:00
Andy Patterson fc7d5a34d0 gnu: ccl: Install included libraries.
* gnu/packages/lisp.scm (ccl)[arguments]: Add 'srfi-26' to '#:modules', and
copy the included libraries to the output in the 'install' phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-30 11:15:17 +02:00
Arun Isaac c86c19914a gnu: Add emacs-linum-relative.
* gnu/packages/emacs.scm (emacs-linum-relative): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-30 11:15:17 +02:00
Vasile Dumitrascu 239cf024b4 gnu: Add emacs-highlight-sexp.
* gnu/packages/emacs (emacs-highlight-sexp): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-30 11:15:16 +02:00
Vasile Dumitrascu 6a91c5f2dc gnu: Add emacs-ox-twbs.
* gnu/packages/emacs.scm (emacs-ox-twbs): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-30 11:15:16 +02:00
Vasile Dumitrascu 6b7e336265 gnu: Add emacs-idle-highlight.
* gnu/packages/emacs.scm (emacs-idle-highlight): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-30 11:15:16 +02:00
Ludovic Courtès 32e18d3754 hydra: Include the localstatedir in the binary tarball.
This is a followup to 6b63c43e06.

* build-aux/hydra/gnu-system.scm (tarball-jobs): Pass #:localstatedir? #t
to 'self-contained-tarball'.
2017-03-30 11:15:16 +02:00
Ricardo Wurmus fa702e1a29 gnu: discrover: Add missing includes.
* gnu/packages/bioinformatics.scm (discrover)[arguments]: Add build phase
"add-missing-includes" to include "random" headers.
2017-03-30 10:35:54 +02:00
Ricardo Wurmus 0d2c0562b8 gnu: stringtie: Remove typedef conflict.
* gnu/packages/bioinformatics.scm (stringtie)[arguments]: Remove conflicting
typedef in a new build phase "remove-duplicate-typedef".
2017-03-30 10:35:53 +02:00
Ricardo Wurmus c3913fac57 gnu: powertabeditor: Link with pthread.
* gnu/packages/music.scm (powertabeditor)[arguments]: Link with "-lpthread" to
fix build with GCC 5.
2017-03-30 10:35:53 +02:00
Ricardo Wurmus e32f8dad94 gnu: hugs: Build with GCC 4.9.
* gnu/packages/hugs.scm (hugs)[native-inputs]: Add "gcc-4.9".
2017-03-30 10:35:52 +02:00
Leo Famulari 06e8d0c8e5 gnu: dash: Update to 0.5.9.1.
* gnu/packages/shells.scm (dash): Update to 0.5.9.1.
[source]: Use git-fetch.
[native-inputs]: Add autoconf and automake.
[arguments]: Add 'bootstrap' phase.
2017-03-30 03:37:31 -04:00
Eric Bavier 77310a1c2d gnu: qutebrowser: Upgrade to 0.10.1.
* gnu/packages/web.scm (qutebrowser): Upgrade to 0.10.1.
2017-03-29 21:04:48 -05:00
Eric Bavier bf5b6fb294 gnu: thefuck: Upgrade to 3.15 and enable tests.
* gnu/packages/patches/thefuck-test-environ.patch: New patch.
* gnu/packages/admin.scm (thefuck): Upgrade to 3.15.
[source]: Use patch.
[arguments]: Remove '#:tests? #f'.  Move 'check' phase after 'install'.
* gnu/local.mk (dist_patch_DATA): Add patch.
2017-03-29 20:51:06 -05:00
Tobias Geerinckx-Rice 6fd52309b8 gnu: Use HTTPS for almost all gnu.org HOME-PAGEs.
All HTTP gnu.org (and supported subdomain) HOME-PAGEs changed to HTTPS.
2017-03-30 01:30:16 +02:00
Tobias Geerinckx-Rice c219997a14 gnu: orc: Update home page.
* gnu/packages/gstreamer.scm (orc)[home-page]: Update.
2017-03-30 01:29:33 +02:00
Mark H Weaver 2abf6371cc gnu: icecat: Add fixes from mozilla-esr45; use skia by default.
* gnu/packages/gnuzilla.scm (icecat)[source][patches]: Add fixes from
the upstream mozilla-esr45 repository.
[arguments]: Add 'use-skia-by-default' phase.
2017-03-29 19:03:38 -04:00
Ludovic Courtès 755c5ba85c gnu: wordnet: Build with the default GCC.
* gnu/packages/wordnet.scm (wordnet)[native-inputs]: Remove.
2017-03-29 22:52:02 +02:00
Ludovic Courtès cdb3f734cf packages: Remove "mips64el-linux" from '%hydra-supported-systems'.
* guix/packages.scm (%hydra-supported-systems): Remove "mips64el-linux".
2017-03-29 22:50:42 +02:00
Leo Famulari 5e92341471 gnu: python-enum34: Update to 1.1.6.
* gnu/packages/python.scm (python-enum34, python2-enum34): Update to 1.1.6.
[arguments]: Remove custom test phase.
2017-03-29 16:39:04 -04:00
Ludovic Courtès 2fa077f316 gnu: guile-reader: Build with gperf 3.0.
* gnu/packages/guile.scm (guile-reader)[native-inputs]: Use GPERF-3.0
instead of GPERF.
2017-03-29 22:29:49 +02:00
Kei Kebreau 9342c5a0bc gnu: schismtracker: Update to 20160913.
* gnu/packages/music.scm (schismtracker): Update to 20160913.
[source]: Update snippet for version 20160913.
2017-03-29 16:23:59 -04:00
Tobias Geerinckx-Rice a29d329fa8 gnu: games: Don't MKDIR before INSTALL-FILE.
* gnu/packages/games.scm (glkterm, glulxe, grue-hunter)[arguments]:
Remove spurious MKDIRs.
2017-03-29 22:06:01 +02:00
Tobias Geerinckx-Rice 05e0ac46ef gnu: retroarch: Don't use %OUTPUT.
* gnu/packages/games.scm (retroarch)[arguments]: Accept an OUTPUTS key
in the configure phase.  Add a comment about the script.  Use LET*.
2017-03-29 22:06:01 +02:00
Tobias Geerinckx-Rice 3f12714742 gnu: games: Use ‘modify-phases’.
* gnu/packages/games.scm (pingus, cmatrix, freedink-data, xboing, irrlicht,
glkterm, glulx, retroarch)[arguments]: Use ‘modify-phases’ syntax.
2017-03-29 22:06:00 +02:00
Tobias Geerinckx-Rice 92bdf77790 gnu: glulxe: Fix typo.
* gnu/packages/games.scm (glulxe)[description]: Fix typo.
2017-03-29 22:06:00 +02:00
Tobias Geerinckx-Rice dbe7095b46 gnu: glkterm: Use @code in description.
* gnu/packages/games.scm (glkterm)[description]: Use @code.
2017-03-29 22:06:00 +02:00
Tobias Geerinckx-Rice ddce090306 gnu: games: Use INSTALL-FILE.
* gnu/packages/games.scm (glkterm, glulxe): Use INSTALL-FILE, return #t
instead of an undefined value, and prefer using let bindings.
2017-03-29 22:05:59 +02:00
Tobias Geerinckx-Rice dbaca6b507 gnu: zstd: Update to 1.1.4.
* gnu/packages/compression.scm (zstd): Update to 1.1.4.
2017-03-29 22:05:59 +02:00
Tobias Geerinckx-Rice a53a6b6fef gnu: hyperrogue: Improve description.
* gnu/packages/games.scm (hyperrogue)[description]: Mainly fix a typo.
Throw in a few tweaks as well.
2017-03-29 22:05:59 +02:00
Tobias Geerinckx-Rice 8d5fe1f1cf gnu: Add httpfs2.
* gnu/packages/file-systems.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-03-29 22:05:59 +02:00
Ludovic Courtès be2ba697bd doc: Remove extraneous "See" before @xref.
* doc/guix.texi (GNU Distribution): Add extraneous "See".
2017-03-29 21:30:45 +02:00
Leo Famulari 8615da9051 gnu: beets: Don't build with python-enum34.
This package is unnecessary when using Python > 3.3.

* gnu/packages/music.scm (beets)[inputs]: Remove python-enum34.
2017-03-29 14:57:24 -04:00
Leo Famulari 7086540de6 gnu: elfutils: Update to 0.168 [fixes CVE-2016-{10254,10255}].
* gnu/packages/elf.scm (elfutils): Update to 0.168.
[source]: Update URL.
[home-page]: Update URL.
2017-03-29 14:37:49 -04:00
Leo Famulari 4caad35dbe gnu: imagemagick: Update to 6.9.8-3.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.8-3.
2017-03-29 14:37:45 -04:00
Marius Bakke c7f7a5bac2 gnu: kakoune: Fix build after Boost ABI change.
Also remove now-obsolete snippet and inputs.

* gnu/packages/text-editors.scm (kakoune)[source]: Remove gzip substitution.
[arguments]: Drop CPPFLAGS from #:make-flags.
[native-inputs]: Remove GCC-5.
[inputs]: Remove gcc:lib.
2017-03-29 14:23:56 +02:00
Ludovic Courtès a4cdcffb19 gnu: lxsession: Build Vala code from source.
* gnu/packages/lxde.scm (lxsession)[source](snippet): New field.
2017-03-29 13:18:37 +02:00
Kei Kebreau f8279ba46b gnu: hyperrogue: Update to 9.4c.
* gnu/packages/games.scm (hyperrogue): Update to 9.4c.
[source]: Remove snippet.
[arguments]: Remove #:make-flags; adjust configure and install phases; add
install-data phase.
[native-inputs]: Add hyperrogue-data and unzip.
[license]: Add cc-by-sa4.0 and cc0 licenses for sounds.
2017-03-28 23:38:23 -04:00
Leo Famulari 7bde7273c3 gnu: libressl: Update to 2.5.2.
* gnu/packages/tls.scm (libressl): Update to 2.5.2.
2017-03-28 22:05:55 -04:00
Vasile Dumitrascu b125649a59 gnu: emacs-monroe: Don't use MELPA archive.
* gnu/packages/emacs.scm (emacs-monroe)[version]: Change to 0.3.1.
[source]: Use github instead of melpa. Add (file-name).
[home-page]: Use HTTPS.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-29 03:05:40 +02:00
Marius Bakke 3ee9355e2f gnu: python-pexpect: Add verbose test output.
Fixes <https://bugs.gnu.org/26286>.

* gnu/packages/python.scm (python-pexpect, python2-pexpect)[arguments]: Add
"-v" to "nosetests" command.
2017-03-29 02:31:59 +02:00
ng0 812c1819a0 gnu: Add lxde.
* gnu/packages/lxde.scm (lxde): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:45 +02:00
ng0 50042505db gnu: Add lxpanel.
* gnu/packages/lxde.scm (lxpanel): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:45 +02:00
ng0 dbf544f9ec gnu: Add keybinder.
* gnu/packages/wm.scm (keybinder): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:45 +02:00
ng0 d3897349e9 gnu: Add lxsession.
* gnu/packages/lxde.scm (lxsession): New variable.
* gnu/packages/patches/lxsession-use-gapplication.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:45 +02:00
ng0 f3b3af37d4 gnu: Add lxinput.
* gnu/packages/lxde.scm (lxinput): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:45 +02:00
ng0 169274d5c5 gnu: Add lxde-common.
* gnu/packages/lxde.scm (lxde-common): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:45 +02:00
ng0 4dcbed572c gnu: Add lxde-icon-theme.
* gnu/packages/lxde.scm (lxde-icon-theme): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:44 +02:00
ng0 7f7d52cc9a gnu: Add lxmenu-data.
* gnu/packages/lxde.scm (lxmenu-data): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:44 +02:00
Kyle Meyer 6bd4a88989 gnu: emacs-elfeed: Update to 2.1.0.
* gnu/packages/emacs.scm (emacs-elfeed): Update to 2.1.0.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-28 22:15:44 +02:00
Ludovic Courtès e1f02f92e9 Replace (compose not PROC) with simpler idioms.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments] <check>:
Use (negate proc) instead of (compose not proc).
* guix/import/cran.scm (recursive-import): Likewise.
* guix/import/elpa.scm (filter-dependencies): Use 'remove' instead of
'(filter (compose not proc) ...)'.
2017-03-28 22:15:44 +02:00
Leo Famulari 23b9168dcd gnu: python-pytest-2.9.2: Replace with python-pytest-3.0.
* gnu/packages/python.scm (python-pytest-2.9.2): Replace with ...
(python-pytest-3.0): ... new variable.
(python2-pytest-3.0): New variable.
(python-cryptography, python2-cryptography, python-sphinx-1.5.3)[native-inputs]:
Replace python-pytest-2.9.2 with python-pytest-3.0.
* gnu/packages/backup.scm (borg)[native-inputs]: Likewise.
gnu/packages/calendar.scm (khal)[native-inputs]: Likewise.
2017-03-28 15:59:22 -04:00
Muriithi Frederick Muriuki eec21d4be7 gnu: Add python-mando
* gnu/packages/python.scm (python-mando, python2-mando): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-28 15:59:22 -04:00
Muriithi Frederick Muriuki 5d0c3ba856 gnu: Add python-paramunittest
* gnu/packages/python.scm (python-paramunittest, python2-paramunittest): New
variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-28 15:59:22 -04:00
Muriithi Frederick Muriuki 3061b33190 gnu: Add python-sphinx@1.5.3.
* gnu/packages/python.scm (python-sphinx-1.5.3): New variable.
2017-03-28 15:59:22 -04:00
Muriithi Frederick Muriuki 7f71e2579a gnu: Add python-pytest@3.0.7
* gnu/packages/python.scm (python-pytest-3.0.7): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-28 15:59:18 -04:00
Leo Famulari a652eb9331 gnu: shroud: Use HTTPS source URL.
* gnu/packages/password-utils.scm (shroud)[source]: Use HTTPS URL.
2017-03-28 15:23:07 -04:00
Arun Isaac 59d915ac37 gnu: shroud: Fix home page URL.
* gnu/packages/password-utils.scm (shroud)[home-page]: Update URL.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-28 15:23:03 -04:00
Marius Bakke 2e93ee5f1b gnu: rocksdb: Update to 5.2.1.
* gnu/packages/databases.scm (rocksdb): Update to 5.2.1.
2017-03-28 17:02:04 +02:00
Marius Bakke f8f44dd738 gnu: Add rdma-core.
* gnu/packages/linux.scm (rdma-core): New variable.
2017-03-28 17:02:03 +02:00
Marius Bakke b3ed50e6ad gnu: Add multipath-tools.
* gnu/packages/linux.scm (multipath-tools): New variable.
2017-03-28 16:40:55 +02:00
Marius Bakke aadead6f17 gnu: fio: Enable rbd support.
* gnu/packages/benchmark.scm (fio)[inputs]: Add ceph:lib.
2017-03-28 16:38:17 +02:00
Marius Bakke dcfe44cbce gnu: Add ceph.
* gnu/packages/storage.scm,
  gnu/packages/patches/ceph-disable-cpu-optimizations.patch,
  gnu/packages/patches/ceph-skip-collect-sys-info-test.patch,
  gnu/packages/patches/ceph-skip-unittest_blockdev.patch: New files.
* gnu/local.mk (GNU_SYSTEM_MODULES, dist_patch_DATA): Register it.
2017-03-28 16:35:37 +02:00
Marius Bakke 22ea02351f gnu: xmlstarlet: Disable failing tests.
* gnu/packages/xml.scm (xmlstarlet)[arguments]: Add phase to disable two tests.
2017-03-28 15:54:27 +02:00
Marius Bakke ad31b4febf Revert "gnu: snappy: Update to 1.1.4."
Rocksdb fails to build with this version:
https://github.com/facebook/rocksdb/issues/1947

This reverts commit 9baab9aeed.
2017-03-28 15:54:11 +02:00
Marius Bakke f125ec8ef2 gnu: fio: Install python scripts in separate output.
* gnu/packages/benchmark.scm (fio)[outputs]: New field.
[arguments]: Rename 'wrap-python-scripts' phase to 'move-outputs'. Keep wrapper.
2017-03-28 15:51:28 +02:00
Ricardo Wurmus 1a75083b0d import cran: Print package stream in the expected order.
* guix/scripts/import/cran.scm (guix-import-cran): Reverse list of packages.
2017-03-28 15:54:10 +02:00
Ricardo Wurmus 2dca8b2d51 import cran: Automatically add gfortran and zlib when needed.
* guix/import/cran.scm (needs-fortran?, needs-zlib?): New procedures.
(description->package): Use them.
2017-03-28 15:37:47 +02:00
Ludovic Courtès 6dfd683dc7 download: Properly parse ftp:// URLs that lack user info.
Fixes a regression introduced in
a4f5423415.

Reported by Hartmut Goebel.

* guix/build/download.scm (ftp-fetch): Account for the case where
'uri-userinfo' returns #f.  Remove the case where it returns "" since
that cannot happen.
2017-03-28 13:30:09 +02:00
Mark H Weaver 9909b8b952 gnu: linux-libre: Update to 4.10.6.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.6.
(%linux-libre-hash): Update hash.
2017-03-28 05:37:42 -04:00
Mark H Weaver cd5ba39588 gnu: linux-libre@4.9: Update to 4.9.18.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.18.
2017-03-28 05:37:08 -04:00
Mark H Weaver 8ba0bd1c6c gnu: linux-libre@4.4: Update to 4.4.57.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.57.
2017-03-28 05:36:20 -04:00
Ludovic Courtès bdb59b331b derivations: Do not fetch narinfos for non-substitutable items.
This avoids connections to substitute servers for derivations that are
not substitutable anyway, such as profiles.

Reported by Andy Wingo.

* guix/derivations.scm (substitution-oracle): Skip derivations that do
not pass 'substitutable-derivation?'.
* tests/derivations.scm ("substitution-oracle and #:substitute? #f"):
New test.
2017-03-28 10:00:05 +02:00
Efraim Flashner 04952bd732 gnu: nspr: Use 'modify-phases' syntax.
* gnu/packages/gnuzilla.scm (nspr)[arguments]: Use 'modify-phases'
syntax.
2017-03-28 09:38:27 +03:00
Efraim Flashner 84fb4bd907 gnu: nspr: Update to 4.14.
* gnu/packages/gnuzilla.scm (nspr): Update to 4.14.
2017-03-28 09:38:14 +03:00
Efraim Flashner aaac423cc4 gnu: mozjs@24: Use more inherited fields.
* gnu/packages/gnuzilla.scm (mozjs@24)[arguments]: Use
'substitute-keyword-arguments', override inherited 'configure.
[native-inputs]: Remove field to use inherited native-inputs.
[propagated-inputs]: Same.
2017-03-28 09:35:29 +03:00
Efraim Flashner 56486b3a40 gnu: mozjs@17: Use 'modify-phases' syntax.
* gnu/packages/gnuzilla.scm (mozjs@17)[arguments]: Use 'modify-phases'
syntax.
2017-03-28 09:35:24 +03:00
Efraim Flashner f403c6761b gnu: mozjs@17: Add missing inputs.
* gnu/packages/gnuzilla.scm (mozjs@17)[native-inputs]: Add pkg-config.
[propagated-inputs]: Add nspr.
[inputs]: Add zlib.
2017-03-28 09:34:58 +03:00
Efraim Flashner a64b7da513 gnu: mozjs@17: Add support for aarch64-linux.
* gnu/packages/gnuzilla.scm (mozjs@17)[source]: Add patch.
[arguments]: Add phase deleting slow test, add configure argument for
building on aarch64-linux.
* gnu/packages/patches/mozjs17-aarch64-support.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-28 09:34:53 +03:00
Efraim Flashner 26f38d313b gnu: mozjs@24: Add aarch64-support.
* gnu/packages/gnuzilla.scm (mozjs@24)[source]: Add patch.
[arguments]: Add flag for building on aarch64-linux, delete failing test.
* gnu/packages/patches/mozjs24-aarch64-support.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-28 09:34:44 +03:00
Efraim Flashner b4f67b7ebb gnu: mysql: Disable tests on aarch64-linux.
* gnu/packages/databases.scm (mysql)[arguments]: Disable the test suite
on aarch64-linux.
2017-03-28 09:34:38 +03:00
Efraim Flashner 6f76606984 gnu: gsl: Disable tests on aarch64-linux.
* gnu/packages/maths.scm (gsl)[arguments]: Do not run the test suite on
aarch64-linux.
[home-page]: Use https.
2017-03-28 09:34:33 +03:00
Leo Famulari c17383f400 Merge branch 'master' into core-updates 2017-03-27 21:19:38 -04:00
Leo Famulari 7aeb4ffa58 gnu: epiphany: Update to 3.22.7.
* gnu/packages/gnome.scm (epiphany): Update to 3.22.7.
2017-03-27 20:20:50 -04:00
Leo Famulari c386855249 gnu: webkitgtk: Update to 2.16.0.
WebKitGTK+ 2.16.0 is the first stable release of WebKitGTK+ that uses libgcrypt
instead of GnuTLS for some cryptographic functions:

<https://bugs.webkit.org/show_bug.cgi?id=163125>
<http://trac.webkit.org/changeset/208297/webkit>

* gnu/packages/webkit.scm (webkitgtk): Update to 2.16.0.
[inputs]: Replace gnutls with libgcrypt.
2017-03-27 20:20:47 -04:00
Tobias Geerinckx-Rice 7432d3ae18 gnu: grafx2: Remove zero-width space.
* gnu/packages/game-development.scm (grafx2)[description]: Remove
invisible <U+200B> (‘zero-width space’) character.
2017-03-28 01:22:18 +02:00
Ludovic Courtès a48a1071a6 gnu: libgit2: Patch use-after-free.
* gnu/packages/patches/libgit2-use-after-free.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/version-control.scm (libgit2)[inputs]: Add it.
[arguments] <#:phases>: Add 'apply-patch' phase.
2017-03-28 00:32:37 +02:00
Leo Famulari bc4a2b853c gnu: lm-sensors: Use a descriptive file name for the source tarball.
* gnu/packages/linux.scm (lm-sensors)[source]: Add file-name field.
2017-03-27 14:32:29 -04:00
Tobias Geerinckx-Rice bd9b8d89ad gnu: mcelog: Update to 149.
* gnu/packages/linux.scm (mcelog): Update to 149.
2017-03-27 20:20:06 +02:00
Tobias Geerinckx-Rice 81d95a121a gnu: corkscrew: Install the README file.
* gnu/packages/ssh.scm (corkscrew)[arguments]: Add a very basic
‘install-documentation’ phase.
2017-03-27 20:20:05 +02:00
David Thompson 1e4063010d gnu: haunt: Disable test suite.
* gnu/packages/guile.scm (haunt): Disable test suite.
2017-03-27 14:18:17 -04:00
Thomas Danckaert b1a8fd2d2c gnu: libreoffice: Update to 5.3.1.2.
* gnu/packages/libreoffice.scm (libreoffice): Update to 5.3.1.2.
[inputs]: Add libstaroffice and libzmf.
[arguments]: Remove reference to removed patch; unpack xmlsec 1.2.23 tarball.
(xmlsec-src-libreoffice): Update to version 1.2.23 tarball.
2017-03-27 20:17:02 +02:00
Thomas Danckaert 90ac806d3a gnu: orcus: Update to 0.12.1.
* gnu/packages/libreoffice.scm (orcus): Update to 0.12.1.
[inputs]: Add python.
2017-03-27 20:16:47 +02:00
Thomas Danckaert b85b56dd7b gnu: libetonyek: Update to 0.1.6.
* gnu/packages/libreoffice.scm (libetonyek): Update to 0.1.6.
[arguments]: Add phase 'autoreconf, because configure.ac is patched.  Add
configure flag "--with-mdds=1.2".
[inputs]: Add liblangtag.
[native-inputs]: Add autoconf and automake.
* gnu/packages/patches/libetonyek-build-with-mdds-1.2.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-27 20:16:32 +02:00
Thomas Danckaert 22e52dbd06 gnu: Add libstaroffice.
* gnu/packages/libreoffice.scm (libstaroffice): New variable.
2017-03-27 20:16:19 +02:00
David Thompson 68c6110c20 gnu: Add grafx2.
* gnu/packages/game-development.scm (grafx2): New variable.
2017-03-27 14:16:02 -04:00
Thomas Danckaert cb38643924 gnu: ixion: Update to 0.12.2.
* gnu/packages/libreoffice.scm (ixion): Update to 0.12.2.
[inputs]: Replace python-2 by python.
2017-03-27 20:15:51 +02:00
Thomas Danckaert 57144094b8 gnu: mdds: Upgrade to 1.2.2.
* gnu/packages/boost.scm (mdds): Upgrade to 1.2.2.
2017-03-27 20:15:36 +02:00
Thomas Danckaert 741916f114 gnu: Add libzmf.
* gnu/packages/libreoffice.scm (libzmf): New Variable.
2017-03-27 20:15:04 +02:00
Leo Famulari ccfac09c82 gnu: geoclue: Update to 2.4.6.
* gnu/packages/gnome.scm (geoclue): Update to 2.4.6.
2017-03-27 11:57:42 -04:00
Tobias Geerinckx-Rice 10c95711b4 gnu: corkscrew: Improve descriptions.
* gnu/packages/ssh.scm (corkscrew)[synopsis, description]: Fix typos and
condense.  Remove scary warning (the tunnel is always encrypted through
SSH) and speculation.
2017-03-27 17:42:52 +02:00
Tobias Geerinckx-Rice 040ae44aa1 gnu: corkscrew: Download source from a mirror.
* gnu/packages/ssh.scm (corkscrew)[source]: Use
‘https://downloads.openwrt.org’.
2017-03-27 17:42:51 +02:00
Tobias Geerinckx-Rice a800c2175f gnu: mosh: Update to 1.3.0.
* gnu/packages/ssh.scm (mosh): Update to 1.3.0.
2017-03-27 17:42:51 +02:00
Tobias Geerinckx-Rice f051d83c32 gnu: youtube-dl: Update to 2017.03.26.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.26.
2017-03-27 17:42:51 +02:00
Danny Milosavljevic 6e64766a86 gnu: gnuplot: Enable tikz backend.
* gnu/packages/maths.scm (gnuplot)[inputs]: Add lua.
2017-03-27 15:58:50 +02:00
Alex Kost 689db38e34 ui: Support Texinfo markup in package synopses.
* guix/ui.scm (package-field-string): New procedure.
(package-description-string): Use it.
(package-synopsis-string): New procedure.
(package->recutils): Use it.
* guix/scripts/lint.scm (check-synopsis-style)[check-texinfo-markup]:
New procedure.  Use it in checks.
* tests/lint.scm: Test it.
* gnu/packages/perl.scm (perl-try-tiny)[synopsis]: Adjust for the
Texinfo markup.
2017-03-27 10:55:16 +03:00
Ludovic Courtès 2fccc0d193 maint: Give command to install the pre-push hook.
* HACKING: Add 'cp' line to install the pre-push hook.
2017-03-27 00:13:18 +02:00
Marius Bakke b5a1359d44 gnu: mumble: Fix build after speex update.
* gnu/packages/telephony.scm (mumble)[inputs]: Add SPEEXDSP.
2017-03-26 23:47:38 +02:00
Marius Bakke 01229cbe16 gnu: Add speexdsp.
* gnu/packages/xiph.scm (speexdsp): New variable. Export it.
2017-03-26 23:47:37 +02:00
Leo Famulari 5d073bdb05 Revert "gnu: audacity: Use gtk+@3."
It appears that Audacity does not yet support GTK+-3 fully; the user interface
was unusable with this change.

This reverts commit 36e17ab417.
2017-03-26 16:26:29 -04:00
Tobias Geerinckx-Rice 20413597b6 gnu: claws-mail: Update to 3.15.0.
* gnu/packages/mail.scm (claws-mail): Update to 3.15.0.
2017-03-26 16:59:44 +02:00
Vasile Dumitrascu a1eba1bec1 gnu: Add emacs-monroe.
* gnu/packages/emacs.scm (emacs-monroe): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-26 16:00:18 +02:00
Vasile Dumitrascu 7f7b38af9e gnu: Add emacs-keyfreq.
* gnu/packages/emacs.scm (emacs-keyfreq): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-26 15:56:19 +02:00
Huang Ying 0a5ce0d1df profiles: Create fonts.dir/scale for all fonts directories.
* guix/profiles.scm (fonts-dir-file): Create fonts.dir/scale files for all
fonts directories.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-26 12:53:52 +02:00
Huang Ying addce19e2d union: Add create-all-directories? parameter to 'union-build'.
* guix/build/union.scm (union-build): Add create-all-directories? keyword
parameter.
* tests/union.scm ("union-build #:create-all-directories? #t"): New test.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-03-26 12:53:48 +02:00
Alex Sassmannshausen 7398d96ee9 gnu: perl-scalar-list-utils: Update to 1.47.
* gnu/packages/perl.scm (perl-scalar-list-utils): Update to 1.47.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen 78bf9e01c0 gnu: perl-parse-cpan-meta: Update to 2.150010.
* gnu/packages/perl.scm (perl-parse-cpan-meta): Update to 2.150010.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen f3312bc191 gnu: perl-cpan-meta-yaml: Update to 0.018.
* gnu/packages/perl.scm (perl-cpan-meta-yaml): Update to 0.018.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen 2dfd0d7b9c gnu: perl-cpan-meta-requirements: Update to 2.140.
* gnu/packages/perl.scm (perl-cpan-meta-requirements): Update to 2.140.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen 687d2c4fe2 gnu: perl-yaml: Update to 1.23.
* gnu/packages/perl.scm (perl-yaml): Update to 1.23.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen 7b34de5f84 gnu: perl-variable-magic: Update to 0.61.
* gnu/packages/perl.scm (perl-variable-magic): Update to 0.61.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen 9b882dcc0c gnu: perl-time-duration-parse: Update to 0.13.
* gnu/packages/perl.scm (perl-time-duration-parse): Update to 0.13.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen cbe50be4c9 gnu: perl-test-warnings: Update to 0.026.
* gnu/packages/perl.scm (perl-test-warnings): Update to 0.026.
2017-03-26 11:33:37 +02:00
Alex Sassmannshausen 3cb9d58ad6 gnu: perl-test-simple: Update to 1.302078.
* gnu/packages/perl.scm (perl-test-simple): Update to 1.302078.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen ffdbbcc812 gnu: perl-test-exception: Update to 0.43.
* gnu/packages/perl.scm (perl-test-exception): Update to 0.43.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen 0ac43aaa69 gnu: perl-test-cleannamespaces: Update to 0.22.
* gnu/packages/perl.scm (perl-test-cleannamespaces): Update to 0.22.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen be7e54325e gnu: perl-sub-name: Update to 0.21.
* gnu/packages/perl.scm (perl-sub-name): Update to 0.21.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen 84c73b7f45 gnu: perl-params-validate: Update to 1.26.
* gnu/packages/perl.scm (perl-params-validate): Update to 1.26.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen 3857a3fc2a gnu: perl-package-deprecationmanager: Update to 0.17.
* gnu/packages/perl.scm (perl-package-deprecationmanager): Update to 0.17.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen 0d01f517d0 gnu: perl-moose: Update to 2.2004.
* gnu/packages/perl.scm (perl-moose): Update to 2.2004.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen c4fcf35420 gnu: perl-module-runtime-conflicts: Update to 0.003.
* gnu/packages/perl.scm (perl-module-runtime-conflicts): Update to 0.003.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen 0c61441a7f gnu: perl-devel-partialdump: Update to 0.18.
* gnu/packages/perl.scm (perl-devel-partialdump): Update to 0.18.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen 2d31b7f19b gnu: perl-devel-overloadinfo: Update to 0.004.
* gnu/packages/perl.scm (perl-devel-overloadinfo): Update to 0.004.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen be2b42a7f6 gnu: perl-cpan-meta-check: Update to 0.011.
* gnu/packages/perl.scm (perl-cpan-meta-check): Update to 0.011.
2017-03-26 11:33:36 +02:00
Alex Sassmannshausen a00afca443 gnu: perl-common-sense: Update to 3.74.
* gnu/packages/perl.scm (perl-common-sense): Update to 3.74.
2017-03-26 11:33:35 +02:00
Alex Sassmannshausen a941be6a3c gnu: perl-clone: Update to 0.38.
* gnu/packages/perl.scm (perl-clone): Update to 0.38.
2017-03-26 11:33:35 +02:00
Alex Sassmannshausen fb89fc0cde gnu: perl-class-load: Update to 0.23.
* gnu/packages/perl.scm (perl-class-load): Update to 0.23.
2017-03-26 11:33:35 +02:00
Alex Sassmannshausen 4c08a8a67a gnu: perl-capture-tiny: Update to 0.46.
* gnu/packages/perl.scm (perl-capture-tiny): Update to 0.46.
2017-03-26 11:33:35 +02:00
Alex Sassmannshausen ee6d716234 gnu: perl-b-hooks-endofscope: Update to 0.21.
* gnu/packages/perl.scm (perl-b-hooks-endofscope): Update to 0.21.
2017-03-26 11:33:35 +02:00
Alex Sassmannshausen 033dec64cc gnu: Add perl-test-needs.
* gnu/packages/perl.scm (perl-test-needs): New variable.
2017-03-26 11:33:35 +02:00
Alex Sassmannshausen 21b7cf4287 gnu: Add perl-file-pushd.
* gnu/packages/perl.scm (perl-file-pushd): New variable
2017-03-26 11:33:35 +02:00
Efraim Flashner 6ff5e9baea gnu: denemo: Update to 2.1.
* gnu/packages/music.scm (denemo): Update to 2.1.
2017-03-26 12:13:27 +03:00
Marius Bakke 727bec13a3 gnu: po4a: Make manpages writable before resetting timestamps.
* gnu/packages/gettext.scm (po4a)[arguments]: Add
'make-compressed-files-writable' phase.
2017-03-26 11:06:46 +02:00
Julien Lepiller 23bd8f556e gnu: bigloo: Fix build failure in ld.
* gnu/packages/scheme.scm (bigloo)[arguments]<#:configure-flags>: Add --cflags=-fPIC.
2017-03-26 10:42:51 +02:00
Marius Bakke b1554326bb gnu: libsvgtiny: Build with gperf@3.0.
* gnu/packages/web.scm (libsvgtiny)[native-inputs]: Change GPERF to GPERF-3.0.
2017-03-26 09:36:00 +02:00
Marius Bakke 5ac097e28c gnu: libpqxx: Fix build with newer sed.
* gnu/packages/databases.scm (libpqxx)[arguments]: Add 'fix-sed-command' phase
that corrects a typo in the configure script.
2017-03-26 09:16:04 +02:00
Efraim Flashner 82654d956f gnu: aseprite: Downgrade to 1.1.7.
* gnu/packages/game-development.scm (aseprite): Downgrade to 1.1.7.
2017-03-26 10:14:04 +03:00
Mark H Weaver 81e752d92e gnu: linux-libre: Update to 4.10.5.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.5.
(%linux-libre-hash): Update hash.
2017-03-26 03:12:33 -04:00
Mark H Weaver bd0423262a gnu: linux-libre@4.9: Update to 4.9.17.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.17.
2017-03-26 03:10:25 -04:00
Mark H Weaver 3c67367612 gnu: linux-libre@4.4: Update to 4.4.56.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.56.
2017-03-26 03:09:06 -04:00
Mark H Weaver 3089b5d3f5 import: stackage: Compile only if guile-json is available.
* Makefile.am (MODULES): Move "guix/import/stackage.scm" within
"if HAVE_GUILE_JSON".  Sort the modules within that conditional.
2017-03-26 03:07:33 -04:00
Marius Bakke 14d0db40ff gnu: vte-ng: Build with gperf@3.0.
* gnu/packages/gnome.scm (vte-ng)[native-inputs]: Change GPERF to GPERF-3.0.
2017-03-26 08:29:19 +02:00
Marius Bakke 3c5698046a gnu: libtorrent-rasterbar: Update to 1.1.2.
* gnu/packages/bittorrent.scm (libtorrent-rasterbar): Update to 1.1.2.
[source]: Use patch.
* gnu/packages/patches/libtorrent-rasterbar-boost-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-26 07:49:50 +02:00
Marius Bakke ff4dc16eac gnu: aseprite: Update to 1.1.13.
* gnu/packages/game-development.scm (aseprite): Update to 1.1.13.
[source]: Switch to release archive.
2017-03-26 07:09:12 +02:00
Ludovic Courtès d1e3f59c9b gnu: coreutils: Patch 'cut' unit test on ARM.
Fixes <https://bugs.gnu.org/26253>.

* gnu/packages/patches/coreutils-cut-huge-range-test.patch: New file.
* gnu/packages/base.scm (coreutils)[native-inputs]: Add it as an input.
[arguments] <#:phases>: On ARM, add 'patch-cut-test' phase.
* gnu/local.mk (dist_patch_DATA): Add 'coreutils-cut-huge-range-test.patch'.
2017-03-25 23:31:10 +01:00
Ludovic Courtès 5f19fb6a26 system: grub: Don't attempt to load non-EFI modules on EFI.
This resulted in a couple of harmless warnings just before the menu is
displayed.

* gnu/system/grub.scm (eye-candy)[setup-gfxterm-body]: Move 'vbe' and
'vga' loading to the non-EFI branch.
2017-03-25 22:50:24 +01:00
Efraim Flashner c5be3467f2 gnu: python2-dogtail: Update to 0.9.9.
* gnu/packages/python.scm (python2-dogtail): Update to 0.9.9.
[source]: Download using pypi-uri scheme.
2017-03-25 23:53:03 +03:00
Efraim Flashner ac7a8f1ff8 gnu: xorg-server-xwayland: Add missing input.
* gnu/packages/xorg.scm (xorg-server-xwayland)[inputs]: Remove libepoxy,
add wayland-protocols.
2017-03-25 23:19:17 +03:00
Marius Bakke 17fc8da3dd gnu: git: Update to 2.12.2.
* gnu/packages/version-control.scm (git): Update to 2.12.2.
2017-03-25 20:17:04 +01:00
Marius Bakke 5e53557ed0 gnu: maim: Update to 4.4.62.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.62.
2017-03-25 20:12:44 +01:00
Tobias Geerinckx-Rice 90ff097995 gnu: youtube-dl: Update to 2017.03.24.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.24.
2017-03-25 19:40:10 +01:00
Efraim Flashner 6a052473aa gnu: pcc: Remove aarch64-linux from %supported-systems.
* gnu/packages/c.scm (pcc)[supported-systems]: New field.
2017-03-25 21:30:25 +03:00
Efraim Flashner 97b7201f99 gnu: tcc: Remove aarch64-linux from %supported-systems.
* gnu/packages/c.scm (tcc)[supported-systems]: Remove aarch64-linux from
the %supported-systems.
2017-03-25 21:24:18 +03:00
Danny Milosavljevic 7e58cbbb39 gnu: Add shellcheck.
* gnu/packages/haskell.scm (shellcheck): New variable.
2017-03-25 15:02:11 +01:00
Danny Milosavljevic 6f8016f4d8 gnu: Add ghc-json.
* gnu/packages/haskell.scm (ghc-json): New variable.
2017-03-25 15:00:18 +01:00
Vasile Dumitrascu 070e1fe99a gnu: Add emacs-symon.
* gnu/packages/emacs.scm (emacs-symon): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-24 17:24:26 -04:00
Thomas Danckaert 9260b9d100 services: Add inetd-service-type.
* gnu/services/networking.scm (<inetd-configuration>, <inetd-entry>): New
record types.
(inetd-config-file, inetd-shepherd-service): New procedures.
(inetd-service-type): New variable.
* doc/guix.texi (Networking Services): Document it.
* gnu/tests/networking.scm: New file.
* gnu/local.mk: Add it.
2017-03-24 17:45:56 +01:00
Mathieu Othacehe 1c17a863f6 doc: Re-generate openvpn service documentation.
* doc/guix.texi (VPN Services): Generate documentation with
generate-openvpn-server-documentation and
generate-openvpn-client-documentation helpers and guile 2.1.7.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-24 16:09:18 +01:00
Mathieu Othacehe 85ac401acf services: openvpn: Fix a typo which was corrected in generated doc.
* gnu/services/vpn.scm (define-split-configuration): Fix typo.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-24 16:09:18 +01:00
Mathieu Othacehe bfbf6e1e10 gnu: Add tlp service.
* gnu/services/pm.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add gnu/services/tlp.scm.
* doc/guix.texi (Power management Services): New section.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-24 16:09:17 +01:00
Mathieu Othacehe d02c3c2234 services: configuration: Rewrite id procedure.
* gnu/services/configuration.scm (id): Replace it using the more concise
version found in messaging.scm.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-24 16:09:17 +01:00
Mathieu Othacehe e7c797f348 services: Factorize define-maybe macro.
* gnu/services/configuration.scm (id): New procedure extracted from
define-configuration.
(define-maybe): New exported procedure, moved from messaging.scm.
* gnu/services/messaging.scm (define-maybe): Remove it.
(id): Move declaration inside define-all-configurations which is now
the only caller procedure.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-24 16:09:17 +01:00
Mathieu Othacehe 32e75b4808 gnu: tlp: Read configuration from /etc/tlp.
* gnu/packages/linux.scm (tlp): Set TLP_CONF to "/etc/tlp".

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-24 16:09:16 +01:00
Vasile Dumitrascu 4d3d3bd217 gnu: Add emacs-aggresive-indent-mode.
* gnu/packages/emacs.scm (emacs-aggressive-indent): New variable.

Signed-off-by: Ricardo Wurmus <rekado@elephly.net>
2017-03-24 14:19:00 +01:00
Clément Lassieur ee7c21c704 maint: Mention the Signed-off-by line in 'HACKING'.
* HACKING: Mention the Signed-off-by line.
2017-03-24 13:56:38 +01:00
Efraim Flashner 3d39ab456d gnu: ccache: Update to 3.3.4.
* gnu/packages/ccache.scm (ccache): Update to 3.3.4.
2017-03-24 14:53:21 +03:00
Efraim Flashner 2e200ee8c0 gnu: talloc: Update to 2.1.9.
* gnu/packages/samba (talloc): Update to 2.1.9.
[home-page]: Use https.
2017-03-24 14:16:09 +03:00
Efraim Flashner c8c1470451 gnu: samba: Update to 4.5.7 [fixes CVE-2017-2619].
* gnu/packages/samba.scm (samba): Update to 4.5.7.
2017-03-24 14:14:52 +03:00
Ludovic Courtès 697ddb8850 services: guix-publish: Add 'compression-level' and 'nar-path' fields.
* gnu/services/base.scm (<guix-publish-configuration>)[compression-level,
nar-path]: New fields.
(guix-publish-shepherd-service): Honor them.
* doc/guix.texi (Base Services): Document them.
2017-03-24 00:23:29 +01:00
Ludovic Courtès f1e900a3b8 doc: Document 'guix-publish-service-type' instead of 'guix-publish-service'.
* doc/guix.texi (Base Services): Document 'guix-publish-service-type'
and 'guix-configuration'.  Remove 'guix-publish-service'.
(Invoking guix publish): Mention 'guix-publish-service-type'.
* gnu/services/base.scm (guix-publish-service): Mark as deprecated.
(<guix-configuration>): Export getters.
2017-03-24 00:23:29 +01:00
Marius Bakke 77ab6983a1 gnu: devil: Update to 1.8.0.
* gnu/packages/patches/devil-CVE-2009-3994.patch,
gnu/packages/patches/devil-fix-libpng.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/image.scm (devil): Update to 1.8.0.
[source]: Remove patches and snippet.
[build-system]: Change to CMAKE-BUILD-SYSTEM.
[arguments]: Disable tests. Remove #:configure-flags and add a
'change-directory' phase. Remove 'fix-tests' phase.
[inputs]: Change LIBJPEG to LIBJPEG-TURBO.
2017-03-24 00:12:00 +01:00
Marius Bakke 183303b3ef gnu: nginx: Update to 1.11.11.
* gnu/packages/web.scm (nginx): Update to 1.11.11.
2017-03-23 20:00:06 +01:00
Danny Milosavljevic 42c127e876 gnu: rustc: Simplify configure phase.
* gnu/packages/rust.scm (rustc): Simplify configure phase.
2017-03-23 19:36:10 +01:00
rennes 7fdca77e00 gnu: ustr: Fix build with GCC 5.
* gnu/packages/patches/ustr-fix-build-with-gcc-5.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/textutils.scm (ustr)[source]: Use patch.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-23 14:34:09 -04:00
ng0 120349bfb4 gnu: rxvt-unicode: Give 'urxvtc.desktop' a unique display name.
* gnu/packages/xdisorg.scm (rxvt-unicode)[arguments]: In phase
'install-desktop-urxvtc' add '(client)' to the 'Name' line of the
resulting '.desktop' file.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-23 19:33:36 +01:00
Sergei Trofimovich 096f008014 gnu: rcs: Fix build against gcc-5.4.0.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/patches/rcs-5.9.4-noreturn.patch: New file.
* gnu/packages/version-control.scm (rcs)[source]: Applied patch.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-23 19:26:27 +01:00
Tobias Geerinckx-Rice 359ea6ba29 gnu: knot: Update to 2.4.2.
* gnu/packages/dns.scm (knot): Update to 2.4.2.
2017-03-23 18:18:53 +01:00
Leo Famulari 26b16fd9ca gnu: python-appdirs: Use pypi-uri.
This is a followup to commit 543782e1ff.

* gnu/packages/python.scm (python-appdirs, python2-appdirs)[source]: Use
pypi-uri.
2017-03-23 12:06:15 -04:00
Ricardo Wurmus ce54f5db7d gnu: gfortran-5: Move definition before "gfortran".
This is a follow-up to commit cb4805e34c.

* gnu/packages/gcc.scm (gfortran-5): Move definition.
2017-03-23 16:34:17 +01:00
Ricardo Wurmus cb4805e34c gnu: gfortran: Change default version to gfortran-5.
* gnu/packages/gcc.scm (gfortran): Point to gfortran-5.
2017-03-23 15:37:24 +01:00
Efraim Flashner 0371b345e8 Merge remote-tracking branch 'origin/master' into core-updates 2017-03-23 14:53:33 +02:00
Efraim Flashner 8be563a5a3 gnu: dtc: Build with flex-2.6.1.
* gnu/packages/bootloaders.scm (dtc)[native-inputs]: Use flex-2.6.1 and
not flex.
2017-03-23 14:40:40 +02:00
Peter Mikkelsen c53af0016e gnu: idris: Update to 0.99.1.
* gnu/packages/idris.scm (idris): Update to 0.99.1.
[inputs]: Add ghc-code-page.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-23 12:59:03 +01:00
Peter Mikkelsen df7309fc6e gnu: Add ghc-code-page.
* gnu/packages/haskell.scm (ghc-code-page): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-23 12:59:03 +01:00
Ricardo Wurmus 939b6b113b gnu: star: Update to 2.5.3a.
* gnu/packages/bioinformatics.scm (star): Update to 2.5.3a.
2017-03-23 11:21:08 +01:00
Efraim Flashner d5ceeb5a2d gnu: scotch: Build with flex-2.6.1.
* gnu/packages/maths.scm (scotch)[native-inputs]: Use flex-2.6.1 and not
flex.
2017-03-23 07:32:31 +02:00
Efraim Flashner 5302eba611 gnu: libffcall: Remove aarch64-linux from supported systems.
* gnu/packages/libffcall.scm (libffcall)[supported-systems]: New field,
remove aarch64-linux.
[home-page]: Use https.
2017-03-23 07:32:26 +02:00
Tobias Geerinckx-Rice b27bd0b057 gnu: youtube-dl: Update to 2017.03.22.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.22.
2017-03-23 02:53:18 +01:00
Tobias Geerinckx-Rice a06cd95ab0 gnu: python-natsort: Update to 5.0.2.
* gnu/packages/python.scm (python-natsort): Update to 5.0.2.
2017-03-23 02:53:17 +01:00
Tobias Geerinckx-Rice e17a12482b gnu: python2-futures: Update to 3.0.5.
* gnu/packages/python.scm (python2-futures): Update to 3.0.5.
2017-03-23 02:53:17 +01:00
Tobias Geerinckx-Rice 06fe79f263 gnu: python-rauth: Update to 0.7.3.
* gnu/packages/python.scm (python-rauth): Update to 0.7.3.
2017-03-23 02:53:17 +01:00
Tobias Geerinckx-Rice 36e0d9db90 gnu: python-ipaddress: Update to 1.0.18.
* gnu/packages/python.scm (python-ipaddress): Update to 1.0.18.
2017-03-23 02:53:16 +01:00
Tobias Geerinckx-Rice 543782e1ff gnu: python-appdirs: Update to 1.4.3.
* gnu/packages/python.scm (python-appdirs): Update to 1.4.3.
2017-03-23 02:53:16 +01:00
Tobias Geerinckx-Rice 80e8d8517a gnu: python-beautifulsoup4: Update to 4.5.3.
* gnu/packages/python.scm (python-beautifulsoup4): Update to 4.5.3.
2017-03-23 02:53:15 +01:00
Tobias Geerinckx-Rice 7c4279322e gnu: python-drmaa: Update to 0.7.7.
* gnu/packages/python.scm (python-drmaa): Update to 0.7.7.
2017-03-23 02:53:15 +01:00
Tobias Geerinckx-Rice fd2662e950 gnu: python-sqlalchemy-utils: Update to 0.32.13.
* gnu/packages/python.scm (python-sqlalchemy-utils): Update to 0.32.13.
2017-03-23 02:53:15 +01:00
Tobias Geerinckx-Rice 745d85b7db gnu: python-pafy: Update to 0.5.3.1.
* gnu/packages/python.scm (python-pafy): Update to 0.5.3.1.
2017-03-23 02:53:14 +01:00
Leo Famulari e20dafd0a1 gnu: gpsbabel: Fix a build failure with GCC 5.
* gnu/packages/gps.scm (gpsbabel)[arguments]: Add -fPIC to #:configure-flags.
2017-03-22 17:04:46 -04:00
Efraim Flashner 283f04b053 gnu: libffcall: Set source file-name.
* gnu/packages/libffcall.scm (libffcall)[source]: Add file-name field.
[home-page]: Use https.
2017-03-22 22:36:43 +02:00
Kei Kebreau 359e9c4215 gnu: chicken: Update to 4.12.0.
* gnu/packages/scheme.scm (chicken): Update to 4.12.0.
2017-03-22 15:31:17 -04:00
Efraim Flashner 44cba47e93 gnu: wine: Build with flex-2.6.1.
* gnu/packages/wine.scm (wine)[native-inputs]: Use flex-2.6.1 and not
flex.
2017-03-22 21:06:46 +02:00
Efraim Flashner 575a6f0f8a gnu: binutils-vc4: Build with flex-2.6.1.
* gnu/packages/embedded.scm (binutils-vc4)[native-inputs]: Use
flex-2.6.1 and not flex.
2017-03-22 19:27:00 +02:00
Leo Famulari 112d645ffa gnu: dovecot: Update to 2.2.28.
* gnu/packages/mail.scm (dovecot): Update to 2.2.28.
2017-03-22 13:04:29 -04:00
Danny Milosavljevic 9b7a9580d4 gnu: rustc: Honor max line length.
* gnu/packages/rust.scm (rustc)[arguments]: patch-tests: Honor max line
length.
2017-03-22 17:41:44 +01:00
Ludovic Courtès 61a3137bdd gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to 73a4645.
2017-03-22 16:05:46 +01:00
Efraim Flashner 493ae57eca gnu: binutils-vc4: Set source file-name.
* gnu/packages/embedded.scm (binutils-vc4)[source]: Add file-name field.
2017-03-22 16:10:45 +02:00
Ludovic Courtès 73a46451af build: 'test-driver.scm' prints Scheme values with 'write'.
Previously it would print them with 'display', which was inconvenient.

* build-aux/test-driver.scm (test-display): Use ~S for VALUE.
(test-runner-gnu): Use 'format' instead of 'test-display' for the test
name, location, and result kind.
2017-03-22 15:02:33 +01:00
Ludovic Courtès 50b4d3ac26 tests: Skip 'guix pack' test when networking is unavailable.
* tests/pack.scm ("self-contained-tarball"): Skip unless (network-reachable?).
2017-03-22 15:02:33 +01:00
Ludovic Courtès ed407f3ccc tests: Fix 'cond-expand' clause for 2.2/2.0.
Fixes a mistake in a9a0227c01.

* tests/store.scm ("current-build-output-port, UTF-8 + garbage"):
Inverse the 'cond-expand' clauses since the 'guile-2.0' feature doesn't
exist.
2017-03-22 15:02:33 +01:00
Ricardo Wurmus dc8a34ed46 gnu: freeimage: Fix build with GCC 5.
* gnu/packages/patches/freeimage-fix-build-with-gcc-5.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/image.scm (freeimage)[source]: Add patch.
2017-03-22 14:45:44 +01:00
Efraim Flashner aeb6fe5fa0 gnu: autoconf-archive: Update to 2017.03.21.
* gnu/packages/autotools.scm (autoconf-archive): Update to 2017.03.21.
2017-03-22 15:35:59 +02:00
Ludovic Courtès 4bb5e0aeb3 publish: Add '--nar-path'.
* guix/scripts/publish.scm (show-help, %options): Add '--nar-path'.
(%default-options): Add 'nar-path'.
(guix-publish): Honor it.
2017-03-22 14:05:59 +01:00
Ludovic Courtès cdd7a7d210 publish: Make the nar URL prefix a parameter.
* guix/scripts/publish.scm (narinfo-string): Add #:nar-path and honor it.
(render-narinfo): Likewise.
(make-request-handler): Likewise.
(run-publish-server): Likewise.
* tests/publish.scm ("custom nar path"): New test.
2017-03-22 14:05:59 +01:00
Ludovic Courtès 46f58390cb publish: Add '--public-key' and '--private-key'.
* guix/scripts/publish.scm (show-help, %options): Add --public-key and
--private-key.
* doc/guix.texi (Invoking guix publish): Document it.
2017-03-22 14:05:59 +01:00
Ludovic Courtès ab2a74e4db publish: The public and private keys are now SRFI-39 parameters.
* guix/scripts/publish.scm (%default-options): Add 'public-key-file' and
'private-key-file'.
(lazy-read-file-sexp): Remove.
(%private-key, %public-key): Turn into SRFI-39 parameters.
(signed-string, render-narinfo): Adjust accordingly.
(guix-publish): Honor 'public-key-file' and 'private-key-file' from
OPTS.  Use 'parameterize'.
* guix/pk-crypto.scm (read-file-sexp): New procedure.
* tests/publish.scm: Initialize '%public-key' and '%private-key'.
2017-03-22 14:05:59 +01:00
Ludovic Courtès 5cd074ea32 gnu: guile: Add 'guile-next' as a deprecated alias.
This is a followup to f6396d862f.

* gnu/packages/guile.scm (guile-next): New variable.
2017-03-22 14:05:58 +01:00
Danny Milosavljevic 326249bab8 gnu: rustc: End resultless phases in #t.
* gnu/packages/rust.scm (rustc): End resultless phases in #t.
2017-03-22 12:59:32 +01:00
Ricardo Wurmus 54262c5435 gnu: python-pysam: Run tests in parallel.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Run nose tests in
parallel.
2017-03-22 12:33:28 +01:00
Ricardo Wurmus 71dbf592c4 gnu: python-pysam: Run tests before installation.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Adjust check
phase to be run before installation.
2017-03-22 12:33:28 +01:00
Ricardo Wurmus 879b521cd0 gnu: python-pysam: Update to 0.10.0.
* gnu/packages/bioinformatics.scm (python-pysam): Update to 0.10.0.
2017-03-22 12:33:24 +01:00
Ricardo Wurmus d553cd6015 gnu: python-pysam: Run tests in parallel.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Run nose tests in
parallel.
2017-03-22 12:21:39 +01:00
Ricardo Wurmus 611154efc8 gnu: python-pysam: Run tests before installation.
* gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Adjust check
phase to be run before installation.
2017-03-22 12:21:39 +01:00
Ricardo Wurmus 9488776a18 gnu: python-pysam: Update to 0.10.0.
* gnu/packages/bioinformatics.scm (python-pysam): Update to 0.10.0.
2017-03-22 12:21:38 +01:00
Efraim Flashner 378de69c59 Merge remote-tracking branch 'origin/master' into core-updates 2017-03-22 12:57:37 +02:00
Efraim Flashner 0e7c3ba1c0 gnu: perl-mojolicious: Update to 7.29.
* gnu/packages/perl-web.scm (perl-mojolicious): Update to 7.29.
2017-03-22 12:56:23 +02:00
Efraim Flashner c70b50efb9 gnu: perl-io-compress: Update to 2.074.
* gnu/packages/compression.scm (perl-io-compress): Update to 2.074.
[propagated-inputs]: Update minimum versions to 2.074.
2017-03-22 12:50:36 +02:00
Efraim Flashner c0b7b797a2 gnu: perl-compress-raw-bzip2: Update to 2.074.
* gnu/packages/compression.scm (perl-compress-raw-bzip2): Update to 2.074.
2017-03-22 12:45:55 +02:00
Efraim Flashner 02b067d782 gnu: perl-compress-raw-zlib: Update to 2.074.
* gnu/packages/compression.scm (perl-compress-raw-zlib): Update to 2.074.
2017-03-22 12:40:05 +02:00
Leo Famulari d8be338f16 gnu: openssh: Update to 7.5p1.
* gnu/packages/ssh.scm (openssh): Update to 7.5p1.
2017-03-22 02:37:31 -04:00
Leo Famulari 22f25392cf gnu: ntp: Update to 4.2.8p10 [security fixes].
Fixes CVE-2016-9042 and CVE-2017-{6451,6452,6455,6458,6459,6460,6462,6463,6464}
and others. See 'NEWS' in the source code for more information.

* gnu/packages/ntp.scm (ntp): Update to 4.2.8p10.
2017-03-22 01:41:41 -04:00
Tobias Geerinckx-Rice 8e71896340 gnu: python-psycopg2: Update to 2.6.2.
* gnu/packages/python.scm (python-psycopg2): Update to 2.6.2.
2017-03-22 02:03:35 +01:00
Tobias Geerinckx-Rice 35e1a0f1a7 gnu: python-zope-component: Update to 4.3.0.
* gnu/packages/python.scm (python-zope-component): Update to 4.3.0.
[source]: Use pypi-uri.
2017-03-22 02:03:35 +01:00
Tobias Geerinckx-Rice c56ad5e291 gnu: python-atomicwrites: Update to 1.1.5.
* gnu/packages/python.scm (python-atomicwrites): Update to 1.1.5.
2017-03-22 02:03:34 +01:00
Tobias Geerinckx-Rice 4c4d4df393 gnu: python-texttable: Update to 0.8.7.
* gnu/packages/python.scm (python-texttable): Update to 0.8.7.
2017-03-22 02:03:34 +01:00
Tobias Geerinckx-Rice d5c183d134 gnu: python-feedgenerator: Update to 1.9.
* gnu/packages/python.scm (python-feedgenerator): Update to 1.9.
2017-03-22 02:03:34 +01:00
Tobias Geerinckx-Rice d25bee2600 gnu: python-wrapt: Update to 1.10.8.
* gnu/packages/python.scm (python-wrapt): Update to 1.10.8.
[source]: Use pypi-uri.
2017-03-22 02:03:33 +01:00
Tobias Geerinckx-Rice b9463fdba2 gnu: python-py: Update to 1.4.32.
* gnu/packages/python.scm (python-py): Update to 1.4.32.
2017-03-22 02:03:33 +01:00
Tobias Geerinckx-Rice 5095bc7d71 gnu: python-sphinx-cloud-sptheme: Update to 1.8.0.
* gnu/packages/python.scm (python-sphinx-cloud-sptheme): Update to 1.8.0.
2017-03-22 02:03:33 +01:00
Tobias Geerinckx-Rice 9e59478f8d gnu: python-wcwidth: Update to 0.1.7.
* gnu/packages/python.scm (python-wcwidth): Update to 0.1.7.
[source]: Use pypi-uri.
2017-03-22 02:03:32 +01:00
Tobias Geerinckx-Rice 4ffbe8c6d7 gnu: python-markdown: Update to 2.6.8.
* gnu/packages/python.scm (python-markdown): Update to 2.6.8.
2017-03-22 02:03:32 +01:00
Tobias Geerinckx-Rice 2d431b0130 gnu: dns: Return #t instead of something undefined.
* gnu/packages/dns.scm (yadifa, knot)[arguments]: Return #t after calling
‘substitute*’.
(knot)[source]: Return #t after calling ‘delete-file-recursively’.
2017-03-22 02:03:31 +01:00
Ludovic Courtès 7dbd75b3cf file-systems: Add missing docstring.
* gnu/system/file-systems.scm (file-system-type-predicate): Add
docstring.
2017-03-21 22:33:07 +01:00
Ludovic Courtès 278d486b0c file-systems: Do not use (gnu packages …).
Fixes a regression introduced in
7208995426 whereby (gnu system
file-systems) would pull in (gnu packages …) module, which in turn
breaks when importing things like (gnu build shepherd).

* gnu/system/file-systems.scm (file-system-type-predicate): Export.
(file-system-packages): Move to...
* gnu/system/linux-initrd.scm (file-system-packages): ... here.  Add
docstring.
* gnu/services/base.scm: Use it.
* tests/file-systems.scm ("does not pull (gnu packages …)"): New test.
2017-03-21 22:33:07 +01:00
Efraim Flashner 4f7a9e0bff gnu: vapoursynth: Update to 37.
* gnu/packages/video.scm (vapoursynth): Update to 37.
2017-03-21 22:36:33 +02:00
Efraim Flashner 60092c181c gnu: zimg: Update to 2.5.
* gnu/packages/image.scm (zimg): Update to 2.5.
2017-03-21 22:35:32 +02:00
Leo Famulari 049e02eaa2 gnu: libesmtp: Add alternate source URL.
* gnu/packages/mail.scm (libesmtp)[source]: Add alternate URL.
2017-03-21 16:33:08 -04:00
Leo Famulari a9681c74ca gnu: python-pillow: Fix test failures with freetype-2.7.
* gnu/packages/patches/python-pillow-freetype-2.7-test-failure.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-pillow, python2-pillow)[source]: Use it.
2017-03-21 16:20:10 -04:00
Efraim Flashner 83a3464793 gnu: openblas: Add support for aarch64.
* gnu/packages/maths.scm (openblas)[arguments]: Mark aarch64 as
substitutable, build for target ARMv8.
2017-03-21 22:03:05 +02:00
Clément Lassieur 36f666c63d tests: ssh: Add a test for SFTP.
* gnu/tests/ssh.scm (run-ssh-test): Introduce "SFTP file writing and reading".
Make 'sftp?' a keyword parameter.
(%test-openssh): Pass #:sftp? #t to 'run-ssh-test'.
2017-03-21 20:49:26 +01:00
Clément Lassieur cfaf4d1165 tests: ssh: Abstract session connection and authentication.
* gnu/tests/ssh.scm (run-ssh-test): Introduce make-session-for-test,
call-with-connected-session and call-with-connected-session/auth.
(run-ssh-test)["connect"]: Rename to "shell command".  Abstract its session
connection and authentication work into the above three functions.
2017-03-21 20:49:26 +01:00
Clément Lassieur 12723370e5 services: openssh: Add 'subsystems' option.
* gnu/services/ssh.scm (openssh-config-file): Add it.
(<openssh-configuration>)[subsystems]: Add it.
* doc/guix.texi (Networking Services): Document it.
2017-03-21 20:49:26 +01:00
Clément Lassieur 4ca3e9b7b6 services: openssh: Cosmetic changes.
* gnu/services/ssh.scm (<openssh-configuration>): Reformat to fit in 80
columns.
2017-03-21 20:49:26 +01:00
Rodger Fox a42619e5e2 gnu: Add lmms.
* gnu/packages/music.scm (lmms): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-21 15:37:29 -04:00
Arun Isaac 0b608ec4ce gnu: Add megaglest.
* gnu/packages/games.scm (megaglest): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-21 15:15:35 -04:00
Arun Isaac fb731c9232 gnu: Add megaglest-data.
* gnu/packages/games.scm (megaglest-data): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-21 15:15:35 -04:00
Efraim Flashner 8ea71f2005 gnu: ots: Use 'modify-phases' syntax.
* gnu/packages/ots.scm (ots)[arguments]: Use 'modify-phases' syntax.
2017-03-21 20:58:52 +02:00
Efraim Flashner b1d3e0a93b gnu: ots: Add download mirror.
* gnu/packages/ots.scm (ots)[source]: Add Debian mirror.
2017-03-21 20:58:51 +02:00
rennes 8e4b7b7514 gnu: xf86-video-vmware: Fix build failure due to missing LLVM.
* gnu/packages/xorg.scm (xf86-video-vmware)[inputs]: Add llvm.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-21 14:24:37 -04:00
Leo Famulari 7fc72c7731 gnu: libcmis: Update to 0.5.1.
* gnu/packages/libreoffice.scm (libcmis): Update to 0.5.1.
[source]: Use new source URL. Remove obsolete patch
'libcmis-fix-test-onedrive.patch'.
[home-page]: Update URL.
* gnu/packages/patches/libcmis-fix-test-onedrive.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-21 13:38:13 -04:00
Efraim Flashner a160778cba gnu: x265: Fix build on aarch64.
* gnu/packages/video.scm (x265)[arguments]: On aarch64 add a
configure-flag to enable PIC.
2017-03-21 18:01:05 +02:00
Kei Kebreau 4b0e636701 gnu: Adjust asciidoc-related build options.
Commits 9099a45792 and
3078821d13 make many package inputs and
build configurations related to asciidoc obsolete.

* gnu/packages/compton.scm (compton)[inputs]: Remove docbook-xml,
libxml2 and libxslt.
* gnu/packages/mail.scm (offlinemap)[native-inputs]: Remove libxslt.
* gnu/packages/linux.scm (btrfs-progs)[native-inputs]: Remove docbook-xml.
(perf)[inputs]: Remove docbook-xml and libxslt.
* gnu/packages/text-editors.scm (kakoune)[native-inputs]: Remove libxslt.
* gnu/packages/version-control.scm (cgit)[native-inputs]: Remove
docbook-xml, docbook-xsl, libxml2 and libxslt.
(cvs-fast-export)[native-inputs]: Remove docbook-xml, docbook-xsl,
libxml2 and libxslt.
* gnu/packages/web.scm (qutebrowser)[native-inputs]: Remove docbook-xml,
docbook-xsl, libxml2, and libxslt.
(tinyproxy)[native-inputs]: Remove docbook-xml, docbook-xsl, libxml2 and
libxslt.
* gnu/packages/wm.scm (awesome)[make-flags]: Remove XML_CATALOG_FILES flag.
(i3-wm)[inputs]: Remove docbook-xml.
[native-inputs]: Add libxml2.
2017-03-21 11:15:08 -04:00
Arun Isaac ed428a58ec gnu: Add swaks.
* gnu/packages/mail.scm (swaks): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-21 15:42:44 +01:00
Marius Bakke 3411937b15 gnu: git: Update to 2.12.1.
* gnu/packages/version-control.scm (git): Update to 2.12.1.
2017-03-21 13:45:57 +01:00
humanitiesNerd 6330ece9e3 gnu: Add perl-ole-storage-lite.
* gnu/packages/perl.scm (perl-ole-storage-lite): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-21 12:55:47 +01:00
humanitiesNerd 2b9d2df799 gnu: Add perl-crypt-rc4.
* gnu/pakages/perl.scm (perl-crypt-rc4): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-21 12:55:43 +01:00
Marius Bakke 4b9a5bd990 gnu: kodi: Wrap executable so it finds libcurl.
* gnu/packages/kodi.scm (kodi)[arguments]: Add 'wrap' phase.
2017-03-21 12:37:41 +01:00
Roel Janssen a4f5423415 download: Handle username and password properties for FTP URIs.
* guix/build/download.scm (ftp-fetch): Process username and password from a URI.
2017-03-21 12:15:14 +01:00
Roel Janssen 193420a803 ftp-client: Allow custom username and password for FTP servers.
* guix/ftp-client.scm (ftp-open): Add username and password arguments.
2017-03-21 12:14:05 +01:00
Leo Famulari f826c8c7ee gnu: go@1.4, go@1.7: Skip test that fails with tzdata-2017a.
* gnu/packages/golang.scm (go-1.4, go-1.7)[arguments]: Disable the test
TestParseInLocation in 'prebuild' phase.
2017-03-21 01:30:39 -04:00
Marius Bakke 3b4efb1f45 gnu: dtc: Update to 1.4.4.
* gnu/packages/bootloaders.scm (dtc): Update to 1.4.4.
[source]: Use mirror://kernel.org.
2017-03-21 01:13:06 +01:00
Marius Bakke d3d92ec2ba gnu: greenisland: Update to 0.9.0.1.
* gnu/packages/display-managers.scm (greenisland): Update to 0.9.0.1.
2017-03-21 01:13:06 +01:00
Marius Bakke 38190ea5ef gnu: vim: Update to 8.0.0494.
* gnu/packages/patches/vim-CVE-2017-5953.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/vim.scm (vim, vim-full): Update to 8.0.0494.
[source]: Remove patch.
(vim-full)[arguments]: Add two phases to drop tests and start xorg.
[native-inputs]: Add XORG-SERVER.
2017-03-20 23:35:39 +01:00
Marius Bakke f69e20341f gnu: kodi: Update to 18.0_alpha-0-b35147e.
* gnu/packages/kodi.scm (libdvdnav/kodi, libdvdread/kodi, libdvdcss/kodi): New
variables.
(kodi): Update to 18.0_alpha-0-b35147e.
[source]: Download from git. Unbundle more stuff.
[build-system]: Change to CMAKE-BUILD-SYSTEM.
[arguments]: Add #:configure-flag to disable nonfree components. Rework phases
to patch bundled software and bootstrap more libraries.
[native-inputs]: Remove CMAKE, DOXYGEN, GAWK and WHICH. Add LIBDVDCSS/KODI,
LIBDVDNAV/KODI and LIBDVDREAD/KODI.
[inputs]: Remove BOOST, BZIP2, ENCA, GPERF, JASPER, LIBMODPLUG, LIBSAMPLERATE,
LIBXMU, LIBXT, MESA-UTILS, SDL2 and UNZIP. Add FMT, GIFLIB, LCMS and LIBDRM.
[license]: Update for remaining software bundles.
2017-03-20 23:35:39 +01:00
Marius Bakke 0a15ee7b63 gnu: Add fmt.
* gnu/packages/pretty-print.scm (fmt): New variable.
2017-03-20 23:35:39 +01:00
Ludovic Courtès 9437fd7399 build: Install .go files to $libdir/guile/X.Y.
* configure.ac: Define and substitute 'guileobjectdir'.
* Makefile.am (nobase_nodist_guilemodule_DATA): Remove $(GOBJECTS).
(nobase_nodist_guileobject_DATA): New variable.
(guix_install_go_files): Adjust accordingly.
(install-data-hook): Likewise.
* scripts/guix.in (config-lookup): Add 'exec_prefix' and
'guileobjectdir'.  Add '_' in VAR-REF-REGEXP.
(maybe-augment-load-paths!): Distinguish OBJECT-DIR from MODULE-DIR.
2017-03-20 23:26:18 +01:00
Leo Famulari deee8a9dfc gnu: Remove leftover patch.
* gnu/packages/patches/openjpeg-use-after-free-fix.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-20 18:25:02 -04:00
Leo Famulari 957699ee92 gnu: openjpeg: Remove obsolete patches.
* gnu/packages/patches/openjpeg-CVE-2016-5157.patch,
gnu/packages/patches/openjpeg-CVE-2016-7163.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/image.scm (openjpeg)[source]: Remove them.
2017-03-20 18:24:58 -04:00
Julien Lepiller 4140b86bea gnu: php: Update to 7.1.3.
* gnu/packages/php.scm (php): Update to 7.1.3.
2017-03-20 23:09:22 +01:00
Ricardo Wurmus bd0c62315b gnu: bristol: Fix build failure with alsa-lib 1.1.x.
* gnu/packages/music.scm (bristol)[arguments]: Add build phase to fix build
failure with alsa-lib 1.1.x.
2017-03-20 22:44:26 +01:00
Tobias Geerinckx-Rice 6809d9377b gnu: ngircd: Use HTTPS.
* gnu/packages/messaging.scm (ngircd)[source, home-page]: Use HTTPS.
2017-03-20 22:44:06 +01:00
Tobias Geerinckx-Rice 07b7a66526 gnu: ngircd: Use the phrase ‘IRC’ in its description.
* gnu/packages/messaging.scm (ngircd)[description]: Use ‘IRC’ with @dfn.
2017-03-20 22:44:06 +01:00
Tobias Geerinckx-Rice 341ed63f47 gnu: ngircd: Use ‘modify-phases’ syntax.
* gnu/packages/messaging.scm (ngircd)[arguments]: Use ‘modify-phases’.
2017-03-20 22:44:06 +01:00
Tobias Geerinckx-Rice 4fd95d9170 gnu: ngircd: Update to 24.
* gnu/packages/messaging.scm (ngircd): Update to 24.
[source]: Remove upstreamed DNS lookup patch.
* gnu/packages/patches/ngircd-no-dns-in-tests.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-20 22:44:06 +01:00
Tobias Geerinckx-Rice 500fc65b5b gnu: znc: Run test suite.
* gnu/packages/messaging.scm (znc)[arguments]: Enable tests.  Add an
‘unpack-googletest’ phase and add ‘--with-gtest=’ to #:configure-flags.
[native-inputs]: Add googletest source.
2017-03-20 22:44:05 +01:00
Tobias Geerinckx-Rice f0bce02664 gnu: simple-scan: Update to 3.24.0.
* gnu/packages/gnome.scm (simple-scan): Update to 3.24.0.
2017-03-20 22:44:05 +01:00
Ricardo Wurmus e2c4fe7c62 gnu: Add r-cairo.
* gnu/packages/statistics.scm (r-cairo): New variable.
2017-03-20 21:16:11 +01:00
Hartmut Goebel 94e24d8124 gnu: Add comments on why setting QT_QPA_PLATFORM for tests.
* gnu/packages/astronomy.scm (stellarium): Add comment.
* gnu/packages/display-managers.scm (greenisland): dito.
* gnu/packages/kde-frameworks.scm (kguiaddons, kwidgetsaddons,
  kcompletion, baloo, kbookmarks, kconfigwidgtes, kdesignerplugin,
  kemoticons, kglobalaccel, kiconthemes, kio, knewstuff, kparts,
  kpeople, krunner, kservice, ktexteditor, ktextwidgets, kxmlgui,
  plasma-framework): dito.
* gnu/packages/qt.scm (qtsvg): dito.
2017-03-20 20:56:49 +01:00
Efraim Flashner 4e6509b27f gnu: mesa: Correct another typo.
* gnu/packages/gl.scm (mesa)[arguments]: Fix typo (svrast -> swrast).
2017-03-20 21:44:00 +02:00
Kei Kebreau 0b5d078f8b gnu: Add freedoom.
* gnu/packages/games.scm (freedoom): New variable.
2017-03-20 14:29:44 -04:00
Efraim Flashner 80042ae93d gnu: wget: Fix test-504 failures.
* gnu/packages/wget.scm (wget)[source]: Add patch.
* gnu/packages/patches/wget-fix-504-test-timeout.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-20 20:07:56 +02:00
Efraim Flashner 6f9ba4c91c gnu: Remove wxwidgets@2.8.
* gnu/packages/wxwidgets.scm (wxwidgets@2.8): Remove variable.
2017-03-20 18:33:30 +02:00
Efraim Flashner 36e17ab417 gnu: audacity: Use gtk+@3.
* gnu/packages/audacity.scm (audacity)[inputs]: Remove wxwidgets-gtk2,
gtk+@2, add wxwidgets and gtk+.
2017-03-20 18:04:01 +02:00
Efraim Flashner 2314474b01 gnu: wxwidgets: Build with webkitgtk.
* gnu/packages/wxwidgets.scm (wxwidgets)[inputs]: Remove webkitgtk@2.4,
add webkitgtk.
2017-03-20 18:02:41 +02:00
Ricardo Wurmus 4f9998c66f gnu: snakemake: Add runtime dependencies.
* gnu/packages/python.scm (snakemake)[propagated-inputs]: Add python-wrapt and
python-requests.
2017-03-20 15:13:19 +01:00
Leo Famulari 0420e89682 gnu: mpd: Update to 0.20.6.
* gnu/packages/mpd.scm (mpd): Update to 0.20.6.
2017-03-19 21:55:09 -04:00
Kei Kebreau 1a0c4437ab gnu: Add deutex.
gnu/packages/game-development.scm (deutex): New variable.
2017-03-19 21:43:05 -04:00
Mark H Weaver d67f972bd7 download: Remove non-existent kernel mirror.
* guix/download.scm (%mirrors) <kernel.org>: Remove www.all.kernel.org.
2017-03-19 21:18:46 -04:00
Arun Isaac f75b1400ee gnu: obnam: Enable tests.
* gnu/packages/backup.scm (obnam)[arguments]: Replace 'check' phase with
  custom function.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:32 +01:00
Arun Isaac 315944a393 gnu: Add python-pylint.
* gnu/packages/python.scm (python-pylint, python2-pylint): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:31 +01:00
Arun Isaac 61550dedf3 gnu: Add python2-coverage-test-runner.
* gnu/packages/python.scm (python2-coverage-test-runner): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:31 +01:00
Arun Isaac 23db3fc67d gnu: Add python-configparser.
* gnu/packages/python.scm (python-configparser, python2-configparser): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:30 +01:00
Arun Isaac 965a083ed2 gnu: Add python2-backports-functools-lru-cache.
* gnu/packages/python.scm (python2-backports-functools-lru-cache): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:30 +01:00
Arun Isaac 6ba0af7960 gnu: Add python-isort.
* gnu/packages/python.scm (python-isort, python2-isort): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:30 +01:00
Arun Isaac d5ef113c05 gnu: Add python-astroid.
* gnu/packages/python.scm (python-astroid, python2-astroid): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-20 00:40:30 +01:00
Arun Isaac 6fdbd86d0f gnu: Add libircclient.
* gnu/packages/messaging.scm (libircclient): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-19 19:18:06 -04:00
Mark H Weaver f67337e23e Merge branch 'master' into core-updates 2017-03-19 18:52:12 -04:00
Ludovic Courtès b99eec83b8 gnu: librep: Update to 0.92.6.
* gnu/packages/sawfish.scm (librep): Update to 0.92.6.
[arguments]: New field.
[native-inputs]: Add AUTOCONF-WRAPPER, AUTOMAKE, and LIBTOOL.
2017-03-19 23:42:58 +01:00
Ludovic Courtès d5c969ce0c gnu: lsh: Use libc's argp instead of the bundled one.
* gnu/packages/ssh.scm (lsh)[arguments] <#:configure-flags>: Add
--with-system-argp and CPPFLAGS=-DHAVE_ARGP_PARSE.
<#:phases>: In 'pre-configure' phase, modify src/Makefile.in.
2017-03-19 23:42:57 +01:00
Ludovic Courtès 5927a843b4 gnu: python-minimal@2: Add dependencies on libffi and zlib.
* gnu/packages/python.scm (python2-minimal)[inputs]: Add LIBFFI and ZLIB.
[arguments]: Remove.
2017-03-19 23:42:57 +01:00
Ludovic Courtès 4ed0628737 gnu: elogind: Build with gperf 3.0.
* gnu/packages/gperf.scm (gperf-3.0): New variable.
* gnu/packages/freedesktop.scm (elogind)[native-inputs]: Use GPERF-3.0
instead of GPERF.
2017-03-19 23:42:57 +01:00
rennes e05fc441cd gnu: Add pdfgrep.
* guix/gnu/packages/pdf.scm (pdfgrep): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-19 18:30:10 -04:00
Leo Famulari 4c20b0bcf7 gnu: graphite2: Fix test failure caused by rounding error on 32-bit CPUs.
* gnu/packages/patches/graphite2-ffloat-store.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/fontutils.scm (graphite2): Use it.
2017-03-19 17:32:44 -04:00
Mark H Weaver 8299c697af gnu: linux-libre: Update to 4.10.4.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.4.
(%linux-libre-hash): Update hash.
2017-03-19 17:18:15 -04:00
Mark H Weaver 92c42164a2 gnu: linux-libre@4.9: Update to 4.9.16.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.16.
2017-03-19 17:16:38 -04:00
Mark H Weaver 9baf0171a4 gnu: linux-libre@4.4: Update to 4.4.55.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.55.
2017-03-19 17:14:56 -04:00
Danny Milosavljevic 9970ef6134 services: Remove Tab character from source code whitespace.
* gnu/services/base.scm (file-system-shepherd-service): Remove Tab character
from source code whitespace.
2017-03-19 21:36:55 +01:00
Danny Milosavljevic fc1bfca253 gnu: u-boot: Update to 2017.03.
* gnu/packages/bootloaders.scm (u-boot): Update to 2017.03.
2017-03-19 21:35:17 +01:00
Mark H Weaver 717c659630 gnu: mesa: Fix another typo.
This is a followup to commit 2a8b89c27f.

* gnu/packages/gl.scm (mesa)[arguments]: Fix typo (galluim -> gallium).
2017-03-19 16:05:16 -04:00
Mark H Weaver 6191fef4e0 gnu: icecat: Add selected fixes from upstream mozilla-esr45.
* gnu/packages/gnuzilla.scm (icecat)[source][patches]: Add selected fixes from
the upstream mozilla-esr45 repository.
2017-03-19 15:55:06 -04:00
Mark H Weaver 512fc6db7b gnu: libevent@2.0: Add fix from upstream.
This fix was cherry-picked by Mozilla from upstream libevent-2.1 to its
bundled copy of libevent-2.0.21 in mozilla-esr45.

* gnu/packages/patches/libevent-2.0-evbuffer-add-use-last-with-datap.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/libevent.scm (libevent-2.0)[source][patches]: Add it.
2017-03-19 15:54:58 -04:00
Danny Milosavljevic 26e34e1e12 services: file-system-shepherd-service: Make it find the fsck programs.
Fixes <https://bugs.gnu.org/25917>.

* gnu/services/base.scm (file-system-shepherd-service): Use
file-system-packages.
2017-03-19 18:49:30 +01:00
Ludovic Courtès 7c86c03109 gnu: guile-commonmark: Default to Guile 2.2.
* gnu/packages/guile.scm (guile-commonmark)[inputs]: Replace GUILE-2.0
with GUILE-2.2.
(guile2.0-commonmark): New variable.
(guile2.2-commonmark): Mark as deprecated.
(haunt)[propagated-inputs]: Use GUILE-COMMONMARK.
2017-03-19 18:14:22 +01:00
Ludovic Courtès bdf1022dec gnu: guile-reader: Default to Guile 2.2.
* gnu/packages/guile.scm (guile-reader)[inputs]: Change GUILE-2.0 to
GUILE-2.2.
(guile2.0-reader): New variable.
(guile2.2-reader): Mark as deprecated.
(haunt)[propagated-inputs]: Use GUILE-READER instead of
GUILE2.2-READER.
2017-03-19 18:14:22 +01:00
Ludovic Courtès bd19f65a85 gnu: haunt: Default to Guile 2.2.
* gnu/packages/guile.scm (haunt)[inputs]: Replace GUILE-2.0 with
GUILE-2.2.
[propagated-inputs]: Replace GUILE-READER and GUILE-COMMONMARK with
their 2.2 variant.
(guile2.0-haunt): New variable.
(guile2.2-haunt): Mark as deprecated.
2017-03-19 18:14:22 +01:00
Ludovic Courtès 8f4acad71b gnu: Add 'package-for-guile-2.0'.
* gnu/packages/guile.scm (guile-2.2-package-name): Rename to...
(guile-variant-package-name): ... this.  Change to return a lambda.
(package-for-guile-2.2): Adjust accordingly.
(package-for-guile-2.0): New procedure.
2017-03-19 18:14:22 +01:00
Ludovic Courtès f6396d862f gnu: Rename "guile-next" to "guile".
* gnu/packages/guile.scm (guile-next): Rename to...
(guile-2.2): ... this.  Update users.
[name]: Change to "guile".
[synopsis]: Remove.
[properties]: Remove 'upstream-name', 'ftp-server', and
'ftp-directory'.
* gnu/packages/bioinformatics.scm (rcas-web): Update accordingly.
* gnu/packages/tls.scm (gnutls/guile-2.2): Likewise.
* tests/guix-build.sh: Use 'guile@2.2' instead of 'guile-next'.
* doc/guix.texi (Package Transformation Options): Update examples that
referred to "guile-next".
2017-03-19 18:14:22 +01:00
Manolis Ragkousis 8df672aad5 gnu: Add GNU Mach.
* gnu/packages/hurd.scm (gnumach): New variable.

Co-authored-by: Rene Saavedra <rennes@openmailbox.org>
Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-03-19 18:14:22 +01:00
Ricardo Wurmus f729a4d8b2 gnu: niftilib: Simplify build phases.
* gnu/packages/image.scm (niftilib)[arguments]: Use make-flags instead of
replacing "configure" phase; simplify "install" phase.
2017-03-19 14:26:33 +01:00
Efraim Flashner ea50fb8d03 gnu: libepoxy: Add support for aarch64.
* gnu/packages/gl.scm (libepoxy)[arguments]: Add substitution to support
aarch64.
2017-03-19 11:13:08 +02:00
Efraim Flashner 3d3d4014c2 gnu: libepoxy: Update to 1.4.1.
* gnu/packages/gl.scm (libepoxy): Update to 1.4.1.
[home-page]: Use https.
2017-03-19 10:56:40 +02:00
Efraim Flashner eba72e1716 gnu: apl: Update to 1.7.
* gnu/packages/apl.scm (apl): Update to 1.7.
[home-page]: Use https.
2017-03-18 21:28:20 +02:00
Christopher Allan Webber 525acb6e82 gnu: guile-8sync: Update to 0.4.2.
* gnu/packages/guile.scm (guile-8sync): Update to 0.4.2.
2017-03-18 12:22:13 -05:00
Taylan Ulrich Bayırlı/Kammer 57d0bdf8c6 gnu: guix: Don't ignore user's GUILE_LOAD_COMPILED_PATH.
* gnu/packages/package-management.scm (guix-0.12.0): Guile skips invalid .go
  files since 2.0.12 so we don't need to override GUILE_LOAD_COMPILED_PATH to
  prevent problems anymore.
2017-03-18 18:26:11 +01:00
Danny Milosavljevic 7601b9f7ce gnu: wine: Update to 2.4.
* gnu/packages/wine.scm (wine): Update to 2.4.
2017-03-18 17:26:02 +01:00
John Darrington 21122bd79e gnu: Add niftilib.
* gnu/packages/image.scm (niftilib): New variable.
2017-03-18 15:25:59 +01:00
Hartmut Goebel fdcb04afcc doc: Clarify reference.
* doc/guix.texi (Invoking guix environment): Explicitly name
  "guix environment".
2017-03-18 12:46:46 +01:00
Hartmut Goebel da31b9c7f6 doc: Fix examples.
To "spawns a Guile REPL", --ad-hoc is required.

* doc/guix.texi (Invoking guix environment): Add "--ad-hoc" to
  container examples.
2017-03-18 12:46:30 +01:00
ng0 d54db52e7f bug#26152: [PATCH] gnu: limnoria: Update to 20170110.
* gnu/packages/irc.scm (limnoria): Update to 20170110.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-18 11:51:21 +01:00
Danny Milosavljevic 7208995426 file-systems: Factorize file-system-packages.
* gnu/system/linux-initrd.scm (base-initrd): Move helper-packages body to ...
* gnu/system/file-systems.scm (file-system-packages): ... here.  New variable.
Also export it.
2017-03-18 10:38:51 +01:00
Danny Milosavljevic 84aac61c81 gnu: rustc: Fix process test.
* gnu/packages/rust.scm (rustc)[arguments]: Rename 'patch-lockfile-test
to 'patch-tests.  Add another substitution.
2017-03-18 10:37:02 +01:00
John Darrington 6d5f63b690 gnu: Add maxflow.
* gnu/packages/maths.scm (maxflow): New variable.
2017-03-18 10:31:54 +01:00
John Darrington a53d6719bc gnu: Add itpp.
* gnu/packages/maths.scm (itpp): New variable.
2017-03-18 10:31:50 +01:00
Tobias Geerinckx-Rice b6bd9a79d4 gnu: emacs-slime: Update to 2.19.
* gnu/packages/emacs.scm (emacs-slime): Update to 2.19.
2017-03-18 01:49:38 +01:00
Ben Woodcroft 55f7a27cee gnu: ocaml-qtest: Update to 2.5.
* gnu/packages/ocaml.scm (ocaml-qtest): Update to 2.5.
2017-03-18 09:52:29 +10:00
Ludovic Courtès 7f608a9b45 doc: Make "Application Setup" slightly more visible.
Suggested by Arne Babenhauserheide.

* doc/guix.texi (Binary Installation): Make the "Application Setup"
reference an 8th item in the list.
2017-03-18 00:39:50 +01:00
Ludovic Courtès 4fd06a4dd1 http-client: Avoid name clash with 'open-connection-for-uri' in 2.2.0.
* guix/build/download.scm (open-connection-for-uri): Add note about
same-named binding in Guile 2.2.0.
* guix/http-client.scm: Use 'guix:open-connection-for-uri' for the
procedure coming from (guix build download).
* guix/scripts/lint.scm: Likewise.
* guix/scripts/substitute.scm: Likewise.
2017-03-18 00:39:50 +01:00
Ludovic Courtès 36626c556e build: Require Guile >= 2.0.9.
* configure.ac: Bump requirement to 2.0.9.
* doc/guix.texi (Requirements): Adjust accordingly.
* README (Requirements): Likewise.
* build-aux/download.scm: Remove workaround for <http://bugs.gnu.org/13095>.
* guix/build/download.scm: Likewise.
(http-fetch)[post-2.0.7?]: Remove.  Remove conditional code for not
POST-2.0.7?.
* guix/http-client.scm:  Remove workaround for <http://bugs.gnu.org/13095>.
(http-fetch)[post-2.0.7?]: Remove.  Remove conditional code for not
POST-2.0.7?.
* guix/serialization.scm (read-latin1-string): Remove mention of 2.0.9.
* tests/nar.scm: Use (ice-9 control).
(let/ec): Remove.
2017-03-18 00:39:49 +01:00
Ludovic Courtès 5461115e8f pack: Add '--target'.
* guix/scripts/pack.scm (self-contained-tarball): Add #:target.
(docker-image): Add #:target.
[build]: Pass it to 'build-docker-image'.
(%options, show-help): Add '--target'.
(guix-pack): Pass TARGET to 'profile-derivation' and to 'build-image'.
* guix/docker.scm (build-docker-image): Add #:system parameter and honor it.
* doc/guix.texi (Invoking guix pack): Document '--target'.
(Additional Build Options): Refer to the Autoconf manual instead of the
obsolete 'configure.info' for cross-compilation.
2017-03-18 00:38:41 +01:00
Ludovic Courtès 176febe377 profiles: Packages in a profile can be cross-compiled.
* guix/profiles.scm (profile-derivation): Add #:target parameter; pass
it to 'gexp->derivation'.
* tests/profiles.scm ("profile-derivation, cross-compilation"): New test.
2017-03-17 23:25:53 +01:00
Ludovic Courtès 48b444304e pack: Move absolute file name to <compressor>.
* guix/scripts/pack.scm (<compressor>)[package]: Remove.
[command]: Document as being a gexp with an absolute file name.
(%compressors): Adjust accordingly.
(self-contained-tarball): Simplify PATH expression.  Move 'string-join'
for the compressor command on the build side.
(docker-image): Simplify PATH expression.
* tests/pack.scm (%gzip-compressor): Adjust accordingly.
2017-03-17 23:25:53 +01:00
Marius Bakke 7c78beb33c gnu: libbluray: Update to 1.0.0.
* gnu/packages/video.scm (libbluray): Update to 1.0.0.
2017-03-17 20:41:16 +01:00
Marius Bakke 715dd13d8e gnu: libx264: Update to 20170316-2245.
* gnu/packages/video.scm (libx264): Update to 20170316-2245.
2017-03-17 20:41:15 +01:00
Marius Bakke 2a047d59e0 gnu: libwebp: Update to 0.6.0.
* gnu/packages/image.scm (libwebp): Update to 0.6.0.
[source]: Remove patch.
* gnu/packages/patches/libwebp-CVE-2016-9085.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-17 20:41:15 +01:00
Marius Bakke cbef2796ed gnu: ninja: Update to 1.7.2.
* gnu/packages/ninja.scm (ninja): Update to 1.7.2.
[source]: Remove patch.
* gnu/packages/patches/ninja-tests.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-17 20:41:15 +01:00
Tobias Geerinckx-Rice 039601e097 gnu: btrfs-progs: Use @dfn in description.
* gnu/packages/linux.scm (btrfs-progs)[description]: Use @dfn.
2017-03-17 20:39:58 +01:00
Tobias Geerinckx-Rice 0d3ddd490b gnu: btrfs-progs: Update to 4.10.1.
* gnu/packages/linux.scm (btrfs-progs): Update to 4.10.1.
2017-03-17 20:39:58 +01:00
Danny Milosavljevic 4ed64c534a build/cargo-build-system: Make cargo-build-system install working packages.
* guix/build/cargo-build-system.scm (configure): Remove proprietary
dependencies. Add rust dependencies and configure Cargo to find them.
(build): Also build libraries, not just applications.
(file-sha256): New variable.
(generate-checksums): New variable. Export it.
(touch): New variable.
(install): Generate checksums so Cargo accepts the package.
2017-03-17 16:48:09 +01:00
Danny Milosavljevic 25fb58a3be build-system/cargo (cargo-build): Add cargo-build-flags, remove configure-flags.
* guix/build-system/cargo.scm (cargo-build): Add cargo-build-flags,
remove configure-flags.
2017-03-17 16:48:08 +01:00
Danny Milosavljevic 893bc3f402 gnu: cargo: Use upstream cargo.
* gnu/packages/rust.scm (cargo): Use upstream cargo.
2017-03-17 16:48:08 +01:00
Danny Milosavljevic b0dcb529af gnu: rust: Update to 1.15.0.
* gnu/packages/rust.scm (%rust-bootstrap-binaries-version): Update to 1.14.0.
(%rust-bootstrap-binaries): Update to 1.14.0.
(rustc): Update to 1.15.0.
[arguments]: Pass "--disable-rustbuild" to configure.
2017-03-17 16:48:06 +01:00
Kei Kebreau 8f98581613 gnu: libpng-apng: Remove unnecessary call to libtool.
* gnu/packages/image.scm (libpng-apng)[phases]: Remove it.
2017-03-17 11:36:27 -04:00
ng0 114a325e8f gnu: Add libpng-apng.
* gnu/packages/image.scm (libpng-apng): New variable.

Co-authored-by: Kei Kebreau <kei@openmailbox.org>
2017-03-17 11:25:15 -04:00
Ben Woodcroft 0a3063d640 gnu: Add ocaml-mcl.
* gnu/packages/machine-learning.scm (ocaml-mcl): New variable.
2017-03-17 21:43:27 +10:00
Ben Woodcroft ba1be533ad gnu: Add ocaml-gsl.
* gnu/packages/maths.scm (ocaml-gsl): New variable.
2017-03-17 21:43:25 +10:00
Ben Woodcroft 91df9eaefa gnu: Add ocaml-csv.
* gnu/packages/ocaml.scm (ocaml-csv): New variable.
2017-03-17 21:43:13 +10:00
Ben Woodcroft 0c4dbdc23e gnu: Add ocaml-sqlite3.
* gnu/packages/ocaml.scm (ocaml-sqlite3): New variable.
2017-03-17 21:19:23 +10:00
Ricardo Wurmus ef71ed8ffa gnu: snakemake: Update to 3.11.2.
* gnu/packages/python.scm (snakemake): Update to 3.11.2.
2017-03-17 10:14:03 +01:00
Ricardo Wurmus 60c9190e21 gnu: r-minimal: Fix remaining reproducibility problems.
Fixes <https://bugs.gnu.org/25598>.

* gnu/packages/statistics.scm (r-minimal)[arguments]: Add remaining
reproducibility fixes to "build-reproducibly" phase.
2017-03-17 10:14:02 +01:00
Ricardo Wurmus 2d7c4ae3ee gnu: r: Rename to r-minimal.
* gnu/packages/statistics.scm (r): Rename to...
(r-minimal): ...this new variable.
(r-with-recommended-packages): Rename to...
(r): ...this.
* guix/build-system/r.scm (default-r): Reference r-minimal.
* gnu/packages/emacs.scm (emacs-ess)[inputs],
gnu/packages/machine-learning.scm (shogun)[inputs],
gnu/packages/python.scm (python-rpy2)[inputs],
gnu/packages/bioinformatics.scm (ribotaper)[inputs],
(couger)[propagated-inputs],
(roary)[inputs],
(rsem)[inputs],
(rcas-web)[inputs]: Change "r" to "r-minimal".
2017-03-17 10:14:02 +01:00
Ricardo Wurmus f1fe5283c9 gnu: Add r-with-recommended-packages.
* gnu/packages/statistics.scm (r-with-recommended-packages): New variable.
2017-03-17 10:14:02 +01:00
Ricardo Wurmus aeb64f3cb2 gnu: r: Do not build recommended packages.
* gnu/packages/statistics.scm (r)[arguments]: Rename phase
"build-recommended-packages-reproducibly" to "build-reproducibly"; add
configure flag "--without-recommended-packages".
* guix/import/cran.scm (default-r-packages): Remove recommended packages.
* gnu/packages/python.scm (python-rpy2)[inputs]: Add r-survival.
* gnu/packages/bioinformatics.scm (r-ape)[propagated-inputs]: Add r-lattice
and r-nlme.
(r-vegan)[propagated-inputs]: Add r-mass.
(r-genefilter)[propagated-inputs]: Add r-survival.
(r-grohmm)[propagated-inputs]: Add r-mass.
(r-bioccheck)[propagated-inputs]: Add r-codetools.
(r-summarizedexperiment)[propagated-inputs]: Add r-matrix.
(r-topgo)[propagated-inputs]: Add r-lattice.
(r-sva)[propagated-inputs]: Add r-mgcv.
(r-raremetals2)[propagated-inputs]: Add r-mass.
(r-vsn)[propagated-inputs]: Add r-lattice.
(r-pcamethods)[propagated-inputs]: Add r-mass.
* gnu/packages/bioinformatics.scm (r-ggplot2)[propagated-inputs]: Add r-mass.
(r-locfit)[propagated-inputs]: Add r-lattice.
(r-coda)[propagated-inputs]: Add r-lattice.
(r-irlba)[propagated-inputs]: Add r-matrix.
(r-glmnet)[propagated-inputs]: Add r-matrix.
(r-e1071)[propagated-inputs]: Add r-class.
(r-spams)[propagated-inputs]: Add r-lattice and r-matrix.
(r-hmisc)[propagated-inputs]: Add r-cluster, r-foreign, r-lattice, r-nnet, and
r-rpart.
(r-zoo)[propagated-inputs]: Add r-lattice.
(r-mixtools)[propagated-inputs]: Add r-boot and r-mass.
(r-flexmix)[propagated-inputs]: Add r-lattice and r-nnet.
(r-prabclus)[propagated-inputs]: Add r-mass.
(r-fpc)[propagated-inputs]: Add r-class, r-cluster, and r-mass.
(r-rcppeigen)[propagated-inputs]: Add r-matrix.
(r-matrixmodels)[propagated-inputs]: Add r-matrix.
(r-lme4)[propagated-inputs]: Add r-mass and r-nlme.
(r-pbkrtest)[propagated-inputs]: Add r-mass and r-matrix.
(r-car)[propagated-inputs]: Add r-mass, r-mgcv, and r-nnet.
(r-tclust)[propagated-inputs]: Add r-cluster.
2017-03-17 10:14:02 +01:00
Ricardo Wurmus 6eaa9bfba6 gnu: r-survival: Move to set of recommended R packages.
* gnu/packages/statistics.scm (r-survival): Move up to set of recommended R
packages.
2017-03-17 10:14:02 +01:00
Ricardo Wurmus 4b005c7a75 gnu: Add r-spatial.
* gnu/packages/statistics.scm (r-spatial): New variable.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus 567b154fb0 gnu: r-rpart: Move to the set of recommended packages.
* gnu/packages/statistics.scm (r-rpart): Move up to the set of recommended
packages.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus a5a343656b gnu: r-nnet: Move to set of recommended R packages.
* gnu/packages/machine-learning.scm (r-nnet): Move from here...
* gnu/packages/statistics.scm (r-nnet): ...to here because the other
recommended R packages are here.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus ac8d738b97 gnu: r-mgcv: Move to set of recommended R packages.
* gnu/packages/statistics.scm (r-mgcv): Move up to set of recommended R
packages.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus 248f65269a gnu: Add r-nlme.
* gnu/packages/statistics.scm (r-nlme): New variable.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus 69e14f9ec7 gnu: r-matrix: Move to set of recommended R packages.
* gnu/packages/statistics.scm (r-matrix): Move to set of recommended R
packages.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus 060c12868b gnu: r-lattice: Move to other recommended R packages.
* gnu/packages/statistics.scm (r-lattice): Move to the set of recommended R
packages.
2017-03-17 10:14:01 +01:00
Ricardo Wurmus e88bad6ddb gnu: Add r-kernsmooth.
* gnu/packages/statistics.scm (r-kernsmooth): New variable.
2017-03-17 10:14:00 +01:00
Ricardo Wurmus 69fddd2d6e gnu: Add r-foreign.
* gnu/packages/statistics.scm (r-foreign): New variable.
2017-03-17 10:14:00 +01:00
Ricardo Wurmus c1999c5910 gnu: Add r-codetools.
* gnu/packages/statistics.scm (r-codetools): New variable.
2017-03-17 10:14:00 +01:00
Ricardo Wurmus a27bfb8484 gnu: Add r-cluster.
* gnu/packages/statistics.scm (r-cluster): New variable.
2017-03-17 10:14:00 +01:00
Ricardo Wurmus 7489258751 gnu: Add r-class.
* gnu/packages/statistics.scm (r-class): New variable.
2017-03-17 10:14:00 +01:00
Ricardo Wurmus c7e80a7e0d gnu: Add r-mass.
* gnu/packages/statistics.scm (r-mass): New variable.
2017-03-17 10:14:00 +01:00
Ricardo Wurmus 8f0069170c gnu: Add r-boot.
* gnu/packages/statistics.scm (r-boot): New variable.
2017-03-17 10:14:00 +01:00
Ludovic Courtès 708b54a992 doc: Really document 'guix pack --format'.
* doc/guix.texi (Invoking guix pack): Properly document --format.
2017-03-17 09:46:13 +01:00
Tobias Geerinckx-Rice 54d556bdd7 gnu: youtube-dl: Update to 2017.03.16.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.16.
2017-03-17 03:11:35 +01:00
Kei Kebreau 3078821d13 gnu: asciidoc: Use local docbook-xml package.
* gnu/packages/documentation.scm (asciidoc)[inputs]: Add docbook-xml.
[arguments]: Add 'make-local-docbook-xml' phase.
2017-03-16 21:35:50 -04:00
Tobias Geerinckx-Rice f9cdf1c15b gnu: Add knot.
* gnu/packages/dns.scm (knot): New variable.
2017-03-17 02:32:01 +01:00
Tobias Geerinckx-Rice 754667f0eb gnu: Add liburcu.
* gnu/packages/datastructures.scm (liburcu): New variable.
2017-03-17 02:32:00 +01:00
Tobias Geerinckx-Rice 366efcb2fb gnu: dns: Fix typo and use @dfn in descriptions.
* gnu/packages/dns.scm (bind)[description]: Use @dfn to expand acronyms.
(yadifa)[description]: Likewise, and fix a typo.
2017-03-17 02:32:00 +01:00
Leo Famulari 2ec5ba859f gnu: linux-libre: Update to 4.10.3.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.3.
(%linux-libre-hash): Update hash.
2017-03-16 19:40:40 -04:00
Leo Famulari 2044306f05 gnu: linux-libre@4.4: Update to 4.4.54.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.54.
2017-03-16 19:40:39 -04:00
Leo Famulari bcc5b74173 gnu: linux-libre@4.9: Update to 4.9.15.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.15.
2017-03-16 19:40:39 -04:00
Leo Famulari 49ac6dbb0a gnu: qemu: Fix CVE-2017-{2620,2630}.
* gnu/packages/patches/qemu-CVE-2017-2620.patch,
gnu/packages/patches/qemu-CVE-2017-2630.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/qemu.scm (qemu)[source]: Use them.
2017-03-16 19:40:08 -04:00
Leo Famulari 1e5b8beeff gnu: virglrenderer: Fix CVE-2017-6386.
* gnu/packages/patches/virglrenderer-CVE-2017-6386.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/spice.scm (virglrenderer)[source]: Use it.
2017-03-16 19:39:55 -04:00
Ludovic Courtès ad172c4a76 doc: Reorganize categories.
* doc/guix.texi: Move "guix build" to the "Software Development"
category; add "guix pack".
2017-03-16 23:03:40 +01:00
Ludovic Courtès 107b8da622 doc: Mention 'guix pack' reproducibility.
* doc/guix.texi (Invoking guix pack): Mention reproducibility.
2017-03-16 22:59:33 +01:00
Leo Famulari 38c4ca4141 gnu: mesa: Fix typo.
The typo caused the configure phase to fail like this:

"configure: error: classic DRI driver '915' does not exist"

This is a followup to commit c5e91014a2.

* gnu/packages/gl.scm (mesa)[arguments]: Fix typo in #:configure-flags.
2017-03-16 17:51:56 -04:00
Ludovic Courtès db3f2b61ad pack: Allow for "-S /opt/foo=".
Reported by Andy Wingo.

* guix/scripts/pack.scm (%options): Use 'string-split' instead of
'string-tokenize'.
2017-03-16 22:50:15 +01:00
Ludovic Courtès 9e84ea3673 pack: Honor symlinks in the Docker back-end.
* guix/docker.scm (symlink-source, topmost-component): New procedures.
(build-docker-image): Add #:symlinks parameter and honor it.  Remove
hard-coded /bin symlink.
* guix/scripts/pack.scm (docker-image): Pass #:symlinks to
'build-docker-image'.
2017-03-16 22:50:15 +01:00
Ludovic Courtès 54241dc8e6 docker: Build images in a reproducible fashion.
* guix/docker.scm (%tar-determinism-options): New variable.
(build-docker-image): Use it on the two 'tar' invocations.
2017-03-16 22:50:15 +01:00
Ludovic Courtès 84dda5a9c0 pack: Use a fixed timestamp in Docker images.
* guix/docker.scm (build-docker-image): Add #:creation-time parameter.
Use SRFI-19 'date->string' instead of 'strftime' et al.
* guix/scripts/pack.scm (docker-image)[build]: Pass #:creation-time to
'build-docker-image'.
2017-03-16 22:50:15 +01:00
Ludovic Courtès b1edfbc37f pack: Add '--format' option and Docker output support.
* guix/docker.scm: Remove dependency on (guix store) and (guix utils).
Use (guix build store-copy).  Load (json) lazily.
(build-docker-image): Remove #:system.  Add #:closure, #:compressor, and
'image' parameters.  Use 'uname' to determine the architecture.  Remove
use of 'call-with-temporary-directory'.  Use 'read-reference-graph' to
compute ITEMS.  Honor #:compressor.
* guix/scripts/pack.scm (docker-image): New procedure.
(%default-options): Add 'format'.
(%formats): New variable.
(%options, show-help): Add '--format'.
(guix-pack): Honor '--format'.
* guix/scripts/archive.scm: Remove '--format' option.  This reverts
commits 1545a012cb,
01445711db, and
03476a23ff.
* doc/guix.texi (Invoking guix pack): Document '--format'.
(Invoking guix archive): Remove documentation of '--format'.
2017-03-16 22:50:15 +01:00
Ludovic Courtès 2971f39c33 pack: Honor command-line options related to the store.
* guix/scripts/pack.scm (guix-pack): Call
'set-build-options-from-command-line'.
2017-03-16 22:50:15 +01:00
Ludovic Courtès 146db52a18 memoization: Micro-optimize code produced by 'define-cache-procedure'.
* guix/memoization.scm (%nothing): Remove.
(define-cache-procedure): Make '%nothing' a local variable, with a
literal list.
2017-03-16 22:50:15 +01:00
Mathieu Othacehe 34d60c49cb services: connman: Rework service.
* gnu/services/networking.scm (connman-service): Remove.
(<connman-configuration>): New record specifying the package
to be used (connman) and whether vpn plugin shall be
disabled (disable-vpn?).
(connman-configuration): New exported variable.
(connman-configuration?): New exported variable.
(connman-service-type): Export it.

* doc/guix.texi (Networking Services): Adjust accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-16 22:50:14 +01:00
Ludovic Courtès d938a58bee gexp: Add '=>' syntax to import computed modules.
* guix/gexp.scm (imported-files)[file-pair]: Add case for pairs where
the cdr is not a string.
(imported-modules): Support '=>' syntax in MODULES.
* tests/gexp.scm ("imported-files with file-like objects")
("gexp->derivation & with-imported-module & computed module"): New tests.
* doc/guix.texi (G-Expressions): Document '=>' syntax for
'with-imported-modules'.
2017-03-16 22:50:14 +01:00
Ludovic Courtès 4c0c4db070 utils: Move base16 procedures to (guix base16).
* guix/utils.scm (bytevector->base16-string, base16-string->bytevector):
Move to...
* guix/base16.scm: ... here.  New file.
* tests/utils.scm ("bytevector->base16-string->bytevector"): Move to...
* tests/base16.scm: ... here.  New file.
* Makefile.am (MODULES): Add guix/base16.scm.
(SCM_TESTS): Add tests/base16.scm.
* build-aux/download.scm, guix/derivations.scm,
guix/docker.scm, guix/import/snix.scm, guix/pk-crypto.scm,
guix/scripts/authenticate.scm, guix/scripts/download.scm,
guix/scripts/hash.scm, guix/store.scm, tests/hash.scm,
tests/pk-crypto.scm: Adjust imports accordingly.
2017-03-16 22:50:14 +01:00
Clément Lassieur 2c715a9223 gnu: password-store: Fix compatibility with GnuPG 2.1.19.
* gnu/packages/patches/password-store-gnupg-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/password-utils.scm (password-store)[source]: Use it.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-16 19:58:43 +01:00
Raoul Jean Pierre Bonnal 2441c28414 gnu: Add r-seurat.
* gnu/packages/bioinformatics.scm (r-seurat): New variable.

Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
2017-03-16 14:54:58 +01:00
Ricardo Wurmus 79849358f8 gnu: sra-tools: Update to 2.8.2-1.
* gnu/packages/bioinformatics.scm (sra-tools): Update to 2.8.2-1.
[arguments]: Add DEFAULT_CRT and DEFAULT_KFG to make flags.
2017-03-16 13:40:36 +01:00
Ricardo Wurmus d5e1716239 gnu: ncbi-vdb: Install configuration files.
* gnu/packages/bioinformatics.scm (ncbi-vdb)[arguments]: Add phase
"install-configuration-files".
2017-03-16 13:39:53 +01:00
Ricardo Wurmus 558e23074e gnu: ncbi-vdb: Override search path for java-ngs.
* gnu/packages/bioinformatics.scm (ncbi-vdb)[arguments]: Patch "package.prl"
to ensure that java-ngs is found by the configure script; remove configure
flag "--with-ngs-java-prefix".
2017-03-16 13:38:39 +01:00
Efraim Flashner 4cacd87e4d Merge remote-tracking branch 'origin/master' into core-updates 2017-03-16 13:11:28 +02:00
Ricardo Wurmus 701111989e gnu: ncbi-vdb: Use modify-phases syntax.
* gnu/packages/bioinformatics.scm (ncbi-vdb)[arguments]: Use modify-phases
syntax.
2017-03-16 10:20:56 +01:00
Ricardo Wurmus 5021f54787 gnu: ncbi-vdb: Update to 2.8.2.
* gnu/packages/bioinformatics.scm (ncbi-vdb): Update to 2.8.2.
2017-03-16 10:19:25 +01:00
Ricardo Wurmus 6c4ccf3228 gnu: ngs-sdk: Update to 1.3.0.
* gnu/packages/bioinformatics.scm (ngs-sdk): Update to 1.3.0.
2017-03-16 10:18:48 +01:00
Ricardo Wurmus 56f76b08be gnu: jack-2: Fix build by patching fast_rand.
* gnu/packages/audio.scm (jack-2)[arguments]: Add phase "patch-fast_rand" to
apply upstream fixes.
2017-03-16 09:41:20 +01:00
Leo Famulari 5707ce6e4b Revert "gnu: bdftopcf: Use libxfont2."
Building with libxfont2 leads to an error in the configure phase:

"No package 'xfont' found"

This reverts commit 2060b4d95f.
2017-03-16 02:06:56 -04:00
Tobias Geerinckx-Rice 0f03c53168 gnu: Add pzstd.
* gnu/packages/compression.scm (pzstd): New variable.
2017-03-16 05:44:02 +01:00
Tobias Geerinckx-Rice f6ac3101ff gnu: Add zstd.
* gnu/packages/compression.scm (zstd): New variable.
2017-03-16 05:44:02 +01:00
Tobias Geerinckx-Rice 9186216268 gnu: python-publicsuffix2: Update to 2.20160818.
* gnu/packages/python.scm (python-publicsuffix2): Update to 2.20160818.
2017-03-16 05:44:02 +01:00
Tobias Geerinckx-Rice 192b887a03 gnu: awscli: Update to 1.11.63.
* gnu/packages/python.scm (awscli): Update to 1.11.63.
2017-03-16 05:44:01 +01:00
Tobias Geerinckx-Rice d93985fe22 gnu: python-botocore: Update to 1.5.26.
* gnu/packages/python.scm (python-botocore): Update to 1.5.26.
2017-03-16 05:44:01 +01:00
Tobias Geerinckx-Rice 70fc93cb28 gnu: python-ptyprocess: Update to 0.5.1.
* gnu/packages/python.scm (python-ptyprocess): Update to 0.5.1.
2017-03-16 05:44:01 +01:00
Kei Kebreau 26a657f06a gnu: Add prboom-plus.
* gnu/packages/games.scm (prboom-plus): New variable.
2017-03-15 23:14:42 -04:00
Gábor Boskovits 5b5cf3c765 gnu: Add tftp-hpa.
* gnu/packages/networking.scm (tftp-hpa): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-15 18:24:30 -04:00
Andy Wingo 80a725726d gnu: guile-next: Update to 2.2.0.
* gnu/packages/guile.scm (guile-next): Update to 2.2.0.
2017-03-15 22:59:40 +01:00
Leo Famulari dce8ac54b4 gnu: profanity: Make the source URL version-agnostic.
* gnu/packages/messaging.scm (profanity)[source]: Use (version) in the source
URL.
2017-03-15 17:20:27 -04:00
Tobias Geerinckx-Rice cf8d068775 gnu: units: Update to 2.14.
* gnu/packages/maths.scm (units): Update to 2.14.
2017-03-15 22:19:40 +01:00
Tobias Geerinckx-Rice 3d602acb13 gnu: no-more-secrets: Update to 0.3.2.
* gnu/packages/games.scm (no-more-secrets): Update to 0.3.2.
2017-03-15 22:19:40 +01:00
Tobias Geerinckx-Rice 7ea523853c gnu: mailutils: Update to 3.2.
* gnu/packages/mail.scm (mailutils): Update to 3.2.
2017-03-15 22:19:40 +01:00
Tobias Geerinckx-Rice f38607536e gnu: Use INSTALL-FILE where appropriate.
* gnu/packages/admin.scm (wpa-supplicant-minimal): Substitute the simpler
INSTALL-FILE for COPY-FILE when invoked with redundant arguments.
* gnu/packages/bioinformatics.scm (couger, aragorn, express-beta-diversity,
edirect, fasttree, rsem, samtools-0.1): Likewise.
* gnu/packages/code.scm (withershins): Likewise.
* gnu/packages/conky.scm (conky): Likewise.
* gnu/packages/debug.scm (delta, american-fuzzy-lop): Likewise.
* gnu/packages/emacs.scm (emacs-mit-scheme-doc): Likewise.
* gnu/packages/engineering.scm (librecad): Likewise.
2017-03-15 22:19:39 +01:00
Tobias Geerinckx-Rice 618e4bfbad gnu: cryptsetup: Update to 1.7.4.
* gnu/packages/cryptsetup.scm (cryptsetup): Update to 1.7.4.
2017-03-15 22:19:39 +01:00
Tobias Geerinckx-Rice 4e128dd582 gnu: man-pages: Update to 4.10.
* gnu/packages/man.scm (man-pages): Update to 4.10.
[home-page]: Use HTTPS.
2017-03-15 22:19:38 +01:00
Mekeor Melire a829c6501b gnu: Add profanity.
* gnu/packages/messaging.scm (profanity): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-15 17:17:06 -04:00
Mekeor Melire 781d3b070c gnu: Add libstrophe.
* gnu/packages/messaging.scm (libstrophe): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-15 17:17:06 -04:00
Mekeor Melire 13292ee570 gnu: Add libmesode.
* gnu/packages/messaging.scm (libmesode): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-15 17:17:06 -04:00
Leo Famulari 9e61d1534a gnu: bitcoin-core: Update to 0.14.0.
* gnu/packages/finance.scm (bitcoin-core): Update to 0.14.0.
2017-03-15 15:48:43 -04:00
Marius Bakke b8f99f4ae3 gnu: nss, nss-certs: Update to 3.29.3.
* gnu/packages/gnuzilla.scm (nss): Update to 3.29.3.
* gnu/packages/certs.scm (nss-certs): Update to 3.29.3.
2017-03-15 17:57:51 +01:00
Marius Bakke d027b0011f gnu: nss: Increase test timeouts.
* gnu/packages/patches/nss-increase-test-timeout.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnuzilla.scm (nss)[source]: Use it.
2017-03-15 17:56:05 +01:00
Marius Bakke 1461dd2410 Revert "Revert "gnu: nss: Build for aarch64-linux with 64-bit support.""
This reverts commit adb984d23c.
2017-03-15 17:53:27 +01:00
Marius Bakke db3c06d511 gnu: nss: Use 'modify-phases' syntax.
* gnu/packages/gnuzilla.scm (nss)[arguments]: Use 'modify-phases'.
2017-03-15 17:53:24 +01:00
Marius Bakke 4b7e5c1131 Merge branch 'master' into core-updates 2017-03-15 17:52:26 +01:00
Marius Bakke adb984d23c Revert "gnu: nss: Build for aarch64-linux with 64-bit support."
Temporary revert to fix messy merge conflict!

This reverts commit 568004c3c9.
2017-03-15 17:51:23 +01:00
Ludovic Courtès 608e42e7c9 build: Prefer Guile 2.2 over 2.0.
* configure.ac: In 'GUILE_PKG', prefer 2.2 over 2.0.  Remove warning
about 2.2 not being fully supported.
* doc/guix.texi (Requirements): Mention Guile 2.2.x.
2017-03-15 15:19:54 +01:00
Ludovic Courtès 13159c68ef tests: Expect less accurate location info in 2.2.0.
* tests/guix-system.sh: Work around inaccurate location info in 2.2.0.
2017-03-15 15:19:54 +01:00
Ludovic Courtès a9a0227c01 store: Adjust UTF-8 test to Guile 2.2.
* tests/store.scm ("current-build-output-port, UTF-8 + garbage"): On
Guile 2.2, expect REPLACEMENT CHARACTER instead of '?'.
2017-03-15 15:19:53 +01:00
Ludovic Courtès 70dfdd501a syscalls: Adjust 'clone' to Guile 2.2.
Before that, something like:

  (call-with-container
    (lambda ()
      (match (primitive-fork)
        …)))

would hang in 'primitive-fork' as the child process (the one started in
the container) would try to pthread_join the finalization thread in
'stop_finalization_thread' in libguile, not knowing that this thread is
nonexistent.

* guix/build/syscalls.scm (%set-automatic-finalization-enabled?!): New
procedure.
(without-automatic-finalization): New macro.
(clone): Wrap PROC call in 'without-automatic-finalization'.
2017-03-15 15:19:53 +01:00
Ludovic Courtès 81a0f1cdf1 zlib: Don't rely on EBADF being ignored by 'fport_close'.
In 2.2, 'fport_close' no longer swallows EBADF and instead raises a
'system-error' for this.  This commit adjusts for 2.2.

* guix/zlib.scm (close-procedure): Remove.
(make-gzip-input-port): Use 'port->fdes' instead of 'fileno'.
Use 'gzclose' instead of 'close-procedure'.
(make-gzip-output-port): Likewise.
* tests/zlib.scm ("compression/decompression pipe"): Don't check whether
PARENT is closed using 'port-closed?'.  Instead, use 'seek' on the
underlying FD and check for EBADF.
2017-03-15 15:19:53 +01:00
Ludovic Courtès bc551cf32b maint: Mention guix-patches@gnu.org in 'HACKING'.
Fixes <http://bugs.gnu.org/25899>.

* HACKING: Mention guix-patches@gnu.org.
2017-03-15 15:19:53 +01:00
Marius Bakke bd102157a1 gnu: mariadb: Update to 10.1.22 [fixes CVE-2017-3302 and CVE-2017-3313].
* gnu/packages/databases.scm (mariadb): Update to 10.1.22.
2017-03-15 15:08:31 +01:00
Efraim Flashner 378640ec37 gnu: qemu-minimal: Add aarch64 to target list.
* gnu/packages/qemu.scm (qemu-minimal)[arguments]: Add 'aarch64-softmmu'
to the target list.
2017-03-15 15:58:02 +02:00
Efraim Flashner 27bf00e691 gnu: python-waf: Update to 1.9.8.
* gnu/packages/python.scm (python-waf, python2-waf): Update to 1.9.8.
[home-page]: Use https.
2017-03-15 13:08:56 +02:00
Tobias Geerinckx-Rice 283234a309 gnu: direnv: Update to 2.11.3.
* gnu/packages/shellutils.scm (direnv): Update to 2.11.3.
2017-03-15 03:45:57 +01:00
Tobias Geerinckx-Rice 68c10f31f9 gnu: conky: Update to 1.10.6.
* gnu/packages/conky.scm (conky): Update to 1.10.6.
2017-03-15 03:45:56 +01:00
Tobias Geerinckx-Rice 708e76287c gnu: obs: Update to 18.0.1.
* gnu/packages/video.scm (obs): Update to 18.0.1.
2017-03-15 03:45:56 +01:00
Tobias Geerinckx-Rice 17753e6edb gnu: youtube-dl: Update to 2017.03.15.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.15.
2017-03-15 03:45:55 +01:00
Tobias Geerinckx-Rice a988cbb766 gnu: stress-make: Fix description.
* gnu/packages/debug.scm (stress-make)[description]: Fix typo.
Avoid ambiguous use of ‘in order’.
2017-03-15 03:45:55 +01:00
Tobias Geerinckx-Rice d540156c69 gnu: znc: Update to 1.6.5.
* gnu/packages/messaging.scm (znc): Update to 1.6.5.
2017-03-15 03:43:21 +01:00
Tobias Geerinckx-Rice 6d57723ac8 gnu: grue-hunter: Correctly install documentation.
* gnu/packages/games.scm (grue-hunter)[arguments]: Install and populate
‘/share/doc/grue-hunter’ as a directory, not a plain file.
2017-03-15 01:10:31 +01:00
Tobias Geerinckx-Rice b2d748edff gnu: samtools: End installation phases with truth.
* gnu/packages/bioinformatics.scm (samtools, samtools-0.1)[arguments]:
Return #T instead of the undefined results of COPY-FILE or INSTALL-FILE.
2017-03-15 01:10:30 +01:00
Leo Famulari 35dcfed370 gnu: w3m: Update to 0.5.3+git20170102 [security fixes].
See 'NEWS' and 'ChangeLog' in the source distribution for more
information about the security-related bug fixes.

* gnu/packages/w3m.scm (w3m): Update to 0.5.3+git20170102.
2017-03-14 18:26:28 -04:00
Leo Famulari 2eab5db300 Revert "gnu: gitolite: Fix shebangs in hooks."
This change embedded store references in the shebangs of scripts that
were meant to be copied out of the store. Those scripts would break when
the interpreters expected by the shebangs were garbage collected.

<https://debbugs.gnu.org/cgi/bugreport.cgi?bug=25966#28>

This reverts commit d0c16adb19.
2017-03-14 18:26:28 -04:00
Ludovic Courtès 850edd77f9 pack: Add unit test.
* guix/scripts/pack.scm (self-contained-tarball): Add #:tar option.
[build](tar-supports-sort?): New variable.  Use it.
* tests/pack.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
2017-03-14 23:18:32 +01:00
Ludovic Courtès 36f213fb70 pack: Use maximum compression; use '-n' for gzip.
* guix/scripts/pack.scm (<compressor>)[tar-option]: Remove.
[command]: New field.
(%compressors): Provide complete commands.  Use '-9' or equivalent for
each compressor; use '-n' for gzip.
(self-contained-tarball)[build]: Adjust accordingly.
2017-03-14 23:18:32 +01:00
Marius Bakke 796d2f2d0b Revert "gnu: nss: Use 'modify-phases' syntax."
This reverts commit 87f1c7efc1.
2017-03-14 22:29:18 +01:00
Marius Bakke 031349075a Revert "gnu: nss, nss-certs: Update to 3.29.3."
Hydra failed to build this version. See discussion at
https://lists.gnu.org/archive/html/guix-devel/2017-03/msg00408.html.

This reverts commit 4f3dcdd99b.
2017-03-14 22:26:18 +01:00
Julien Lepiller edda7ebec1 gnu: Add ocaml-ppx-typerep-conv.
* gnu/packages/ocaml.scm (ocaml-ppx-typerep-conv): New variable.
2017-03-14 22:09:56 +01:00
Julien Lepiller d2203187fe gnu: Add ocaml-ppx-let.
* gnu/packages/ocaml.scm (ocaml-ppx-let): New variable.
2017-03-14 22:09:50 +01:00
Julien Lepiller 250ac438e7 gnu: Add ocaml-ppx-enumerate.
* gnu/packages/ocaml.scm (ocaml-ppx-enumerate): New variable.
2017-03-14 22:09:48 +01:00
Julien Lepiller a43160ee6f gnu: Add ocaml-ppx-assert.
* gnu/packages/ocaml.scm (ocaml-ppx-assert): New variable.
2017-03-14 22:09:46 +01:00
Julien Lepiller 651563bd71 gnu: Add ocaml-ppx-here.
* gnu/packages/ocaml.scm (ocaml-ppx-here): New variable.
2017-03-14 22:09:44 +01:00
Julien Lepiller 14af90cfbd gnu: Add ocaml-ppx-variants-conv.
* gnu/packages/ocaml.scm (ocaml-ppx-variants-conv): New variable.
2017-03-14 22:09:41 +01:00
Julien Lepiller 334436f051 gnu: Add ocaml-ppx-sexp-conv.
* gnu/packages/ocaml.scm (ocaml-ppx-sexp-conv): New variable.
2017-03-14 22:09:39 +01:00
Julien Lepiller d1d90df63b gnu: Add ocaml-variantslib.
* gnu/packages/ocaml.scm (ocaml-variantslib): New variable.
2017-03-14 22:09:37 +01:00
Julien Lepiller ef0051b2c5 gnu: Add ocaml-typerep.
* gnu/packages/ocaml.scm (ocaml-typerep): New variable.
2017-03-14 22:09:33 +01:00
Julien Lepiller d19c1b4105 gnu: Add ocaml-sexplib.
* gnu/packages/ocaml.scm (ocaml-sexplib): New variable.
2017-03-14 22:09:14 +01:00
Marius Bakke 77c5d63f4d gnu: libidn2: Create 'pkg-config' file.
* gnu/packages/libidn.scm (libidn2)[arguments]: Add phase creating libidn2.pc.
2017-03-14 21:29:27 +01:00
Kei Kebreau 9099a45792 gnu: asciidoc: Add XML and XSLT support.
* gnu/packages/documentation.scm (asciidoc)[arguments]: Add
set-xml-binary-paths phase.
[inputs]: Add libxml2 and libxslt.
2017-03-14 15:57:54 -04:00
Efraim Flashner 568004c3c9 gnu: nss: Build for aarch64-linux with 64-bit support.
* gnu/packages/gnuzilla.scm (nss)[arguments]: Set the environmental
variable 'USE_64' on aarch64-linux also.
2017-03-14 20:48:39 +02:00
Efraim Flashner 044006f3d2 gnu: mesa: Enable gallium tests.
* gnu/packages/gl.scm (mesa)[arguments]: Add configure flag to enable
the gallium tests.
2017-03-14 20:48:36 +02:00
Efraim Flashner 2a8b89c27f gnu: mesa: Customize build flags based on architecture.
* gnu/packages/gl.scm (mesa)[arguments]: On armhf-linux and
aarch64-linux remove the i915 gallium driver and add freedreno and vc4.
2017-03-14 20:48:32 +02:00
Efraim Flashner c5e91014a2 gnu: mesa: Use llvm backend for Intel hardware only.
* gnu/packages/gl.scm (mesa)[inputs]: Only use llvm for i686-linux and
x86_64-linux.
[arguments]: Only pass '--enable-gallium-llvm' to 'configure on
i686-linux and x86_64-linux.
2017-03-14 20:48:27 +02:00
Ludovic Courtès 5895ec8aa2 pack: Add '--symlink'.
* guix/scripts/pack.scm (self-contained-tarball): Add #:symlinks
parameter.
[build](symlink->directives): New procedure
(directives): New variable.
Add call to 'evaluate-populate-directive'.  Pass the directories among
DIRECTIVES to 'tar'.
(%default-options): Add 'symlinks'.
(%options, show-help): Add '--symlink'.
(guix-pack): Honor it.
* gnu/build/install.scm (evaluate-populate-directive): Export.
* doc/guix.texi (Invoking guix pack): Document it.
2017-03-14 17:57:27 +01:00
Ludovic Courtès df12920744 nls: Mark (guix scripts pack) as translatable.
* po/guix/POTFILES.in: Add 'guix/scripts/pack.scm'.
2017-03-14 17:57:27 +01:00
Ludovic Courtès 6b63c43e06 pack: Add '--localstatedir' option.
* guix/scripts/pack.scm (self-contained-tarball): Add #:localstatedir?
parameter and honor it.
(%options, show-help): Add '--localstatedir'.
(guix-pack): Honor it.
* gnu/build/install.scm (populate-single-profile-directory): Add
 #:register? parameter and honor it.
* doc/guix.texi (Binary Installation): Use '--localstatedir' in
example.
(Invoking guix pack): Document it.
2017-03-14 17:57:27 +01:00
Leo Famulari 9b05ccfedd gnu: linux-libre@4.1: Update to 4.1.39.
* gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.39.
2017-03-14 12:55:20 -04:00
Leo Famulari 962cbb24c5 gnu: windowmaker: Use modify-phases syntax.
* gnu/packages/gnustep.scm (windowmaker)[arguments]: Use modify-phases.
2017-03-14 12:10:16 -04:00
Leo Famulari 8cac5bca12 gnu: windowmaker: Update to 0.95.8.
* gnu/packages/gnustep.scm (windowmaker): Update to 0.95.8.
2017-03-14 12:10:12 -04:00
Efraim Flashner d779305db0 gnu: aria2: Update to 1.31.0.
* gnu/packages/bittorrent.scm (aria2): Update to 1.31.0.
2017-03-14 15:05:27 +02:00
Ludovic Courtès 3b2dc9edcd upstream: Avoid '_' as a pattern variable in 'match'.
* guix/upstream.scm (lookup-updater): Don't use '_' as a pattern
variable.
2017-03-14 11:19:21 +01:00
Ludovic Courtès 28958b646f gnu: python-parsedatetime: Update to 2.3.
Version 2.1 was apparently time-sensitive and started failing like this:

  ======================================================================
  FAIL: testFloat (tests.TestDelta.test)
  ----------------------------------------------------------------------
  Traceback (most recent call last):
    File "/tmp/guix-build-python2-parsedatetime-2.1.drv-0/parsedatetime-2.1/tests/TestDelta.py", line 64, in testFloat
      self.cal.parse('1.4 months ago', self.source), months=-1.4)
    File "/tmp/guix-build-python2-parsedatetime-2.1.drv-0/parsedatetime-2.1/tests/TestDelta.py", line 37, in assertDelta
      self.assertTrue(diff < 0.05, '%s is not less than 0.05' % diff)
  AssertionError: 0.0666666666667 is not less than 0.05

  ----------------------------------------------------------------------

* gnu/packages/python.scm (python-parsedatetime): Update to 2.3.
[native-inputs]: Add PYTHON-PYTEST and PYTHON-PYTEST-RUNNER.
[propagated-inputs]: New field.
2017-03-14 11:18:16 +01:00
ng0 a4651f6411 gnu: Add dovecot-libsodium-plugin.
* gnu/packages/mail.scm (dovecot-libsodium-plugin): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-14 10:28:57 +01:00
ng0 944a5cdd0d gnu: Add dovecot-trees.
* gnu/packages/mail.scm (dovecot-trees): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-03-14 10:28:57 +01:00
Ludovic Courtès ae196fa349 build: On 2.2, build package files with almost no optimizations.
* build-aux/compile-all.scm (%default-optimizations)
(%lightweight-optimizations): New variables.
(optimization-options): New procedure.
(compile-file*): Use it.
2017-03-14 10:28:57 +01:00
Leo Famulari 49c2a46e74 gnu: python@2.7: Update to 2.7.13
* gnu/packages/python.scm (python-2.7): Update to 2.7.13.
2017-03-14 02:45:23 -04:00
Leo Famulari dc5cec21f2 gnu: python@2.7: Fix getentropy() calls on kernels < 3.17.
* gnu/packages/patches/python-2.7-getentropy-on-old-kernels.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-2.7)[source]: Use it.
2017-03-14 02:45:23 -04:00
Leo Famulari a70782d37b gnu: wireless-regdb: Update to 2017.03.07.
* gnu/packages/linux.scm (wireless-regdb): Update to 2017.03.07.
2017-03-14 01:58:35 -04:00
Ludovic Courtès 0f11f64022 gnu: guile-cairo: Honor the Guile effective version.
* gnu/packages/gtk.scm (guile-cairo)[arguments]: Add #:modules.
Get the effective version of Guile and use that in installation
directory names.
2017-03-13 22:26:54 +01:00
Ludovic Courtès b97438650d gnu: guile-cairo: Use 'modify-phases'.
* gnu/packages/gtk.scm (guile-cairo)[arguments]: Use 'modify-phases'.
2017-03-13 22:18:13 +01:00
Efraim Flashner 3f9543aee1 Merge remote-tracking branch 'origin/master' into core-updates 2017-03-13 23:08:49 +02:00
Ludovic Courtès b111bceecc download: Export '%x509-certificate-directory'.
* guix/build/download.scm (%x509-certificate-directory): Export, as
expected by (guix scripts pull) since commit
7e81d699de.
2017-03-13 21:52:38 +01:00
Ludovic Courtès 12773de3e7 gnu: Add guile2.2-lib.
* gnu/packages/guile.scm (guile2.2-lib): New variable.
2017-03-13 21:52:38 +01:00
Efraim Flashner 864a9590ad gnu: luajit: Update to 2.1.0-beta2.
* gnu/packages/lua.scm (luajit): Update to 2.1.0-beta2.
2017-03-13 21:47:30 +02:00
Leo Famulari 7cb68a3cb3 gnu: Remove python-3.4.
* gnu/packages/python.scm (python-3.4): Remove variable.
* gnu/packages/patches/python-3.4-fix-tests.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-13 15:33:54 -04:00
humanitiesNerd a71c863834 gnu: Add python-flask-login.
* gnu/packages/python.scm (python-flask-login, python2-flask-login): New
variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-13 19:36:56 +01:00
humanitiesNerd 78c5566365 gnu: Add python-flask-htmlmin.
* gnu/packages/python.scm (python-flask-htmlmin, python2-flask-htmlmin): New
variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-13 19:36:55 +01:00
humanitiesNerd 35db2d3cb7 gnu: Add python-htmlmin.
* gnu/packages/python.scm (python-htmlmin, python2-htmlmin): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-13 19:36:54 +01:00
Marius Bakke 1bbbb0b4af gnu: diffoscope: Update to 78.
* gnu/packages/package-management.scm (diffoscope): Update to 78.
2017-03-13 19:16:19 +01:00
Marius Bakke 8298df96ac gnu: Add minizip.
* gnu/packages/compression.scm (minizip): New variable.
2017-03-13 19:16:19 +01:00
Marius Bakke dd8ecb386c gnu: notmuch: Update to 0.24.
* gnu/packages/mail.scm (notmuch, python-notmuch, python2-notmuch): Update to
0.24.
2017-03-13 18:21:23 +01:00
Marius Bakke 17fb6fb105 gnu: xf86-video-intel: Update to 2.99.917-4-7e9e92c.
* gnu/packages/xorg.scm (xf86-video-intel): Update to 2.99.917-4-7e9e92c.
2017-03-13 18:21:23 +01:00
Marius Bakke ca453df7c8 gnu: xf86-video-nouveau: Update to 1.0.14.
* gnu/packages/xorg.scm (xf86-video-nouveau): Update to 1.0.14.
2017-03-13 18:21:22 +01:00
Marius Bakke 4f3dcdd99b gnu: nss, nss-certs: Update to 3.29.3.
* gnu/packages/gnuzilla.scm (nss): Update to 3.29.3.
* gnu/packages/certs.scm (nss-certs): Update to 3.29.3.
2017-03-13 18:21:22 +01:00
Marius Bakke 87f1c7efc1 gnu: nss: Use 'modify-phases' syntax.
* gnu/packages/gnuzilla.scm (nss)[arguments]: Use 'modify-phases'.
2017-03-13 18:21:22 +01:00
Alex Kost 7a4dea524b gnu: manaplus: Update to 1.7.3.4.
* gnu/packages/games.scm (manaplus): Update to 1.7.3.4.
2017-03-13 18:21:10 +03:00
Alex Kost 846344d053 gnu: git-modes: Update to 1.2.4.
* gnu/packages/emacs.scm (git-modes): Update to 1.2.4.
2017-03-13 18:21:10 +03:00
Alex Kost 2617050b3b gnu: magit: Update to 2.10.3.
* gnu/packages/emacs.scm (magit): Update to 2.10.3.
2017-03-13 18:21:10 +03:00
Andy Wingo 0216137237 gnu: guile-next: Update to 2.1.8.
* gnu/packages/guile.scm (guile-next): Update to 2.1.8.
2017-03-13 12:22:38 +01:00
pjotrp 3288e647e3 gnu: r-hexbin: Update to 1.27.1-1.
The package tarball was updated in place, resulting in a change in the hash
value.  We decided to bump the version to 1.27.1-1 instead of keeping the
version at upstream's 1.27.1.

* gnu/packages/statistics.scm (r-hexbin): Update to 1.27.1-1.
2017-03-13 10:34:00 +01:00
Ludovic Courtès 8f7ea70913 gnu: guile-next: Increase max-silent-time.
* gnu/packages/guile.scm (guile-next)[properties]: Add 'max-silent-time'.
2017-03-13 10:30:33 +01:00
Leo Famulari 59bb178cce gnu: linux-libre@4.4: Update to 4.4.53.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.53.
2017-03-13 00:56:58 -04:00
Leo Famulari 7bc57e760c gnu: linux-libre@4.9: Update to 4.9.14.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.14.
2017-03-13 00:56:58 -04:00
Leo Famulari 49a8c92cbe gnu: linux-libre: Update to 4.10.2.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.2.
(%linux-libre-hash): Update hash.
2017-03-13 00:56:58 -04:00
Andy Patterson 108f69c448 gnu: ecl: Update to 16.1.3.
* gnu/packages/lisp.scm (ecl): Update to 16.1.3.
[arguments]: Use a different method to set the binary used for tests.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-12 23:47:40 -04:00
Leo Famulari be81133a13 gnu: libical: Fix substitution of path to time zone database.
Fixes <https://bugs.gnu.org/26039>.

This is a followup to commit 2b193389d2.

* gnu/packages/calendar.scm (arguments): Update 'patch-paths' phase.
2017-03-12 20:45:46 -04:00
Leo Famulari 3ffaec136f gnu: Add a tzdata variant for testing purposes.
* gnu/packages/base.scm (tzdata-2017a): New variable.
* gnu/packages/glib.scm (glib)[inputs]: Remove tzdata.
[native-inputs]: Add tzdata-2017a.
[arguments]: Add tzdata-2017a to #:disallowed-references.
* gnu/packages/statistics.scm (r)[inputs]: Remove tzdata.
[native-inputs]: Add tzdata-2017a.
[arguments]: Add tzdata-2017a to #:disallowed-references.
2017-03-12 20:45:46 -04:00
Marius Bakke 3f06f43058 gnu: irssi: Update to 1.0.2.
* gnu/packages/irc.scm (irssi): Update to 1.0.2.
2017-03-12 19:58:52 +01:00
Marius Bakke 7e81d699de pull: Default to HTTPS.
* guix/scripts/pull.scm (%snapshot-url): Use HTTPS.
(guix-pull): Authenticate against LE-CERTS when URL is from Savannah.
2017-03-12 19:39:32 +01:00
Clément Lassieur 720cb10c15 services: Move configuration functions that shouldn't be factorized.
* gnu/services/configuration.scm (serialize-field, serialize-string)
(serialize-space-separated-string-list, space-separated-string-list?)
(serialize-file-name, file-name?, serialize-boolean): Move these functions...
* gnu/services/cups.scm: ...to this file.
* gnu/services/kerberos.scm: ...to this file.

Configuration syntaxes are very specific to services.  Some services may have
the same configuration syntax, but none of them is common enough to be
abstracted in configuration.scm.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-12 19:09:32 +01:00
Clément Lassieur 56aef188a2 services: dovecot: Reimplement proper configuration functions.
* gnu/services/mail.scm (uglify-field-name, serialize-field, serialize-string)
(space-separated-string-list?, serialize-space-separated-string-list)
(file-name?, serialize-file-name, serialize-boolean): Add them.

These functions were inadvertently changed while being factorized in
gnu/service/configuration.scm.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-12 19:08:50 +01:00
Marius Bakke e4d34cd0f0 gnu: python@3.5: Fix getentropy() calls on kernels < 3.17.
* gnu/packages/patches/python-3.5-getentropy-on-old-kernels.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-3.5, python-minimal, python-minimal-wrapper,
python-wrapper)[source]: Use it.
2017-03-12 18:40:56 +01:00
Marius Bakke 343cee8af3 gnu: python@3.5: Update to 3.5.3.
* gnu/packages/python.scm (python-3.5, python-minimal, python-minimal-wrapper,
python-wrapper): Update to 3.5.3.
* gnu/packages/patches/python-fix-tests.patch: Adjust patch context.
* gnu/packages/patches/python-3.5-fix-tests.patch: Likewise. Patch one new test.
2017-03-12 18:40:56 +01:00
Ludovic Courtès 334c95306a syscalls: Adjust 'define-bits' to macro literal semantics of 2.2.
* guix/build/syscalls.scm (define-bits): Do not define NAMES... as
top-level variables since that prevents literal matches in 2.2.
Instead, determine constant values at expansion time.
2017-03-12 17:47:25 +01:00
Ludovic Courtès 239c22663a Add 'guix pack'.
* gnu/system/install.scm (self-contained-tarball): Move to...
* guix/scripts/pack.scm: ... here.  New file.
* doc/guix.texi (Binary Installation): Mention 'guix pack'.
(Invoking guix pack): New node.
* build-aux/make-binary-tarball.scm: Remove.
* Makefile.am (MODULES): Add guix/scripts/pack.scm.
(EXTRA_DIST): Remove build-aux/make-binary-tarball.scm.
(guix-binary.%.tar.xz): Rewrite using 'guix pack'.
* build-aux/hydra/gnu-system.scm (tarball-jobs): Adjust accordingly.
2017-03-12 17:47:25 +01:00
Ludovic Courtès 998ac26a1e gnu: tintin++: Use a mirror:// URI.
* gnu/packages/games.scm (tintin++)[source]: Use mirror://sourceforge.
2017-03-12 17:47:25 +01:00
Tobias Geerinckx-Rice 301f12ec92 gnu: offlineimap: Update to 7.0.14.
* gnu/packages/mail.scm (offlineimap): Update to 7.0.14.
2017-03-12 15:44:37 +01:00
Leo Famulari 0a6bd107e5 gnu: Add le-certs.
* gnu/packages/certs.scm (le-certs): New variable.
2017-03-12 03:23:16 -04:00
Clément Lassieur eba560765a services: dovecot: Fix unix_listeners and fifo_listeners path types.
* gnu/services/mail.scm (unix-listener-configuration)[path]
(fifo-listener-configuration)[path]: Change type from 'file-name' to 'string'.
* doc/guix.texi (Mail Services): Document it.

Signed-off-by: Clément Lassieur <clement@lassieur.org>
2017-03-12 01:30:23 +01:00
Raoul Jean Pierre Bonnal a5935d1946 gnu: Add r-tsne.
* gnu/packages/bioinformatics.scm (r-tsne): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:07 +10:00
Raoul Jean Pierre Bonnal 02eec38ee1 gnu: Add r-ranger.
* gnu/packages/statistics.scm (r-ranger): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:07 +10:00
Raoul Jean Pierre Bonnal d1906e3147 gnu: Add r-tclust.
* gnu/packages/statistics.scm (r-tclust): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:07 +10:00
Raoul Jean Pierre Bonnal 5a200a24eb gnu: Add r-sn.
* gnu/packages/statistics.scm (r-sn): New variable.

Co-authored-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 06085b5bc5 gnu: Add r-numderiv.
* gnu/packages/statistics.scm (r-numderiv): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal fe68c8a990 gnu: Add r-mnormt.
* gnu/packages/statistics.scm (r-mnormt): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 362ea0dc29 gnu: Add r-rcppprogress.
* gnu/packages/statistics.scm (r-rcppprogress): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal aa890f6185 gnu: Add r-caret.
* gnu/packages/statistics.scm (r-caret): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal ab2ec643c3 gnu: Add r-car.
* gnu/packages/statistics.scm (r-car): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal a3eb8c8191 gnu: Add r-pbkrtest.
* gnu/packages/statistics.scm (r-pbkrtest): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 51fc7d8c31 gnu: Add r-lme4.
* gnu/packages/statistics.scm (r-lme4): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal c549864d90 gnu: Add r-nloptr.
* gnu/packages/statistics.scm (r-nloptr): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 49dc1fa5cb gnu: Add r-quantreg.
* gnu/packages/statistics.scm (r-quantreg): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 545d0789fc gnu: Add r-matrixmodels.
* gnu/packages/statistics.scm (r-matrixmodels): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal aa84100011 gnu: Add r-modelmetrics.
* gnu/packages/statistics.scm (r-modelmetrics): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 21cfad44c1 gnu: Add r-rcppeigen.
* gnu/packages/statistics.scm (r-rcppeigen): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:06 +10:00
Raoul Jean Pierre Bonnal 0392f82fd5 gnu: Add r-minqa.
* gnu/packages/statistics.scm (r-minqa): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-12 10:28:05 +10:00
Ludovic Courtès 1dbe3a8db0 build: GnuTLS is now a hard dependency.
Discussed as part of <https://bugs.gnu.org/25975>.

* configure.ac: Check for (gnutls) and error out if it's missing.
* doc/guix.texi (Requirements): Move GnuTLS from optional to required.
(Substitutes): Remove footnote about the need for GnuTLS.
2017-03-12 00:40:15 +01:00
Danny Milosavljevic 5a717a95b3 gnu: wine: Update to 2.3.
* gnu/packages/wine.scm (wine): Update to 2.3.
2017-03-12 00:00:25 +01:00
Thomas Danckaert 4bff300b53 gnu: Add phonon-backend-gstreamer.
* gnu/packages/kde-frameworks.scm (phonon-backend-gstreamer): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 22:23:28 +01:00
Thomas Danckaert 5578c2987e gnu: phonon: Install Qt extensions.
* gnu/packages/kde-frameworks.scm (phonon)[arguments]: Add
-DPHONON-INSTALL_QT_EXTENSIONS_INTO_SYSTEM_QT configure flag, and patch the
installation directory.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 22:23:28 +01:00
Sergei Trofimovich 612af7ff66 gnu: re2: Set CXX for cross-compilation.
* gnu/packages/regex.scm (re2)[arguments]: Specify CXX in #:make-flags.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 22:23:28 +01:00
Mathieu Othacehe e7b9dac7b1 gnu: cuirass: Update to 0.0.1 revision 5.
* gnu/packages/ci.scm (cuirass): Update to 0.0.1 revision 5.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 22:23:28 +01:00
Leo Famulari c4b15cb54f gnu: imagemagick: Update to 6.9.7-10.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-10.
2017-03-11 12:35:57 -05:00
rsiddharth a15638034e gnu: Add ghc-unexceptionalio.
* gnu/packages/haskell.scm (ghc-unexceptionalio): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 12:43:36 +01:00
Arun Isaac 55fa53491b gnu: Add emacs-memoize.
* gnu/packages/emacs.scm (emacs-memoize): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 12:43:36 +01:00
Mathieu Othacehe 47bdc5a173 linux-initrd: Add a raw-initrd and use it to define base-initrd.
* gnu/system/linux-initrd.scm (raw-initrd): New exported variable.
(base-initrd): Use raw-initrd to build the initrd.
* doc/guix.texi (Initial RAM Disk): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-11 12:43:36 +01:00
John Darrington 4018745a22 doc: Update the package count.
* doc/guix.texi: Update the number of packages available.
2017-03-11 07:09:59 +01:00
Leo Famulari c84c8f66f5 gnu: wget: Fix CVE-2017-6508.
* gnu/packages/patches/wget-CVE-2017-6508.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/wget.scm (wget)[source]: Use it.
2017-03-10 22:36:58 -05:00
Raoul Jean Pierre Bonnal e08ad76658 gnu: Add r-fnn.
* gnu/packages/statistics.scm (r-fnn): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 11:55:28 +10:00
Raoul Jean Pierre Bonnal 7711f61450 gnu: Add r-pbapply.
* gnu/packages/statistics.scm (r-pbapply): New variable.

Co-authored-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 11:51:50 +10:00
Raoul Jean Pierre Bonnal d4cebae286 gnu: Add r-vgam.
* gnu/packages/statistics.scm (r-vgam): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 11:47:02 +10:00
Ben Woodcroft fbf45d6ea7 gnu: vsearch: Update to 2.4.2.
* gnu/packages/bioinformatics.scm (vsearch): Update to 2.4.2.
2017-03-11 11:37:15 +10:00
Raoul Jean Pierre Bonnal 036cd0cb8b gnu: Add r-ape.
* gnu/packages/bioinformatics.scm (r-ape): New variable.

Co-authored-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:26 +10:00
Raoul Jean Pierre Bonnal a409e8b52f gnu: Add r-fpc.
* gnu/packages/statistics.scm (r-fpc): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:26 +10:00
Raoul Jean Pierre Bonnal 5da4f84f1f gnu: Add r-trimcluster.
* gnu/packages/statistics.scm (r-trimcluster): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:26 +10:00
Raoul Jean Pierre Bonnal c0cab38e03 gnu: Add r-robustbase.
* gnu/packages/statistics.scm (r-robustbase): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:26 +10:00
Raoul Jean Pierre Bonnal cda0720805 gnu: Add r-deoptimr.
* gnu/packages/statistics.scm (r-deoptimr): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:26 +10:00
Raoul Jean Pierre Bonnal c962816dc4 gnu: Add r-prabclus.
* gnu/packages/statistics.scm (r-prabclus): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:26 +10:00
Raoul Jean Pierre Bonnal 5638e15475 gnu: Add r-mclust.
* gnu/packages/statistics.scm (r-mclust): New variable.

Co-authored-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:25 +10:00
Raoul Jean Pierre Bonnal a1f2668e6c gnu: Add r-flexmix.
* gnu/packages/statistics.scm (r-flexmix): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:25 +10:00
Raoul Jean Pierre Bonnal 1721fb4fe7 gnu: Add r-modeltools.
* gnu/packages/statistics.scm (r-modeltools): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:25 +10:00
Raoul Jean Pierre Bonnal d5eca4f9ac gnu: Add r-diptest.
* gnu/packages/statistics.scm (r-diptest): New variable.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-03-11 10:43:25 +10:00
Arun Isaac a2fa9c3d1b gnu: Add obnam.
* gnu/packages/backup.scm (obnam): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-10 22:06:25 +01:00
Theodoros Foradis b500dc2e83 gnu: icestorm: Replace reference in icebox_vlog.
* gnu/packages/fpga.scm (icestorm)[arguments]: Add phase
"fix-usr-local" to replace reference to /usr/local/share.
2017-03-10 21:15:39 +01:00
Danny Milosavljevic 97bede8466 gnu: dub: Update to 1.2.2.
* gnu/packages/ldc.scm (dub): Update to 1.2.2.
2017-03-10 19:39:52 +01:00
Clément Lassieur f895dce41b services: openssh: Fix 'PrintLastLog' default behaviour.
* gnu/services/ssh.scm (openssh-config-file): Add 'print-last-log?' option.
(<openssh-configuration>)[print-last-log?]: Add it.
(openssh-activation): Touch /var/log/lastlog.
* doc/guix.texi (Networking Services): Document 'print-last-log?'.

Before that, the service did not work as expected because /var/log/lastlog did
not exist.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-10 19:23:45 +01:00
Clément Lassieur 1806a670f0 services: openssh: Remove deprecated options.
* gnu/services/ssh.scm (openssh-config-file): Remove them.
(<openssh-configuration>)[rsa-authentication?]: Remove it.
(<openssh-configuration>)[protocol-number]: Remove it.
* doc/guix.texi (Networking Services): Remove them.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-10 19:23:45 +01:00
Clément Lassieur 563c5d42c9 services: openssh: Enable PAM.
* gnu/services/ssh.scm: (openssh-pam-services): New procedure.
(openssh-service-type): Use it to extend PAM-ROOT-SERVICE-TYPE.
(<openssh-configuration>)[challenge-response-authentication?]: New field.
(<openssh-configuration>)[use-pam?]: New field.
(openssh-config-file): Add them.
* doc/guix.texi (Networking Services): Document them.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-10 19:23:43 +01:00
Ludovic Courtès 856be82323 system: Avoid '_' as a pattern variable in 'match'.
* gnu/system.scm (operating-system-root-file-system): Don't use '_' as a
wildcard in 'match', to cope with literal semantics in 2.2.
2017-03-10 14:48:06 +01:00
Christopher Baines fe2b6434f0 services: Create /var/log upon activation.
When launching a container created with guix system container, the
attempt to create /var/log/wtmp would fail, as /var/log did not exist.

* gnu/services.scm (activation-script): Create /var/log

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-03-10 14:48:06 +01:00
Carlo Zancanaro 82ccc499f7 services: Add exim-service-type.
* gnu/services/mail.scm (<exim-configuration>): New record type.
(exim-computed-config-file, exim-shepherd-service, exim-activation, exim-etc,
exim-profile): New procedures.
(exim-service-type, %exim-accounts): New variables.
* doc/guix.text (Mail Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-10 14:48:05 +01:00
Ben J. Woodcroft 79f09fa239 gnu: hmmer: Build reproducibly.
* gnu/packages/patches/hmmer-remove-cpu-specificity.patch: New file.
* gnu/packages/bioinformatics.scm (hmmer): Use it.
2017-03-10 20:31:30 +10:00
Ricardo Wurmus 5ded35d89d gnu: Add sambamba.
* gnu/packages/bioinformatics.scm (htslib-for-sambamba, sambamba): New
variables.
2017-03-10 10:13:59 +01:00
Leo Famulari fc1428d295 gnu: pidgin: Update to 2.12.0 [fixes CVE-2017-2640].
* gnu/packages/messaging.scm (pidgin): Update to 2.12.0.
2017-03-10 01:44:39 -05:00
ng0 5c95465e27 gnu: neomutt: Configure with 'lmdb' and 'kyotocabinet'.
* gnu/packages/mail.scm (neomutt)[configure]: Add '--with-kyotocabinet'
and '--with-lmdb'.
[inputs]: Add 'lmdb' and 'kyotocabinet'.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-09 20:36:44 -05:00
ng0 469609a987 gnu: neomutt: Update to 20170306.
* gnu/packages/mail.scm (neomutt): Update to 20170306.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-09 20:36:39 -05:00
ng0 91c8724165 Revert "gnu: neomutt: Configure with 'lmdb' and 'tokyocabinet'."
'kyotocabinet' is more current than tokyocabinet in development
and supported in neomutt aswell.

This reverts commit ef91e2b964.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-09 20:36:32 -05:00
ng0 d4f6f78ea3 gnu: hiawatha: Adjust description.
* gnu/packages/web.scm (hiawatha)[description]: Adjust it.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-09 19:42:16 -05:00
ng0 f2a7ce5033 gnu: Add font-tamzen.
* gnu/packages/fonts.scm (font-tamzen): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-09 19:23:07 -05:00
Tobias Geerinckx-Rice ff797172b0 gnu: btrfs-progs/static: Correct description.
* gnu/packages/linux.scm (btrfs-progs/static)[description]: Use the correct
name of the btrfs-progs package and @command{} mark-up.
2017-03-09 23:55:57 +01:00
Tobias Geerinckx-Rice 5595d4c1fd gnu: btrfs-progs: Update to 4.10.
* gnu/packages/linux.scm (btrfs-progs): Update to 4.10.
2017-03-09 23:55:54 +01:00
Tobias Geerinckx-Rice ab84c13ff0 gnu: ibus-anthy: Update to 1.5.9.
* gnu/packages/ibus.scm (ibus-anthy): Update to 1.5.9.
2017-03-09 22:49:38 +01:00
Tobias Geerinckx-Rice 2704f5be09 gnu: ibus: Update to 1.5.15.
* gnu/packages/ibus.scm (ibus): Update to 1.5.15.
2017-03-09 22:49:38 +01:00
Tobias Geerinckx-Rice 1b34a47da0 gnu: pius: Update to 2.2.4.
* gnu/packages/gnupg.scm (pius): Update to 2.2.4.
2017-03-09 22:49:37 +01:00
Tobias Geerinckx-Rice 50b398298f gnu: youtube-dl: Update to 2017.03.07.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.07.
2017-03-09 22:49:37 +01:00
Arun Isaac d9e94c6170 gnu: graphicsmagick: Build with 16 bit quantum depth.
Octave requires graphicsmagick to be built with 16 bit quantum depth.

* gnu/packages/imagemagick.scm (graphicsmagick)[arguments]: Add
"--with-quantum-depth=16" and "--enable-quantum-library-names"
to #:configure-flags.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-09 16:46:12 -05:00
Arun Isaac 9f91340166 gnu: octave: Build with curl and graphicsmagick.
* gnu/packages/maths.scm (octave)[inputs]: Add curl and graphicsmagick.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-09 16:46:09 -05:00
Leo Famulari baa467762c gnu: glib: Avoid failing test caused by changes in the time zone database.
* gnu/packages/glib.scm (glib)[arguments]: Skip a failing test in
'disable-failing-tests' phase.
2017-03-09 15:20:01 -05:00
Leo Famulari 24c72670d9 gnu: glib: Update to 2.50.3.
* gnu/packages/glib.scm (glib): Update to 2.50.3.
2017-03-09 15:19:57 -05:00
Marius Bakke 1f28b3195a gnu: xf86-input-libinput: Update to 0.25.0.
* gnu/packages/xorg.scm (xf86-input-libinput): Update to 0.25.0.
2017-03-09 18:13:22 +01:00
Arun Isaac b6b2ca5d19 gnu: Add python2-larch.
* gnu/packages/python.scm (python2-larch): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-09 17:11:03 +01:00
Arun Isaac c220f0b474 gnu: Add python2-tracing.
* gnu/packages/python.scm (python2-tracing): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-09 17:09:17 +01:00
Arun Isaac 77e9941160 gnu: Add python2-ttystatus.
* gnu/packages/python.scm (python2-ttystatus): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-09 16:53:23 +01:00
Arun Isaac 33e9490ca1 gnu: Add python2-cliapp.
* gnu/packages/python.scm (python2-cliapp): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-09 16:52:53 +01:00
Marius Bakke 6741676911 gnu: python-numpy-documentation: Use full git commit hash in submodule.
* gnu/packages/python.scm (python-numpy-documentation,
python2-numpy-documentation)[native-inputs]: Update hash of
SCIPY-SPHINX-THEME. Fix indentation of a line.
2017-03-09 16:39:09 +01:00
Marius Bakke 63d62305c3 gnu: Remove obsolete numpy comment.
* gnu/packages/python.scm: Remove comment.
2017-03-09 16:39:08 +01:00
Marius Bakke ed6a21b45f gnu: inetutils: Disable parallel tests.
* gnu/packages/admin.scm (inetutils)[arguments]: Add #:parallel-tests? #f.
2017-03-09 16:39:08 +01:00
Marius Bakke ce79279d34 gnu: python-pandas: Really fix build on 32bit.
* gnu/packages/patches/python-pandas-skip-failing-tests.patch: Fix confusion
with same-named test.
2017-03-09 16:39:08 +01:00
Ludovic Courtès e90e0fad1b Merge branch 'master' into core-updates 2017-03-09 16:35:41 +01:00
Ludovic Courtès 9ec2a4d3fe hydra: Really disable 32-to-64-bit cross-builds.
Fixes <http://bugs.gnu.org/26022>.
Reported by Efraim Flashner <efraim@flashner.co.il>.

* build-aux/hydra/gnu-system.scm (hydra-jobs)[cross-jobs](from-32-to-64?):
Check whether TARGET contains "64" rather than checking whether TARGET
ends in "64", which is rarely the case.
(same?): Add special case for armhf-linux.
2017-03-09 16:28:36 +01:00
Roel Janssen 64fc9f65f1 gexp: Expose functions to allow creating derivation builders.
* guix/gexp.scm: Add load-path-expression and gexp-modules to the public
  interface of the module.  See <http://bugs.gnu.org/26023>.
2017-03-09 12:39:05 +01:00
Thomas Danckaert 0da4f3659a gnu: Add rsnapshot.
* gnu/packages/backup.scm (rsnapshot): New variable.
2017-03-09 12:29:23 +01:00
Mark H Weaver 7b1866d783 gnu: python-fake-factory: Add back missing patch file.
This reverts the removal of "python-fake-factory-fix-build-32bit.patch"
by commit ce7911ddae.

* gnu/packages/patches/python-fake-factory-fix-build-32bit.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-09 06:08:18 -05:00
Leo Famulari 483188b76e gnu: inetutils: Set the $localstatedir.
This is a followup to commit 6f5d28f9d0.

* gnu/packages/admin.scm (inetutils)[arguments]: Pass
'--localstatedir=/var' to #:configure-flags.
2017-03-09 05:00:29 -05:00
Mark H Weaver 1fa8a51ecc gnu: icecat: Add fixes from upstream Firefox ESR 45.8.0.
Includes fixes for CVE-2017-5398, CVE-2017-5400, CVE-2017-5401, CVE-2017-5402,
CVE-2017-5404, CVE-2017-5405, CVE-2017-5407, CVE-2017-5408, CVE-2017-5409, and
CVE-2017-5410.

* gnu/packages/gnuzilla.scm (icecat)[source]: Add selected fixes from the
upstream mozilla-esr45 repository.
2017-03-09 03:58:29 -05:00
Mark H Weaver c9b631aef4 gnu: icecat: Update to 45.7.0-gnu1.
* gnu/packages/gnuzilla.scm (icecat): Update to 45.7.0-gnu1.  Remove patches
included in 45.7.0.
2017-03-09 03:58:27 -05:00
Ludovic Courtès 3104475148 utils: Use an idiom compatible with both 2.0 and 2.2.
Fixes a regression introduced in 7447aa36e1.
Reported by Ricardo Wurmus.

* guix/utils.scm: Revert 7447aa36e1.  Use
  #:prefix for (ice-9 iconv) to support both 2.0 and 2.2.
2017-03-09 09:48:33 +01:00
Ricardo Wurmus f2ac937924 gnu: r: Remove obsolete configure flags.
* gnu/packages/statistics.scm (r)[arguments]: Remove obsolete configure flags.
2017-03-09 07:38:24 +01:00
Ricardo Wurmus f7db12022c gnu: r: Update to 3.3.3.
* gnu/packages/statistics.scm (r): Update to 3.3.3.
2017-03-09 07:38:24 +01:00
Leo Famulari 8ea0700d23 gnu: tzdata: Update to 2017a.
* gnu/packages/base.scm (tzdata): Update to 2017a.
2017-03-08 18:08:19 -05:00
Roel Janssen c49840f8d4 gnu: Add lensfun.
* gnu/packages/photo.scm (lensfun): New variable.
2017-03-08 23:49:24 +01:00
Ludovic Courtès 7447aa36e1 utils: Make sure to use the right 'bytevector->string'.
In Guile 2.2, (rnrs io ports) exports 'bytevector->string', which
conflicts with that of (ice-9 iconv).

* guix/utils.scm: Hide 'bytevector->string' from (rnrs io ports).
2017-03-08 23:42:53 +01:00
Ludovic Courtès d75e8f36a8 packages: Use PACKAGE@VERSION syntax when reporting ambiguities.
* gnu/packages.scm (%find-package): Upon ambiguity, use the
PACKAGE@VERSION syntax instead of 'package-full-name'.
2017-03-08 23:42:53 +01:00
Ludovic Courtès ac9c1dc7bd list-runtime-roots: Bufferize the lsof pipe.
* nix/scripts/list-runtime-roots.in (lsof-roots): Add 'setvbuf' call for
PIPE.
2017-03-08 23:42:53 +01:00
Ludovic Courtès 1062063a65 ui: Don't use '%default-port-encoding' to set the encoding of string ports.
* guix/ui.scm (right-arrow): Call 'set-port-encoding!' to set PORT's
encoding; remove use of 'with-fluids'.  This is for compatibility with
Guile 2.2 where the encoding of string ports is not influenced by
%DEFAULT-PORT-ENCODING.
* tests/ui.scm ("show-manifest-transaction"): Likewise.
2017-03-08 23:42:53 +01:00
Ludovic Courtès 30906825cb ui: Avoid '_' as a pattern variable in 'match'.
* guix/ui.scm (fill-paragraph): Don't use '_' as a pattern variable
since that is shadowed by the top-level '_' binding on Guile 2.2.
(show-manifest-transaction): Likewise.
2017-03-08 23:42:53 +01:00
Ludovic Courtès 3f6d5b8a69 download: Update the Savannah mirror list.
* guix/download.scm (%mirrors) <savannah>: Remove centervenus.com, which
seems to be broken.  Add download-mirror.sv.gnu.org as a last resort.
2017-03-08 23:42:53 +01:00
Ludovic Courtès 64f34aefe7 gnu: Add guile2.2-haunt.
* gnu/packages/guile.scm (guile2.2-haunt): New variable.
2017-03-08 23:42:53 +01:00
Ludovic Courtès 517fce6327 gnu: Add guile2.2-reader.
* gnu/packages/guile.scm (guile2.2-reader): New variable.
2017-03-08 23:42:53 +01:00
Ludovic Courtès 77aa0887e1 gnu: guile-reader: Update to 0.6.2.
* gnu/packages/guile.scm (guile-reader): Update to 0.6.2.
[arguments]: Remove.
2017-03-08 23:42:53 +01:00
Ludovic Courtès dd420bf343 tests: Avoid zero-expression 'begin' form.
* tests/cran.scm ("description->package"): Add body after the expected
pattern in 'match'.
2017-03-08 23:42:52 +01:00
Ludovic Courtès 6f38960055 hash: Close or flush sha256 output ports before calling their 'get' procedure.
Slightly different buffering of custom binary output ports in Guile 2.1.7
would lead tests missing 'close-port' or 'force-output' to fail.

* tests/hash.scm ("open-sha256-port, hello"): Add call to 'force-output'
before call to 'get'.
* tests/nar.scm ("write-file puts file in C locale collation order"):
Call 'close-port' before calling 'get-hash'.
2017-03-08 23:42:52 +01:00
Ludovic Courtès 19c1ac8d88 build: Unset 'NIX_BUILD_HOOK' when offloading support is missing.
* build-aux/pre-inst-env.in: Export 'NIX_BUILD_HOOK' only when
nix/scripts/offload is executable; unset it otherwise.
2017-03-08 23:42:52 +01:00
Ludovic Courtès 1099988904 services: prosody: Use 'id' to introduce unhygienic top-level identifiers.
* gnu/services/messaging.scm (define-all-configurations): Use 'id' to
introduce raw/literal/unhygienic top-level identifiers.  Fixes
compilation with Guile 2.2.
2017-03-08 23:42:52 +01:00
Ludovic Courtès 5d1ee4d7bc services: prosody: Make sure 'id' is available at expansion time.
* gnu/services/messaging.scm (id): Use 'define-syntax-rule' instead of
'define' to make sure 'id' is available at expansion time.
2017-03-08 23:42:52 +01:00
Ludovic Courtès beb1e8067d gnu: Remove unneeded imports.
* gnu/packages/backup.scm: Remove unneeded (guix build utils) import.
* gnu/packages/finance.scm: Likewise.
2017-03-08 23:42:52 +01:00
Ludovic Courtès 6aa9d63c92 guix archive: Allow compilation with Guile 2.2.
* guix/scripts/archive.scm (export-from-store): Avoid shadowing the
top-level '_'.
2017-03-08 23:42:52 +01:00
Maxim Cournoyer 6f5d28f9d0 gnu: inetutils: Enable tests.
* gnu/packages/admin.scm (inetutils)[arguments]: Remove '#:tests? #f'
and #:configure-flags.
[native-inputs]: Add net-tools.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-08 13:11:59 -05:00
Marius Bakke b03ee02f0d gnu: python-pandas: Fix build on 32-bit.
* gnu/packages/patches/python-pandas-skip-failing-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-pandas, python2-pandas): Use it.
2017-03-08 18:04:23 +01:00
Marius Bakke ce7911ddae gnu: Add python-faker.
* gnu/packages/patches/python-fake-factory-fix-build-32bit.patch: Adjust
paths. Also rename to ...
* gnu/packages/patches/python-faker-fix-build-32bit.patch: ... this.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python.scm (python-faker, python2-faker): New variables.
(python-fake-factory)[properties]: Superseded by PYTHON-FAKER.
(python2-fake-factory)[properties]: Superseded by PYTHON2-FAKER.
(python-orator, python2-orator)[propagated-inputs]: Replace
PYTHON-FAKE-FACTORY with PYTHON-FAKER.
2017-03-08 18:00:43 +01:00
Thomas Danckaert 1eaaea41e5 gnu: python-matplotlib-documentation: Fix build.
* gnu/packages/python.scm (python-matplotlib-documentation)[native-inputs]:
Add python-mock and graphviz.
[arguments]: Use separate build and install phases; correctly set latex paper size.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-08 17:39:00 +01:00
Marius Bakke 9c974c9366 gnu: iperf: Update to 3.1.7.
* gnu/packages/networking.scm (iperf): Update to 3.1.7.
2017-03-08 17:37:51 +01:00
Marius Bakke 3a38cf2dfd gnu: libinput: Update to 1.6.3.
* gnu/packages/freedesktop.scm (libinput, libinput-minimal): Update to 1.6.3.
2017-03-08 17:18:11 +01:00
Marius Bakke f095109e2c gnu: weston: Update to 2.0.0.
* gnu/packages/freedesktop.scm (weston): Update to 2.0.0.
2017-03-08 16:40:12 +01:00
Marius Bakke 20289af368 gnu: wayland: Update to 1.13.0.
* gnu/packages/freedesktop.scm (wayland): Update to 1.13.0.
2017-03-08 16:39:10 +01:00
Marius Bakke fe5790e1e0 gnu: poppler: Update to 0.52.0.
* gnu/packages/pdf.scm (poppler): Update to 0.52.0.
2017-03-08 16:36:22 +01:00
Marius Bakke 946937e36d gnu: pulseaudio: Update to 10.0.
* gnu/packages/pulseaudio.scm (pulseaudio): Update to 10.0.
[inputs]: Remove JSON-C.
2017-03-08 16:17:24 +01:00
Ricardo Wurmus beaa026aa7 gnu: r: Fix more reproducibility problems.
* gnu/packages/statistics.scm (r)[arguments]: Patch locations in the
build system that need special treatment for reproducibility.
2017-03-08 12:32:49 +01:00
Ricardo Wurmus 745c687be3 gnu: r: Fix syntax for INSTALL_OPTS.
This is a follow-up to commit 4621acfd82.

* gnu/packages/statistics.scm (r)[arguments]: Ensure that
"--built-timestamp" appears on the same line as the other INSTALL_OPTS.
2017-03-08 12:32:49 +01:00
Leo Famulari da79e82b14 gnu: gtk+: Build GTK+ with its own xorg-server package.
This will allow us to update xorg-server directly on the master branch.

* gnu/packages/xorg.scm (xorg-server-1.19.2): New variable.
* gnu/packages/gtk.scm (gtk+) [native-inputs]: Use xorg-server-1.19.2 instead of
xorg-server.
[arguments]: Add xorg-server-1.19.2 to #:disallowed-references.
2017-03-08 03:52:03 -05:00
Leo Famulari 9a91b00fd0 gnu: xorg-server: Update to 1.19.2 [fixes CVE-2017-2624].
* gnu/packages/xorg.scm (xorg-server): Update to 1.19.2.
[native-inputs]: Add font-util, libtool, autoconf, and automake.
[arguments]: Add 'bootstrap' phase.
2017-03-08 03:52:03 -05:00
Troy Sankey e3ff83834b gnu: git: force GIT_EXEC_PATH to be single-entry
* gnu/packages/version-control.scm (git)[native-search-paths](separator):
New field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-08 09:45:52 +01:00
Leo Famulari af50d389c5 gnu: grub: Fix build failure with recent flex.
* gnu/packages/bootloaders.scm (grub)[native-inputs]: Use flex-2.6.1.
2017-03-08 00:07:11 -05:00
Leo Famulari aac67f210d gnu: Add flex-2.6.1.
* gnu/packages/flex.scm (flex-2.6.1): New variable.
2017-03-08 00:07:07 -05:00
Ludovic Courtès 6c5b56f9fa gnu: bash: Use the bootstrap Guile in 'url-fetch/reset-patch-level'.
Fixes <http://bugs.gnu.org/25775>.
Reported by Sirgazil, Ricardo Wurmus, Andy Wingo, and others.

* guix/download.scm (in-band-download): Always use GUILE.  This reverts
9f05908fb1.
* gnu/packages/bash.scm (url-fetch/reset-patch-level): Remove #:guile.
Pass %BOOTSTRAP-GUILE as #:guile to 'url-fetch'.  Remove #:guile-for-build
argument in 'gexp->derivation' call.
2017-03-07 23:58:08 +01:00
Thomas Danckaert faa65e2735 gnu: kdevelop: Upgrade to 5.0.4.
* gnu/packages/kde.scm (kdevelop, kdevplatform): Upgrade to 5.0.4.
(kdevplatform)[source]: Use kde mirror instead of github.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-07 23:21:59 +01:00
Marius Bakke 9bb766e70d gnu: pcre2: Update to 10.23.
* gnu/packages/pcre.scm (pcre2): Update to 10.23.
[source]: Remove patch.
[arguments]: Add phase to substitute /bin/echo reference.
* gnu/packages/patches/pcre2-CVE-2016-3191.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-07 23:21:22 +01:00
Leo Famulari 3391e2a078 gnu: khal: Update to 0.9.3.
* gnu/packages/calendar.scm (khal): Update to 0.9.3.
[native-inputs]: Use python-pytest-2.9.2.
2017-03-07 16:37:21 -05:00
Leo Famulari f11275c9e5 gnu: gnupg: Update to 2.1.19.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.19.
[arguments]: Add 'patch-test-paths' phase and remove 'set-gnupg-home' phase.
Add '--enable-gnupg-builddir-envvar' to #:configure-flags.
[source]: Add 'gnupg-2.1-fix-Y2038-test-failure.patch'.
* gnu/packages/patches/gnupg-2.1-fix-Y2038-test-failure.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-07 16:37:17 -05:00
Ricardo Wurmus c1029f86e3 gnu: Add emacs-yasnippet.
* gnu/packages/emacs.scm (emacs-yasnippet): New variable.
2017-03-07 19:44:49 +01:00
Sergei Trofimovich 605fec783f gnu: Add basic support for "alpha-linux" systems.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add
"/lib/ld-linux.so.2" as "alpha-linux" ld.so.
* gnu/packages/linux.scm (system->linux-architecture): Add "alpha" arch.

Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-07 18:20:33 +01:00
Pjotr Prins d6abd094fc gnu: python-rpy2: Propagate python2-singledispatch.
* gnu/packages/python.scm (python-rp2)[native-inputs]: Rename to...
[propagated-inputs]: ... this.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-07 18:19:51 +01:00
Ricardo Wurmus 9296684713 gnu: java-xz: Update to 1.6.
* gnu/packages/java.scm (java-xz): Update to 1.6.
2017-03-07 17:27:30 +01:00
Maxim Cournoyer af12687522 gnu: guile-lib: Update to 0.2.5
The build was broken since the URL of version 0.2.3 was changed. The archive
was moved into an "old" subdirectory of the original location.

* gnu/packages/guile.scm (guile-lib): Update to 0.2.5.
[make-flags]: Add GUILE_AUTO_COMPILE to prevent guild errors.
[phases]: Remove 'check replacement since it is no longer needed.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-07 16:44:02 +01:00
Nicolas Goaziou eaa72e3a11 gnu: asymptote: Update to 2.40.
* gnu/packages/plotutils.scm (asymptote): Update to 2.40.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-03-07 20:02:04 +08:00
宋文武 c402743579 gnu: Add blind.
* gnu/packages/suckless.scm (blind): New package.
2017-03-07 19:41:23 +08:00
Mekeor Melire 45321beb7d gnu: surf: Add 'dmenu' and 'xprop' to 'inputs'.
'dmenu' and 'xprop' are necessary to open a new URL in surf.

* gnu/packages/suckless.scm (surf)[inputs]: Add dmenu and xprop.
[arguments]: Add 'set-dmenu-and-xprop-file-name' phase to patch the
paths to the 'dmenu' and 'xprop' binaries in surf's configuration file.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-07 00:29:14 -05:00
David Craven 909de139e7 vm: Fix full-boot? option.
* gnu/system/vm.scm (virtualized-operating-system): Add full-boot?
  option. Don't add a %store-mapping when full-boot? is passed. This leads
  the grub-configuration-file procedure to look for the kernel and initrd in
  / instead of /gnu/store.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-03-06 23:54:48 +01:00
Ludovic Courtès ecc4324fef system: grub: Add missing URL in comment.
* gnu/system/grub.scm (grub-root-search): Add missing URL in comment.
2017-03-06 23:54:48 +01:00
Thomas Danckaert ba062b3ec4 gnu: python-colorspacious: Run tests.
* gnu/packages/python.scm (python-colorspacious,
python2-colorspacious)[native-inputs]: Add python-nose.
[arguments]: Add custom 'check phase which runs nosetests.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-06 23:51:23 +01:00
Marius Bakke 46d6219d41 gnu: rofi: Fix test failure.
* gnu/packages/xdisorg.scm (rofi)[arguments]: Disable parallel tests.
2017-03-06 23:38:48 +01:00
Thomas Danckaert 5eefa50abd gnu: Remove python-sphinx-1.2.3.
* gnu/packages/python.scm (python-sphinx-1.2.3, python2-sphinx-1.2.3): Remove variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-06 23:28:10 +01:00
Marius Bakke 6cb7477699 gnu: python-statsmodels: Update to 0.8.0.
* gnu/packages/statistics.scm (python-statsmodels, python2-statsmodels):
Update to 0.8.0.
[source]: Use 'pypi-uri'.
[arguments]: Add more files to matplotlib backend substitution.
* gnu/packages/patches/python-statsmodels-fix-tests.patch: Drop test that
fails with numpy 1.12. Remove previous contents.
2017-03-06 23:24:11 +01:00
Marius Bakke 8e08604814 gnu: python-pandas: Update to 0.19.2.
* gnu/packages/python.scm (python-pandas, python2-pandas): Update to 0.19.2.
[source]: Use 'pypi-uri'.
2017-03-06 23:24:03 +01:00
Thomas Danckaert 4535a93adb gnu: python-matplotlib: Update to 2.0.0.
* gnu/packages/python.scm (python-matplotlib, python2-matplotlib): Update to
2.0.0.
[source]: Remove Tk backend patch, use Github instead of Sourceforge.
[outputs]: Remove "doc" output.
[inputs]: Add python-pyqt.
[propagated-inputs]: Add python-cycler.
[native-inputs]: Remove python-sphinx, python-numpydoc, texlive and texinfo.
(python2-matplotlib)[native-inputs]: Add python2-functools32 and
python2-subprocess32.
(python-matplotlib-documentation, python2-matplotlib-documentation): New
variables.
* gnu/packages/patches/matplotlib-setupext-tk.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove patch.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-06 23:22:22 +01:00
Marius Bakke 550bd98b41 gnu: Add python2-subprocess32.
* gnu/packages/python.scm (python2-subprocess32): New variable.
* gnu/packages/patches/python2-subprocess32-disable-input-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-03-06 23:21:34 +01:00
Thomas Danckaert 7ccb71e0ea gnu: python-numpy: Update to 1.12.0.
* gnu/packages/python.scm (python-numpy): Update to 1.12.0.
  [source]: Use github instead of sourceforge.
  [native-inputs]: Add python-cython.

  To simplify the handling of dependency cycles (numpy documentation depends
  on matplotlib, which depends on numpy), we split out the documentation into
  a separate package:
  (python-numpy-bootstrap, python2-numpy-bootstrap): Remove variables.
  (python-numpy-documentation, python2-numpy-documentation): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-06 23:21:06 +01:00
Leo Famulari 14807141e5 Revert "gnu: gnupg: Update to 2.1.19."
This reverts commit 07302d1ab4.

GnuPG 2.1.19 fails to build on armhf-linux and i686-linux:

<https://bugs.gnupg.org/gnupg/issue2988>
2017-03-06 17:11:19 -05:00
Leo Famulari e20784e65e gnu: texlive: Fix CVE-2016-10243.
* gnu/packages/patches/texlive-texmf-CVE-2016-10243.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/tex.scm (texlive-texmf-src): Use it.
2017-03-06 16:47:37 -05:00
Ricardo Wurmus 093c6f8bc7 gnu: mesa: Build LLVM Gallium drivers.
Fixes <https://bugs.gnu.org/25953>.

* gnu/packages/gl.scm (mesa)[inputs]: Add llvm.
[arguments]: Build LLVM Gallium drivers.
2017-03-06 22:36:38 +01:00
Leo Famulari e2948ef5c1 gnu: libressl: Update to 2.5.1.
* gnu/packages/tls.scm (libressl): Update to 2.5.1.
2017-03-06 16:31:29 -05:00
Leo Famulari 23f22ba8af services: openssh: Parameterize the OpenSSH package used by the service.
* gnu/services/ssh.scm (<openssh-configuration>)[openssh]: New field.
(openssh-activation, openssh-shepherd-service): Use it.
2017-03-06 13:39:29 -05:00
Leo Famulari 613d0895b9 build: Don't embed absolute paths in .service and .conf service files.
Otherwise, users will be stuck running an old copy of guix and the guix-daemon
if they copy the service files instead of symlinking them.

* etc/guix-daemon.conf.in, etc/guix-daemon.service.in, etc/guix-publish.conf.in,
etc/guix-publish.service.in: Expand @localstatedir@ instead of @bindir@.
* nix/local.mk (etc/guix-%.service, etc/guix-%.conf): Use @localstatedir@
instead of @bindir@.
2017-03-06 13:25:51 -05:00
Leo Famulari b812da7059 Revert "doc: Symlink daemon start-up files."
This reverts commit b7230de54b.

Versions of systemd that supported symlinked service files are not yet widely
deployed.

See this thread for more information:
http://lists.gnu.org/archive/html/guix-devel/2017-01/msg01199.html
2017-03-06 13:25:47 -05:00
Nicolas Goaziou 5f8ca95eb5 gnu: giac-xcas: Update to 1.2.3-25.
* gnu/packages/algebra.scm (giac-xcas): Update to 1.2.3-25.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-06 14:49:58 +01:00
Troy Sankey 5b1f31ffcf gnu: python-setuptools-scm: Update to 1.15.0.
* gnu/packages/python.scm (python-setuptools-scm): Update to 1.15.0.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-03-06 13:55:37 +01:00
Marius Bakke c0446791bd gnu: python2-backports-shutil-get-terminal-size: Enable tests.
* gnu/packages/python.scm
(python2-backports-shutil-get-terminal-size)[arguments]: Replace 'check' phase
with custom command.
[native-inputs]: Add PYTHON2-PYTEST.
2017-03-06 13:22:51 +01:00
Ricardo Wurmus d701f8bdb2 gnu: libosinfo: Update to 1.0.0.
* gnu/packages/qemu.scm (libosinfo): Update to 1.0.0.
[source]: Use new release location as fedorahosted.org is defunct.
[arguments]: Replace phase "copy-ids" with configure flags; add phase
"disable-broken-test" to disable the "isodetect" test.
[native-inputs]: Update origin for "pci.ids" and "usb.ids".
2017-03-06 13:04:26 +01:00
Efraim Flashner b773e9b005 gnu: gcc: Force Aarch64 to use /lib.
* gnu/packages/gcc.scm (gcc)[arguments]: On aarch64 replace force libdir
to be lib and not lib64.
2017-03-06 11:34:46 +02:00
Thomas Danckaert fb25d348dd gnu: python-ipython: Update to 5.2.2.
* gnu/packages/python.scm (python-ipython): Update to 5.2.2.
[propagated-inputs]: Add pyhon-prompt-toolkit and python-nbformat.
(python2-ipython) [arguments]: Enable tests.
[propagated-inputs]: Add python2-backports-shutil-get-terminal-size.
[native-inputs]: Add graphviz.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-06 04:35:00 +01:00
Thomas Danckaert 350932536a gnu: python-scipy: Update to 0.18.1.
* gnu/packages/python.scm (python-scipy): Update to 0.18.1.
[source]: Use github instead of sourceforge.
[native-inputs]: Add python-cython.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-06 03:35:26 +01:00
Thomas Danckaert b320f7bf06 gnu: python-testpath: Fix library location for python2 version.
* gnu/packages/python.scm (python-testpath)[arguments]: Install module in the proper
"lib/pythonx.y" location for all Python versions.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-06 03:33:39 +01:00
Thomas Danckaert 2aa6d3aeeb gnu: Add python-colorspacious.
* gnu/packages/python.scm (python-colorspacious, python2-colorspacious): New
variables.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-06 03:24:29 +01:00
Thomas Danckaert ec07421332 gnu: Add python2-backports-shutil-get-terminal-size.
* gnu/packages/python.scm (python2-backports-shutil-get-terminal-size): New
variable.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-03-06 03:22:30 +01:00
Leo Famulari 7bc19c9205 gnu: xmlto: Fix source URL.
Works around <https://bugs.gnu.org/25989>.

* gnu/packages/xml.scm (xmlto)[source]: Update URL.
[file-name]: New field.
2017-03-05 20:19:18 -05:00
ng0 33c93ea33e gnu: rxvt-unicode: Add '.desktop' files.
This fixes <https://bugs.gnu.org/23106>.

* gnu/packages/xdisorg.scm (rxvt-unicode)[arguments]: Add
'install-desktop-urxvt' and 'install-desktop-urxvtc' phases.
2017-03-05 16:25:39 -05:00
Nicolas Goaziou 5af1a38133 gnu: wireshark: Update to 2.2.5.
* gnu/packages/networking.scm (wireshark): Update to 2.2.5.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-05 15:45:28 -05:00
Ricardo Wurmus 5f0c649683 gnu: ardour: Enable tests.
* gnu/packages/audio.scm (ardour)[arguments]: Enable unit tests.
2017-03-05 19:43:48 +01:00
Ricardo Wurmus ba5c85679d gnu: ardour: Generate freedesktop files.
* gnu/packages/audio.scm (ardour)[arguments]: Add "--freedesktop" configure
flag.
[native-inputs]: Add itstool and gettext-minimal.
2017-03-05 19:43:48 +01:00
Ricardo Wurmus 461160c530 gnu: ardour: Update to 5.8.
* gnu/packages/audio.scm (ardour): Update to 5.8.
2017-03-05 19:43:48 +01:00
Kei Kebreau 2041f9019e gnu: mp3splt: Update to 2.6.2.
* gnu/packages/mp3.scm (mp3splt): Update to 2.6.2.
[native-inputs]: Add pkg-config.
2017-03-05 13:12:03 -05:00
Kei Kebreau 67a8298c09 gnu: libmp3splt: Update to 0.9.2.
* gnu/packages/mp3.scm (libmp3splt): Update to 0.9.2.
2017-03-05 12:53:27 -05:00
Danny Milosavljevic 8ea4248214 gnu: Add binutils-vc4.
* gnu/packages/embedded.scm (binutils-vc4): New variable.
2017-03-05 13:49:12 +01:00
Efraim Flashner 3df18d6144 gnu: obs: Update to 18.0.0.
* gnu/packages/video.scm (obs): Update to 18.0.0.
2017-03-05 12:19:33 +02:00
Leo Famulari 9ee4c9ab6f services: Add agetty service.
* gnu/services/base.scm (<agetty-configuration>): New record type.
(agetty-shepherd-service, agetty-service): New procedures.
(agetty-service-type): New variable.
* doc/guix.texi (Base Services): Document it.
[mingetty-configuration],[kmscon-configuration]: Specify the types of
supported consoles.
2017-03-05 03:41:32 -05:00
Leo Famulari a78e0bda99 gnu: filezilla: Update to 3.24.1.
* gnu/packages/ftp.scm (filezilla): Update to 3.24.1.
[arguments]: Add '--disable-autoupdatecheck' to #:configure-flags.
2017-03-04 23:15:06 -05:00
rennes 0bc26f66c7 gnu: Add filezilla.
* gnu/packages/ftp.scm (filezilla): New variable.
2017-03-04 23:15:06 -05:00
rennes afa595350b gnu: Add libfilezilla.
* gnu/packages/ftp.scm (libfilezilla): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-04 23:15:05 -05:00
rennes 40c611a41d gnu: wxwidgets: Fix for Filezilla client.
* gnu/packages/patches/wxwidgets-fix-windowGTK.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-04 23:15:01 -05:00
Kei Kebreau 9f86202ba1 gnu: starfighter: Update to 1.7.
* gnu/packages/games.scm (starfighter): Update to 1.7.
[arguments]: Remove obsolete make flags. Re-enable configure and test
phases.
2017-03-04 22:24:17 -05:00
Leo Famulari 07302d1ab4 gnu: gnupg: Update to 2.1.19.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.19.
[arguments]: Add 'patch-test-paths' phase and remove 'set-gnupg-home' phase.
Add '--enable-gnupg-builddir-envvar' to #:configure-flags.
2017-03-04 21:04:46 -05:00
Leo Famulari c35745edc4 gnu: kio: Fix CVE-2017-6410.
* gnu/packages/patches/kio-CVE-2017-6410.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/kde-frameworks.scm (kio)[source]: Use it.
2017-03-04 18:35:17 -05:00
Ben Woodcroft 5e0535a7e6 gnu: ruby-coderay: Update to 1.1.1.
* gnu/packages/ruby.scm (ruby-coderay): Update to 1.1.1.
2017-03-05 09:17:12 +10:00
Ben Woodcroft f1710d8da0 gnu: ruby-pry: Update to 0.10.4.
* gnu/packages/ruby.scm (ruby-pry): Update to 0.10.4.
2017-03-05 09:15:00 +10:00
ng0 d0c16adb19 gnu: gitolite: Fix shebangs in hooks.
Fixes <https://bugs.gnu.org/25957>.

* gnu/packages/version-control.scm (gitolite)[arguments]: Add 'fix-hooks-shebangs'
phase to fix references to '/usr/bin/perl'.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-04 17:51:04 -05:00
ng0 34ba7cd4eb gnu: gitolite: Update to 3.6.6.
* gnu/packages/version-control.scm (gitolite): Update to 3.6.6.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-04 17:51:04 -05:00
Roel Janssen 52c14bb6ec gnu: pugixml: Build relocatable library.
* gnu/packages/xml.scm (pugixml): Add "-shared -fPIC" to ensure the
library is relocatable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-04 16:30:36 -05:00
ng0 3190c307f9 gnu: Add hiawatha.
* gnu/packages/web.scm (hiawatha): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-04 14:18:38 -05:00
ng0 8852273868 gnu: Add mbedtls-apache.
* gnu/packages/tls.scm (mbedtls-apache): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-04 14:18:24 -05:00
Danny Milosavljevic 5bbf31ccba gnu: stellarium: Use modular Qt.
* gnu/packages/astronomy.scm (stellarium)[inputs]: Remove qt.
Add qtbase, qtmultimedia, qtscript, qtserialport.
[native-inputs]: Add qtbase, qttools.
2017-03-04 11:32:53 +01:00
宋文武 b2e3d59c50 gnu: glulxe: Update to 0.5.4.
* gnu/packages/games.scm (glulxe): Update to 0.5.4.
[license]: Change to 'expat'.
2017-03-04 17:05:49 +08:00
Leo Famulari 74a2b2b439 Revert "gnu: xorg-server: Update to 1.19.2 [fixes CVE-2017-2624]."
This release was not properly bootstrapped:

https://lists.x.org/archives/xorg-announce/2017-March/002780.html

We will wait for 1.19.3 before updating.

This reverts commit 848d643874.
2017-03-03 14:34:42 -05:00
Leo Famulari 5eda3d824c gnu: libice: Build with libbsd [fixes CVE-2017-2626].
* gnu/packages/xorg.scm (libice)[inputs]: Add libbsd.
2017-03-03 14:12:31 -05:00
Leo Famulari fe6db6ecff gnu: libxdmcp: Build with libbsd [fixes CVE-2017-2625].
* gnu/packages/xorg.scm (libxdmcp)[inputs]: Add libbsd.
2017-03-03 14:12:31 -05:00
Leo Famulari 848d643874 gnu: xorg-server: Update to 1.19.2 [fixes CVE-2017-2624].
* gnu/packages/xorg.scm (xorg-server): Update to 1.19.2.
2017-03-03 14:12:31 -05:00
Julien Lepiller 60a5080675 gnu: php: Update to 7.1.2.
* gnu/packages/php.scm (php): Update to 7.1.2.
[inputs]: Add gnutls.
[arguments]: Disable more tests in 'prepare-tests' phase.
(gd-for-php): Remove variable.
* gnu/packages/patches/gd-fix-chunk-size-on-boundaries.patch,
gnu/packages/patches/gd-fix-truecolor-format-correction.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-03 14:12:31 -05:00
Julien Lepiller e8293ef12c gnu: gd: Fix an issue with XBM decoding.
* gnu/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch: New file.
* gnu/local.scm (dist_patch_DATA): Add it.
* gnu/packages/gd.scm (gd)[source]: Use it.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-03 14:12:30 -05:00
Andreas Enge 21abf092a4 gnu: arb: Update to 2.10.0.
* gnu/packages/algebra.scm (arb): Update to 2.10.0.
* gnu/packages/patches/arb-ldconfig.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove patch.
2017-03-03 18:33:19 +01:00
Marius Bakke 169a438c0f gnu: acpid: Update to 2.0.28.
* gnu/packages/linux.scm (acpid): Update to 2.0.28.
2017-03-03 17:57:11 +01:00
Marius Bakke 3b175eab84 gnu: nss, nss-certs: Update to 3.29.2.
* gnu/packages/certs.scm (nss-certs): Update to 3.29.2.
* gnu/packages/gnuzilla.scm (nss): Update to 3.29.2.
* gnu/packages/patches/nss-pkgconfig.patch: Adapt to context changes.
2017-03-03 17:26:24 +01:00
Leo Famulari 728f36202d gnu: nspr: Update to 4.13.1.
* gnu/packages/gnuzilla.scm (nspr): Update to 4.13.1.
2017-03-03 17:23:04 +01:00
Marius Bakke aa6738ddb6 gnu: jasper: Update to 2.0.12.
* gnu/packages/image.scm (jasper): Update to 2.0.12.
2017-03-03 17:11:02 +01:00
Marius Bakke 608afe067e gnu: maim: Update to 4.4.61.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.61.
2017-03-03 17:11:00 +01:00
Marius Bakke 3f98071ac5 Merge branch 'python-tests' 2017-03-03 16:55:43 +01:00
Andreas Enge 0a77fdf4b8 gp2c: Update to 0.10.0.
* gnu/packages/algebra.scm (gp2c): Update to 0.10.0.
2017-03-03 16:10:23 +01:00
Andreas Enge aada6f371e pari-gp: Update to 2.9.1.
* gnu/packages/algebra.scm (pari-gp): Update to 2.9.1.
2017-03-03 16:10:23 +01:00
Tobias Geerinckx-Rice 42a3293a64 gnu: tor: Update to 0.2.9.10.
* gnu/packages/tor.scm (tor): Update to 0.2.9.10.
2017-03-03 14:25:52 +01:00
Danny Milosavljevic 7109e0fff8 build-system/cargo: Export %cargo-build-system-modules.
* guix/build-system/cargo.scm (%cargo-build-system-modules): Export.
2017-03-03 12:06:11 +01:00
Danny Milosavljevic 6b2afac9d5 gnu: stellarium: Fix package formatting.
* gnu/packages/astronomy.scm (stellarium): Fix package formatting.
2017-03-03 11:29:41 +01:00
Alex Vong 92ae98e2a0 gnu: mupdf: Fix CVE-2017-{5896,5991}.
* gnu/packages/patches/mupdf-CVE-2017-5896.patch,
gnu/packages/patches/mupdf-CVE-2017-5991.patch: New files.
* gnu/packages/pdf.scm (mupdf/fixed)[source]: Add patches.
* gnu/local.mk (dist_patch_DATA): Add them.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-03 04:47:52 -05:00
Leo Famulari 89d42ac17c gnu: certbot, python-acme: Update to 0.12.0.
* gnu/packages/tls.scm (python-acme, python2-acme): Update to 0.12.0.
(certbot): Update to 0.12.0.
2017-03-03 04:29:55 -05:00
Leo Famulari da5db9880e gnu: python-requests: Update to 2.13.0.
* gnu/packages/python.scm (python-requests, python2-requests): Update to 2.13.0.
2017-03-03 04:29:55 -05:00
Ben Woodcroft 84e36a562b gnu: googletest: Update to 1.8.0.
* gnu/packages/check.scm (googletest): Update to 1.8.0.
[build-system]: Use cmake-build-system.
[arguments]: Remove field.
[native-inputs]: Remove autoconf, automake, libtool.
2017-03-03 17:57:23 +10:00
Tobias Geerinckx-Rice 488a373451 gnu: libseccomp: Update to 2.3.2.
* gnu/packages/linux.scm (libseccomp): Update to 2.3.2.
2017-03-03 05:29:12 +01:00
Tobias Geerinckx-Rice 95b80db637 gnu: cmark: Update to 0.27.1.
* gnu/packages/markdown.scm (cmark): Update to 0.27.1.
2017-03-03 02:06:57 +01:00
Tobias Geerinckx-Rice 1e5c056ca1 gnu: catimg: Update to 2.2.2.
* gnu/packages/image-viewers.scm (catimg): Update to 2.2.2.
[arguments]: Add ‘-DMAN_OUTPUT_PATH’ to the cmake arguments.
2017-03-03 02:04:26 +01:00
Tobias Geerinckx-Rice 0f9bb61bfa gnu: moka-icon-theme: Update to 5.3.5.
* gnu/packages/gnome.scm (moka-icon-theme): Update to 5.3.5.
2017-03-03 00:59:31 +01:00
Tobias Geerinckx-Rice c41802401c gnu: arc-icon-theme: Update to 20161122.
* gnu/packages/gnome.scm (arc-icon-theme): Update to 20161122.
2017-03-03 00:59:31 +01:00
Tobias Geerinckx-Rice 7967efc18c gnu: arc-theme: Update to 20170302.
* gnu/packages/gnome.scm (arc-theme): Update to 20170302.
2017-03-03 00:59:31 +01:00
Tobias Geerinckx-Rice 9c53993fb2 gnu: r-gtable: Remove duplicate definition.
* gnu/packages/statistics.scm (r-gtable): Remove shadowed 0.1.2 version.
[home-page]: Use HTTPS.
[synopsis, description]: Use those of the removed version.
2017-03-03 00:59:30 +01:00
Tobias Geerinckx-Rice fe08b1a759 gnu: r-codetools: Remove duplicate definition.
* gnu/packages/statistics.scm (r-codetools): Remove shadowed 0.2-14 version.
[home-page]: Use HTTPS.
2017-03-03 00:59:30 +01:00
Tobias Geerinckx-Rice 6f23e2fb02 gnu: ruby-arel: Remove duplicate definition.
* gnu/packages/ruby.scm (ruby-arel): Remove shadowed 6.0.0 version.
[description]: Use the older description & expand some acronyms.
2017-03-03 00:59:30 +01:00
Tobias Geerinckx-Rice 9baab9aeed gnu: snappy: Update to 1.1.4.
* gnu/packages/compression.scm (snappy): Update to 1.1.4.
2017-03-03 00:59:30 +01:00
Tobias Geerinckx-Rice f0f77eb5e4 gnu: youtube-dl: Update to 2017.03.02.
* gnu/packages/video.scm (youtube-dl): Update to 2017.03.02.
2017-03-03 00:59:29 +01:00
Mekeor Melire 3744742254 gnu: Add dzen.
* gnu/packages/xdisorg.scm (dzen): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-03-02 18:47:08 -05:00
Marius Bakke 81635fb680 gnu: password-store: Update to 1.7.
* gnu/packages/password-utils.scm (password-store): Update to 1.7.
[inputs]: Drop PWGEN. Add QRENCODE.
[arguments]: Adjust wrapper accordingly.
2017-03-02 23:08:09 +01:00
Ricardo Wurmus 0c729ef4e3 gnu: icedtea-8: Do not embed build time.
* gnu/packages/java.scm (icedtea-8)[source]: Modify snippet to erase the
embedded build time.
2017-03-02 21:46:39 +01:00
Ricardo Wurmus 71053e1477 gnu: Remove icedtea-6.
* gnu/packages/java.scm (icedtea-6): Remove variable.
(icedtea-7): Do not inherit from icedtea-6.
2017-03-02 21:46:31 +01:00
ng0 a80488c204 gnu: Add python-pykka.
* gnu/packages/python.scm (python-pykka): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-02 14:02:00 -05:00
ng0 de95925041 gnu: Add python-eventlet.
* gnu/packages/python.scm (python-eventlet): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-02 14:02:00 -05:00
ng0 ef91e2b964 gnu: neomutt: Configure with 'lmdb' and 'tokyocabinet'.
* gnu/packages/mail.scm (neomutt)[configure]: Add '--with-tokyocabinet' and
'--with-lmdb'.
[inputs]: Add 'lmdb' and 'tokyocabinet'.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-02 13:56:54 -05:00
ng0 bdc11dc4c0 gnu: Add tokyocabinet.
* gnu/packages/databases.scm (tokyocabinet): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-02 13:56:54 -05:00
Leo Famulari 0b181ff901 gnu: podofo: Update to 0.9.5.
* gnu/packages/pdf.scm (podofo): Update to 0.9.5.
2017-03-02 13:35:58 -05:00
Pjotr Prins 38510546d9 gnu: Add speedtest-cli.
* gnu/packages/networking.scm (speedtest-cli): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-02 13:31:44 -05:00
Marius Bakke 3e7cb70a2a gnu: Add perl-anyevent-i3.
* gnu/packages/wm.scm (perl-anyevent-i3): New variable.
2017-03-02 18:39:17 +01:00
Marius Bakke 0a030a9c67 gnu: Add perl-anyevent.
* gnu/packages/libevent.scm (perl-anyevent): New variable.
2017-03-02 18:39:17 +01:00
Marius Bakke e17dc7397e gnu: Add perl-x11-xcb.
* gnu/packages/xorg.scm (perl-x11-xcb): New variable.
2017-03-02 18:39:16 +01:00
Marius Bakke 418852f903 gnu: Add perl-mousex-nativetraits.
* gnu/packages/perl.scm (perl-mousex-nativetraits): New variable.
2017-03-02 18:39:16 +01:00
Marius Bakke 68e31f81c1 gnu: Add perl-any-moose.
* gnu/packages/perl.scm (perl-any-moose): New variable.
2017-03-02 18:39:16 +01:00
Marius Bakke 6578c56728 gnu: Add perl-xs-object-magic.
* gnu/packages/perl.scm (perl-xs-object-magic): New variable.
2017-03-02 18:39:16 +01:00
Marius Bakke 38e29d03bf gnu: Add perl-extutils-pkgconfig.
* gnu/packages/perl.scm (perl-extutils-pkgconfig): New variable.
2017-03-02 18:39:16 +01:00
Marius Bakke 84e8b19fe1 gnu: Add perl-extutils-depends.
* gnu/packages/perl.scm (perl-extutils-depends): New variable.
2017-03-02 18:39:16 +01:00
Marius Bakke 25c3cf3edb gnu: Add perl-test-number-delta.
* gnu/packages/perl.scm (perl-test-number-delta): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke d66fa69618 gnu: Add perl-xml-descent.
* gnu/packages/xml.scm (perl-xml-descent): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke 62b28f192b gnu: Add perl-xml-tokeparser.
* gnu/packages/xml.scm (perl-xml-parser): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke 456f14f0fe gnu: Add perl-mouse.
* gnu/packages/perl.scm (perl-mouse): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke 00aa3ae79b gnu: Add perl-module-build-xsutil.
* gnu/packages/perl.scm (perl-module-build-xsutil): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke 3ce3ecd3d7 gnu: Add perl-cwd-guard.
* gnu/packages/perl.scm (perl-cwd-guard): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke c1adb4ebd6 gnu: Add perl-devel-checkcompiler.
* gnu/packages/perl.scm (perl-devel-checkcompiler): New variable.
2017-03-02 18:39:15 +01:00
Marius Bakke ad8f8e7595 gnu: Add perl-ev.
* gnu/packages/libevent.scm (perl-ev): New variable.
2017-03-02 18:39:14 +01:00
Marius Bakke 647b6d3847 gnu: Add perl-canary-stability.
* gnu/packages/perl.scm (perl-canary-stability): New variable.
2017-03-02 18:39:14 +01:00
Marius Bakke 811f4f5b4c gnu: Add perl-async-interrupt.
* gnu/packages/perl.scm (perl-async-interrupt): New variable.
2017-03-02 18:39:14 +01:00
Marius Bakke 04c88363da gnu: leveldb: Update to 1.20.
* gnu/packages/databases.scm (leveldb): Update to 1.20.
2017-03-02 18:39:14 +01:00
John Darrington 479c4273e6 gnu: Add jacal.
* gnu/packages/maths.scm (jacal): New variable.
* gnu/packages/patches/jacal-fix-texinfo.patch: New file.
2017-03-02 18:17:26 +01:00
John Darrington 8c48d0eb33 gnu: Add scm.
* gnu/packages/scheme.scm (scm): New variable.
2017-03-02 18:17:22 +01:00
John Darrington 07ef08a736 gnu: Add slib.
* gnu/packages/scheme.scm (slib): New variable.
2017-03-02 18:17:18 +01:00
John Darrington f1021afb41 gnu: Merge the two stellaria into one.
* gnu/packages/astronomy.scm (stellaruim): Merge details from stellarium-0.14.
* gnu/packages/education.scm (stellarium): Remove variable.
2017-03-02 18:02:26 +01:00
Rene Saavedra 37e78bc7f2 gnu: fontconfig: Fix PATH_MAX for Hurd systems.
* gnu/packages/patches/fontconfig-path-max.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/fontutils.scm (fontconfig)[source]: Use it.

Signed-off-by: Manolis Ragkousis <manolis837@gmail.com>
2017-03-02 14:35:17 +02:00
Ben Woodcroft ec4102f57f gnu: bundler: Update to 1.14.5.
* gnu/packages/ruby.scm (bundler): Update to 1.14.5.
2017-03-02 21:19:39 +10:00
Ben Woodcroft a9f754d733 gnu: diamond: Update to 0.8.36.
* gnu/packages/bioinformatics.scm (diamond): Update to 0.8.36.
2017-03-02 21:19:26 +10:00
Efraim Flashner a047122c6a gnu: mutt: Update to 1.8.0.
* gnu/packages/mail.scm (mutt): Update to 1.8.0.
2017-03-02 12:45:50 +02:00
Efraim Flashner 1a10cefc91 gnu: nano: Update to 2.7.5.
* gnu/packages/nano.scm (nano): Update to 2.7.5.
[description]: Updated with help from 'guix lint'.
2017-03-02 12:39:26 +02:00
Efraim Flashner 10045e5c81 gnu: pth: Add support for aarch64.
* gnu/packages/pth.scm (pth)[arguments]: When compiling on aarch64 add
the '--host=aarch64' flag.
[home-page]: Use https.
2017-03-02 11:51:43 +02:00
Alex Kost 47ddf3e5f0 services: ssh: Remove 'openssh-service' exported symbol.
This is a followup to commit d8f3128119.
Reported by thomasd on #guix.

* gnu/services/ssh.scm: Do not export 'openssh-service' as it does not
exist.
2017-03-02 11:50:57 +03:00
John Darrington 0558e9684f gnu: Add stellarium.
* gnu/packages/astronomy.scm (stellarium): New variable.
2017-03-02 07:03:26 +01:00
Tobias Geerinckx-Rice 1a01551a9b gnu: cbatticon: Update to 1.6.5.
* gnu/packages/admin.scm (cbatticon): Update to 1.6.5.
2017-03-02 06:23:21 +01:00
Tobias Geerinckx-Rice 63f5d53cf1 gnu: di: Update to 4.43.
* gnu/packages/admin.scm (di): Update to 4.43.
2017-03-02 06:23:21 +01:00
Tobias Geerinckx-Rice 5f643dbe08 gnu: tidy-html: Update to 5.4.0.
* gnu/packages/web.scm (tidy-html): Update to 5.4.0.
2017-03-02 06:23:20 +01:00
Tobias Geerinckx-Rice 53c36279c2 gnu: txt2man: Update to 1.6.0.
* gnu/packages/man.scm (txt2man): Update to 1.6.0.
2017-03-02 06:23:20 +01:00
Tobias Geerinckx-Rice 02de2f7bb2 gnu: youtube-dl: Update to 2017.02.28.
* gnu/packages/video.scm (youtube-dl): Update to 2017.02.28.
2017-03-02 06:23:20 +01:00
Tobias Geerinckx-Rice 0204187296 gnu: iproute2: Use @command in description.
* gnu/packages/linux.scm (iproute2)[description]: Use @command mark-up when
referring to the separate tools.
2017-03-02 06:23:20 +01:00
Leo Famulari d8bcf08088 gnu: vdirsyncer: Update to 0.15.0.
* gnu/packages/dav.scm (vdirsyncer): Update to 0.15.0.
[source]: Remove obsolete patch 'vdirsyncer-test-suite-slow-machines.patch'.
* gnu/packages/patches/vdirsyncer-test-suite-slow-machines.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-03-01 22:33:11 -05:00
Carlo Zancanaro ea9e58ef66 gnu: icedtea-6: Modify certificate import to not fail for icedtea-8.
Co-authored-by: Roel Janssen <roel@gnu.org>

* gnu/packages/java.scm (icedtea-6)[arguments]: Do not fail install-keystore
phase when attempting to import unsupported certificate types.  Also ensure
that the keystore is able to be written to before copying it.
(icedtea-8)[arguments]: Restore "install-keystore" phase.
2017-03-01 23:25:46 +01:00
Leo Famulari 428af2c683 gnu: graphicsmagick: Add comment about CVE-2017-6335.
* gnu/packages/imagemagick.scm (graphicsmagick): Add comment.
2017-03-01 16:36:34 -05:00
Efraim Flashner cec21d689d gnu: libdrm-symbol-check.patch: Add case for radeon.
* gnu/packages/patches/libdrm-symbol-check.patch: Add the extra seven
symbols from the public headers to the radeon-symbol-check to satisfy
the test.  Also add aarch64-linux to the list of architectures affected.
2017-03-01 22:43:46 +02:00
Efraim Flashner 7ed7be3c2e gnu: gd: Fix test failure on aarch64.
* gnu/packages/gd.scm (gd)[arguments]: Add make-flag -ffp-contract=off
to work around upstream bug 278.
2017-03-01 22:17:58 +02:00
Marius Bakke 07feb58031 gnu: notmuch: Update to 0.23.7.
* gnu/packages/mail.scm (notmuch, python2-notmuch): Update to 0.23.7.
2017-03-01 20:41:41 +01:00
Marius Bakke 7166221c62 gnu: maim: Update to 4.4.60.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.60.
2017-03-01 20:41:41 +01:00
Marius Bakke ad839aeaee gnu: slop: Update to 5.3.37.
* gnu/packages/xdisorg.scm (slop): Update to 5.3.37.
2017-03-01 20:41:41 +01:00
Marius Bakke 8c58c53beb gnu: re2: Update to 2017-03-01.
* gnu/packages/regex.scm (re2): Update to 2017-03-01.
2017-03-01 20:41:41 +01:00
Marius Bakke ef23ed9e25 gnu: sessreg: Update to 1.1.1.
* gnu/packages/xorg.scm (sessreg): Update to 1.1.1.
2017-03-01 20:41:41 +01:00
Marius Bakke d2839defec gnu: jemalloc: Update to 4.5.0.
* gnu/packages/jemalloc.scm (jemalloc): Update to 4.5.0.
2017-03-01 20:41:41 +01:00
ng0 3a263368dd gnu: Add blists.
* gnu/packages/mail.scm (blists): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-01 13:16:31 -05:00
John Darrington 0da8313c67 gnu: Add unrar.
* gnu/packages/compression.scm (unrar): New variable.
2017-03-01 18:57:00 +01:00
David Craven b0377e58c3 file-systems: Add FAT32 support.
* gnu/build/file-systems.scm (%fat32-endianness, fat32-superblock?,
read-fat32-superblock, fat32-superblock-uuid, fat32-uuid->string,
fat32-superblock-volume-name, check-fat32-file-system): New variables.
(%partition-label-readers, %partition-uuid-readers, check-file-system): Add
fat support.
(latin1->string): New variable.
(null-terminated-latin1->string): Use latin1->string.
2017-03-01 17:27:49 +01:00
ng0 bd9f8869b1 gnu: mumble: Build with 'murmur' server component.
* gnu/packages/telephony.scm (mumble)[arguments]: Build 'murmur'.
Remove 'no-server' and add 'no-ice' to "configure" phase.
[description]: Add a sentence about mumble and murmur.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-03-01 09:41:36 -05:00
Efraim Flashner f495f1bf2d gnu: enlightenment: Update to 0.21.6.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.21.6.
2017-03-01 11:33:08 +02:00
Efraim Flashner e9d60ebadb gnu: octave: Update to 4.2.1.
* gnu/packages/maths.scm (octave): Update to 4.2.1.
2017-03-01 11:33:08 +02:00
ng0 05c638984d gnu: Add lush2.
* gnu/packages/lisp.scm (lush2): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 23:21:38 -05:00
David Craven 26a076ed69 vm: Improve readability of run-vm.sh generation.
* gnu/system/vm.scm (common-qemu-options,
system-qemu-image/shared-store-script): Improve readability.
2017-03-01 00:15:31 +01:00
David Craven 43fe431cce vm: Remove hard coded kernel file name.
* gnu/system/vm.scm (system-qemu-image/shared-store-script,
expression->derivation-in-linux-vm): Use operating-system-kernel-file and
system-linux-image-file-name.
* gnu/system.scm (system-linux-image-file-name): Add ARM.
2017-02-28 23:43:35 +01:00
John Darrington 5f947808cd gnu: Add linsmith.
* gnu/packages/engineering.scm (linsmith): New variable.
2017-02-28 21:29:52 +01:00
Efraim Flashner 13e4a6c863 gnu: screen: Update to 4.5.1.
* gnu/packages/screen.scm (screen): Update to 4.5.1.
[source]: Remove patch.
* gnu/packages/patches/screen-CVE-2017-5618.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-28 21:01:26 +02:00
Carlo Zancanaro 05740895fe gnu: wine: Add 'pulseaudio' to 'inputs'.
* gnu/packages/wine.scm (wine)[inputs]: Add pulseaudio.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 13:47:16 -05:00
John Darrington a9406b2416 gnu: Add ccd2cue
* gnu/packages/cdrom.scm (ccd2cue): New variable.
2017-02-28 18:55:11 +01:00
ng0 b02a141f3e gnu: Add vim-airline-themes.
* gnu/packages/vim.scm (vim-airline-themes): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:27 -05:00
ng0 7ffcf5c5e0 gnu: Add vim-airline.
* gnu/packages/vim.scm (vim-airline): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:24 -05:00
ng0 25340002b6 gnu: Add vim-context-filetype.
* gnu/packages/vim.scm (vim-context-filetype): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:20 -05:00
ng0 a4c95372e2 gnu: Add vim-luna.
* gnu/packages/vim.scm (vim-luna): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:20 -05:00
ng0 5890f891e7 gnu: Add vim-neosnippet.
* gnu/packages/vim.scm (vim-neosnippet): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:17 -05:00
ng0 34af179ac7 gnu: Add vim-neosnippet-snippets.
* gnu/packages/vim.scm (vim-neosnippet-snippets): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:14 -05:00
ng0 843b19ca88 gnu: Add vim-scheme.
* gnu/packages/vim.scm (vim-scheme): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:25:09 -05:00
ng0 8bb7b4f517 gnu: Add vim-neocomplete.
* gnu/packages/vim.scm (vim-neocomplete): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 12:23:44 -05:00
Federico Beffa a995251d68 gnu: wxmaxima: Downgrade to 16.04.2.
* gnu/packages/maths.scm (wxmaxima): Do it.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-28 11:22:13 -05:00
Ricardo Wurmus 48d66a9c99 gnu: bamtools: Update to 2.4.1.
* gnu/packages/bioinformatics.scm (bamtools): Update to 2.4.1.
2017-02-28 12:10:02 +01:00
Leo Famulari f3a24b46c8 gnu: doxygen: Update to 1.8.13.
* gnu/packages/documentation.scm (doxygen): Update to 1.8.13.
2017-02-28 02:09:51 -05:00
Leo Famulari 4407a3535b gnu: flex: Update to 2.6.3.
* gnu/packages/flex.scm (flex): Update to 2.6.3.
2017-02-28 02:09:51 -05:00
Leo Famulari 29796b3f94 gnu: cups: Fix build failure in reset-gzip-timestamps phase.
* gnu/packages/cups.scm (cups)[arguments]: Add 'make-manpages-writable' phase.
2017-02-28 02:09:50 -05:00
Leo Famulari 306c4d6961 gnu: linux-libre: Update to 4.10.1.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.1.
(%linux-libre-hash): Update hash.
2017-02-27 15:22:35 -05:00
Alex Kost b4905fc1d9 gnu: emacs-guix: Update to 0.3.
* gnu/packages/emacs.scm (emacs-guix): Update to 0.3.
2017-02-27 18:25:14 +03:00
Alex Kost 568cd52613 gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to 1162418.
2017-02-27 18:25:14 +03:00
Marius Bakke 2bb12f5a68 gnu: ribodiff: Fix test failure.
* gnu/packages/bioinformatics.scm (ribodiff)[native-inputs]: Add PYTHON2-MOCK
  and PYTHON2-NOSE.
2017-02-27 15:32:17 +01:00
Thomas Danckaert d5a9783999 gnu: python-netcdf4: Update to 1.2.7.
* gnu/packages/python.scm (python-netcdf4, python2-netcdf4): Update to 1.2.7.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-27 14:55:39 +01:00
Thomas Danckaert cbfbcb2105 gnu: coda: Update to 2.18.
* gnu/packages/python.scm (coda): Update to 2.18.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-27 14:55:25 +01:00
Alex Kost 1162418ee8 .gitignore: Remove stale entries.
This is a followup to commit deb6276dda.

* .gitignore: Remove "/emacs/..." lines.
2017-02-27 16:44:58 +03:00
Alex Kost 9bd94544be gnu: emacs: Simplify "guix-emacs.el".
* gnu/packages/aux-files/emacs/guix-emacs.el: Do not try to require
'guix-profiles'.  Do not call 'guix-emacs-autoload-packages' in the top
level.
(guix-package-enable-at-startup): Remove.  This variable can't be set by
a user since this file is loaded before user config.
(guix-emacs-autoload-packages): Use 'guix-read-package-profile' instead
of 'guix-profile-prompt' in interactive clause (it was renamed in
Emacs-Guix).
* gnu/packages/emacs.scm (emacs)[arguments]: Call
'guix-emacs-autoload-packages' in "site-start.el" after requiring
'guix-emacs'.
2017-02-27 16:44:58 +03:00
Alex Kost 59d04f63df gnu: emacs: Move "guix-emacs.el" to "aux-files".
* emacs/guix-emacs.el: Rename to...
* gnu/packages/aux-files/emacs/guix-emacs.el: ... this.
* Makefile.am (AUX_FILES): Add it.
* gnu/packages/emacs.scm (emacs)[inputs]: Remove 'guix' source.
[native-inputs]: Add "guix-emacs.el" auxiliary file.
[arguments]: Adjust 'install-site-start' phase accordingly.
2017-02-27 16:44:58 +03:00
Alex Kost 7994250fdb gnu: linux: Move configuration files to "aux-files".
* gnu/packages/linux-libre-4.1-i686.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.1-i686.conf: ... this.
* gnu/packages/linux-libre-4.1-x86_64.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.1-x86_64.conf: ... this.
* gnu/packages/linux-libre-4.4-i686.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.4-i686.conf: ... this.
* gnu/packages/linux-libre-4.4-x86_64.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.4-x86_64.conf: ... this.
* gnu/packages/linux-libre-4.9-i686.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.9-i686.conf: ... this.
* gnu/packages/linux-libre-4.9-x86_64.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.9-x86_64.conf: ... this.
* gnu/packages/linux-libre-4.10-i686.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.10-i686.conf: ... this.
* gnu/packages/linux-libre-4.10-x86_64.conf: Rename to...
* gnu/packages/aux-files/linux-libre/4.10-x86_64.conf: ... this.
* gnu/packages/linux.scm (kernel-config): Use 'search-auxiliary-file' to
find configuration files.
* Makefile.am (KCONFIGS): Rename to...
(AUX_FILES): ... this.  Adjust accordingly.
2017-02-27 16:44:58 +03:00
Alex Kost 96eaa55ffb packages: Add 'search-auxiliary-file'.
Suggested-by: Ludovic Courtès <ludo@gnu.org> at
<http://lists.gnu.org/archive/html/guix-devel/2016-12/msg01174.html>.

* gnu/packages.scm (%auxiliary-files-path): New variable.
(search-auxiliary-file): New procedure.
2017-02-27 16:44:57 +03:00
Manolis Ragkousis 751702676e guix: build: make-bootstrap: Copy "falloc.h" to the new system.
In glibc-2.25 a dependency on "linux/falloc.h" was added.
This also reverts commit 8f8f250bdc
which is no longer needed. This commit was not compatible with
the glibc version Hurd is using. See
<https://lists.gnu.org/archive/html/guix-devel/2017-02/msg01046.html>

* guix/build/make-bootstrap.scm (make-stripped-libc): Copy "falloc.h"
to the new system.
* gnu/packages/patches/glibc-bootstrap-system.patch: Remove part
that touches fcntl-linux.h.

Problem reported by Andreas Enge <andreas@enge.fr>.
2017-02-27 15:31:06 +02:00
Marius Bakke 2982889d68 gnu: potrace: Update to 1.14 [fixes CVE-2016-8685 and CVE-2016-8686].
* gnu/packages/fontutils.scm (potrace): Update to 1.14.
2017-02-27 13:08:41 +01:00
Marius Bakke e9eafae289 gnu: khard: Disable tests.
* gnu/packages/mail.scm (khard)[arguments]: Set #:tests? #f.
2017-02-27 12:54:19 +01:00
Marius Bakke 8779987bba Merge branch 'master' into python-tests 2017-02-27 12:42:22 +01:00
Marius Bakke a6d9f8837b gnu: whois: Update to 5.2.15.
* gnu/packages/networking.scm (whois): Update to 5.2.15.
2017-02-27 12:39:39 +01:00
Marius Bakke 298111a7a7 gnu: maim: Update to 4.4.59.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.59.
2017-02-27 12:39:39 +01:00
Marius Bakke 31ccf5dc6c gnu: slop: Update to 5.3.35.
* gnu/packages/xdisorg.scm (slop): Update to 5.3.35.
2017-02-27 12:39:39 +01:00
Marius Bakke 8e5652f924 gnu: harfbuzz: Update to 1.4.3.
* gnu/packages/gtk.scm (harfbuzz): Update to 1.4.3.
2017-02-27 11:41:54 +01:00
Marius Bakke daed5b7ed3 gnu: libx11: Update to 1.6.5.
* gnu/packages/xorg.scm (libx11): Update to 1.6.5.
2017-02-27 11:31:51 +01:00
Leo Famulari c46d8e92de gnu: linux-libre@4.4: Update to 4.4.52.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.52.
Remove patches.
2017-02-27 04:21:32 -05:00
Leo Famulari f11a48c0ca gnu: linux-libre@4.9: Update to 4.9.13.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.13.
Remove patches.
2017-02-27 04:21:32 -05:00
Leo Famulari 50a86ee6c9 gnu: python-gst: Update to 1.10.4.
* gnu/packages/gstreamer.scm (python-gst): Update to 1.10.4.
2017-02-27 04:04:52 -05:00
Leo Famulari b8f337c280 gnu: gst-libav: Update to 1.10.4.
* gnu/packages/gstreamer.scm (gst-libav): Update to 1.10.4.
2017-02-27 04:04:52 -05:00
Leo Famulari 66fff91735 gnu: gst-plugins-ugly: Update to 1.10.4 [fixes CVE-2017-5847].
* gnu/packages/gstreamer.scm (gst-plugins-ugly): Update to 1.10.4.
2017-02-27 04:04:52 -05:00
Leo Famulari 869ffe8f9b gnu: gst-plugins-bad: Update to 1.10.4 [fixes CVE-2017-5848].
*  gnu/packages/gstreamer.scm (gst-plugins-bad): Update to 1.10.4.
2017-02-27 04:04:52 -05:00
Leo Famulari 2611454831 gnu: gst-plugins-good: Update to 1.10.4.
* gnu/packages/gstreamer.scm (gst-plugins-good): Update to 1.10.4.
2017-02-27 04:04:52 -05:00
Leo Famulari 1d8e727357 gnu: gst-plugins-base: Update to 1.10.4.
* gnu/packages/gstreamer.scm (gst-plugins-base): Update to 1.10.4.
[source]: Remove obsolete patch 'gst-plugins-base-fix-test-on-32bit.patch'
* gnu/packages/patches/gst-plugins-base-fix-test-on-32bit.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-27 04:04:51 -05:00
Leo Famulari c1ed10f95e gnu: gstreamer: Update to 1.10.4.
* gnu/packages/gstreamer.scm (gstreamer): Update to 1.10.4.
2017-02-27 04:04:46 -05:00
Efraim Flashner 1c598515cd gnu: fontconfig: Fix test-suite for freetype update.
* gnu/packages/fontutils.scm (fontconfig)[arguments]: Add phase to fix
the test-suite to have the input expected.
2017-02-27 08:29:05 +02:00
Marius Bakke 3ba43a2297 gnu: pciutils: Update to 3.5.4.
* gnu/packages/pciutils.scm (pciutils): Update to 3.5.4.
2017-02-27 00:03:37 +01:00
Marius Bakke 61f78e7284 gnu: iproute2: Update to 4.10.
* gnu/packages/linux.scm (iproute2): Update to 4.10.
[arguments]: Specify HDRDIR in #:make-flags.
2017-02-27 00:03:18 +01:00
Marius Bakke 212c775c9c gnu: bluez: Update to 5.44.
* gnu/packages/linux.scm (bluez): Update to 5.44.
2017-02-26 23:44:24 +01:00
Marius Bakke b9375d8944 gnu: kmod: Update to 24.
* gnu/packages/linux.scm (kmod): Update to 24.
2017-02-26 23:44:18 +01:00
Efraim Flashner 3de15bb740 gnu: freetype: Update to 2.7.1.
* gnu/packages/fontutils.scm (freetype): Update to 2.7.1.
2017-02-26 23:16:05 +02:00
Marius Bakke ac2d5de3da gnu: libssh2: Fix build failure after 1.8.0 upgrade.
* gnu/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ssh.scm (libssh2)[source]: Use it.
[arguments]: Add 'autoreconf' phase.
[native-inputs]: Add AUTOCONF and AUTOMAKE.
2017-02-26 22:05:42 +01:00
Marius Bakke 5d79b1bf57 gnu: libssh: Update to 0.7.4.
* gnu/packages/ssh.scm (libssh): Update to 0.7.4.
[home-page]: Use HTTPS.
2017-02-26 21:46:45 +01:00
Leo Famulari 56a44e2d5b gnu: gd: Fix test failure with FreeType 2.7.
* gnu/packages/patches/gd-freetype-test-failure.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gd.scm (gd)[source]: Use it.
2017-02-26 15:46:03 -05:00
Marius Bakke b01a89854b gnu: Remove unused patch.
This is a followup to 6f9d5b2e8c.

* gnu/packages/patches/libssh-0.6.5-CVE-2016-0739.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-26 21:41:21 +01:00
ng0 9c66b88543 gnu: neomutt: Update to 20170225.
* gnu/packages/mail.scm (neomutt): Update to 20170225.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-26 13:06:06 -05:00
Leo Famulari ffa771d2b4 gnu: vim: Use upstream fix for CVE-2017-5953.
* gnu/packages/patches/vim-CVE-2017-5953.patch: Adjust to match upstream changes.
2017-02-26 12:04:16 -05:00
Leo Famulari fe36608f99 gnu: fontconfig: Fix build failure caused by symbol conflict with glibc@2.25.
* gnu/packages/patches/fontconfig-charwidth-symbol-conflict.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/fontutils.scm (fontconfig)[source]: Use it.
2017-02-26 11:39:09 -05:00
Leo Famulari f0a01af5c6 gnu: eudev: Fix build failure caused by conflicting function type declaration.
* gnu/packages/patches/eudev-conflicting-declaration.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/linux.scm (eudev)[source]: Use it.
2017-02-26 11:39:09 -05:00
Leo Famulari 378618640d gnu: eudev: Update to 3.2.1.
* gnu/packages/linux.scm (eudev): Update to 3.2.1.
2017-02-26 11:39:09 -05:00
Leo Famulari d043ceedbb gnu: cups-minimal: Fix build failure in reset-gzip-timestamps phase.
* gnu/packages/cups.scm (cups-minimal)[arguments]: Add 'make-manpages-writable'
phase.
2017-02-26 11:39:08 -05:00
Efraim Flashner 9a9d6d782c gnu: bdb@5.3: Support aarch64.
* gnu/packages/databases.scm (bdb@5.3)[arguments]: Copy arguments from
* bdb, add '--build' flag for aarch64.
2017-02-25 20:39:05 +02:00
John Darrington 2f1d20a8d4 gnu: xshogi: Remove Texinfo markup from synopsis.
* gnu/packages/games.scm (xshogi): Remove Texinfo markup from synopsis.
2017-02-25 13:24:55 +01:00
Marius Bakke d470d2d520 gnu: libva: Update to 1.7.3.
* gnu/packages/video.scm (libva): Update to 1.7.3.
2017-02-25 13:17:02 +01:00
Marius Bakke 5932c3d019 Revert "gnu: libva: Update to 1.7.3."
It causes too many rebuilds for 'master'.

This reverts commit 9c96d33cfd.
2017-02-25 13:15:06 +01:00
Marius Bakke 9c96d33cfd gnu: libva: Update to 1.7.3.
* gnu/packages/video.scm (libva): Update to 1.7.3.
2017-02-25 13:10:28 +01:00
Marius Bakke 61feaf3b5f gnu: libx264: Update to 20170224-2245.
* gnu/packages/video.scm (libx264): Update to 20170224-2245.
2017-02-25 13:10:28 +01:00
Marius Bakke 49ed5de31e gnu: x265: Update to 2.3.
* gnu/packages/video.scm (x265): Update to 2.3.
2017-02-25 13:10:28 +01:00
Marius Bakke a343c46134 gnu: dlib: Update to 19.3.
* gnu/packages/machine-learning.scm (dlib): Update to 19.3.
[arguments]: Enable one more test.
2017-02-25 13:10:28 +01:00
Marius Bakke b9fb6b8a24 gnu: rocksdb: Update to 5.1.4.
* gnu/packages/databases.scm (rocksdb): Update to 5.1.4.
2017-02-25 13:10:27 +01:00
Marius Bakke 988a5cb11e gnu: maim: Update to 4.4.50.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.50.
2017-02-25 13:10:27 +01:00
Marius Bakke 472bf03857 gnu: slop: Update to 5.3.28.
* gnu/packages/xdisorg.scm (slop): Update to 5.3.28.
2017-02-25 13:10:27 +01:00
Danny Milosavljevic bcd2fddd6a gnu: ldc-bootstrap: Update to 0.17.3.
* gnu/packages/ldc.scm (ldc-bootstrap): Update to 0.17.3.
2017-02-25 08:33:26 +01:00
Danny Milosavljevic 219369ce0f gnu: ldc: Update to 1.1.1.
* gnu/packages/ldc.scm (ldc): Update to 1.1.1.
2017-02-25 08:05:05 +01:00
Ricardo Wurmus 1885bb0c08 gnu: python-dendropy: Fix failing tests.
* gnu/packages/patches/python-dendropy-fix-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/bioinformatics.scm (python-dendropy)[source]: Add patch.
2017-02-24 23:44:31 +01:00
Marius Bakke 86baa4ce8d gnu: git: Update to 2.12.0.
* gnu/packages/version-control.scm (git): Update to 2.12.0.
2017-02-24 22:36:28 +01:00
Marius Bakke d6caebc4d6 gnu: python2-reno: Disable tests.
* gnu/packages/openstack.scm (python2-reno)[arguments]: New field.
(python-reno)[properties]: Delay it.
2017-02-24 21:37:03 +01:00
Marius Bakke 154d0016b5 Revert "gnu: python2-fastlmm: Update to 0.2.26."
This reverts commit 594358f5b6.
2017-02-24 21:36:07 +01:00
Marius Bakke e1f2e19047 gnu: python2-swiftclient: Disable tests.
* gnu/packages/openstack.scm (python2-swiftclient)[arguments]: New field.
2017-02-24 20:56:06 +01:00
Marius Bakke 041b5932da gnu: python2-bandit: Disable tests.
* gnu/packages/openstack.scm (python2-bandit)[arguments]: New field.
(python-bandit)[properties]: Delay it.
2017-02-24 20:51:39 +01:00
Marius Bakke 11a8767b94 gnu: python2-stevedore: Disable tests.
* gnu/packages/openstack.scm (python2-stevedore)[arguments]: New field.
(python-stevedore)[properties]: New field.
2017-02-24 20:49:45 +01:00
Marius Bakke dc6bedbaca gnu: python2-requests-mock: Disable tests.
* gnu/packages/openstack.scm (python2-requests-mock)[arguments]: New field.
(python-requests-mock): Delay it.
2017-02-24 20:45:46 +01:00
Marius Bakke ec867b86a0 gnu: python2-oslotest: Disable tests.
* gnu/packages/openstack.scm(python2-oslotest)[arguments]: New field.
(python-oslotest)[properties]: Delay it.
2017-02-24 20:41:12 +01:00
Leo Famulari 55e61c4db8 gnu: gnutls: Support internationalized domain names.
* gnu/packages/tls.scm (gnutls)[propagated-inputs]: Replace libidn with
libidn2.
2017-02-24 14:03:16 -05:00
Marius Bakke 3b86a385db gnu: python-passlib: Update to 1.7.1.
* gnu/packages/python.scm (python-passlib, python2-passlib): Update to 1.7.1.
2017-02-24 19:44:10 +01:00
Marius Bakke cf46d07150 gnu: fio: Update to 2.18.
* gnu/packages/benchmark.scm (fio): Update to 2.18.
[arguments]: Enable tests.
2017-02-24 19:44:10 +01:00
Leo Famulari c71011f80f gnu: tcsh: Use modify-phases.
* gnu/packages/shells.scm (tcsh)[arguments]: Use modify-phases.
2017-02-24 13:22:07 -05:00
Leo Famulari 816417f5a4 gnu: tcsh: Update to 6.20.00.
* gnu/packages/shells.scm (tcsh): Update to 6.20.00.
[source]: Remove 'tcsh-do-not-define-BSDWAIT.patch'.
[inputs]: Remove coreutils. Move autoconf to ...
[native-inputs]: ... here. Add perl.
* gnu/packages/patches/tcsh-fix-autotest.patch: Adjust patch to upstream
changes.
* gnu/packages/patches/tcsh-do-not-define-BSDWAIT.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-24 13:22:06 -05:00
Marius Bakke 42945fb58c gnu: python-fake-factory: Fix build on 32bit.
* gnu/packages/patches/python-fake-factory-fix-build-32bit.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-fake-factory, python2-fake-factory)[source]:
Use it.
2017-02-24 18:55:29 +01:00
ng0 b53e4cbd2c gnu: gnurl: Update to 7.53.1.
* gnu/packages/gnunet.scm (gnurl): Update to 7.53.1.
(source)[uri]: Update to new upstream filename.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-24 11:55:55 -05:00
Tobias Geerinckx-Rice 588edb9c01 gnu: youtube-dl: Update to 2017.02.22.
* gnu/packages/video.scm (youtube-dl): Update to 2017.02.22.
2017-02-24 16:39:42 +01:00
Tobias Geerinckx-Rice 6b08982d4a gnu: gparted: Update to 0.28.1.
* gnu/packages/disk.scm (gparted): Update to 0.28.1.
2017-02-24 16:39:41 +01:00
Marius Bakke 630bc4fc07 gnu: rocksdb: Update to 5.1.3.
* gnu/packages/databases.scm (rocksdb): Update to 5.1.3.
2017-02-24 11:47:28 +01:00
Marius Bakke 2c8b6b4f84 gnu: maim: Update to 4.4.49.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.49.
2017-02-24 11:47:27 +01:00
Marius Bakke e1c014d7f3 gnu: slop: Update to 5.3.27.
* gnu/packages/xdisorg.scm (slop): Update to 5.3.27.
[arguments]: Remove #:configure-flags.
[inputs]: Add LIBXRENDER.
2017-02-24 11:47:27 +01:00
Marius Bakke 4fb9c83c54 gnu: graphicsmagick: Update to 1.3.25-2.6156b4c [security fixes].
* gnu/packages/imagemagick.scm (graphicsmagick): Update to 1.3.25-2.6156b4c.
2017-02-24 11:47:27 +01:00
Mark H Weaver 5fb34141cc gnu: linux-libre@4.9: Update to 4.9.12.
* gnu/packages/linux.scm (linux-libre-4.9): Update to 4.9.12.
2017-02-24 00:49:26 -05:00
Mark H Weaver 398433dc96 gnu: linux-libre@4.4: Update to 4.4.51.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.51.
2017-02-24 00:48:11 -05:00
Leo Famulari 0d7feebb62 gnu: lightweight-desktop.tmpl: Remove xmonad.
* gnu/system/examples/lightweight-desktop.tmpl (packages): Remove xmonad.
2017-02-23 17:44:59 -05:00
Leo Famulari 533372319e gnu: lightweight-desktop.tmpl: Complete i3-wm.
* gnu/system/examples/lightweight-desktop.tmpl (packages): Add i3status
and dmenu.
(use-package-modules): Add suckless.
2017-02-23 17:44:54 -05:00
John Darrington a20b084a04 gnu: Add gnushogi and xshogi
* gnu/packages/games.scm (gnushogi, xshogi): New variables.
2017-02-23 21:25:08 +01:00
Leo Famulari 1d311009fe gnu: util-linux: Fix CVE-2017-2616.
* gnu/packages/patches/util-linux-CVE-2017-2616.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/linux.scm (util-linux)[replacement]: New field.
(util-linux/fixed): New variable.
2017-02-23 15:01:54 -05:00
Leo Famulari 1c851cbe0c gnu: shadow: Fix CVE-2017-2616.
* gnu/packages/patches/shadow-CVE-2017-2616.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/admin.scm (shadow): Use it.
2017-02-23 14:59:50 -05:00
Leo Famulari 9f05908fb1 download: Provide a fall-back guile for older daemons.
Fixes <http://bugs.gnu.org/25775>.

* guix/download.scm (in-band-download): Use %bootstrap-guile as a
fall-back when using older daemons that do not have a built-in
downloader.

Written-by: Ricardo Wurmus <rekado@elephly.net>
2017-02-23 14:27:35 -05:00
Leo Famulari b191f0a6c5 services: guix: Support building in a directory besides '/tmp'.
* gnu/services/base.scm (<guix-configuration>)[tmpdir]: New field.
(guix-shepherd-service): Use 'tmpdir' in #:environment-variables.
* doc/guix.texi (Base Services)[guix-configuration]: Document it.
2017-02-23 13:03:14 -05:00
Clément Lassieur 94b28aed1e gnu: prosody: Update to 0.9.12.
* gnu/packages/messaging.scm (prosody): Update to 0.9.12.
  [inputs]: Change lua5.1-sec-0.5 to lua5.1-sec.
* gnu/packages/lua.scm (lua5.1-sec-0.5): Remove variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-23 14:46:19 +01:00
Marius Bakke 2b7d10d2db gnu: maim: Update to 4.4.47.
* gnu/packages/xdisorg.scm (maim): Update to 4.4.47.
[arguments]: Remove obsolete 'patch-source' phase.
[inputs]: Remove LIBX11 and IMLIB2. Add GLM, LIBJPEG-TURBO, LIBPNG,
LIBXCOMPOSITE, MESA and ZLIB.
2017-02-23 14:06:19 +01:00
Marius Bakke 937b71dfce gnu: slop: Update to 5.3.21.
* gnu/packages/xdisorg.scm (slop): Update to 5.3.21.
[arguments]: Specify -std=gnu++11 in #:configure-flags.
[inputs]: Drop LIBX11, LIBXRANDR, IMLIB2 and GLEW. Add GLM.
2017-02-23 13:53:34 +01:00
Marius Bakke 83090f6ae7 gnu: util-linux: Update to 2.29.2.
* gnu/packages/linux.scm (util-linux): Update to 2.29.2.
2017-02-23 11:15:23 +01:00
Marius Bakke 5f3070a500 gnu: alsa-lib: Update to 1.1.3.
* gnu/packages/patches/alsa-lib-mips-atomic-fix.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/linux.scm (alsa-lib): Update to 1.1.3.
[source]: Remove patch.
[home-page]: Use HTTPS.
2017-02-23 11:02:21 +01:00
Leo Famulari 93d32da9f8 services: guix: Support using an HTTP proxy.
* gnu/services/base.scm (<guix-configuration>)[http-proxy]: New field.
(guix-shepherd-service): Use 'http-proxy' in #:environment-variables.
* doc/guix.texi (Base Services)[guix-configuration]: Document it.
2017-02-22 15:25:55 -05:00
Leo Famulari 8923441951 gnu: linux-libre@4.1, linux-libre@4.4, linux-libre@4.9: Fix CVE-2017-6074.
* gnu/packages/linux.scm (linux-libre-4.1, linux-libre-4.4,
linux-libre-4.9): Add patch for CVE-2017-6074.
2017-02-22 12:38:57 -05:00
Marius Bakke 2f7b4749e7 gnu: libxcb: Update to 1.12.
* gnu/packages/patches/libxcb-python-3.5-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xorg.scm (libxcb): Update to 1.12.
[source]: Add patch. Download from new home.
[home-page]: Change to new xcb.fd.o home.
2017-02-22 13:31:49 +01:00
Marius Bakke ba5e23d605 gnu: xcb-proto: Update to 1.12.
* gnu/packages/patches/xcb-proto-python3-print.patch,
  gnu/packages/patches/xcb-proto-python3-whitespace.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/xorg.scm (xcb-proto): Update to 1.12.
[source]: Use patches. Download from new home.
[home-page]: Change to new xcb.fd.o home.
2017-02-22 13:31:48 +01:00
Danny Milosavljevic f59a20cb6c gnu: xonsh: Update to 0.5.5.
* gnu/packages/shells.scm (xonsh): Update to 0.5.5.
2017-02-22 11:33:06 +01:00
Danny Milosavljevic 052f75da75 gnu: python-pygame: Update to 1.9.3.
* gnu/packages/game-development.scm (python-pygame)[version]: Update to 1.9.3.
[source]: Use pypi-uri.
[inputs]: Add freetype.
[arguments]: Use python-3 instead of python-2.
Provide path to freetype library in 'set-library-paths' phase.
Remove "src/movie.c" dummy substitution.
(python2-pygame): New variable.
2017-02-22 11:31:30 +01:00
Marius Bakke c0185d8e84 gnu: nginx: Update to 1.11.10.
* gnu/packages/web.scm (nginx): Update to 1.11.10.
2017-02-22 10:31:59 +01:00
Marius Bakke 6983b8a826 gnu: strace: Update to 4.16.
* gnu/packages/linux.scm (strace): Update to 4.16.
[arguments]: Add phase to patch /bin/sh reference. New field.
[home-page]: Update to redirected URL.
2017-02-22 10:24:00 +01:00
Marius Bakke c762d09e89 gnu: bash-completion: Update to 2.5.
* gnu/packages/bash.scm (bash-completion): Update to 2.5.
2017-02-22 08:13:05 +01:00
Marius Bakke 7db818c945 gnu: ola: Update to 0.10.3.
* gnu/packages/lighting.scm (ola): Update to 0.10.3.
2017-02-22 08:13:01 +01:00
Marius Bakke bc5d2620b6 gnu: mpv: Update to 0.24.0.
* gnu/packages/video.scm (mpv): Update to 0.24.0.
2017-02-22 08:12:57 +01:00
Marius Bakke 7031b9a763 gnu: libass: Update to 0.13.6.
* gnu/packages/video.scm (libass): Update to 0.13.6.
2017-02-22 08:12:53 +01:00
Marius Bakke c05be50a6f gnu: graphite2: Update to 1.3.9.
* gnu/packages/fontutils.scm (graphite2): Update to 1.3.9.
2017-02-22 07:26:14 +01:00
Marius Bakke 827dc6295c gnu: libepoxy: Update to 1.4.0.
* gnu/packages/patches/libepoxy-gl-null-checks.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/gl.scm (libepoxy): Update to 1.4.0.
[source]: Remove patch. Use release tarball and remove explicit file-name.
[arguments]: Drop 'autoreconf' phase. Remove obsolete test substitution.
[native-inputs]: Remove AUTOCONF, AUTOMAKE and LIBTOOL.
2017-02-22 07:26:04 +01:00
Christopher Allan Webber aaf1bdc349 gnu: Add guile-fibers.
* gnu/packages/guile.scm (guile-fibers): New variable.
2017-02-21 22:22:36 -06:00
Leo Famulari 53a55c9c86 gnu: curl: Update replacement to 7.53.0 [fixes CVE-2017-2629].
* gnu/packages/curl.scm (curl-7.52.1): Replace variable with ...
(curl-7.53.0): ... new variable.
(curl)[replacement]: Update to 7.53.0.
2017-02-21 19:07:05 -05:00
Efraim Flashner a6d352cc01 gnu: gs-fonts: Use 'modify-phases'.
* gnu/packages/ghostscript.scm (gs-fonts)[arguments]: Use
'modify-phases' syntax.
2017-02-21 21:49:31 +02:00
Efraim Flashner 6446555876 gnu: aalib: Support aarch64.
* gnu/packages/video.scm (aalib)[arguments]: Modify custom configure
phase to declare host type on aarch64.
2017-02-21 21:15:06 +02:00
Efraim Flashner fd61591850 gnu: python: Remove failing test on aarch64.
* gnu/packages/python.scm (python-3.5)[source]: Add snippet removing
test that fails on aarch64.
2017-02-21 21:14:57 +02:00
Efraim Flashner db700d5829 gnu: libelf: Use 'modify-phases'.
* gnu/packages/elf.scm (libelf)[arguments]: Use 'modify-phases'.
2017-02-21 21:14:48 +02:00
Efraim Flashner eb9a603317 gnu: libelf: Support aarch64.
* gnu/packages/elf.scm (libelf)[arguments]: Modify custom configure
phase to declare host type on aarch64.
2017-02-21 21:14:36 +02:00
Efraim Flashner 6d755c7b84 gnu: libgpg-error: Update to 1.26.
* gnu/packages/gnupg.scm (libgpg-error): Update to 1.26.
2017-02-21 20:28:53 +02:00
Efraim Flashner 3853bf2542 gnu: libtasn1: Update to 4.10.
* gnu/packages/tls.scm (libtasn1): Update to 4.10.
2017-02-21 20:27:47 +02:00
Efraim Flashner 0b86650650 gnu: gnutls: Update to 3.5.9.
* gnu/packages/tls.scm (gnutls): Update to 3.5.9.
2017-02-21 20:15:44 +02:00
Leo Famulari eed214ef22 gnu: xf86-video-geode: Update to 2.11.19.
* gnu/packages/xorg.scm (xf86-video-geode): Update to 2.11.19.
2017-02-21 12:34:53 -05:00
Leo Famulari 2060b4d95f gnu: bdftopcf: Use libxfont2.
* gnu/packages/xorg.scm (bdftopcf)[inputs]: Replace libxfont with libxfont2.
2017-02-21 12:34:53 -05:00
Marius Bakke 0ef7ea66b9 gnu: dlib: Update to 19.2.
* gnu/packages/machine-learning.scm (dlib): Update to 19.2.
[arguments]: Enable previously failing tests. Fix truthiness of some phases.
[source]: End snippet on #t.
2017-02-21 16:34:26 +01:00
Marius Bakke 025519fa95 gnu: diffoscope: Update to 77.
* gnu/packages/package-management.scm (diffoscope): Update to 77.
[arguments]: Remove obsolete colordiff substitution. Adjust 'xxd' substitution
to source path renames. Fix test failure by making it required.
2017-02-21 16:07:30 +01:00
Marius Bakke 2178b580cb gnu: feh: Update to 2.18.2.
* gnu/packages/image-viewers.scm (feh): Update to 2.18.2.
2017-02-21 15:53:17 +01:00
Marius Bakke 4c145d21d1 gnu: openssl: Incorporate grafted changes.
This un-grafts 544db93caf.

* gnu/packages/tls.scm (openssl): Update to 1.0.2k.
[replacement]: Remove field.
(openssl-1.0.2k): Remove variable.
(openssl-next)[replacement]: Remove field.
2017-02-21 15:08:02 +01:00
Marius Bakke 9e5af7b456 gnu: mesa: Update to 13.0.5.
* gnu/packages/gl.scm (mesa): Update to 13.0.5.
2017-02-21 14:56:32 +01:00
Marius Bakke f12def72ae gnu: xf86-input-wacom: Fix compatibility with xorg ABI 25.
* gnu/packages/patches/xf86-input-wacom-xorg-abi-25.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xdisorg.scm (xf86-input-wacom)[source](patches): Use it.
2017-02-21 14:56:32 +01:00
Marius Bakke 008dfa23d4 gnu: xf86-video-intel: Change to libxfont2 ABI.
* gnu/packages/xorg.scm (xf86-video-intel)[inputs]: Change LIBXFONT to LIBXFONT2.
2017-02-21 14:56:32 +01:00
Marius Bakke 62489932a0 gnu: xf86-video-qxl: Change to libxfont2 ABI.
* gnu/packages/xorg.scm (xf86-video-qxl)[inputs]: Change LIBXFONT to LIBXFONT2.
2017-02-21 14:56:31 +01:00
Marius Bakke 27e982e0d3 gnu: xorg-server: Update to 1.19.1.
* gnu/packages/xorg.scm (xorg-server, xorg-server-xwayland): Update to 1.19.1.
[inputs]: Change from LIBXFONT to LIBXFONT2. Add LIBEPOXY.
2017-02-21 14:50:52 +01:00
Marius Bakke 10cd39d1e0 gnu: xorg-server: Use 'modify-phases' syntax.
* gnu/packages/xorg.scm (xorg-server)[arguments]: Use 'modify-phases'.
2017-02-21 14:50:51 +01:00
Marius Bakke 404e48c4ed gnu: Add libxfont@2.
* gnu/packages/xorg.scm (libxfont2): New variable.
2017-02-21 14:50:51 +01:00
Marius Bakke d270c606b3 gnu: cmake: Run tests in parallel.
* gnu/packages/cmake.scm (cmake)[arguments]: Add 'set-test-environment' phase.
2017-02-21 14:50:51 +01:00
Marius Bakke db909bf23c gnu: cmake: Remove bundled software.
* gnu/packages/cmake.scm (cmake)[source]: Add 'snippet' to remove bundled
libraries.
[arguments]: Drop removed files from 'patch-bin-sh' phase.
[license]: Update for remaining software.
2017-02-21 14:50:50 +01:00
Marius Bakke 4bbb7d4865 gnu: cmake: Update to 3.7.2.
* gnu/packages/cmake.scm (cmake): Update to 3.7.2.
[arguments]: Fix truthiness of some phases.
[inputs]: Add LIBUV.
2017-02-21 14:50:50 +01:00
Marius Bakke 8505eb19a4 Merge branch 'staging' into core-updates
Conflicts:
	gnu/local.mk: Missing mention of gdk-pixbuf-list-dir.patch in the
	commit log really confused me here... It's from 8c6b077bfa (staging).
	gnu/packages/xorg.scm: xkeyboard-config updated both places.
2017-02-21 14:31:36 +01:00
Andy Wingo 4995ae7540 gnu: guile-next: Update to 2.1.7.
* gnu/packages/guile.scm (guile-next): Update to 2.1.7.
2017-02-21 10:18:38 +01:00
Leo Famulari f769c1d77a gnu: lcms: Specify 'cpe-name'.
* gnu/packages/ghostscript.scm (lcms)[properties]: New field.
2017-02-21 00:18:04 -05:00
Leo Famulari 05d80f0c54 gnu: imagemagick: Update to 6.9.7-9.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-9.
2017-02-20 23:31:02 -05:00
ng0 f578a41260 gnu: usbredir: Use correct url.
* gnu/packages/spice.scm (usbredir)[source]: Update repository URL.

Signed-off-by: Ben Woodcroft <donttrustben@gmail.com>
2017-02-20 21:31:26 +10:00
Efraim Flashner ab4ccc8fcf daemon: Ensure proper alignment on the stack.
* nix/libstore/build.cc (startBuilder): When calling 'clone', increase
the step to 16 and ensure it aligns properly on the stack.
2017-02-20 13:09:03 +02:00
Efraim Flashner 3b88f3767d gnu: Add bootstrap-binaries for 'aarch64-linux'.
These bootstrap-binaries were built against commit
8f8f250bdc.

* gnu/packages/bootstrap/aarch64-linux/bash,
gnu/packages/bootstrap/aarch64-linux/mkdir,
gnu/packages/bootstrap/aarch64-linux/xz,
gnu/packages/bootstrap/aarch64-linux/tar: New files.

* gnu/local.mk (bootstrap_aarch64_linuxdir)
(dist_bootstrap_aarch64_linux_DATA)
(nodist_bootstrap_aarch64_linux_DATA): New variables.
(DISTCLEANFILES): Add $(nodist_bootstrap_aarch64_linux_DATA).
(gnu/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz): New target.
* build-aux/download.scm (filename->uri): Add aarch64-linux entry.
* gnu/packages/bootstrap.scm (raw-build): Use guile-2.0.14.tar.xz on
aarch64-linux.
(glibc-dynamic-linker, %bootstrap-coreutils&co, %boostrap-binutils)
(%bootstrap-glibc, %bootstrap-gcc): Add aarch64-linux cases.
* m4/guix.m4 (GUIX_SYSTEM_TYPE): Add aarch64 case.
(GUIX_ASSERT_SUPPORTED_SYSTEM): Add aarch64-linux to supported list.
* doc/guix.texi (GNU Distribution): Add aarch64-linux to the list of
supported systems.
* tests/packages.scm (package-search-derivation, snippet): Add aarch64
case.
2017-02-20 12:58:07 +02:00
Efraim Flashner 77e1673319 daemon: Ensure proper alignment on the stack.
* nix/libstore/build.cc (startBuilder): When calling 'clone', increase
the step to 16 and ensure it aligns properly on the stack.
2017-02-20 12:58:06 +02:00
Efraim Flashner 653add37af gnu: %bootstrap-coreutils&co: Patch egrep/fgrep to work regardless of $PATH.
This is the bootstrap version of 1063d325ea

* gnu/packages/bootstrap.scm (%bootstrap-coreutils&co)[source]: Patch
the absolute location of 'grep' when called from 'egrep' or 'fgrep'.
2017-02-20 12:58:06 +02:00
Efraim Flashner d15432ca9e Merge remote-tracking branch 'origin/master' into core-updates 2017-02-20 12:56:14 +02:00
Efraim Flashner def9716890 gnu: bash: Update to patch level 12.
* gnu/packages/bash.scm (%patch-series-4.4): Add patch 12.
2017-02-20 12:35:12 +02:00
Efraim Flashner e747964420 gnu: coreutils: Don't run tests in parallel.
* gnu/packages/base.scm (coreutils)[arguments]: Add '#:parallel-tests? #f'
to address a race contition in the test suite.
2017-02-20 10:57:18 +02:00
Efraim Flashner 864738baaa gnu: libpng: Update to 1.6.28.
* gnu/packages/image.scm (libpng): Update to 1.6.28.
[source]: Remove patch.
* gnu/packages/patches/libpng-CVE-2016-10087.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-20 10:54:25 +02:00
Ricardo Wurmus 3b254d7613 gnu: ardour: Update to 5.6.
* gnu/packages/audio.scm (ardour): Update to 5.6.
2017-02-20 09:37:26 +01:00
Mark H Weaver 52d901da0c gnu: linux-libre: Update to 4.10. Keep 4.9 as longterm release.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.10.
(%linux-libre-hash): Update hash.
(linux-libre-4.9): New variable.
* gnu/packages/linux-libre-4.10-x86_64.conf,
gnu/packages/linux-libre-4.10-i686.conf: New files.
* Makefile.am (KCONFIGS): Add them.
2017-02-20 03:04:35 -05:00
Efraim Flashner 913059a120 gnu: libpng: Update source urls.
* gnu/packages/image.scm (libpng)[source]: Add 'history' location for
older versions.
2017-02-20 09:35:06 +02:00
Marius Bakke 361d982ce3 gnu: Add python-cycler.
* gnu/packages/python.scm (python-cycler, python2-cycler): New variables.
2017-02-19 23:29:57 +01:00
Marius Bakke b35f442e62 gnu: Remove xf86-video-modesetting.
This is part of xorg-server since version 1.17:

https://cgit.freedesktop.org/xorg/xserver/commit/?id=35dc7c75150733dbcef8a18b6796f49a7c48ebee

* gnu/packages/xorg.scm (xf86-video-modesetting): Remove variable.
* gnu/services/xorg.scm (xorg-configuration-file, %default-xorg-modules):
Adjust accordingly.
2017-02-19 23:29:38 +01:00
Marius Bakke 4a4fc718d0 gnu: jemalloc: Update to 4.4.0.
* gnu/packages/jemalloc.scm (jemalloc): Update to 4.4.0.
[source, home-page]: Update to current URLs.
2017-02-19 22:25:44 +01:00
Ricardo Wurmus 8071bbbcfa gnu: qtractor: Use new home page.
* gnu/packages/music.scm (qtractor)[home-page]: Use new home page.
2017-02-19 13:03:30 +01:00
Ricardo Wurmus 873253ddd3 gnu: qtractor: Update to 0.8.1.
* gnu/packages/music.scm (qtractor): Update to 0.8.1.
2017-02-19 13:03:21 +01:00
Mark H Weaver c93f50698c gnu: linux-libre: Update to 4.9.11.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.9.11.
(%linux-libre-hash): Update hash.
2017-02-18 21:46:35 -05:00
Mark H Weaver 64d385380c gnu: linux-libre@4.4: Update to 4.4.50.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.50.
2017-02-18 21:45:29 -05:00
Marius Bakke dc027d4014 gnu: python-pyicu: Fix build.
* gnu/packages/python.scm (python-pyicu, python2-pyicu)[arguments]: New
field. Add phase to delete locale-dependent test.
2017-02-19 01:20:39 +01:00
Marius Bakke 4d25c486a5 gnu: python-scikit-learn: Fix test failure.
* gnu/packages/python.scm (python-scikit-learn,
python2-scikit-learn)[arguments]: Use 'modify-phases'. Move 'check' phase
after 'install' and incorporate 'set-HOME' phase.
2017-02-19 01:19:33 +01:00
Marius Bakke 9200fe14f7 gnu: python-scipy: Declare python2-variant.
This is a followup to a50e030141.

* gnu/packages/python.scm (python-scipy)[properties]: New field.
2017-02-19 01:19:33 +01:00
Marius Bakke 2c1cad7ad2 gnu: python-flake8-polyfill: Enable tests.
* gnu/packages/python.scm (python-flake8-polyfill,
python2-flake8-polyfill)[native-inputs]: Add PYTHON-FLAKE8, PYTHON-MOCK,
PYTHON-PYCODESTYLE and PYTHON-PYTEST. New field.
[arguments]: Replace 'check' phase with custom command.
2017-02-19 01:19:33 +01:00
Marius Bakke d296d30013 gnu: python-flask-wtf: Drop failing test.
* gnu/packages/python.scm (python-flask-wtf, python2-flask-wtf)[arguments]:
Add phase to delete file that needs network access.
2017-02-19 01:19:33 +01:00
Marius Bakke fffcd8b829 gnu: python-pbkdf2: Fix tests.
* gnu/packages/python.scm (python-pbkdf2)[arguments]: Replace 'check' phase
with custom command.
2017-02-19 01:19:33 +01:00
Marius Bakke 8ef8de799f gnu: duplicity: Fix tests.
* gnu/packages/backup.scm (duplicity)[native-inputs]: Add PAR2CMDLINE.
[arguments]: Move /bin/sh substitution to 'patch-source' phase and add one file.
2017-02-19 01:19:32 +01:00
Marius Bakke a10b9810c6 gnu: python-sphinx: Propagate python-requests.
* gnu/packages/python.scm (python-sphinx)[native-inputs]: Move PYTHON-REQUESTS
to ...
[propagated-inputs]: ... here.
2017-02-19 01:19:32 +01:00
Efraim Flashner 8f8f250bdc gnu: glibc-bootstrap-system.patch: Update for glibc-2.25.
* gnu/packages/patches/glibc-bootstrap-system.patch: Revert a change
from glibc-2.25 which would require the bootstrap-glibc to require the
linux-kernel-headers.
2017-02-18 21:52:43 +02:00
Leo Famulari bd1450f1e4 gnu: ntfs-3g: Fix patch for CVE-2017-0358.
This is a followup to commit 1a82ba660e.

* gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch: Make patch apply.
2017-02-18 14:20:38 -05:00
Rodger Fox 365950ce92 gnu: pioneers: Update to 15.4.
* gnu/packages/games.scm: Update to 15.4.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-18 14:14:11 -05:00
Kei Kebreau f31bb3a0cf Revert "updated pioneers to latest version."
This reverts commit 2f7eccc048.
2017-02-18 14:13:32 -05:00
Rodger Fox 2f7eccc048 updated pioneers to latest version.
Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-18 13:07:13 -05:00
Danny Milosavljevic 27693b1e34 gnu: python-oslosphinx: Re-enable tests.
* gnu/packages/openstack.scm (python-oslosphinx): Re-enable tests.
2017-02-18 18:12:34 +01:00
Danny Milosavljevic 9c4810b47c gnu: python-oslosphinx: Update to 4.10.0.
* gnu/packages/openstack.scm (python-oslosphinx): Update to 4.10.0.
2017-02-18 16:52:26 +01:00
Danny Milosavljevic a1e3ed6e8b gnu: python-pbr: Support python-sphinx>=1.2.1.
* gnu/packages/patches/python-pbr-fix-man-page-support.patch: New file.
* gnu/packages/python.scm (python-pbr-minimal): Use the new patch file.
2017-02-18 16:43:37 +01:00
Leo Famulari f54cf6428b gnu: vdirsyncer: Use add-installed-pythonpath in the check phase.
* gnu/packages/dav.scm (vdirsyncer)[arguments]: Move the check phase
into the normal part of the build sequence and use add-installed-pythonpath.
2017-02-18 10:24:07 -05:00
Leo Famulari 945b6721eb gnu: vdirsyncer: Don't fail the test suite when the build machine is slow.
* gnu/packages/patches/vdirsyncer-test-suite-slow-machines.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/dav.scm (vdirsyncer)[source]: Use it.
2017-02-18 10:24:03 -05:00
ng0 1ba67b6286 gnu: Add emacs-dream-theme.
* gnu/packages/emacs.scm (emacs-dream-theme): New variable.
2017-02-18 14:26:30 +01:00
Nicolas Goaziou a26d6bcc53 gnu: emacs-org: Update to 20170210.
* gnu/packages/emacs.scm (emacs-org): Update to 20170210.
2017-02-18 11:16:46 +01:00
Mark H Weaver 42e721a13d gnu: webkitgtk: Update to 2.14.5.
* gnu/packages/webkit.scm (webkitgtk): Update to 2.14.5.
2017-02-18 00:53:35 -05:00
Leo Famulari fbbb1abf89 gnu: inkscape: Update to 0.92.1.
* gnu/packages/inkscape.scm (inkscape): Update to 0.92.1.
2017-02-17 17:56:36 -05:00
John Darrington 1f45f18abe installer: Aris: update synopis and description.
* gnu/packages/maths.scm (aris): Use the synopsis and description from the
web page instead of the README file.
2017-02-17 18:52:24 +01:00
John Darrington 193abc8232 gnu: Add aris.
* gnu/packages/maths.scm(aris): New variable.
2017-02-17 18:33:24 +01:00
Tobias Geerinckx-Rice 4f4bca0f10 gnu: fish: Fix build after upstream changes.
The 2.5.0 release was incorrectly packaged, then fixed in place. This is,
in a way, a follow-up to commit 89eb56f05f.
See <https://github.com/fish-shell/fish-shell/issues/3807>.

Reported by ng0 <contact.ng0@cryptolab.net>.

* gnu/packages/shells.scm (fish)[source]: Update hash.
[native-inputs]: Remove autoconf, automake, and libtool.
[arguments]: Remove ‘bootstrap’ phase.
2017-02-17 16:18:27 +01:00
Leo Famulari bef7a9a305 gnu: linux-libre@4.4: Update to 4.4.49.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.49.
2017-02-17 08:54:57 -05:00
Leo Famulari 9e276ebb8c gnu: linux-libre: Update to 4.9.10.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.9.10.
(%linux-libre-hash): Update hash.
2017-02-17 08:54:53 -05:00
Efraim Flashner b05fa64fcf gnu: %static-inputs: Use 'grep' without custom phase.
This reverts commit 1063d325ea for during
creation of the bootstrap-binaries.

* gnu/packages/make-bootstrap.scm (%static-inputs): Use a custom 'grep'
without the absolute path name in fgrep/egrep.
2017-02-17 12:45:31 +02:00
Efraim Flashner ac16cf3ece hydra: Add "aarch64-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"aarch64-linux-gnu".
2017-02-17 12:33:55 +02:00
John Darrington c5481600bb gnu: gperf: Update to 3.1
* gnu/packages/gperf.scm (gperf): Update to 3.1
2017-02-17 07:14:40 +01:00
Eric Bavier 8889a7da6f gnu: raincat: Update home-page.
* gnu/packages/games.scm (raincat)[home-page]: Update.
2017-02-16 23:33:39 -06:00
Eric Bavier 8ca2cb58e2 gnu: tomb: Upgrade to 2.3.
* gnu/packages/crypto.scm (tomb): Upgrade to 2.3.
2017-02-16 23:33:39 -06:00
Eric Bavier 8a5a50a741 gnu: swish-e: Point source and home-page to archive.org.
* gnu/packages/search.scm (swish-e)[source]: Include archive.org mirror.
[home-page]: Point to archive.org.
2017-02-16 23:33:39 -06:00
Leo Famulari 6c067a3f13 gnu: scrypt: Update to 1.2.1.
* gnu/packages/crypto.scm (scrypt): Update to 1.2.1.
2017-02-16 22:27:30 -05:00
Leo Famulari 173995453c gnu: go: Update to 1.7.5.
* gnu/packages/golang.scm (go-1.7): Update to 1.7.5.
[arguments]: Re-enable test 'TestLoadFixed'.
2017-02-16 22:10:11 -05:00
Leo Famulari b5ed0b9b95 gnu: shotwell: Update to 0.25.5.
* gnu/packages/gnome.scm (shotwell): Update to 0.25.5.
2017-02-16 18:09:40 -05:00
ng0 52ddeaa0c2 gnu: Add scsh.
* gnu/packages/shells.scm (scsh): New variable.
2017-02-16 16:08:45 -06:00
ng0 8a0c2552b4 gnu: Add scheme48-rx.
* gnu/packages/scheme.scm (scheme48-rx): New variable.
2017-02-16 15:43:56 -06:00
Leo Famulari 856b7037aa gnu: icedtea-7: Update to 2.6.9 [security fixes].
Fixes CVE-2016-{2183,5546,5547,5548,5549,5552} and
CVE-2017-{3231,3241,3252,3253,3260,3261,3272,3289}.

* gnu/packages/java.scm (icedtea-7): Update to 2.6.9.
2017-02-16 16:13:45 -05:00
Leo Famulari 96aad36f9f gnu: dbus: Update to 1.10.16.
* gnu/packages/glib.scm (dbus): Update to 1.10.16.
2017-02-16 13:49:22 -05:00
Leo Famulari c85016adcc gnu: openssl-next: Update to 1.1.0e [fixes CVE-2017-3733].
* gnu/packages/tls.scm (openssl-next): Update to 1.1.0e.
2017-02-16 11:42:36 -05:00
Manolis Ragkousis 41bfcac35c gnu: hurd: Add gnumach-source-url procedure.
* gnu/packages/hurd.scm (gnumach-source-url): New procedure.
  (gnumach-headers)[source]: Adjust accordingly.
2017-02-16 18:10:21 +02:00
ng0 e967dd9cf4 gnu: Add emacs-pretty-mode.
* gnu/packages/emacs.scm (emacs-pretty-mode): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-02-16 12:45:27 +03:00
Alex Kost 7f86a97cee gnu: magit: Update to 2.10.2.
* gnu/packages/emacs.scm (magit, emacs-magit-popup): Update to 2.10.2.
2017-02-16 12:45:27 +03:00
Leo Famulari 0172d5a12e gnu: util-linux: Update to 2.29.1.
* gnu/packages/linux.scm (util-linux): Update to 2.29.1.
2017-02-15 22:06:39 -05:00
Tobias Geerinckx-Rice f821b10190 gnu: pugixml: Update to 1.8.1.
* gnu/packages/xml.scm (pugixml): Update to 1.8.1.
[arguments]: Remove ‘chdir’ phase and allow #:out-of-source building.
Add comment about the lack of tests.
2017-02-16 00:32:16 +01:00
Tobias Geerinckx-Rice 270cdbef26 gnu: perl-xml-compile-wsdl11: Update to 3.06.
* gnu/packages/xml.scm (perl-xml-compile-wsdl11): Update to 3.06.
2017-02-16 00:32:16 +01:00
Tobias Geerinckx-Rice 24c013c06d gnu: perl-xml-compile-soap: Update to 3.21.
* gnu/packages/xml.scm (perl-xml-compile-soap): Update to 3.21.
2017-02-16 00:32:16 +01:00
Tobias Geerinckx-Rice 928bfc3d45 gnu: youtube-dl: Update to 2017.02.16.
* gnu/packages/video.scm (youtube-dl): Update to 2017.02.16.
2017-02-16 00:32:15 +01:00
Julien Lepiller 953ecc04a0 gnu: Add ocaml-ppx-compare.
* gnu/packages/ocaml.scm (ocaml-ppx-compare): New variable.
2017-02-15 20:11:01 +01:00
Julien Lepiller 9a63fef95a gnu: Add ocaml-ppx-bench.
* gnu/packages/ocaml.scm (ocaml-ppx-bench): New variable.
2017-02-15 20:10:53 +01:00
Julien Lepiller be1e892d85 gnu: Add ocaml-ppx-inline-test.
* gnu/packages/ocaml.scm (ocaml-ppx-inline-test): New variable.
2017-02-15 20:10:50 +01:00
Julien Lepiller e6515b55ea gnu: Add ocaml-ppx-type-conv.
* gnu/packages/ocaml.scm (ocaml-ppx-type-conv): New variable.
2017-02-15 20:10:47 +01:00
Julien Lepiller 505394d1fd gnu: Add ocaml-ppx-deriving.
* gnu/packages/ocaml.scm (ocaml-ppx-deriving): New variable.
2017-02-15 20:10:44 +01:00
Julien Lepiller f6dde36aeb gnu: Add ocaml-cppo.
* gnu/packages/ocaml.scm (ocaml-cppo): New variable.
2017-02-15 20:10:42 +01:00
Julien Lepiller 9e5687867d gnu: Add ocaml-ppx-driver.
* gnu/packages/ocaml.scm (ocaml-ppx-driver): New variable.
2017-02-15 20:10:39 +01:00
Julien Lepiller 567b4e0299 gnu: Add ocaml-ppx-optcomp.
* gnu/packages/ocaml.scm (ocaml-ppx-optcomp): New variable.
2017-02-15 20:10:36 +01:00
Julien Lepiller c333995063 gnu: Add ocaml-ppx-core.
* gnu/packages/ocaml.scm (ocaml-ppx-core): New variable.
2017-02-15 20:10:33 +01:00
Julien Lepiller 6bdf77a2a1 gnu: Add ocaml-fieldslib.
* gnu/packages/ocaml.scm (ocaml-fieldslib): New variable.
2017-02-15 20:10:01 +01:00
Leo Famulari 6fb9e069b0 gnu: gptfdisk: Install the documentation.
* gnu/packages/disk.scm (gptfdisk)[arguments]: Install the manpages.
2017-02-15 13:08:10 -05:00
Leo Famulari b611d01827 gnu: python-icalendar: Update to 3.11.3.
* gnu/packages/python.scm (python-icalendar): Update to 3.11.3.
2017-02-15 13:03:22 -05:00
Marius Bakke 6925cd788b gnu: python-qrcode: Disable tests.
* gnu/packages/python.scm (python-qrcode, python2-qrcode)[arguments]: New field.
2017-02-15 09:23:01 +01:00
Marius Bakke a31e2f1a56 gnu: python-sphinx-cloud-sptheme: Explicitly disable tests.
* gnu/packages/python.scm (python-sphinx-cloud-sptheme,
python2-sphinx-cloud-sptheme)[arguments]: New field.
2017-02-15 09:15:20 +01:00
Marius Bakke 5b3c3d4b5a gnu: python-sphinx-repoze-autointerface: Disable tests.
* gnu/packages/python.scm (python-sphinx-repoze-autointerface,
python2-sphinx-repoze-autointerface)[arguments]: New field.
2017-02-15 09:08:11 +01:00
Marius Bakke 9893cff376 gnu: python-sphinx-rtd-theme: Disable tests.
* gnu/packages/python.scm (python-sphinx-rtd-theme,
python2-sphinx-rtd-theme)[arguments]: New field.
2017-02-15 09:05:56 +01:00
Marius Bakke 3d2a544c69 gnu: python-sphinxcontrib-newsfeed: Disable tests.
* gnu/packages/python.scm (python-sphinxcontrib-newsfeed
python2-sphinxcontrib-newsfeed)[arguments]: New field.
2017-02-15 09:03:05 +01:00
Marius Bakke e2cb140efb gnu: python-sphinxcontrib-programoutput: Disable tests.
* gnu/packages/python.scm (python-sphinxcontrib-programoutput,
python2-sphinxcontrib-programoutput)[arguments]: New field.
2017-02-15 09:01:08 +01:00
Marius Bakke 2010af55b9 gnu: python-requests-mock: Update to 1.3.0.
* gnu/packages/openstack.scm (python-requests-mock, python2-requests-mock):
Update to 1.3.0.
2017-02-15 08:39:15 +01:00
Marius Bakke fe2ba3a888 gnu: python-tabulate: Disable tests.
* gnu/packages/python.scm (python-tabulate)[arguments]: New field.
[native-inputs]: Remove.
[source]: Remove test substitution snippet.
2017-02-15 08:28:03 +01:00
Eric Bavier 0491a3b2d6 gnu: Add qutebrowser.
* gnu/packages/web.scm (qutebrowser): New variable.
2017-02-14 21:20:37 -06:00
Eric Bavier 499991cfe8 gnu: python-pyqt: Propagate python-sip.
* gnu/packages/qt.scm (python-pyqt)[propagated-inputs]: New field.
2017-02-14 21:20:37 -06:00
Eric Bavier d8768e3172 gnu: Add python-pypeg2.
* gnu/packages/python.scm (python-pypeg2): New variable.
2017-02-14 21:20:36 -06:00
Eric Bavier 4dcb135e7c gnu: Add python-cssutils.
* gnu/packages/python.scm (python-cssutils): New variable.
(python2-cssutils)[native-inputs]: Remove unused python2-mock.
2017-02-14 21:14:02 -06:00
Tobias Geerinckx-Rice 20de37ef4d gnu: gparted: Update to 0.28.0.
* gnu/packages/disk.scm (gparted): Update to 0.28.0.
2017-02-15 01:32:32 +01:00
Ricardo Wurmus 71311e4e48 gnu: Add guildhall.
* gnu/packages/guile.scm (guildhall): New variable.
2017-02-14 22:46:58 +01:00
Efraim Flashner 300211e349 hydra: Add "aarch64-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"aarch64-linux-gnu".
2017-02-14 23:40:22 +02:00
Leo Famulari 1ae04e3511 gnu: vim: Fix CVE-2017-5953.
* gnu/packages/patches/vim-CVE-2017-5953.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/vim.scm (vim)[source]: Use it.
2017-02-14 14:24:04 -05:00
Leo Famulari 30f420c155 gnu: khal: Update to 0.9.2.
* gnu/packages/calendar.scm (khal): Update to 0.9.2.
2017-02-14 13:16:06 -05:00
Marius Bakke 619bfd811e gnu: awscli: Explicitly disable tests.
* gnu/packages/python.scm (awscli)[arguments]: New field.
[native-inputs]: Remove.
2017-02-14 16:09:49 +01:00
Marius Bakke a9c15e8b59 gnu: awscli: Update to 1.11.47.
* gnu/packages/python.scm (awscli): Update to 1.11.47.
2017-02-14 16:03:07 +01:00
Marius Bakke 0a7d96f8e4 gnu: python-botocore: Update to 1.5.10.
* gnu/packages/python.scm (python-botocore, python2-botocore): Update to 1.5.10.
2017-02-14 16:02:51 +01:00
Christopher Allan Webber a5bd6a5e15 guile-gdbm-ffi: Write to correct guile output directory and use guild.
* gnu/packages/guile.scm (guile-gdbm-ffi): Check guile for effective version
before writing to output path.  Also fixes a bug where the guild command was
not getting called, and instead was calling the internal guile compile-file
procedure.  This meant that the package produced was dependent on whatever
version of guile was powering Guix at the time.  Also set GUILE_AUTO_COMPILE
to 0 to avoid gnarly looking warnings during build.
2017-02-14 08:10:19 -06:00
Danny Milosavljevic 80345600fa build: dub-build-system: Don't use "dub run" at all.
It doesn't make sense to run non-test executables (which is what "dub run"
would do).

The "check" function already invokes "dub test" and that's enough.

* guix/build/dub-build-system.scm (build): Remove "dub run" invocation.
2017-02-14 10:18:35 +01:00
Federico Beffa 57075ade97 import: stackage: Avoid using (guix ui) in importer code.
* guix/import/stackage.scm (stackage->guix-package, stackage-lts-info-fetch):
  Raise 'message' condition instead of using 'leave' from (guix ui).
* guix/scripts/import/stackage.scm (guix-import-stackage): Handle conditions.
2017-02-14 08:38:45 +01:00
Eric Bavier 4fc282b32a gnu: netsurf: Enable tests.
* gnu/packages/patches/netsurf-longer-test-timeout.patch,
gnu/packages/patches/netsurf-y2038-tests.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/web.scm (netsurf)[source]: Use them.
[native-inputs]: Add libidn, check.
[inputs]: Add miscfiles.
[arguments]: Remove #:tests?, add #:test-target.  Add 'patch-check phase.
2017-02-13 22:28:33 -06:00
Eric Bavier 710806b57b gnu: netsurf: Use unbundled source.
* gnu/packages/patches/netsurf-system-utf8proc.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/web.scm (netsurf)[source]: Use it.  Change to unbundled source
tarball.
[native-inputs]: Add netsurf-buildsystem, nsgenbind.  Remove flex, bison.
[inputs]: Add utf8proc, libcss, libdom, libnsbmp, libnsgif, libnspsl,
libnsutils, libsvgtiny.  Remove expat, gperf.
[arguments]: Adjust #:make-flags for netsurf-buildsystem.  Delete configure
phase.  Adjust source directories.
2017-02-13 22:28:33 -06:00
Eric Bavier 1f6ec9d22d gnu: Add nsgenbind.
* gnu/packages/web.scm (nsgenbind): New variable.
2017-02-13 22:28:33 -06:00
Eric Bavier 02a7a0caf4 gnu: Add libnspsl.
* gnu/packages/web.scm (libnspsl): New variable.
2017-02-13 22:28:32 -06:00
Eric Bavier 54b7f14956 gnu: Add libnsutils.
* gnu/packages/web.scm (libnsutils): New variable.
2017-02-13 22:28:32 -06:00
Eric Bavier ea1c8b312b gnu: Add libnsgif.
* gnu/packages/web.scm (libnsgif): New variable.
2017-02-13 22:28:32 -06:00
Eric Bavier 4018a533c0 gnu: Add libnsbmp.
* gnu/packages/web.scm (libnsbmp): New variable.
2017-02-13 22:28:32 -06:00
Eric Bavier 6fae2256e9 gnu: Add libsvgtiny.
* gnu/packages/web.scm (libsvgtiny): New variable.
2017-02-13 22:28:32 -06:00
Eric Bavier ccb8829847 gnu: Add LibDOM.
* gnu/packages/web.scm (libdom): New variable.
2017-02-13 22:28:31 -06:00
Eric Bavier 15cd054296 gnu: Add perl-switch.
* gnu/packages/perl.scm (perl-switch): New variable.
2017-02-13 22:28:31 -06:00
Eric Bavier 0527b43db4 gnu: Add libcss.
* gnu/packages/web.scm (libcss): New variable.
2017-02-13 22:28:31 -06:00
Eric Bavier 5a0096a35d gnu: Add LibWapcaplet.
* gnu/packages/web.scm (libwapcaplet): New variable.
2017-02-13 22:28:31 -06:00
Eric Bavier 43bfbf1370 gnu: Add hubbub.
* gnu/packages/web.scm (hubbub): New variable.
2017-02-13 22:28:25 -06:00
Eric Bavier ef61177ddd gnu: Add libparserutils.
* gnu/packages/web.scm (netsurf-buildsystem)
(netsurf-buildsystem-arguments, libparserutils): New variables.
2017-02-13 20:59:25 -06:00
Eric Bavier 5353cea007 gnu: utf8proc: Enable tests.
* gnu/packages/textutils.scm (utf8proc)[inputs]: New field.
[arguments]: Remove '#:tests? #f'.  Add check-data phase.
2017-02-13 20:59:25 -06:00
Eric Bavier 5d230d5b46 gnu: utf8proc: Upgrade to 2.1.0.
* gnu/packages/textutils.scm (utf8proc): Upgrade to 2.1.0.
2017-02-13 20:59:25 -06:00
Eric Bavier 57c211cd71 gnu: netsurf: Upgrade to 3.6.
* gnu/packages/web.scm (netsurf): Upgrade to 3.6.
[source]: 'https' -> 'http'.  Remove modules, snippet, and patches.
[home-page]: 'https' -> 'http'.
[arguments]: Adjust source directories.
* gnu/packages/patches/netsurf-about.patch: Delete patch.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-13 20:59:19 -06:00
Marius Bakke e435af5c2a gnu: python-mako: Fix tests.
* gnu/packages/python.scm (python-mako, python2-mako)[native-inputs]: Add
PYTHON-PYTEST.
2017-02-14 00:49:49 +01:00
Marius Bakke ac72d3d2cc gnu: python-openid-teams: Disable tests.
* gnu/packages/python.scm (python-openid-teams,
python2-openid-teams)[arguments]: New field.
2017-02-14 00:41:07 +01:00
Marius Bakke 019ccdb6c8 gnu: python-openid-cla: Disable tests.
* gnu/packages/python.scm (python-openid-cla, python2-openid-cla)[arguments]:
New field.
2017-02-14 00:41:06 +01:00
Marius Bakke 23015b4fb4 gnu: python-oslosphinx: Disable tests.
* gnu/packages/openstack.scm (python-oslosphinx,
python2-oslosphinx)[arguments]: New field.
2017-02-14 00:16:23 +01:00
Ludovic Courtès b5efd14a9a gnu: guile: Update to 2.0.14.
* gnu/packages/guile.scm (guile-2.0): Update to 2.0.14
[source]: Remove 'patches'.
* gnu/packages/patches/guile-repl-server-test.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
2017-02-14 00:08:42 +01:00
Tobias Geerinckx-Rice faa9ba4653 gnu: borg: Update to 1.0.10.
* gnu/packages/backup.scm (borg): Update to 1.0.10.
2017-02-14 00:05:05 +01:00
Marius Bakke bb6043fe9f gnu: python-pygit2: Skip tests requiring network access.
* gnu/packages/python.scm (python-pygit2, python2-pygit2)[source](patches):
New field.
* gnu/packages/patches/python-pygit2-disable-network-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-02-14 00:04:59 +01:00
Marius Bakke 97b62eb0bf gnu: python-trollius-redis: Disable tests.
* gnu/packages/python.scm (python-trollius-redis,
python2-trollius-redis)[arguments]: New field.
2017-02-13 22:59:28 +01:00
Marius Bakke 424b1ae769 Merge branch 'master' into python-tests 2017-02-13 22:35:05 +01:00
Marius Bakke eae2dbd47a gnu: libwacom: Update to 0.23.
* gnu/packages/xdisorg.scm (libwacom): Update to 0.23.
2017-02-13 22:31:23 +01:00
Julien Lepiller 5220022a80 gnu: Add python-openid.
* gnu/packages/python.scm (python-openid): New variable.
2017-02-13 22:29:52 +01:00
Ricardo Wurmus 51a0887dcf gnu: gajim: Do not propagate Python packages.
* gnu/packages/messaging.scm (gajim)[propagated-inputs]: Move all inputs from
here...
[inputs]: ...to here.
2017-02-13 22:16:13 +01:00
Ricardo Wurmus f24ebd3b64 gnu: gajim: Update to 0.16.7.
* gnu/packages/messaging.scm (gajim): Update to 0.16.7.
2017-02-13 22:16:13 +01:00
Arun Isaac 85bc5434ed gnu: ffmpeg: Build with SDL support.
SDL is required for the `ffplay' executable to be built.

* gnu/packages/video.scm (ffmpeg)[inputs]: Add sdl2.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-13 20:56:02 +01:00
Marius Bakke 08f96396b6 gnu: libuv: Update to 1.11.0.
* gnu/packages/libevent.scm (libuv): Update to 1.11.0.
[home-page]: Change to new home.
2017-02-13 20:37:20 +01:00
Marius Bakke 1b0054bdee gnu: libev: Update to 4.24.
* gnu/packages/libevent.scm (libev): Update to 4.24.
2017-02-13 20:31:31 +01:00
Marius Bakke 8a68a35317 gnu: sqlite: Update to 3.17.0.
* gnu/packages/databases.scm (sqlite): Update to 3.17.0.
2017-02-13 20:16:45 +01:00
Ludovic Courtès ce8963c5b7 tests: Adjust for 'http-fetch' change in (guix import json).
This is a followup to commit 81e0bc1834.

* tests/cpan.scm ("cpan->guix-package"): Add a 'rest' argument to the
lambda that mocks 'http-fetch'.
* tests/crate.scm ("crate->guix-package"): Likewise.
* tests/gem.scm ("gem->guix-package"): Likewise.
* tests/pypi.scm ("pypi->guix-package"): Likewise.
("pypi->guix-package, wheels"): Likewise.
2017-02-13 16:04:09 +01:00
José Miguel Sánchez García 824e5fe640 gnu: Add font-google-material-design-icons.
* gnu/packages/font.scm (font-google-material-design-icons): New
variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-13 15:55:55 +01:00
José Miguel Sánchez García be4f149d29 gnu: Add simh.
* gnu/packages/simh.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add simh.scm.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-13 15:55:55 +01:00
rsiddharth 5f622de13b gnu: Add ghc-hslogger.
* gnu/packages/haskell.scm (ghc-hslogger): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-13 15:55:55 +01:00
Sergei Trofimovich 3adab88faf gnu: ghc: remove unused 'libedit' input
ghc stopped using libedit (via editline) in 2009:
    https://git.haskell.org/ghc.git/commitdiff/46aed8a4a084add708bbd119d19905105d5f0d72

* gnu/packages/haskell.scm (ghc, ghc-8): remove 'libedit' input

Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-13 15:55:55 +01:00
Ben Woodcroft ca113696d6 gnu: bundler: Update to 1.14.4.
* gnu/packages/ruby.scm (bundler): Update to 1.14.4.
2017-02-13 21:17:44 +10:00
Ludovic Courtès d2986552d1 system: Use the normalized codeset for the locale name in the examples.
* gnu/system/examples/bare-bones.tmpl <locale>: Change to "en_US.utf8".
* gnu/system/examples/desktop.tmpl <locale>: Likewise.
* gnu/system/examples/lightweight-desktop.tmpl <locale>: Likewise.
2017-02-13 10:02:54 +01:00
Ludovic Courtès 230efa876f doc: Update patch submission instructions.
* doc/contributing.texi (Submitting Patches): Add paragraph on
guix-patches@gnu.org.
2017-02-13 10:02:54 +01:00
Alex Vong ed7732bc62 gnu: lcms: Mention CVE-2016-10165.
* gnu/packages/patches/lcms-fix-out-of-bounds-read.patch: Rename to ...
* gnu/packages/patches/lcms-CVE-2016-10165.patch: ... this.
* gnu/local.mk (dist_patch_DATA): Adjust.
* gnu/packages/ghostscript.scm (lcms)[source]: Use renamed patch.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-12 22:29:36 +01:00
Alex Vong e4f43bc517 gnu: lcms: Update to 2.8.
* gnu/packages/ghostscript.scm (lcms): Update to 2.8.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-12 22:24:55 +01:00
Marius Bakke 43f10b5e74 gnu: wget: Update to 1.19.1.
* gnu/packages/wget.scm (wget): Update to 1.19.1.
2017-02-12 21:20:35 +01:00
Marius Bakke 358dae1625 gnu: i3status: Update to 2.11.
* gnu/packages/wm.scm (i3status): Update to 2.11.
2017-02-12 21:05:21 +01:00
Christopher Allan Webber b76c94e639 gnu: Add angband.
* gnu/packages/games.scm (angband): New variable.
2017-02-12 13:52:37 -06:00
Leo Famulari 83f805be02 gnu: postgresql: Update to 9.5.6.
* gnu/packages/databases.scm (postgresql): Update to 9.5.6.
2017-02-12 13:42:03 -05:00
Leo Famulari 46aa4c666e gnu: mcabber: Update to 1.0.5 [fixes CVE-2017-5604].
* gnu/packages/messaging.scm (mcabber): Update to 1.0.5.
2017-02-12 10:46:25 -05:00
Leo Famulari d6065945ff gnu: screen: Fix CVE-2017-5618.
* gnu/packages/patches/screen-CVE-2017-5618.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/screen.scm (screen)[source]: Use it.
2017-02-12 10:26:02 -05:00
Leo Famulari 6ea86d7ec3 gnu: mpd: Update to 0.20.4.
* gnu/packages/mpd.scm (mpd): Update to 0.20.4.
[native-inputs]: Add gcc-5.
2017-02-12 10:26:01 -05:00
Leo Famulari 37acc8a07b gnu: qemu: Fix CVE-2017-{5667,5898,5931}.
* gnu/packages/patches/qemu-CVE-2017-5667.patch,
gnu/packages/patches/qemu-CVE-2017-5898.patch,
gnu/packages/patches/qemu-CVE-2017-5931.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
gnu/packages/qemu.scm (qemu)[source]: Use them.
2017-02-12 10:25:53 -05:00
Efraim Flashner 2c20bf62db gnu: ffmpeg@2.8: Update to 2.8.11.
* gnu/packages/video.scm (ffmpeg@2.8): Update to 2.8.11.
2017-02-12 09:15:07 +02:00
Efraim Flashner b55b4aa8ed gnu: ffmpeg: Update to 3.2.4.
* gnu/packages/video.scm (ffmpeg): Update to 3.2.4.
2017-02-12 09:15:07 +02:00
宋文武 c32d02fe7e services: Add openvswitch-service-type.
* gnu/services/networking.scm (<openvswitch-configuration>): New record type.
(openvswitch-activation, openvswitch-shepherd-service): New procedures.
(openvswitch-service-type): New variable.
* doc/guix.texi (Networking Services): Document it.
2017-02-12 14:48:34 +08:00
宋文武 92ac2cff82 gnu: Add openvswitch.
* gnu/packages/networking.scm (openvswitch): New variable.
2017-02-12 13:08:05 +08:00
Leo Famulari 4406b6aa90 gnu: irssi: Update to 1.0.1.
* gnu/packages/irc.scm (irssi): Update to 1.0.1.
2017-02-11 22:13:40 -05:00
Ludovic Courtès a1a8b7f2e2 tests: Relax test on utmpx entries.
Partly fixes <http://bugs.gnu.org/25476>.
Reported by Paul Garlick <pgarlick@tourbillion-technology.com>.

* tests/syscalls.scm ("utmpx-entries"): Check whether ENTRY is of type
'BOOT_TIME', in which case PID may be 0.
2017-02-11 22:28:37 +01:00
Ludovic Courtès bd2337228d gnu: Add Guile-Git.
* gnu/packages/guile.scm (guile-git): New variable.
2017-02-11 22:28:37 +01:00
Ludovic Courtès 413f71f3fe gnu: libgit2: Propagate openssl and zlib.
* gnu/packages/version-control.scm (libgit2)[inputs]: Move OPENSSL
to...
[propagated-inputs]: ... here.  New field.
2017-02-11 22:28:37 +01:00
Ludovic Courtès 71e0f21781 gnu: Use 'license:' prefix in (gnu packages guile).
* gnu/packages/guile.scm: Import (guix licenses) with the 'license:'
prefix.
2017-02-11 22:28:37 +01:00
Marius Bakke 26653538c9 gnu: gtk-vnc: Update to 0.7.0 [fixes CVE-2017-{5884,5885}].
* gnu/packages/gnome.scm (gtk-vnc): Update to 0.7.0.
2017-02-11 20:12:41 +01:00
Marius Bakke f057755e6e gnu: spice-gtk: Update to 0.33.
* gnu/packages/spice.scm (spice-gtk): Update to 0.33.
[source, home-page]: Use HTTPS.
2017-02-11 20:12:41 +01:00
Marius Bakke 5e569d5c41 gnu: spice-protocol: Update to 0.12.12.
* gnu/packages/spice.scm (spice-protocol): Update to 0.12.12.
[source, home-page]: Use HTTPS.
2017-02-11 20:12:41 +01:00
Marius Bakke ae953ead0f gnu: spice: Fix CVE-2016-9577 and CVE-2016-9578.
* gnu/packages/patches/spice-CVE-2016-9577.patch,
  gnu/packages/patches/spice-CVE-2016-9578-1.patch,
  gnu/packages/patches/spice-CVE-2016-9578-2.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
* gnu/packages/spice.scm (spice)[source]: Use them.
2017-02-11 20:12:41 +01:00
Carolili dcb550e599 gnu: slurm: Update to 16.05.9.1.
* gnu/packages/parallel.scm (slurm): Update to 16.05.9.1.
 * gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch:
Removing two contribs which are added in the new version.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-11 20:12:41 +01:00
ng0 4153ef23f5 gnu: shadow: Update to 4.4.
* gnu/packages/admin.scm (shadow): Update to 4.4.
[source]: Adjust URL.
* gnu/packages/patches/shadow-4.4-su-snprintf-fix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-02-11 13:43:42 -05:00
ng0 52701a3d35 gnu: shadow: Use 'modify-phases'.
* gnu/packages/admin.scm (shadow): Use 'modify-phases'.
2017-02-11 13:43:42 -05:00
Danny Milosavljevic c6b6a74e77 gnu: python-pyodbc-c: Update to 3.1.4.
* gnu/packages/databases.scm (python-pyodbc-c): Update to 3.1.4.
2017-02-11 10:22:20 +01:00
ng0 a054777e02 gnu: Add sedsed.
* gnu/packages/admin.scm (sedsed): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-10 21:08:49 -05:00
Ludovic Courtès 340f9b9fa0 gnu: librstp: Allow tests to run.
Fixes <http://bugs.gnu.org/25669>.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>.

Before that, the sender process in test/rtpw_test.sh would try to read
words from the parent directory, and thus it would return almost
immediately (as if it had read an empty file, no error).

* gnu/packages/telephony.scm (libsrtp)[inputs]: Add PSMISC.
[arguments]: In 'patch-dictionary-location' phase, set the name of the
'FAQ' file rather than the name of its parent directory.
2017-02-10 23:39:46 +01:00
Clément Lassieur 533bc51469 tests: Add 'prosody-service-type' test.
* gnu/tests/messaging.scm: New file.
* gnu/services/messaging.scm: New exported procedure.
  (<shepherd-service>)[provision]: Add 'xmpp-daemon'.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-10 23:39:45 +01:00
Marius Bakke 8b20a4d15e gnu: virglrenderer: Update to 0.6.0 [security fixes].
Fixes CVE-2016-{10163,10214} and CVE-2017-{5580,5937}.

* gnu/packages/spice.scm (virglrenderer): Update to 0.6.0.
2017-02-10 20:16:36 +01:00
Christopher Allan Webber 2737bcff5d gnu: Add guile2.2-gdbm-ffi.
* gnu/packages/guile.scm (guile2.2-gdbm-ffi): New variable.
2017-02-10 12:42:28 -06:00
Ludovic Courtès 20c1b4b88d gnu: bash: Remove graft for CVE-2017-5932.
* gnu/packages/bash.scm (bash)[replacement]: Remove.
(bash-minimal)[replacement]: Remove.
(url-fetch/reset-patch-level, bash/fixed): Remove.
2017-02-10 17:44:31 +01:00
Ludovic Courtès 768f0ac9dd Merge branch 'master' into core-updates 2017-02-10 17:40:25 +01:00
Ludovic Courtès 955ba55c6b gnu: avahi: Add dependency on libcap.
* gnu/packages/avahi.scm (avahi)[inputs]: Add LIBCAP.
2017-02-10 17:38:59 +01:00
Alex Griffin 49dbae548e gnu: Add font-go.
* gnu/packages/fonts.scm (font-go): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-10 17:35:01 +01:00
Alex Griffin de191cafce gnu: Add font-iosevka.
* gnu/packages/fonts.scm (font-iosevka): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-10 17:35:01 +01:00
Alex Griffin 446e1d5196 gnu: Add font-comic-neue.
* gnu/packages/fonts.scm (font-comic-neue): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-10 17:35:01 +01:00
David Craven a5bc3dfeaa gnu: Add ovmf.
* gnu/packages/grub.scm (edk2-commit, edk2-version, edk2-origin, ovmf): New
  variables.
2017-02-10 17:15:35 +01:00
David Craven 1b533badfa gnu: Add seabios.
* gnu/packages/firmware.scm (seabios): New variable.
2017-02-10 17:15:35 +01:00
David Craven ce03b4535a gnu: Use 'license:' prefix in (gnu packages firmware).
* gnu/packages/firmware.scm (ath9k-htc-firmware, b43-tools,
  openfwwf-firmware): Add prefix.
2017-02-10 17:15:35 +01:00
David Craven 862e38d551 gnu: Move (gnu packages grub) and (gnu packages u-boot) ...
to (gnu packages bootloaders).

* gnu/packages/grub.scm: Rename to bootloaders.scm.
* gnu/packages/u-boot.scm: Move to bootloaders.scm.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add bootloaders.scm,
  remove grub.scm and u-boot.scm;
* gnu/system/grub.scm: Import (gnu packages bootloaders).
* gnu/system/install.scm: Import (gnu packages bootloaders).
* gnu/system/vm.scm: Import (gnu packages bootloaders).
2017-02-10 17:15:35 +01:00
David Craven 96b714f5fd gnu: Add syslinux.
* gnu/packages/grub.scm (syslinux): New variable.
2017-02-10 17:15:34 +01:00
David Craven 3f73aa1a5a gnu: Use 'license:' prefix in (gnu packages grub).
* gnu/packages/grub.scm (grub): Add prefix.
2017-02-10 17:15:29 +01:00
Kei Kebreau 29da15738c gnu: wxmaxima: Update to 16.12.2.
* gnu/packages/maths.scm (wxmaxima): Update to 16.12.2.
2017-02-10 11:02:10 -05:00
Ludovic Courtès 50b8a527ef gnu: bash: Add graft for patch #7 [fixes CVE-2017-5932].
* gnu/packages/bash.scm (bash)[replacement]: New field.
(bash-minimal): Likewise.
(url-fetch/reset-patch-level): New procedure.
(bash/fixed): New variable.
2017-02-10 16:44:57 +01:00
Ludovic Courtès afd5323378 gnu: bash: Update patch URL to 4.4.
* gnu/packages/bash.scm (patch-url): Change "43" to "44".
2017-02-10 16:44:54 +01:00
Marius Bakke d0d878493b gnu: webkitgtk: Update to 2.14.4 [security fixes].
Fixes CVE-2017-{2350,2354,2355,2356,2362,2363,2364,2365,2366,2369,2371,2373}.

* gnu/packages/webkit.scm (webkitgtk): Update to 2.14.4.
2017-02-10 16:33:33 +01:00
Marius Bakke 5c2af89985 gnu: lvm2: Update to 2.02.168.
* gnu/packages/linux.scm (lvm2): Update to 2.02.168.
2017-02-10 16:33:33 +01:00
Danny Milosavljevic 65e862d1a2 gnu: Add dub-build-system.
* guix/build-system/dub.scm: New file.
* guix/build/dub-build-system.scm: New file.
* Makefile.am (MODULES): Add them.
* doc/guix.texi: Add section for dub-build-system.
2017-02-10 16:21:50 +01:00
Danny Milosavljevic 5533071407 gnu: rdmd: Update to 2.073.0.
* gnu/packages/ldc.scm (rdmd): Remove local variable "commit".
  [version]: Modify.
  [source]: Modify.
2017-02-10 16:21:50 +01:00
Marius Bakke f3a79f88e5 gnu: grep: Update to 3.0.
* gnu/packages/base.scm (grep): Update to 3.0.
2017-02-10 16:16:17 +01:00
Clément Lassieur 01ceca2658 build: Add build-aux/ar-lib to .gitignore.
* .gitignore: Add entry for the above file which is created by './bootstrap'.

Signed-off-by: David Craven <david@craven.ch>
2017-02-10 13:39:02 +01:00
David Craven 82de2655a1 gnu: git: Add GIT_EXEC_PATH search-path-specification.
Enables git plugins to be found when in they're in the system profile.

* gnu/packages/version-control.scm (git)[native-search-paths]: Add
  GIT_EXEC_PATH.  Remove git wrapper and outdated comment.
2017-02-10 13:39:02 +01:00
David Craven 72524ae843 system: install: Add gptfdisk to installation os.
* gnu/system/install.scm (installation-os)[packages]: Add gptfdisk.
2017-02-10 13:39:02 +01:00
David Craven 6c4f7022c6 gnu: Add gnome-disk-utility.
* gnu/packages/gnome.scm (gnome-disk-utility): New variable.
2017-02-10 13:39:01 +01:00
David Craven 7b83b695d3 gnu: Add appstream-glib.
* gnu/packages/glib.scm (appstream-glib): New variable.
2017-02-10 13:39:01 +01:00
David Craven 53ff54958c gnu: Add git-crypt.
* gnu/packages/version-control.scm (git-crypt): New variable.
2017-02-10 13:39:01 +01:00
David Craven f23052a638 gnu: mutter: Update to HEAD.
* gnu/packages/gnome.scm (mutter): Update to HEAD.
  [native-inputs]: Add autoconf, automake and libtool.
  [arguments]: Add autoreconf phase.
2017-02-10 13:39:01 +01:00
David Craven 59e0bd7154 gnu: gnutls: Remove perl dependency.
* gnu/packages/tls.scm (gnutls)[inputs]: Remove perl.
2017-02-10 13:04:20 +01:00
Ben Woodcroft fa73a7c1b3 gnu: rustc: Add native-search-paths.
* gnu/packages/rust.scm (rust)[native-search-paths]: New field.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-02-10 21:54:31 +10:00
Danny Milosavljevic 836cbd9f72 gnu: ldc: Update to 1.1.0.
* gnu/packages/ldc.scm (ldc-1.1.0-beta6): Rename to...
  (ldc): ... this.
  [version]: Modify.
  [source]: Modify.
  (ldc-beta): Modify.
2017-02-10 12:13:54 +01:00
Danny Milosavljevic beffaf9a12 gnu: ldc: Rename ldc 0.17.2 to ldc-bootstrap.
* gnu/packages/ldc.scm (ldc): Rename to...
  (ldc-bootstrap): ... this.
  (ldc-1.1.0-beta6): Replace ldc by ldc-bootstrap.
  [native-inputs]: Replace ldc by ldc-bootstrap.
2017-02-10 12:13:02 +01:00
Kei Kebreau 1a82ba660e gnu: ntfs-3g: Fix CVE-2017-0358.
* gnu/packages/linux.scm (ntfs-3g)[source]: Add patch.
* gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
2017-02-09 22:27:51 -05:00
Mark H Weaver b2b02ba3ef gnu: linux-libre: Update to 4.9.9.
* gnu/packages/linux.scm (%linux-libre-version): Update to 4.9.9.
(%linux-libre-hash): Update hash.
2017-02-09 18:36:07 -05:00
Mark H Weaver 76e62ef723 gnu: linux-libre: Use %linux-libre-{version,hash} in package definition.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash): Move
above definition of 'linux-libre'.  Remove comment about avoiding minor
version bumps.
(linux-libre): Use %linux-libre-version and %linux-libre-hash to avoid
duplicate copies of that information.
2017-02-09 18:33:36 -05:00
Mark H Weaver 69ff1794b3 gnu: linux-libre@4.4: Update to 4.4.48.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.48.
2017-02-09 18:28:06 -05:00
Mathieu Othacehe c7adafa7c1 gnu: Add tlp.
* gnu/packages/linux (tlp): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-10 00:13:55 +01:00
Ludovic Courtès dc7010911d gnu: emacs: Adjust 'tramp-remote-path' for remote GuixSD machines.
* gnu/packages/emacs.scm (emacs)[source](snippet): Patch
'net/tramp-sh.el'.
2017-02-10 00:13:55 +01:00
Muriithi Frederick Muriuki 8fd6850436 gnu: Add python2-ruamel.ordereddict.
* gnu/packages/python.scm (python2-ruamel.ordereddict): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-09 23:41:24 +01:00
Muriithi Frederick Muriuki 2299b13738 gnu: Add python-pycosat.
* gnu/packages/python.scm (python-pycosat, python2-pycosat): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-09 23:41:24 +01:00
Muriithi Frederick Muriuki 2f4623dbd8 gnu: Add python-ddt.
* gnu/packages/python.scm (python-ddt, python2-ddt): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-09 23:41:23 +01:00
Muriithi Frederick Muriuki 1f42d824c1 gnu: Add python-flake8-polyfill.
* gnu/packages/python.scm (python-flake8-polyfill, python2-flake8-polyfill):
New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-09 22:54:58 +01:00
Muriithi Frederick Muriuki 1a917fc9de gnu: Add python-rst2ansi.
* gnu/packages/python.scm (python-rst2ansi): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-09 22:54:58 +01:00
Marius Bakke c09fbf2058 gnu: xf86-video-intel: Update to 2.99.917-3-e4fe79c.
* gnu/packages/xorg.scm (xf86-video-intel): Update to 2.99.917-3-e4fe79c.
2017-02-09 22:02:35 +01:00
Marius Bakke 890795c709 gnu: vte-ng: Update to 0.46.1.a.
* gnu/packages/gnome.scm (vte-ng): Update to 0.46.1.a.
2017-02-09 21:53:27 +01:00
Mathieu Lirzin 6554be68b4 git-download: Add 'git-predicate'.
* guix/git-download.scm (git-predicate): New procedure.
* gnu/packages/package-management.scm (current-guix): Use it.
(make-git-predicate): Remove.
2017-02-09 13:56:54 -06:00
Federico Beffa a4824c60ef import: hackage: Handle unknown packages gracefully.
* guix/import/hackage.scm (hackage-fetch): Add 'guard'.
2017-02-09 19:36:08 +01:00
Federico Beffa bc5844d149 import: Add stackage importer and updater.
* guix/import/stackage.scm: New file.
* guix/scripts/import/stackage.scm: New file.
* Makefile.am (MODULES): Add new files.
* guix/scripts/import.scm (importers): Add "stackage".
* guix/scripts/refresh.scm (%updaters): Add %stackage-updater.
* doc/guix.texi (Invoking 'guix import'): Document the importer.
  (Invoking 'guix refresh'): Add stackage to option --type valid values.
* guix/import/hackage.scm (guix-package->hackage-name, hackage-fetch,
  hackage-source-url, hackage-cabal-url, hackage-package?): Export them.
2017-02-09 19:36:08 +01:00
Federico Beffa 81e0bc1834 import: json: Explicitly ask for JSON data.
* guix/import/json.scm (json-fetch): Add #:headers to http-fetch call.
2017-02-09 19:36:04 +01:00
Paul Garlick 4554813936 gnu: gmsh: Propagate opencascade-oce.
* gnu/packages/maths.scm (gmsh)[propagated-inputs]: Add opencascade-oce.
[arguments]: Remove #:phases parameter for component8_in_a_box test

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-09 19:19:06 +01:00
ng0 ff71196067 gnu: libextractor: Move .a files to output "static".
* gnu/packages/gnunet.scm (libextractor): Move .a files to "static" output.
[arguments](phases): New phase for moving .a files to output "static".

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-09 12:15:28 -05:00
ng0 b0a2adddc8 gnu: libextractor: Add dependencies.
* gnu/packages/gnunet.scm (libextractor): Add dependencies:
tidy-html, libmp4v2, libsmf, bzip2.
[arguments](configure-flags): Add "--with-libtidy".
* Adjust the FIXME comment section accordingly.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-09 12:15:28 -05:00
ng0 a4f05b4620 gnu: Add libsmf.
* gnu/packages/music.scm (libsmf): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-09 12:15:28 -05:00
ng0 1ad3c7f2e6 gnu: Add tidy-html.
* gnu/packages/web.scm (tidy-html): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-09 12:15:28 -05:00
ng0 3a44c7bbdc gnu: Add libmp4v2.
* gnu/packages/video.scm (libmp4v2): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-09 12:15:28 -05:00
Efraim Flashner e77fe95097 gnu: linux-libre-headers: Update to 4.4.47.
* gnu/packages/linux.scm (linux-libre-headers): Update to 4.4.47.
2017-02-09 16:58:52 +02:00
Carlos Sánchez de La Lama 17c732295a gnu: bash-minimal: Assume getcwd works correctly when cross-compiling
* gnu/packages/bash.scm (bash-minimal): Assume getcwd works correctly
when cross compiling.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2017-02-09 16:58:51 +02:00
Marius Bakke e0c752f969 gnu: xf86-input-libinput: Update to 0.24.0.
* gnu/packages/xorg.scm (xf86-input-libinput): Update to 0.24.0.
2017-02-09 15:16:28 +01:00
Marius Bakke 233a0c9437 gnu: lua: Update to 5.3.4.
* gnu/packages/lua.scm (lua): Update to 5.3.4.
2017-02-09 14:59:11 +01:00
Marius Bakke 65064909ed gnu: libvpx: Update to 1.6.1.
* gnu/packages/video.scm (libvpx): Update to 1.6.1.
* gnu/packages/patches/libvpx-CVE-2016-2818.patch: Adjust to indentation changes.
2017-02-09 14:58:54 +01:00
Ben Woodcroft 206af46fe1 gnu: vsearch: Update to 2.4.0.
* gnu/packages/bioinformatics.scm (vsearch): Update to 2.4.0.
[source]: Convert most operations in the snippet to patch form and adjust
for 2.4.0.
* gnu/packages/patches/vsearch-unbundle-cityhash.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-02-09 21:21:29 +10:00
Carlos Sánchez de La Lama c8916c3336 gnu: bash-minimal: Assume getcwd works correctly when cross-compiling
* gnu/packages/bash.scm (bash-minimal): Assume getcwd works correctly
when cross compiling.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2017-02-09 13:05:17 +02:00
Efraim Flashner 98c8b963f4 gnu: mpv: Disable build date.
* gnu/packages/video.scm (mpv)[arguments]: Add '--disable-build-date' to
the configure-flags.
2017-02-09 12:15:05 +02:00
Efraim Flashner f4b7cb88a4 gnu: ffmpeg: Update to 3.2.3.
* gnu/packages/video.scm (ffmpeg): Update to 3.2.3.
2017-02-09 11:22:14 +02:00
Efraim Flashner 3548b83de1 gnu: isc-dhcp: Update bundled bind to 9.9.9-P6.
* gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.9-P6.
2017-02-09 10:53:52 +02:00
Marius Bakke ba8b9f8de0 gnu: databases.scm: Use license: prefix.
* gnu/packages/databases.scm (4store, gdbm, bdb, bdb-5.3, mysql, mariadb,
  postgresql, qdbm, rocksdb, sparql-query, sqlite, perl-dbi, redis,
  unixodbc, kyotocabinet, wiredtiger): Use license: prefix.
2017-02-09 00:43:44 +01:00
Marius Bakke 06a035db42 gnu: databases.scm: Sort package imports.
* gnu/packages/databases.scm (gnu): Sort module imports.
2017-02-09 00:43:05 +01:00
Marius Bakke 77e52190fa gnu: rocksdb: Update to 5.1.2.
* gnu/packages/databases.scm (rocksdb): Update to 5.1.2.
[native-inputs]: Add WHICH.
2017-02-09 00:40:35 +01:00
Marius Bakke 507809be15 gnu: weechat: Make sure it finds the correct python.
Fixes <https://bugs.gnu.org/21879>.

* gnu/packages/irc.scm (weechat)[arguments]: Drop 'set-python-file-name' phase
in favor of a 'wrap' phase.
2017-02-09 00:40:14 +01:00
Marius Bakke bafd5bea97 gnu: bind: Update to 9.10.4-P6.
* gnu/packages/dns.scm (bind): Update to 9.10.4-P6.
2017-02-09 00:32:23 +01:00
Thomas Danckaert cce0da5e8d gnu: Add vinagre.
* gnu/packages/gnome.scm (vinagre): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-02-08 16:17:05 +01:00
Thomas Danckaert 2149d3e3e5 gnu: Add freerdp.
* gnu/packages/rdesktop.scm (freerdp): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-08 16:17:05 +01:00
Ludovic Courtès 4eaac4b722 import: pypi: Correctly handle multiple-URL origins.
Fixes <https://bugs.gnu.org/25635>.
Reported by Sergei Trofimovich <slyfox@inbox.ru>.

* guix/import/pypi.scm (guix-package->pypi-name)[url->pypi-name]: New
procedure.
Rewrite body to match lists in addition to strings.
* tests/pypi.scm ("guix-package->pypi-name, several URLs"): New test.
2017-02-08 16:17:05 +01:00
Clément Lassieur 750a423996 services: shepherd: Replace spaces with hyphens in file names.
This fixes a bug whereby names of files defining services would be
invalid if 'provisions' contained more than one element.

* gnu/services/shepherd.scm (shepherd-service-file-name): Update
'match-lambda' accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-08 16:17:05 +01:00
Ludovic Courtès 387e175492 services: Add 'special-files-service-type'.
* gnu/build/activation.scm (activate-/bin/sh): Remove.
(activate-special-files): New procedure.
* gnu/services.scm (activation-script): Remove call to
'activate-/bin/sh'.
(special-files-service-type): New variable.
(extra-special-file): New procedure.
* gnu/services/base.scm (%base-services): Add SPECIAL-FILES-SERVICE-TYPE
instance.
* gnu/tests/base.scm (run-basic-test)[special-files]: New variables.
["special files"]: New test.
2017-02-08 16:17:05 +01:00
宋文武 618739b063 gnu: nix: Update to 1.11.6.
* gnu/packages/package-management.scm (nix): Update to 1.11.6.
2017-02-08 20:54:42 +08:00
Ying Huang 06d7d1190e profiles: gtk-im-modules: Fix for gtk3.
Gtk+3 now have multiple outputs, so the gtk-query-immodules-3.0 should be find
in output "bin" instead of "out".

* guix/profiles.scm (gtk-im-modules): Pass the path of gtk-query-immodules-x.x
as 'query' argument to the 'build' procedure.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-02-08 20:12:20 +08:00
ng0 6bd9ad6942 gnu: python-dateutil-2: Update to 2.5.3.
* gnu/packages/python.scm (python-dateutil-2): Update to 2.5.3.
2017-02-08 08:33:16 +01:00
Leo Famulari f0d0c5bb18 etc: The pre-push hook says which commits failed the signature check.
* etc/git/pre-push: Check each commit's signature individually so that
we can report which commits fail the check.
2017-02-08 03:42:08 +01:00
Ricardo Wurmus 4621acfd82 gnu: r: Build default packages reproducibly.
This is a follow-up to commit de643f0c15.

* gnu/packages/statistics.scm (r)[arguments]: Set the built timestamp for core
packages to the epoch; add phase "build-recommended-packages-reproducibly".
2017-02-07 20:04:49 +01:00
Danny Milosavljevic 98d403bb45 gnu: Add python-pyodbc-c.
* gnu/packages/databases.scm (python-pyodbc-c, python2-pyodbc-c):
  New variables.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-07 13:34:38 -05:00
Tobias Geerinckx-Rice 22a7abf7e5 gnu: youtube-dl: Update to 2017.02.07.
* gnu/packages/video.scm (youtube-dl): Update to 2017.02.07.
2017-02-07 18:55:46 +01:00
Tobias Geerinckx-Rice 4dcb3db0ee gnu: fonts: Use install-file where appropriate.
* gnu/packages/fonts.scm (font-wqy-microhei, font-google-roboto)[arguments]:
Substitute the simpler INSTALL-FILE for every COPY-FILE invoked with redundant
arguments.
2017-02-07 18:51:14 +01:00
Tobias Geerinckx-Rice 33a8687a2a gnu: mcelog: Update to 148.
* gnu/packages/linux.scm (mcelog): Update to 148.
2017-02-07 18:51:13 +01:00
Efraim Flashner 7ca72ec44b gnu: glibc: Add version 2.24.
* gnu/packages/base.scm (glibc-2.24): New variable.
2017-02-07 19:41:04 +02:00
Efraim Flashner 242c092745 gnu: glibc: Update to 2.25.
* gnu/packages/base.scm (glibc): Update to 2.25
2017-02-07 19:34:41 +02:00
Boskovits, Gábor 189d842257 gnu: Add lshw.
* gnu/packages/linux.scm (lshw): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-02-07 17:56:06 +01:00
Marius Bakke 0cd3e44577 gnu: grep: Update to 2.28.
* gnu/packages/base.scm (grep): Update to 2.28.
2017-02-07 17:01:23 +01:00
Ludovic Courtès d480ed7edb build: Warn about lack of substitutes for non-standard stores.
* configure.ac: Emit a warning when $storedir is not "/gnu/store".
2017-02-07 14:53:24 +01:00
Ludovic Courtès 328f7cbe43 daemon: Define 'NIX_STORE' before invoking 'guix perform-download'.
Reported by rohit yadav <rohityadav@utexas.edu>
at <https://lists.gnu.org/archive/html/guix-devel/2017-02/msg00191.html>.

This fixes a regression whereby 'guix perform-download' would always see
NIX_STORE as unset and thus use "/gnu/store", leading it to miscompute
the hydra.gnu.org content-addressed URLs when the store file name is not
"/gnu/store".

* nix/libstore/builtins.cc (builtinDownload): Add 'setenv' call for
'NIX_STORE'.
2017-02-07 14:51:17 +01:00
Ludovic Courtès ef753a1a8f gnu: grub-efi: Really build the EFI variant.
Fixes a regression introduced in
d846834fc2 where '--with-platform=efi'
would no longer be passed.

* gnu/packages/grub.scm (grub-efi)[arguments]: Provide a default value
for #:configure-flags.
2017-02-07 11:15:33 +01:00
Mark H Weaver 6f48d9db10 gnu: epiphany: Update to 3.22.6 [security update].
See <https://bugzilla.gnome.org/show_bug.cgi?id=752738>.

* gnu/packages/gnome.scm (epiphany): Update to 3.22.6.
[arguments]: Add #:configure-flags '("CFLAGS=-std=gnu99").
2017-02-06 22:25:18 -05:00
Ludovic Courtès a062b6ca99 services: bitlbee: Run in a container.
* gnu/services/networking.scm (bitlbee-shepherd-service): Wrap in
'with-imported-modules' and add 'modules' field.  Use
'make-forkexec-constructor/container' and pass #:mappings.
2017-02-07 00:08:11 +01:00
Ludovic Courtès 63302a4e55 Add (gnu build shepherd).
* gnu/build/shepherd.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-02-07 00:08:11 +01:00
Ludovic Courtès c90db25f4c linux-container: Add 'container-excursion*'.
* gnu/build/linux-container.scm (container-excursion*): New procedure.
* tests/containers.scm ("container-excursion*")
("container-excursion*, same namespaces"): New tests.
2017-02-07 00:08:10 +01:00
Ludovic Courtès b9a5efa596 services: bitlbee: Read the PID file.
* gnu/services/networking.scm (bitlbee-shepherd-service): Pass
  #:pid-file to 'make-forkexec-constructor'.
2017-02-07 00:08:10 +01:00
Ludovic Courtès f2c66fbe1f bash completion: Complete subcommands for the current word.
* etc/completion/bash/guix (_guix_complete_subcommand): Refer to
the $COMP_CWORD element instead of the last element.
2017-02-07 00:08:10 +01:00
Ludovic Courtès a93c1c5921 bash completion: Properly complete 'guix container exec'.
* etc/completion/bash/guix (_guix_complete_pid): New function.
(_guix_complete): Add case for "container".
2017-02-07 00:08:10 +01:00
Ludovic Courtès e109ed3922 bash completion: Complete file names after 'guix system COMMAND'.
* etc/completion/bash/guix (_guix_complete): When the command is
"system" and $COMP_CWORD > 2, use _guix_complete_file.
2017-02-07 00:08:10 +01:00
Ludovic Courtès 3454f7edf9 bash completion: Complete 'guix gc' with file names.
Reported by a couple of cool folks at a bar in Brussels.

* etc/completion/bash/guix (_guix_complete): Use '_guix_complete_file'
for 'guix gc'.  This fixes completion of 'guix gc -d'.
2017-02-07 00:08:10 +01:00
Ludovic Courtès 7597478e2e file-systems: Add '%network-configuration-files' and '%network-file-mappings'.
* gnu/system/file-systems.scm (%network-configuration-files)
(%network-file-mappings): New variables.
* guix/scripts/environment.scm (%network-configuration-files): Remove.
(launch-environment/container): Refer to '%network-file-mappings'
instead of calling 'filter-map'.
2017-02-07 00:08:10 +01:00
Marius Bakke a24fda8114 gnu: bdb: Correct license.
* gnu/packages/databases.scm (bdb)[license]: Replace with up-to-date
information. Move previous contents to ...
(bdb-5.3)[license]: ... here.
2017-02-06 17:33:58 +01:00
Marius Bakke 5f0f368630 gnu: dosfstools: Update to 4.1.
* gnu/packages/disk.scm (dosfstools): Update to 4.1.
[arguments]: Enable tests.
[native-inputs]: Add VIM.
2017-02-06 14:22:16 +01:00
Marius Bakke d846834fc2 gnu: grub: Update to 2.02rc1.
* gnu/packages/grub.scm (grub, grub-efi): Update to 2.02rc1.
[arguments]: Don't disable grub_func_test. Remove #:configure-flags.
2017-02-06 14:22:16 +01:00
Leo Famulari 686d425904 gnu: certbot, python-acme: Update to 0.11.1.
* gnu/packages/tls.scm (python-acme, python2-acme): Update to 0.11.1.
(certbot): Update to 0.11.1.
[version]: Use python-acme's version.
2017-02-06 13:46:45 +01:00
Leo Famulari 6edc15798d gnu: tcpdump: Fetch source from tcpdump.org.
* gnu/packages/admin.scm (tcpdump)[source]: Remove temporary alternate URL.
2017-02-06 13:08:59 +01:00
Marius Bakke 416c57f071 gnu: ddrescue: Update to 1.22.
* gnu/packages/disk.scm (ddrescue): Update to 1.22.
[home-page]: Use HTTPS.
2017-02-06 12:03:27 +01:00
Sergei Trofimovich cc1c3977d5 gnu: Add re2c.
* gnu/packages/re2c.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add re2c.scm.

CC: ng0 <contact.ng0@cryptolab.net>
Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-06 10:51:25 +01:00
Sergei Trofimovich 1ca0f20a7d config-daemon.ac: detect host AR
The problem is seen when we try to use explicit host:

    ./configure --prefix=/usr --localstatedir=/var/lib --host=x86_64-pc-linux-gnu
    make V=1

Before the change:
    ar cru libstore.a nix/libstore/libstore_a-gc.o
After the change:
    x86_64-pc-linux-gnu-ar cru libstore.a

* config-daemon.ac: use AM_PROG_AR to detect host AR

Signed-off-by: Sergei Trofimovich <slyfox@inbox.ru>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-06 10:51:25 +01:00
Ludovic Courtès 36c4917c91 linux-container: Add comment on exception handling.
* gnu/build/linux-container.scm (run-container): Add note about writing
the exceptions.
2017-02-06 10:51:25 +01:00
Ludovic Courtès 168aba2978 linux-container: Do not rely on 'isatty?'.
This avoids problems where 'isatty?' return #t but 'ttyname' fails with
ENOTTY or such.

* gnu/build/linux-container.scm (mount-file-systems): Remove call of
'isatty?'.  Directly call 'ttyname' and catch 'system-error'.
2017-02-06 10:51:25 +01:00
Danny Milosavljevic e69dc54559 gnu: xonsh: Update to 0.5.3.
* gnu/packages/shell.scm (xonsh): Update to 0.5.3.
2017-02-06 10:24:24 +01:00
Danny Milosavljevic 15308f6dc3 gnu: u-boot: Update to 2017.01.
* gnu/packages/u-boot.scm (u-boot): Update to 2017.01.
2017-02-06 10:00:24 +01:00
Danny Milosavljevic 40c4e3bbda gnu: u-boot: Use scandir.
* gnu/packages/u-boot.scm (make-u-boot-package): Modify.
2017-02-06 09:53:20 +01:00
Leo Famulari 2d92eca154 gnu: imagemagick: Update to 6.9.7-7.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-7.
2017-02-06 03:22:55 +01:00
Leo Famulari dd2c73f6a0 gnu: wget: Use libidn2.
Suggested by Efraim Flashner <efraim@flashner.co.il>.

Fixes support for internationalized domain names.

* gnu/packages/wget.scm (wget)[inputs]: Replace libidn with libidn2.
2017-02-06 02:33:39 +01:00
Leo Famulari 0418ff7a37 gnu: libidn2: Update to 0.16.
* gnu/packages/libidn.scm (libidn2): Update to 0.16.
[inputs]: Add libunistring.
2017-02-06 02:33:31 +01:00
Mark H Weaver 2b742c2bb0 gnu: linux-libre: Update to 4.9.8.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.8.
2017-02-05 01:22:44 -05:00
Mark H Weaver f719fe5219 gnu: linux-libre@4.4: Update to 4.4.47.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.47.
2017-02-05 01:20:55 -05:00
José Miguel Sánchez García d160698319 gnu: youtube-dl: Update to 2017.02.01
* gnu/packages/video.scm (youtube-dl): Update to 2017.02.01.
2017-02-04 14:53:15 +01:00
ng0 1a0a5509dd gnu: Add python-lzo.
* gnu/packages/compression.scm (python-lzo): New variable.

Co-authored-by: Danny Milosavljevic <dannym@scratchpost.org>
2017-02-04 14:45:31 +01:00
ng0 1ae60db842 gnu: Add python-lz4.
* gnu/packages/compression.scm (python-lz4): New variable.
2017-02-04 14:45:31 +01:00
Marius Bakke d6592d84ca gnu: sed: Update to 4.4.
* gnu/packages/base.scm (sed): Update to 4.4.
2017-02-04 10:49:54 +01:00
Marius Bakke 706998e73a gnu: xscreensaver: Update license URI.
* gnu/packages/xdisorg.scm (xscreensaver)[license]: Point to current URL.
2017-02-04 10:45:41 +01:00
Marius Bakke 744dcb4910 gnu: redshift: Remove uneeded input.
This is a followup to b4c400a75c.

* gnu/packages/xdisorg.scm (redshift): Remove LIBJPEG.
2017-02-04 10:43:45 +01:00
Marius Bakke 38eefbb185 gnu: wget: Update to 1.19.
* gnu/packages/wget.scm (wget): Update to 1.19.
[home-page]: Use HTTPS.
2017-02-04 10:14:43 +01:00
Ben Woodcroft 182dde82ed gnu: cddlib: Fix source URI.
* gnu/packages/maths.scm (cddlib)[source]: Update source URI.
2017-02-04 15:26:26 +10:00
Ludovic Courtès ad167d028e file-systems: Remove dependency on (guix store).
(gnu system file-systems) is used on the "build" side since commit
5970e8e248.

* gnu/system/file-systems.scm: Remove dependency on (guix store).
(%store-prefix): New procedure.
* tests/file-systems.scm ("does not pull (guix config)"): New test.
2017-02-04 02:13:43 +01:00
Ludovic Courtès cf98d342b0 activation: Set the right owner for home directories.
This fixes a regression introduced in
ae763b5b0b whereby home directories and
skeletons would be root-owned.

* gnu/build/activation.scm (copy-account-skeletons): Make 'directory' a
keyword parameter.  Add #:uid and #:gid and honor them.
[set-owner]: New procedure.
(activate-user-home): Add call to 'getpw' and 'chown'.  Pass UID and GID
to 'copy-account-skeletons'.
* gnu/tests/base.scm (run-basic-test)["skeletons in home directories"]:
Test file ownership under HOME.
2017-02-04 02:13:43 +01:00
Tobias Geerinckx-Rice 33f7b5d20e gnu: vim: Update to 8.0.0300.
* gnu/packages/vim.scm (vim): Update to 8.0.0300.
2017-02-04 00:27:44 +01:00
Efraim Flashner dfb493ceed gnu: abcde: Update to 2.8.1.
* gnu/packages/cdrom.scm (abcde): Update to 2.8.1.
2017-02-03 22:33:49 +02:00
Efraim Flashner 1ac675a583 gnu: p7zip: Fix CVE-2016-9256.
* gnu/packages/compression.scm (p7zip)[source]: Add patch.
* gnu/packages/patches/p7zip-CVE-2016-9296.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
2017-02-03 22:17:41 +02:00
Efraim Flashner b352b57655 gnu: qemu: Patch CVE-2017-{2615, 5578, 5579, 5856}.
* gnu/packages/qemu.scm (qemu)[source]: Add patches.
* gnu/packages/patches/qemu-CVE-2017-2615,
gnu/packages/patches/qemu-CVE-2017-5578,
gnu/packages/patches/qemu-CVE-2017-5579,
gnu/packages/patches/qemu-CVE-2017-5856: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
2017-02-03 21:56:35 +02:00
Thomas Danckaert 3e9750c368 gnu: Add emacs-mew.
* gnu/packages/mail.scm (emacs-mew): New variable.

Co-authored-by: Alex Kost <alezost@gmail.com>
2017-02-03 22:50:20 +03:00
Adonay Felipe Nogueira efc12a81ad gnu: abbaye: Update to 2.0.1.
* gnu/packages/games.scm: (abbaye): Update to 2.0.1.
[snippet]: Delete the bundled fonts.
[arguments]: Adjust 'patch-makefile' phase to patch only Makefile.  Add
"CC" make flag.
[inputs]: Use only required sdl2 packages.
[home-page]: Update to the new location.
[license]: Use the proper license.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-02-03 22:50:20 +03:00
Raoul Jean Pierre Bonnal c6dced88f2 gnu: Add r-rann.
* gnu/packages/statistics.scm (r-rann): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-03 14:21:22 -05:00
Raoul Jean Pierre Bonnal 37337699d7 gnu: Add r-randomforest.
* gnu/packages/statistics.scm (r-randomforest): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-03 14:12:51 -05:00
Efraim Flashner f2de078a10 gnu: git: Update to 2.11.1.
* gnu/packages/version-control.scm (git): Update to 2.11.1.
2017-02-03 19:54:30 +02:00
Efraim Flashner effd7198b9 gnu: zpaq: Tune for 'generic-armv7-a' on armhf.
* gnu/packages/compression.scm (zpaq)[arguments]: Change the CXXFLAGS so
on armhf-linux we build with '-mtune=generic-armv7-a' and not '-mtune=generic'.
2017-02-03 19:17:47 +02:00
Tobias Geerinckx-Rice 89eb56f05f gnu: fish: Update to 2.5.0.
* gnu/packages/shells.scm (fish): Update to 2.5.0.
[native-inputs]: Add autoconf, automake, and libtool.
[arguments]: Add ‘bootstrap’ phase.
2017-02-03 15:06:08 +01:00
Mark H Weaver 883aab6462 gnu: linux-libre: Update to 4.9.7.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.7.
2017-02-03 00:50:04 -05:00
Mark H Weaver 942f38ea7f gnu: linux-libre@4.4: Update to 4.4.46.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.46.
2017-02-03 00:48:55 -05:00
ng0 345504c79d gnu: Add no-more-secrets.
* gnu/packages/games.scm (no-more-secrets): New variable.

Signed-off-by: Eric Bavier <bavier@member.fsf.org>
2017-02-02 20:34:15 -06:00
Eric Bavier 2d1ac1d1b0 gnu: thefuck: Fix execution.
Follow-up to 4a6b2a21bf

* gnu/packages/admin.scm (thefuck): Fix 'inputs' -> 'native-inputs'.
2017-02-02 20:32:53 -06:00
Ludovic Courtès d2a5e6982d file-systems: Add 'file-system-mapping->bind-mount'.
* gnu/system/file-systems.scm (file-system-mapping->bind-mount): New
procedure.
* gnu/system/linux-container.scm (mapping->file-system): Remove.
(containerized-operating-system)[mapping->fs]: Use
'file-system-mapping->bind-mount' instead of 'mapping->file-system'.
* guix/scripts/environment.scm (launch-environment/container): Likewise.
2017-02-03 00:23:28 +01:00
Ludovic Courtès 0f31d4f07f gnu: guile-json: Texinfoify description.
* gnu/packages/guile.scm (guile-json)[description]: Use Texinfo markup.
2017-02-03 00:23:28 +01:00
Marius Bakke feeeee2418 gnu: gst-plugins-base: Fix build on 32bit.
* gnu/packages/patches/gst-plugins-base-fix-test-on-32bit.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gstreamer.scm (gst-plugins-base)[source]: Use it.
2017-02-02 16:55:35 +01:00
Leo Famulari e83ef684fc gnu: libevent-2.0: Include CVE IDs in patches.
* gnu/packages/patches/libevent-2.0-evdns-fix-remote-stack-overread.patch,
gnu/packages/patches/libevent-2.0-evutil-fix-buffer-overflow.patch,
gnu/packages/patches/libevent-2.0-evdns-fix-searching-empty-hostnames.patch:
Rename to ...
* gnu/packages/patches/libevent-2.0-CVE-2016-10195.patch,
gnu/packages/patches/libevent-2.0-CVE-2016-10196.patch,
gnu/packages/patches/libevent-2.0-CVE-2016-10197.patch: ... new files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/libevent.scm (libevent-2.0)[sources]: Likewise.
2017-02-02 10:52:45 -05:00
Leo Famulari e8c83d04e1 Merge branch 'master' into core-updates 2017-02-02 10:52:24 -05:00
Ricardo Wurmus de643f0c15 build: r-build-system: Use deterministic built date.
Fixes <http://bugs.gnu.org/25598>.

* guix/build/r-build-system.scm (install): Pass "--built-timestamp" option to
make build deterministic.
2017-02-02 15:20:50 +01:00
Leo Famulari 8f8d39b30c gnu: icedtea-8: Update to 3.3.0 [security fixes].
Fixes CVE-2016-{2183,5546,5547,5548,5549,5552} and
CVE-2017-{3231,3241,3252,3253,3260,3261,3272,3289}.

* gnu/packages/java.scm (icedtea-8): Update to 3.3.0.
2017-02-02 07:58:45 -05:00
Alex Kost 3e27581887 gnu: emacs-with-editor: Update to 2.5.10.
* gnu/packages/emacs.scm (emacs-with-editor): Update to 2.5.10.
2017-02-02 12:02:39 +03:00
Nicolas Goaziou 1e458a430d gnu: giac-xcas: Update to 1.2.3-19.
* gnu/packages/algebra.scm (giac-xcas): Update to 1.2.3-19.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-02 09:04:40 +01:00
Mathieu Othacehe eb122280a0 services: cuirass: Add load-path to cuirass configuration
* gnu/services/cuirass.scm (<cuirass-configuration>): Add load-path field.
(cuirass-shepherd-service): Honor it.
* doc/guix.texi (Continuous Integration): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-02 09:04:40 +01:00
Mathieu Othacehe 7a9ca44a9c gnu: cuirass: Update to 0.0.1 revision 4.
* gnu/packages/ci.scm (cuirass): Update to 0.0.1 revision 4.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-02 09:04:40 +01:00
Eric Bavier 7904f18af2 gnu: joe: remove reference to WordStar.
* gnu/packages/text-editors.scm (joe)[description]: Remove WordStar reference.
2017-02-01 19:11:46 -06:00
ng0 c000b6b10f gnu: reducelcs: Fix license.
* gnu/packages/maths.scm (reducelcs)[license]: Change to GPL3+.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-01 19:51:36 -05:00
Leo Famulari a3df7e9f86 gnu: httpd: Update to 2.4.25 [fixes CVE-2016-{0736,2161,5387,8743}].
* gnu/packages/web.scm (httpd): Update to 2.4.25.
[source]: Remove obsolete patch 'httpd-CVE-2016-8740.patch'.
* gnu/packages/patches/httpd-CVE-2016-8740.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-02-01 18:14:55 -05:00
Leo Famulari 4a6b2a21bf gnu: acme-client: Update to 0.1.16.
* gnu/packages/tls.scm (acme-client): Update to 0.1.16.
2017-02-01 18:05:01 -05:00
Clément Lassieur 60b57c3d5b gnu: magit: Update to 2.10.1.
* gnu/packages/emacs.scm (magit): Update to 2.10.1.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-01 23:53:35 +01:00
Chris Marusich a4ca4362a2 doc: Discuss encrypted swap space.
* doc/guix.texi (Preparing for Installation): Provide an example of how to
  set up (encrypted) swap space using a swap file.
  (operating-system Reference)[swap-devices]: Clarify that swap files are
  supported, too.
  (Mapped Devices): Explain how to use a mapped device with a swap file to
  encrypt swap space.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-01 23:53:35 +01:00
Chris Marusich 5e2017ed88 doc: Clarify that 'guix pull' can't be easily rolled back.
* doc/guix.texi (Invoking guix pull): Clarify that 'guix pull' can't be
  easily rolled back.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-01 23:53:35 +01:00
Ludovic Courtès 93897a4538 download: Add GNOME mirror.
* guix/download.scm (%mirrors): Add "https://download.gnome.org".
2017-02-01 23:53:35 +01:00
Huang Ying 728dc8fa29 gnu: Add polkit-gnome.
* gnu/packages/polkit.scm (polkit-gnome): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-01 23:53:35 +01:00
ng0 7596ddf3f1 gnu: Add neomutt.
* gnu/packages/mail.scm (neomutt): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-02-01 23:53:35 +01:00
Ludovic Courtès 8de3e4b35f services: Make 'static-networking' extensible.
This allows users to statically define several interfaces.

* gnu/services/networking.scm (<static-networking>)[provision]
[name-servers]: Add default values.
(static-networking-shepherd-service)
(static-networking-etc-files)
(static-networking-shepherd-services): New procedures.
(static-networking-service-type): Change to extend both
SHEPHERD-ROOT-SERVICE-TYPE and ETC-SERVICE-TYPE.
(static-networking-service): Remove default value of #:provision.
Implement using 'simple-service'.
* gnu/services/base.scm (%base-services): Replace
'static-networking-service' call with 'service' form.
* doc/guix.texi (Networking Services): Update documentation.
2017-02-01 23:53:35 +01:00
Marius Bakke fd05d7ecd9 gnu: libevent: Skip tests that fail on 32bit.
* gnu/packages/patches/libevent-2.1-skip-failing-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/libevent.scm (libevent)[source]: Use it.
2017-02-01 22:38:25 +01:00
Ricardo Wurmus 47055b273a gnu: r-edger: Add r-statmod to inputs.
* gnu/packages/bioinformatics.scm (r-edger)[propagated-inputs]: Add r-statmod.
2017-02-01 22:12:01 +01:00
Arun Isaac 5430dbd95b gnu: Add freeciv.
* gnu/packages/games.scm (freeciv): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-02-01 14:45:06 -05:00
Tobias Geerinckx-Rice 36df995c94 gnu: Add zpaq.
* gnu/packages/compression.scm (zpaq): New variable.
2017-02-01 16:13:57 +01:00
Tobias Geerinckx-Rice 814b099a20 download: Add ‘url-fetch/zipbomb’.
From this suggestion by Ludovic Courtès:
<http://lists.gnu.org/archive/html/guix-devel/2016-09/msg01983.html>

* guix/download.scm (url-fetch/zipbomb): New procedure.
2017-02-01 15:53:33 +01:00
Tobias Geerinckx-Rice 58f91e4d03 download: url-fetch/tarball: Make ‘name’ truly optional.
* guix/download.scm (url-fetch/tarbomb): Fall back to ‘file-name’ if
‘name’ is #f, like the regular ‘url-fetch’ does.
* gnu/packages/bioinformatics.scm (muscle)[source]: Remove ‘file-name’.
* gnu/packages/engineering.scm (fastcap)[source]: Likewise.
* gnu/packages/scheme.scm (scmutils)[source]: Likewise.
2017-02-01 15:53:32 +01:00
Tobias Geerinckx-Rice 61ac754453 gnu: Add nyx.
* gnu/packages/tor.scm (nyx): New variable.
2017-02-01 15:53:32 +01:00
Tobias Geerinckx-Rice 71794d7b94 gnu: tor: Use ‘license:’ prefix instead of #:select.
* gnu/packages/tor.scm (tor, torsocks, privoxy, onionshare)[license]:
Add prefix.
2017-02-01 15:53:32 +01:00
Tobias Geerinckx-Rice cf1bed97ca gnu: youtube-dl: Update to 2017.01.29.
* gnu/packages/video.scm (youtube-dl): Update to 2017.01.29.
2017-02-01 15:53:31 +01:00
Tobias Geerinckx-Rice 0bb1c35ac1 gnu: python-stem: Update to 1.5.4.
* gnu/packages/python.scm (python-stem): Update to 1.5.4.
2017-02-01 15:53:31 +01:00
Marius Bakke 3e32eeb247 gnu: gstreamer: Update to 1.10.3.
* gnu/packages/gstreamer.scm (gstreamer): Update to 1.10.3.
(gst-plugins-base): Likewise.
(gst-plugins-good): Likewise.
(gst-plugins-bad): Likewise.
(gst-plugins-ugly): Likewise.
(gst-libav): Likewise.
(python-gst): Likewise.
2017-02-01 15:16:07 +01:00
Marius Bakke b2a6310ad9 gnu: xf86-video-intel: Update to 2.99.917-2-9fe04af.
* gnu/packages/xorg.scm (xf86-video-intel): Update to 2.99.917-2-9fe04af.
2017-02-01 15:05:50 +01:00
Marius Bakke b097a3387e gnu: xkeyboard-config: Update to 2.20.
* gnu/packages/xorg.scm (xkeyboard-config): Update to 2.20.
2017-02-01 15:02:14 +01:00
Marius Bakke b1b8e8f1b2 gnu: mesa: Update to 13.0.4.
* gnu/packages/gl.scm (mesa): Update to 13.0.4.
2017-02-01 15:02:12 +01:00
Marius Bakke ac6fec05e4 gnu: fio: Enable optional helper scripts.
* gnu/packages/benchmark.scm (fio)[arguments]: Add 'patch-paths' and
'wrap-python-scripts' phases.
[inputs]: Add GNUPLOT, PYTHON-2, PYTHON2-NUMPY and PYTHON2-PANDAS.
2017-02-01 14:13:55 +01:00
Marius Bakke 5fa1683617 gnu: fio: Update to 2.17.
* gnu/packages/benchmark.scm (fio): Update to 2.17.
2017-02-01 13:52:27 +01:00
Marius Bakke d736eec2ad gnu: lftp: Update to 4.7.5.
* gnu/packages/ftp.scm (lftp): Update to 4.7.5.
[source]: Rearrange mirrors.
2017-02-01 13:52:27 +01:00
Marius Bakke 69ec039105 gnu: mumble: Update to 1.2.19.
* gnu/packages/telephony.scm (mumble): Update to 1.2.19.
2017-02-01 13:52:27 +01:00
Marius Bakke 75ba11afc2 gnu: xapian: Update to 1.4.3.
* gnu/packages/search.scm (xapian): Update to 1.4.3.
2017-02-01 13:52:27 +01:00
Danny Milosavljevic 4ae2a54df6 gnu: dtc: Update description to reference HOWTO.
* gnu/packages/u-boot.scm (dtc)[description]: Modify.
2017-02-01 13:49:55 +01:00
Ludovic Courtès 357db1f91d system: More 'file-append' instead of #~(string-append #$thing …).
* gnu/system/shadow.scm (<user-account>)[shell]: Use 'file-append'.
(%base-user-accounts): Likewise.
* gnu/system/grub.scm (%background-image): Likewise.
2017-02-01 12:36:41 +01:00
Ludovic Courtès ae763b5b0b system: Create home directories once 'file-systems' is up.
Fixes <http://bugs.gnu.org/21108>.
Reported by Andy Patterson <ajpatter@uwaterloo.ca>
and Leo Famulari <leo@famulari.name>.

* gnu/build/activation.scm (activate-users+groups)[activate-user]: Pass
  #:create-home? #t iff CREATE-HOME? and SYSTEM?.
(activate-user-home): New procedure.
* gnu/system/shadow.scm (account-shepherd-service): New procedure.
(account-service-type)[extensions]: Add SHEPHERD-ROOT-SERVICE-TYPE
extension.
* gnu/tests/base.scm (run-basic-test)["home"]
["skeletons in home directories"]: New tests.
* gnu/tests/install.scm (%separate-home-os, %separate-home-os-source)
(%test-separate-home-os): New variables.
2017-02-01 12:36:41 +01:00
Leo Famulari 524ee6c9e5 gnu: nginx: Update to 1.11.9.
* gnu/packages/web.scm (nginx): Update to 1.11.9.
2017-02-01 01:42:39 -05:00
Eric Bavier 25925725f4 gnu: mg: Upgrade to 20161005.
* gnu/packages/mg.scm (mg)[source]: Upgrade to 20161005.
[native-inputs]: Add pkg-config.
[inputs]: Add libbsd.
[arguments]: Use modify-phases.  Use #:make-flags rather than patching the
Makefile.  Install tutorial.
[description]:  Clarify relation to GNU Emacs.
2017-01-31 21:16:08 -06:00
Eric Bavier f255a6db17 gnu: Add JOE.
* gnu/packages/text-editors.scm (joe): New variable.
2017-01-31 20:26:20 -06:00
Marius Bakke e8fc1a0dcf gnu: libevent: Update to 2.1.8 [security fixes].
* gnu/packages/libevent.scm (libevent): Update to 2.1.8.
[inputs]: Change 'python-wrapper' to 'python-2'. Move 'which' to ...
[native-inputs]: ... here. New field.
(libevent-2.0): New variable.
* gnu/packages/patches/libevent-2.1-dns-tests.patch,
  gnu/packages/patches/libevent-2.0-evdns-fix-remote-stack-overread.patch
  gnu/packages/patches/libevent-2.0-evdns-fix-searching-empty-hostnames.patch
  gnu/packages/patches/libevent-2.0-evutil-fix-buffer-overflow.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/gnuzilla.scm (icecat)[inputs]: Change 'libevent' to 'libevent-2.0'.
2017-02-01 02:42:12 +01:00
Ludovic Courtès f1a892c96f lint: Use the "@" syntax for versioned packages in warnings.
* guix/scripts/lint.scm (emit-warning): Use the "@" syntax.
2017-01-31 23:51:09 +01:00
Ludovic Courtès fae88ae884 gnu: mdadm: Update to 4.0.
* gnu/packages/linux.scm (mdadm): Update to 4.0.
[arguments]: Add "CC=gcc" to #:make-flags.
2017-01-31 23:48:59 +01:00
Ludovic Courtès 4fc6985c1c gnu: parallel: Update to 20170122.
* gnu/packages/parallel.scm (parallel): Update to 20170122.
2017-01-31 23:46:34 +01:00
Ludovic Courtès 8555a609df gnu: kbd: Update to 2.0.4.
* gnu/packages/linux.scm (kbd): Update to 2.0.4.
2017-01-31 23:45:56 +01:00
Ludovic Courtès c886608e6b gnu: gdb: Update to 7.12.1.
* gnu/packages/gdb.scm (gdb): Update to 7.12.1.
2017-01-31 23:44:57 +01:00
Ludovic Courtès 5f8edd7f37 gnu: xcalc: Update to 1.0.6.
* gnu/packages/xorg.scm (xcalc): Update to 1.0.6.
2017-01-31 23:21:59 +01:00
Ludovic Courtès a43aca973e system: Introduce 'file-systems' Shepherd service.
* gnu/services/base.scm (file-system-shepherd-services): New procedure.
(file-system-service-type): Use it as the SHEPHERD-ROOT-SERVICE-TYPE
extension.
(user-processes-service-type): Change to take a single 'grace-delay'
parameter.
(user-processes-service): Remove 'file-systems' parameter.  Pass
GRACE-DELAY as the only value for the service.
* gnu/system.scm (essential-services): Adjust accordingly.
2017-01-31 23:21:59 +01:00
Ludovic Courtès 2fe4ceee18 file-systems: Do not read superblocks past the end of a device.
Fixes <http://bugs.gnu.org/25573>.
Reported by Alex Kost <alezost@gmail.com>.

* gnu/build/file-systems.scm (seek*): New procedure.
(read-superblock): Use it instead of 'seek' and ensure it returns
OFFSET.
2017-01-31 23:21:59 +01:00
Raoul Jean Pierre Bonnal 69f2b3bdf9 gnu: Add r-rhdf5. 2017-01-31 22:35:11 +01:00
Raoul Jean Pierre Bonnal d4af25b51b gnu: Add r-tximport. 2017-01-31 22:35:08 +01:00
Julien Lepiller f5c8cf3be7 gnu: Add ocaml-bin-prot.
* gnu/packages/ocaml.scm (ocaml-bin-prot): New variable.
2017-01-31 21:35:51 +01:00
Julien Lepiller f95ebba516 gnu: Add ocaml-js-build-tools.
* gnu/packages/ocaml.scm (ocaml-js-build-tools): New variable.
2017-01-31 21:35:45 +01:00
Julien Lepiller 5eed45a8d7 gnu: Add ocaml-oasis.
* gnu/packages/ocaml.scm (ocaml-oasis): New variable.
2017-01-31 21:35:42 +01:00
Julien Lepiller 77a515e9b5 gnu: Add ocaml-fileutils.
* gnu/packages/ocaml.scm (ocaml-fileutils): New variable.
2017-01-31 21:35:38 +01:00
Julien Lepiller 3763eea716 gnu: Add ocaml-expect.
* gnu/packages/ocaml.scm (ocaml-expect): New variable.
2017-01-31 21:35:35 +01:00
Julien Lepiller f8a12de1cb gnu: Add ocaml-pcre.
* gnu/packages/ocaml.scm (ocaml-pcre): New variable.
2017-01-31 21:35:32 +01:00
Julien Lepiller 0e9e94b7ff gnu: Add ocaml-batteries.
* gnu/packages/ocaml.scm (ocaml-batteries): New variable.
2017-01-31 21:35:30 +01:00
Julien Lepiller 41e8e07919 gnu: Add omake.
* gnu/packages/ocaml.scm (omake): New variable.
* gnu/packages/patches/omake-fix-non-determinism.patch: New file.
* gnu/local.mk (dist_patch_DATA): New patch.
2017-01-31 21:35:27 +01:00
Julien Lepiller c590f1ae8a gnu: Add ocamlify.
* gnu/packages/ocaml.scm (ocamlify): New variable.
2017-01-31 21:35:23 +01:00
Julien Lepiller 5d08f98d3e gnu: Add ocaml-base64.
* gnu/packages/ocaml.scm (ocaml-base64): New variable.
2017-01-31 21:34:53 +01:00
Thomas Danckaert 59ae241f71 gnu: Add xinetd.
* gnu/packages/web.scm (xinetd): New variable.
* gnu/packages/patches/xinetd-CVE-2013-4342.patch,
gnu/packages/patches/xinetd-fix-fd-leak.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add patches.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-31 15:06:19 -05:00
Ricardo Wurmus 9b11eee955 gnu: Add neovim.
* gnu/packages/vim.scm (neovim): New variable.
2017-01-31 21:01:53 +01:00
Ricardo Wurmus d9ed1779b8 gnu: Add lua5.2-lpeg.
* gnu/packages/lua.scm (lua5.2-lpeg): New variable.
2017-01-31 20:39:39 +01:00
Ricardo Wurmus cf9a788d93 gnu: Add lua5.2-bitop.
* gnu/packages/lua.scm (lua5.2-bitop): New variable.
2017-01-31 20:36:30 +01:00
Ricardo Wurmus 369ee96b69 gnu: Add lua5.2-libmpack.
* gnu/packages/serialization.scm (lua5.2-libmpack): New variable.
2017-01-31 20:36:09 +01:00
Ricardo Wurmus 8e664e7e55 gnu: Add lua-libmpack.
* gnu/packages/serialization.scm (lua-libmpack): New variable.
2017-01-31 20:35:54 +01:00
Ricardo Wurmus c57e5fd0c0 gnu: Add libmpack.
* gnu/packages/serialization.scm (libmpack): New variable.
2017-01-31 20:34:01 +01:00
Paul Garlick 8a4d14fa71 gnu: gmsh: Update to 2.16.0
* gnu/packages/maths.scm (gmsh): Update to 2.16.0

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-31 17:55:50 +01:00
Ben Woodcroft abb7eb7aca gnu: bundler: Update to 1.14.3.
* gnu/packages/ruby.scm (bundler): Update to 1.14.3.
2017-01-31 20:16:11 +10:00
ng0 249eb38965 gnu: tor: Add hardening configure-flags.
* gnu/packages/tor.scm (tor)[arguments]: Add '--enable-expensive-hardening',
'enable-gcc-hardening', '--enable-linker-hardening' to configure-flags.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-31 00:10:44 +01:00
Paul Garlick f18eded8ec tests: Really skip /var/run/utmpx test when needed.
* tests/syscalls.scm: Change 'test-ski' to 'test-skip'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-31 00:10:44 +01:00
Leo Famulari af7d72b16c gnu: tcpdump: Update to 4.9.0 [security fixes].
Fixes CVE-2016-{7922,7923,7924,7925,7926,7927,7928,7929,7930,7931,7932,7933
7934,7935,7936,7937,7938,7939,7940,7973,7974,7975,7983,7984,7985,7986,7992,7993,
8574,8575} and CVE-2017-{5202,5203,5204,5205,5341,5342,5482,5483,5484,5485,
5486}.

* gnu/packages/admin.scm (tcpdump): Update to 4.9.0.
[source]: Add alternate URL and set the file-name.
2017-01-30 15:51:32 -05:00
Leo Famulari df4a2b44d3 gnu: libpcap: Update to 1.8.1.
* gnu/packages/admin.scm (libpcap): Update to 1.8.1.
2017-01-30 14:49:42 -05:00
Marius Bakke 5a12bdaf8c gnu: bitlbee: Update to 3.5.1 [security fixes].
* gnu/packages/messaging.scm (bitlbee): Update to 3.5.1.
[source]: Remove patches.
(%bitlbee-buddy-nick-change-patch): Remove.
(%bitlbee-always-use-nicks-patch): Remove.
2017-01-30 19:48:09 +01:00
Marius Bakke d3c6ad0ab5 gnu: Add rocksdb.
* gnu/packages/databases.scm (rocksdb): New variable.
2017-01-30 16:52:29 +01:00
Marius Bakke d14ad134f1 gnu: xauth: Update to 1.0.10.
* gnu/packages/xorg.scm (xauth): Update to 1.0.10.
2017-01-30 16:17:43 +01:00
Marius Bakke b23992afb2 gnu: wayland, weston: Update to 1.12.0.
* gnu/packages/freedesktop.scm (wayland): Update to 1.12.0.
(weston): Update to 1.12.0.
[arguments]: Adjust to source file renames.
2017-01-30 16:10:12 +01:00
Marius Bakke fbb4755c8a gnu: libxkbcommon: Update to 0.7.1.
* gnu/packages/xdisorg.scm (libxkbcommon): Update to 0.7.1.
[source]: Use HTTPS.
[home-page]: Ditto.
2017-01-30 16:09:52 +01:00
Marius Bakke 737c572a2b gnu: libdrm: Update to 2.4.75.
* gnu/packages/xdisorg.scm (libdrm): Update to 2.4.75.
2017-01-30 16:04:07 +01:00
Marius Bakke 4a9c4a55ac gnu: re2: Update to 2017-01-01.
* gnu/packages/regex.scm (re2): Update to 2017-01-01.
[arguments]: End 'delete-static-library' phase on #t.
2017-01-30 14:55:10 +01:00
Federico Beffa d8e85b2032 gnu: ghc-8: Update to 8.0.2.
* gnu/packages/haskell.scm (ghc-8): Update to 8.0.2.
  [arguments]: Remove #:modules, #:imported-modules and phase
  configure-testsuite.
* gnu/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch:
  New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-01-30 14:39:35 +01:00
ng0 54052a54c1 gnu: Add reducelcs.
* gnu/packages/maths.scm (reducelcs): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-01-30 07:46:28 -05:00
Mathieu Lirzin 8efc35a890 maint: Fix invalid calls to 'info'.
* HACKING <Contributing>: Remove name of the manual from the item argument.
* README <Installation>: Likewise.
2017-01-30 13:20:13 +01:00
Roel Janssen aa3eeeb542 gnu: Add r-bsgenome-hsapiens-1000genomes-hs37d5.
* gnu/packages/bioinformatics.scm (r-bsgenome-hsapiens-1000genomes-hs37d5):
  New variable.
2017-01-30 12:11:04 +01:00
José Miguel Sánchez García 01be4f939e gnu: Add light.
* gnu/packages/linux.scm (light): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-01-30 10:52:45 +01:00
Christopher Baines c003546b0c environment: Fix setting writable? on networking related files
* guix/scripts/environment.scm (launch-environment/container): Include the
  file name in the call to string=? when deciding if the file should be
  writable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-30 10:52:45 +01:00
José Miguel Sánchez García 83421fc744 gnu: Add font-awesome.
* gnu/packages/fonts.scm (font-awesome): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-30 10:52:45 +01:00
Paul Garlick 5d4bd4cce1 gnu: Add opencascade-oce.
* gnu/packages/maths.scm (opencascade-oce): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-01-30 10:52:45 +01:00
Ludovic Courtès 0d268c5d70 store: Add 'add-data-to-store'.
* guix/serialization.scm (write-bytevector): New procedure.
(write-string): Rewrite in terms of 'write-bytevector'.
* guix/store.scm (write-arg): Add 'bytevector' case.
(add-data-to-store): New procedure, from former 'add-text-to-store'.
(add-text-to-store): Rewrite in terms of 'add-data-to-store'.
* tests/store.scm ("add-data-to-store"): New test.
2017-01-30 10:52:45 +01:00
ng0 9016dbc2bb gnu: Add catimg.
* gnu/packages/image-viewers.scm (catimg): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2017-01-29 19:42:03 -05:00
Danny Milosavljevic 4fdcc5026f gnu: Add dub.
* gnu/packages/ldc.scm (dub): New variable.
2017-01-29 23:46:33 +01:00
Leo Famulari 4bca1e7498 gnu: khal: Update to 0.9.1.
* gnu/packages/calendar.scm (khal): Update to 0.9.1.
2017-01-29 13:04:44 -05:00
Julien Lepiller 88ba7852d3 doc: Fix typo.
* doc/guix.texi (ocaml-build-system): Replace ocaml with OCaml.
2017-01-29 10:13:29 +01:00
Julien Lepiller 3184f14ad4 doc: Document ocaml-build-system.
* doc/guix.texi (Build Systems) [ocaml-build-system]: New definition.
2017-01-29 10:11:48 +01:00
Nicolas Goaziou cf95bd3a8d gnu: emacs-org: Update to 20170124.
* gnu/packages/emacs.scm (emacs-org): Update to 20170124.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-29 01:03:19 +01:00
Nicolas Goaziou 49a984ce3e gnu: wireshark: Update to 2.2.4.
* gnu/packages/networking.scm (wireshark): Update to 2.2.4.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-29 01:03:19 +01:00
Nicolas Goaziou f1fb375b21 gnu: asymptote: Update to 2.39
* gnu/packages/plotutils.scm (asymptote): Update to 2.39.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-29 01:03:19 +01:00
Tobias Geerinckx-Rice d389b6bbbc gnu: vim: Update to 8.0.0257.
* gnu/packages/vim.scm (vim): Update to 8.0.0257.
2017-01-28 22:55:10 +01:00
Clément Lassieur c631233fd4 gnu: Add GNU Freetalk.
* gnu/packages/messaging.scm (freetalk): New variable.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2017-01-28 22:22:03 +01:00
Tobias Geerinckx-Rice 09e353d846 gnu: exfat-utils: Update to 1.2.6.
* gnu/packages/mtools.scm (exfat-utils): Update to 1.2.6.
2017-01-28 21:54:58 +01:00
Tobias Geerinckx-Rice 9ff04ff725 gnu: fuse-exfat: Update to 1.2.6.
* gnu/packages/linux.scm (fuse-exfat): Update to 1.2.6.
2017-01-28 21:54:20 +01:00
Ludovic Courtès 86a6ff4bb0 build-system/python: 'package-with-explicit-python' uses 'eq?' memoization.
* guix/build-system/python.scm (package-with-explicit-python): Use
'mlambdaq' instead of 'mlambda'.  This does not change the <package>
graph and has no visible impact on performance.
2017-01-28 18:55:20 +01:00
Ludovic Courtès 3d520b5428 gnu-maintenance: 'gnu-package?' uses 'eq?' memoization.
* guix/gnu-maintenance.scm (gnu-package?): Use 'mlambdaq' instead of
'mlambda'.
2017-01-28 18:55:20 +01:00
Ludovic Courtès c9134e82fe packages: Remove 'define-memoized/v' and use 'mlambdaq' instead.
* guix/packages.scm (define-memoized/v): Remove.
(package-transitive-supported-systems): Use 'mlambdaq' instead of
'define-memoized/v'.
(package-input-rewriting)[replace]: Likewise.
2017-01-28 18:55:20 +01:00
Ludovic Courtès 55b2d92145 Use 'mlambda' instead of 'memoize'.
* gnu/packages.scm (find-newest-available-packages): Use 'mlambda'
instead of (memoize (lambda ...) ...).
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Likewise.
* guix/build-system/gnu.scm (package-with-explicit-inputs)[rewritten-input]:
Likewise.
* guix/build-system/python.scm (package-with-explicit-python)[transform]:
Likewise.
* guix/derivations.scm (derivation->string): Likewise.
* guix/gnu-maintenance.scm (gnu-package?): Likewise.
* guix/modules.scm (module-file-dependencies): Likewise.
* guix/scripts/graph.scm (standard-package-set): Likewise.
* guix/scripts/lint.scm (official-gnu-packages*): Likewise.
* guix/store.scm (store-regexp*): Likewise.
* guix/utils.scm (location): Likewise.
2017-01-28 18:55:20 +01:00
Ludovic Courtès f9704f179a Add (guix memoization).
* guix/combinators.scm (memoize): Remove.
* guix/memoization.scm: New file.
* Makefile.am (MODULES): Add it.
* gnu/packages.scm, gnu/packages/bootstrap.scm,
guix/build-system/gnu.scm, guix/build-system/python.scm,
guix/derivations.scm, guix/gnu-maintenance.scm,
guix/import/cran.scm, guix/import/elpa.scm,
guix/modules.scm, guix/scripts/build.scm,
guix/scripts/graph.scm, guix/scripts/lint.scm,
guix/store.scm, guix/utils.scm: Adjust imports accordingly.
2017-01-28 18:55:20 +01:00
Alex Kost e1a65ae57a doc: Fix typos.
Fixes a regression introduced in commit
f31f1acac2.

Reported-by roptat on #guix.

* doc/guix.texi (Invoking guix build): Use "@@" instead of "@".
2017-01-28 13:03:45 +03:00
Mathieu Othacehe c695ed3cf5 gnu: Add emacs-mu4e-alert.
* gnu/packages/emacs.scm (emacs-mu4e-alert): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-28 12:41:35 +03:00
Mathieu Othacehe 2c5e31faac gnu: Add emacs-alert.
* gnu/packages/emacs.scm (emacs-alert): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-28 12:41:35 +03:00
Mathieu Othacehe ba117841cd gnu: Add emacs-gntp.
* gnu/packages/emacs.scm (emacs-gntp): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-28 12:41:35 +03:00
Mathieu Othacehe 521f5d96f7 gnu: Add emacs-log4e.
* gnu/packages/emacs.scm (emacs-log4e): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-28 12:41:35 +03:00
Mathieu Othacehe 1e523180ae gnu: Add emacs-ht.
* gnu/packages/emacs.scm (emacs-ht): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-28 12:41:35 +03:00
Alex Kost 1c6713465f gnu: tvtime: Update to 1.0.11.
* gnu/packages/tv.scm (tvtime): Update to 1.0.11.
2017-01-28 12:41:35 +03:00
Alex Kost eccfa301f8 gnu: manaplus: Update to 1.7.1.21.
* gnu/packages/games.scm (manaplus): Update to 1.7.1.21.
2017-01-28 12:41:35 +03:00
Alex Kost f31f1acac2 doc: Fix typos.
* doc/guix.texi: Use "@" for package specifications.
2017-01-28 12:40:58 +03:00
Leo Famulari aaf111a2c4 gnu: transmission-remote-cli: Superseded by tremc.
* gnu/packages/bittorrent.scm (transmission-remote-cli)[properties]: New field.
2017-01-28 03:34:14 -05:00
Leo Famulari e906f4e116 gnu: Add tremc.
* gnu/packages/bittorrent.scm (tremc): New variable.
2017-01-28 03:34:13 -05:00
Leo Famulari a0885414f9 doc: Clarify "Installing GuixSD in a VM".
* doc/guix.texi (Installing GuixSD in a VM): Mention decompressing the
installation image.
2017-01-28 03:11:37 -05:00
Leo Famulari 4ab09ac868 gnu: ldc: Add missing patches.
This is a followup to commit 2429dde57d.

* gnu/packages/patches/ldc-1.1.0-disable-dmd-tests.patch,
gnu/packages/patches/ldc-1.1.0-disable-phobos-tests.patch: New files.
2017-01-28 03:07:57 -05:00
Leo Famulari d36b8457d0 doc: Fix networking instructions in "Installing GuixSD in a VM".
This is a followup to commit c8b543741f.

* doc/guix.texi (Installing GuixSD in a VM): Fix typo.
2017-01-28 03:00:30 -05:00
宋文武 0050876bcf gnu: assword: Wrap with the GObject typelib of GTK+.
Fixes <https://debbugs.gnu.org/25457>.

* gnu/packages/password-utils.scm (assword)[inputs]: Add 'gtk+'.
[arguments]: Add 'wrap-assword' phase.
2017-01-28 12:30:50 +08:00
宋文武 736cfc10f0 gnu: python-xdo: Hardcode the path of 'libxdo.so'.
* gnu/packages/python.scm (python-xdo)[arguments]: Add 'patch-libxdo-path'
phase.
2017-01-28 12:30:41 +08:00
宋文武 0b5e08637e gnu: python-xdo: Add 'python-six' to 'propagated-inputs'.
* gnu/packages/python.scm (python-xdo)[propagated-inputs]: New field.
2017-01-28 12:02:34 +08:00
宋文武 bd05ea41b6 gnu: gtksourceview-2: Adjust inputs.
Fixes <https://debbugs.gnu.org/25537>.

* gnu/packages/gtk.scm (gtksourceview-2): Move 'shared-mime-info' and
'xorg-server' to 'native-inputs'.  Move 'gtk+-2' to 'propagated-inputs'.
2017-01-28 11:29:12 +08:00
Muriithi Frederick Muriuki 2429dde57d gnu: Add ldc@1.1.0-beta6.
* gnu/packages/ldc.scm (ldc-1.1.0-beta6, ldc-beta): New variables.
* gnu/packages/patches/ldc-1.1.0-disable-dmd-tests.patch: New file.
* gnu/packages/patches/ldc-1.1.0-disable-phobos-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add them.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-28 01:25:55 +01:00
Carlo Zancanaro b45dbfc990 tests: Adjust pypi test to recent importer change.
This is a followup to 2f977d92d3.

* tests/pypi.scm ("pypi->guix-package"): Don't expect 'python-setuptools' in
'propagated-inputs'.
("pypi->guix-package, wheels"): Likewise.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-28 00:38:20 +01:00
Ludovic Courtès 4a780bdf1c doc: Add missing Upstart command for the binary installation.
Fixes <http://bugs.gnu.org/25551>.
Reported by Jason Self <jason@bluehome.net>.

* doc/guix.texi (Binary Installation): Add 'initctl
reload-configuration' command for Upstart.
2017-01-28 00:38:20 +01:00
Ludovic Courtès de322a5d1d doc: Add 'cups-configuration' example with 'hplip'.
* doc/guix.texi (Printing Services): Add example with 'hplip'.
2017-01-28 00:38:20 +01:00
Ludovic Courtès 3b0fcc672d packages: Add 'package-upstream-name' and use it.
* guix/packages.scm (package-upstream-name): New procedure.
* guix/gnu-maintenance.scm (gnu-package?, ftp-server/directory)
(latest-release*, latest-gnome-release)
(latest-kde-release): Use it instead of the inline expression.
2017-01-28 00:38:20 +01:00
Ludovic Courtès 21f4a7c116 import: github: Better tolerate unexpected file extensions.
* guix/import/github.scm (find-extension): Add ".tbz".
(updated-github-url): When 'find-extension' returns #f, use "" for EXT.
2017-01-28 00:38:20 +01:00
Ludovic Courtès 6715e1ff2e gnu-maintenance: 'gnu-package?' ignores invalid URLs.
* guix/gnu-maintenance.scm (gnu-package?)[gnu-home-page?]: Add '>>'
threading macro and use it.
2017-01-28 00:38:20 +01:00
Ludovic Courtès 38cb4766d8 gnu: emacs-emms: Add 'upstream-name' property.
* gnu/packages/emacs.scm (emms)[properties]: New field.
2017-01-28 00:38:20 +01:00
Ludovic Courtès 2e2cf9a3bd gnu-maintenance: GNU updater handles gnu.org-hosted Emacs packages.
* guix/gnu-maintenance.scm (pure-gnu-package?): If an "emacs-" package
matches 'gnu-hosted?', return true.
(gnu-hosted?): New procedure.
2017-01-28 00:38:20 +01:00
Ludovic Courtès b03218d532 gnu-maintenance: Honor 'upstream-name' property in GNU updater.
* guix/gnu-maintenance.scm (gnu-package?): Honor the 'usptream-name'
property of PACKAGE.
(ftp-server/directory): Likewise.
2017-01-28 00:38:19 +01:00
Tobias Geerinckx-Rice d61b2482df gnu: offlineimap: Update to 7.0.13.
* gnu/packages/mail.scm (offlineimap): Update to 7.0.13.
2017-01-27 21:05:57 +01:00
Tobias Geerinckx-Rice eb714a10fa gnu: btrfs-progs: Update to 4.9.1.
* gnu/packages/linux.scm (btrfs-progs): Update to 4.9.1.
2017-01-27 17:18:04 +01:00
ng0 a74b49765b Update .mailmap entries for ng0.
* .mailmap: Update entries for ng0.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2017-01-27 15:04:01 +01:00
Ricardo Wurmus 43337a733f gnu: extremetuxracer: Update to 0.7.4.
* gnu/packages/games.scm (extremetuxracer): Update to 0.7.4.
2017-01-27 11:30:35 +01:00
Ludovic Courtès d9b4cbc2a1 gnu: bash: Do not retain dependency on Coreutils.
Previously the "include" output of BASH-FINAL would refer to
'bootstrap-binaries' via 'Makefile.inc'.

* gnu/packages/bash.scm (bash)[arguments]: In 'move-development-files'
phase, remove absolute file name of 'install' from the 'INSTALL'
variable in 'Makefile.inc'.
* gnu/packages/commencement.scm (bash-final)[arguments]: Pass
 #:disallowed-references.
2017-01-27 09:52:26 +01:00
Manolis Ragkousis 82a7a8c667 gnu: coreutils: Fix cross-compilation.
* gnu/packages/patches/coreutils-fix-cross-compilation.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (coreutils)[source]: Use it.
2017-01-27 10:19:25 +02:00
Mark H Weaver 88dbf70f29 gnu: linux-libre: Update to 4.9.6.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.6.
2017-01-26 21:49:01 -05:00
Mark H Weaver e1157d69f4 gnu: linux-libre@4.4: Update to 4.4.45.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.45.
2017-01-26 21:47:05 -05:00
Troy Sankey cda0ef045f gnu: pius: Update to 2.2.3.
* gnu/packages/gnupg.scm (pius): Update to 2.2.3.
[source]: Switch back to using the tarball release.
[arguments]: End 'set-gpg-file-name' phase on #t.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-27 01:29:11 +01:00
Carlo Zancanaro 95757d8999 gnu: kakoune: Move reproducibility substitution to source snippet.
* gnu/packages/text-editors.scm (kakoune)[arguments]: Move substitution to ...
[source]: ... here.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-27 01:28:36 +01:00
Leo Famulari ef00f3ebae gnu: mupdf, cups-filters: Incorporated grafted changes.
* gnu/packages/pdf.scm (mupdf)[replacement]: Remove field.
[source]: Add 'mupdf-mujs-CVE-2016-10132.patch' and
'mupdf-mujs-CVE-2016-10133.patch'.
(mupdf/fixed): Remove variable.
* gnu/packages/cups.scm (cups-filters)[replacement]: Remove field.
(mupdf/fixed-instead-of-mupdf),(cups-filters/fixed): Remove variables.
2017-01-26 18:56:11 -05:00
Leo Famulari 70852355e6 gnu: openssl-next: Update to 1.1.0d [fixes CVE-2017-{3730, 3731, 3732}].
* gnu/packages/tls.scm (openssl-next): Update to 1.1.0d.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-26 22:26:20 +01:00
Leo Famulari 544db93caf gnu: openssl: Replace with openssl-1.0.2k [security fixes].
Fix CVE-2016-7055 and CVE-2017-{3731,3732}.

* gnu/packages/tls.scm (openssl)[replacement]: New field.
(openssl-1.0.2k): New variable.
(openssl-next)[replacement]: New field.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-26 22:26:12 +01:00
Marius Bakke 5a64a79131 utils: Add helper method to make files writable.
* gnu/build/activation.scm (make-file-writable): Move this to ...
* guix/build/utils.scm (make-file-writable): ... here. Export it.
* guix/build/gnu-build-system.scm (strip): Use it.
2017-01-26 22:19:16 +01:00
Marius Bakke 14551e073f gnu: pkg-config: Update to 0.29.1.
* gnu/packages/pkg-config.scm (%pkg-config): Update to 0.29.1.
[home-page]: Use HTTPS.
2017-01-26 22:14:42 +01:00
Marius Bakke 264ccbb31e gnu: text-editors.scm: Fix imports.
This is a followup to 5613ea79fc.

* gnu/packages/text-editors.scm: Import (gnu packages terminals).
2017-01-26 22:12:13 +01:00
Ludovic Courtès 1d636d6319 build-system/gnu: Add 'reset-gzip-timestamps' phase.
* guix/build/gnu-build-system.scm (reset-gzip-timestamps): New
procedure.
(%standard-phases): Add it.
2017-01-26 22:05:49 +01:00
Ludovic Courtès 95e7be9728 utils: Add 'gzip-file?' and 'reset-gzip-timestamp'.
* guix/build/utils.scm (%gzip-magic-bytes): New variable.
(gzip-file?, reset-gzip-timestamp): New procedures.
2017-01-26 21:58:37 +01:00
Carlo Zancanaro 5613ea79fc gnu: Add kakoune.
* gnu/packages/text-editors.scm (kakoune): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-26 21:16:57 +01:00
Tobias Geerinckx-Rice 5bbb224916 gnu: python-pbr: Update to 1.10.0.
* gnu/packages/python.scm (python-pbr): Update to 1.10.0.
2017-01-26 21:05:06 +01:00
Tobias Geerinckx-Rice 0e6df70b6a gnu: python-wheel: Update to 0.30.0a0.
* gnu/packages/python.scm (python-wheel): Update to 0.30.0a0.
2017-01-26 21:05:05 +01:00
Tobias Geerinckx-Rice 60a8be3a56 gnu: awscli: Update to 1.11.43.
* gnu/packages/python.scm (awscli): Update to 1.11.43.
[home-page]: Use HTTPS.
2017-01-26 21:05:05 +01:00
Tobias Geerinckx-Rice d338ff580d gnu: python-acme: Update to 0.10.2.
* gnu/packages/tls.scm (python-acme): Update to 0.10.2.
2017-01-26 21:05:05 +01:00
Tobias Geerinckx-Rice 80968df0d0 gnu: certbot: Update to 0.10.2.
* gnu/packages/tls.scm (certbot): Update to 0.10.2.
[description]: Use present tense; expand acronyms.
2017-01-26 21:05:04 +01:00
Tobias Geerinckx-Rice 28576403af gnu: python-certifi: Update to 2017.1.23.
* gnu/packages/python.scm (python-certifi): Update to 2017.1.23.
[arguments]: Remove: run tests if they're ever added.
[home-page]: Fix or update.
2017-01-26 21:05:04 +01:00
John Darrington fc12bc3099 gnu: Add xcalc.
* gnu/packages/xorg.scm (xcalc): New variable.
2017-01-26 19:45:22 +01:00
Marius Bakke 9d58741a50 gnu: xf86-input-wacom: Update to 0.34.0.
* gnu/packages/xdisorg.scm (xf86-input-wacom): Update to 0.34.0.
2017-01-26 17:12:32 +01:00
Marius Bakke 602d70f31e gnu: dnscrypt-proxy: Update to 1.9.4.
* gnu/packages/dns.scm (dnscrypt-proxy): Update to 1.9.4.
2017-01-26 16:27:07 +01:00
Ricardo Wurmus 0db2ff65e7 bournish: Extend 'rm' command.
* guix/build/bournish.scm (rm-command): New procedure.
(%commands): Use it.
* tests/bournish.scm: Add tests for "rm" and "rm -r".
2017-01-26 13:49:56 +01:00
Carlo Zancanaro 2f977d92d3 import: pypi: Don't add setuptools to propagated-inputs.
* guix/import/pypi.scm (compute-inputs): Don't add setuptools to the imported
  package's propagated-inputs.
2017-01-26 13:44:31 +01:00
Ludovic Courtès 0363474a0b build-system/gnu: 'strip' phase now skips symlinks.
This avoids a situation where the "debug" output would contain separate
(and different) .debug files for "libfoo.so" and "libfoo.so.0.0", even
though "libfoo.so" is actually a symlink to "libfoo.so.0.0".

* guix/build/gnu-build-system.scm (strip): Remove 'file-exists?' call in
'for-each' lambda.  Pass a predicate to 'find-files' to restrict the
result to regular files.
2017-01-26 11:29:38 +01:00
Mathieu Othacehe db6afe387a copy: Use userauth-public-key/auto! for ssh authentification.
* guix/scripts/copy.scm (open-ssh-session): Replace userauth-agent! by
  userauth-public-key/auto!. This way, if ssh-agent is not run,
  default ssh key (~/.ssh/id_rsa) will be used as a fallback.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-26 11:26:24 +01:00
Tobias Geerinckx-Rice ec8fdd3bf8 gnu: wine: Update to 2.0.
* gnu/packages/wine.scm (wine): Update to 2.0.
2017-01-26 08:52:06 +01:00
Tobias Geerinckx-Rice eff8d773d6 gnu: python-mistune: Fix source URI.
* gnu/packages/python.scm (python-mistune)[source]: Use pypi-uri.
2017-01-26 08:15:09 +01:00
Tobias Geerinckx-Rice 911a8fafb2 gnu: python-redis: Update to 2.10.5.
* gnu/packages/python.scm (python-redis): Update to 2.10.5.
[source]: Use pypi-uri.
2017-01-26 08:07:03 +01:00
Leo Famulari 9b9e147117 gnu: gnutls: Update to 3.5.8.
* gnu/packages/tls.scm (gnutls): Update to 3.5.8.
2017-01-26 00:28:43 -05:00
Ben Woodcroft bfaf8efd74 gnu: ruby-minitar: Update to 0.5.4-1.e25205ec.
Fixes the security-related issue reported at
http://seclists.org/oss-sec/2017/q1/178.

* gnu/packages/ruby.scm (ruby-minitar): Update to 0.5.4-1.e25205ec.
[source]: Use GitHub URL.
2017-01-26 08:15:22 +10:00
Leo Famulari c134959b96 gnu: gd: Incorporate grafted changes.
* gnu/packages/gd.scm (gd)[replacement]: Remove field.
[source]: Update to 2.2.4. Remove patches 'gd-CVE-2016-7568.patch' and
'gd-CVE-2016-8670.patch'.
[arguments]: New field.
(gd-2.2.4): Remove variable.
* gnu/packages/patches/gd-CVE-2016-7568.patch,
gnu/packages/patches/gd-CVE-2016-8670.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-01-25 13:37:02 -05:00
Leo Famulari 4158b1d123 gnu: lcms: Incorporate grafted patch.
* gnu/packages/ghostscript.scm (lcms)[replacement]: Remove field.
[source]: Add patch 'lcms-fix-out-of-bounds-read.patch'.
(lcms/fixed): Remove variable.
2017-01-25 13:23:26 -05:00
Leo Famulari 0086496042 gnu: tcsh: Incorporate grafted patch.
* gnu/packages/shells.scm (tcsh)[replacement]: Remove field.
[source]: Add patch 'tcsh-fix-out-of-bounds-read.patch'.
(tcsh/fixed): Remove variable.
2017-01-25 13:23:26 -05:00
Leo Famulari 66707558b6 gnu: openjpeg: Incorporate grafted changes.
* gnu/packages/image.scm (openjpeg)[replacement]: Remove field.
[source]: Update to 2.1.2. Add patches
'openjpeg-CVE-2016-9850-CVE-2016-9851.patch' and
'openjpeg-CVE-2016-9572-CVE-2016-9573.patch'.
(openjpeg-1)[replacement]: Remove field.
(openjpeg-2.1.2): Remove variable.
2017-01-25 13:23:26 -05:00
Leo Famulari 29705bc29f gnu: libtiff: Incorporate grafted patches.
* gnu/packages/image.scm (libtiff)[replacement]: Remove field.
[source]: Add patches from libtiff/fixed.
(libtiff/fixed): Remove variable.
2017-01-25 13:23:26 -05:00
Leo Famulari 9b1bb70904 gnu: libpng: Incorporate grafted patch.
* gnu/packages/image.scm (libpng)[replacement]: Remove field.
[source]: Add patch 'libpng-CVE-2016-10087.patch'.
(libpng-1.2)[replacement]: Remove field.
(libpng/fixed): Remove variable.
2017-01-25 13:23:25 -05:00
Leo Famulari 678dd8a5ed gnu: curl: Incorporate grafted changes.
* gnu/packages/curl.scm (curl)[replacement]: Remove field.
(curl-7.52.1): Remove variable.
2017-01-25 13:23:25 -05:00
Leo Famulari 2663c38826 gnu: libxslt: Incorporate grafted patch.
* gnu/packages/xml.scm (libxslt)[replacement]: Remove field.
[source]: Add patch 'libxslt-CVE-2016-4738.patch'.
(libxslt/fixed): Remove variable.
2017-01-25 13:23:25 -05:00
Leo Famulari e9f62e527e gnu: libxml2: Incorporate grafted patches.
* gnu/packages/xml.scm (libxml2)[replacement]: Remove field.
[source]: Add patches 'libxml2-CVE-2016-4658.patch' and
'libxml2-CVE-2016-5131.patch'.
(python-libxml2)[replacement]: Remove field.
(libxml2/fixed): Remove variable.
2017-01-25 13:23:21 -05:00
Mathieu Othacehe 70dfa4e07a services: Export guix-configuration getters.
* gnu/services/base.scm (guix-configuration-*): Export.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-25 19:04:21 +01:00
Leo Famulari d123f2f991 Merge branch 'master' into core-updates 2017-01-25 12:42:39 -05:00
Thomas Danckaert 864042c5c5 gnu: Add stunnel.
* gnu/packages/web.scm (stunnel): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-25 14:30:36 +01:00
Christopher Baines 0ca575f3bb container: Pass through TERM when calling exec.
* guix/scripts/container/exec.scm (guix-container-exec): Capture the value of
  the TERM environment variable, and pass it through to the container.  This
  means some applications now work where they did not before (e.g. htop), and
  others have more functionality, providing that the terminal was capable of
  enabling that functionality in the first place.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-01-25 14:27:31 +01:00
Clément Lassieur e57bd0bed8 services: Fix 'mkdir-p' in activation scripts.
* gnu/services/cups.scm (%cups-activation): Import (guix build utils).
* gnu/services/mail.scm (opensmtpd-activation): Idem.
* gnu/services/networking.scm (ntp-service-activation): Idem.
* gnu/services/spice.scm (spice-vdagent-activation): Idem.
* gnu/services/ssh.scm (openssh-activation): Idem.
  (dropbear-activation): Idem.
* gnu/services/vpn.scm (%openvpn-activation): Idem.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-25 14:05:37 +01:00
Danny Milosavljevic a282d7ff17 gnu: python-2.7: Enable UCS-4 Unicode encoding.
* gnu/packages/python.scm (python-2.7)[arguments]: Modify.
2017-01-25 11:55:10 +01:00
Ludovic Courtès 482fda2729 grafts: Do not pull derivation outputs not depended on.
Fixes <http://bugs.gnu.org/24886>.

Previously, the grafting derivation of, say, brdf-explorer would pull in
qt:doc even though brdf-explorer depends only on qt:out, not qt:doc.

* guix/grafts.scm (with-cache): Use 'vhash-assoc' and 'vhash-cons'
instead of 'vhash-assq' and 'vhash-consq'.
(cumulative-grafts): Pass #:outputs to 'graft-derivation/shallow'.  Use
OUTPUTS instead of (derivation-output-names drv).
(graft-derivation): Add #:outputs parameter; pass it to
'cumulative-grafts'.
* tests/grafts.scm (make-derivation-input): New variable.
("graft-derivation, replaced derivation has multiple outputs"): Make
sure P2:zzz is not part of the outputs of P3D.
("graft-derivation with #:outputs")
("graft-derivation, unused outputs not depended on"): New tests.
2017-01-25 11:04:25 +01:00
Mark H Weaver ad91454281 gnu: icecat: Add more fixes from upstream mozilla-esr45.
Includes fixes for CVE-2017-5373, CVE-2017-5375, CVE-2017-5376, CVE-2017-5378,
CVE-2017-5380, CVE-2017-5383, CVE-2017-5386, CVE-2017-5390, and CVE-2017-5396.

* gnu/packages/gnuzilla.scm (icecat)[source]: Rename existing patches to
reflect newly announced CVE assignments.  Add selected fixes from upstream
mozilla-esr45.
2017-01-25 02:23:15 -05:00
Marius Bakke 5e217a8b4b gnu: python-debian: Fix URL.
* gnu/packages/python.scm (python-debian)[source]: Use 'pypi-uri'.
2017-01-25 01:11:57 +01:00
Tobias Geerinckx-Rice a5dee1ac3a gnu: emacs-seq: Update to 2.19.
* gnu/packages/emacs.scm (emacs-seq): Update to 2.19.
2017-01-24 23:58:35 +01:00
Tobias Geerinckx-Rice cd4d96b808 gnu: emacs-spinner: Update to 1.7.3.
* gnu/packages/emacs.scm (emacs-spinner): Update to 1.7.3.
2017-01-24 23:57:53 +01:00
Tobias Geerinckx-Rice 6b7f909f1e gnu: emacs-auctex: Update to 11.90.0.
* gnu/packages/emacs.scm (emacs-auctex): Update to 11.90.0.
2017-01-24 23:27:08 +01:00
Tobias Geerinckx-Rice 3388438538 gnu: trash-cli: Update to 0.17.1.14.
* gnu/packages/shellutils.scm (trash-cli): Update to 0.17.1.14.
2017-01-24 23:27:07 +01:00
Tobias Geerinckx-Rice e80aaeb4ad gnu: python2-pysqlite: Update to 2.8.3.
* gnu/packages/python.scm (python2-pysqlite): Update to 2.8.3.
2017-01-24 23:27:07 +01:00
Tobias Geerinckx-Rice 49d5e338d6 gnu: python-cov-core: Fix & improve synopsis & description.
* gnu/packages/python.scm (python-cov-core)[synopsis]: Capitalise and add
‘coverage’ key-word.
[description]: Use @code.
2017-01-24 23:27:07 +01:00
Tobias Geerinckx-Rice b165c215e1 gnu: python-email-validator: Update to 1.0.2.
* gnu/packages/python.scm (python-email-validator): Update to 1.0.2.
2017-01-24 23:27:06 +01:00
Tobias Geerinckx-Rice 08b813366e gnu: python-mistune: Update to 0.7.3.
* gnu/packages/python.scm (python-mistune): Update to 0.7.3.
2017-01-24 23:27:06 +01:00
Tobias Geerinckx-Rice e6ace98d10 gnu: python-tabulate: Update to 0.7.7.
* gnu/packages/python.scm (python-tabulate): Update to 0.7.7
2017-01-24 23:27:05 +01:00
Tobias Geerinckx-Rice ba1731dac5 gnu: python-paste: Update to 2.0.3.
* gnu/packages/python.scm (python-paste): Update to 2.0.3.
[arguments]: Re-enable tests.  They now pass even on Python 3.
[properties]: Remove.
(python2-paste): Use package-with-python2 directly now.
2017-01-24 23:27:05 +01:00
Tobias Geerinckx-Rice 46e110cca5 gnu: python-colorama: Fix typo in synopsis.
* gnu/packages/python.scm (python-colorama)[synopsis]: Capitalise.
2017-01-24 23:27:05 +01:00
Tobias Geerinckx-Rice f92576f963 gnu: python-colorama: Update to 0.3.7.
* gnu/packages/python.scm (python-colorama): Update to 0.3.7.
2017-01-24 23:27:04 +01:00
Tobias Geerinckx-Rice 02d7f33705 gnu: python-debian: Update to 0.1.28.
* gnu/packages/python.scm (python-debian): Update to 0.1.28.
2017-01-24 23:27:04 +01:00
Tobias Geerinckx-Rice ccc1876210 gnu: python-seaborn: Update to 0.7.1.
* gnu/packages/python.scm (python-seaborn): Update to 0.7.1.
2017-01-24 23:27:04 +01:00
Tobias Geerinckx-Rice 5754fe9570 gnu: python-unidecode: Update to 0.04.20.
* gnu/packages/python.scm (python-unidecode): Update to 0.04.20.
2017-01-24 23:27:03 +01:00
Tobias Geerinckx-Rice 4418990d77 gnu: python-alembic: Update to 0.8.10.
* gnu/packages/python.scm (python-alembic): Update to 0.8.10.
2017-01-24 23:27:03 +01:00
Tobias Geerinckx-Rice 9e2802cb8d gnu: python-orderedmultidict: Update to 0.7.11.
* gnu/packages/python.scm (python-orderedmultidict): Update to 0.7.11.
2017-01-24 23:27:03 +01:00
Tobias Geerinckx-Rice 6acff0f900 gnu: the-silver-searcher: Fix & improve description.
* gnu/packages/code.scm (the-silver-searcher)[description]: Fix typo, use
@command and @file mark-up, and clarify a bit.
2017-01-24 23:27:02 +01:00
Tobias Geerinckx-Rice 392f326655 gnu: the-silver-searcher: Update to 1.0.2.
* gnu/packages/code.scm (the-silver-searcher): Update to 1.0.2.
[source]: Use signed tarball from home-page.  Remove file-name.
[native-inputs]: Remove autoconf, automake, and libtool, as well as...
[arguments]: ...the ‘autoconf’ phase since we're now building a release.
2017-01-24 23:27:02 +01:00
Tobias Geerinckx-Rice db963aad3d gnu: youtube-dl: Update to 2017.01.24.
* gnu/packages/video.scm (youtube-dl): Update to 2017.01.24.
2017-01-24 23:27:02 +01:00
humanitiesNerd 9b1a497ee9 gnu: haunt: Update to 0.2.1
* gnu/packages/guile.scm (haunt): Update to 0.2.1.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-24 23:09:45 +01:00
Ludovic Courtès 04fa4cdf95 gnu: arandr: Remove timestamps from gzipped man pages.
* gnu/packages/xdisorg.scm (arandr)[source](modules, snippet): New
fields.
2017-01-24 23:09:10 +01:00
Ludovic Courtès d6d1cea624 mapped-devices: 'source' can be a list of strings.
Reported by myglc2 <myglc2@gmail.com>.

* gnu/system/mapped-devices.scm (<mapped-device>)[source]: Update
comment to note that this can be a list of strings.
2017-01-24 23:09:10 +01:00
Thomas Danckaert ff8b5a3ae7 gnu: Add hyperestraier.
* gnu/packages/search.scm (hyperestraier): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-24 23:09:09 +01:00
Thomas Danckaert 259a94e981 gnu: Add qdbm.
* gnu/packages/databases.scm (qdbm): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-24 23:09:09 +01:00
Ludovic Courtès fd7d1235f1 grafts: Shallow grafting can be performed on a subset of the outputs.
* guix/grafts.scm (graft-derivation/shallow): Add #:outputs parameter.
[outputs]: Rename to...
[output-pairs]: ... this.  Adjust 'build-expression->derivation' call
accordingly.
2017-01-24 23:09:06 +01:00
Leo Famulari 0769cea697 gnu: openjpeg: Fix CVE-2016-{9572,9573}.
* gnu/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/image.scm (openjpeg-2.1.2)[source]: Use it.
2017-01-24 16:19:03 -05:00
Leo Famulari a639525256 gnu: libgcrypt: Update to 1.7.6.
* gnu/packages/gnupg.scm (libgcrypt): Update to 1.7.6.
2017-01-24 16:05:54 -05:00
Marius Bakke 23d57f74dc gnu: gnupg: Update to 2.1.18.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.18.
[source]: Remove patch.
* gnu/packages/patches/gnupg-test-segfault-on-32bit-arch.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-24 21:48:01 +01:00
humanitiesNerd 81e9582105 gnu: wiredtiger: Update to 2.9.1
* gnu/packages/databases.scm (wiredtiger): Update to 2.9.1.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-24 15:23:50 -05:00
ng0 7c04154940 gnu: tor: Update to 0.2.9.9 [fixes security issue TROVE-2017-001].
See 'ChangeLog' in the source distribution for more information about the denial
of service bug TROVE-2017-001.

* gnu/packages/tor.scm (tor): Update to 0.2.9.9.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-24 14:04:44 -05:00
Ricardo Wurmus ee869cd6ea gnu: Add libvterm.
* gnu/packages/terminals.scm (libvterm): New variable.
2017-01-24 15:51:56 +01:00
Ricardo Wurmus f2b7be0929 gnu: Add unibilium.
* gnu/packages/terminals.scm (unibilium): New variable.
2017-01-24 15:50:53 +01:00
Ricardo Wurmus 7ee557a75a gnu: Add lsyncd.
* gnu/packages/sync.scm (lsyncd): New variable.
2017-01-24 15:46:01 +01:00
Leo Famulari b2725c53dd gnu: khal: Update to 0.9.0.
* gnu/packages/calendar.scm (khal): Update to 0.9.0
[source]: Remove obsolete patch.
* gnu/packages/patches/khal-disable-failing-tests.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Add it.
2017-01-24 01:59:51 -05:00
Leo Famulari 4cfd222fa7 gnu: opus: Update to 1.1.4 [fixes CVE-2017-0381].
* gnu/packages/xiph.scm (opus): Update to 1.1.4.
2017-01-24 01:28:48 -05:00
Leo Famulari 2df34b578f gnu: icedtea-6: Update to 1.13.13 [security fixes].
Fixes CVE-2016-{5542,5554,5568,5573,5582,5597} and others. See 'NEWS' in the
source distribution for more information.

* gnu/packages/java.scm (icedtea-6): Update to 1.13.13.
2017-01-24 00:48:22 -05:00
Leo Famulari 165259593a gnu: libupnp: Update to 1.6.21.
* gnu/packages/libupnp.scm (libupnp): Update to 1.6.21.
[source]: Remove obsolete patches.
* gnu/packages/patches/libupnp-CVE-2016-6255.patch,
gnu/packages/patches/libupnp-CVE-2016-8863.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2017-01-23 23:27:04 -05:00
Ludovic Courtès 2986995b85 services: Create /var/log/wtmp upon activation.
This fixes a bug whereby /var/log/wtmp would never be created, and thus
accounting information would be lost.

* gnu/services.scm (activation-script): Create /var/log/wtmp.
* gnu/tests/base.scm (run-basic-test)["wtmp entry"]: New test.
2017-01-24 00:46:37 +01:00
Ludovic Courtès 3483f004a9 syscalls: Export 'read-utmpx'.
* guix/build/syscalls.scm (read-utmpx-from-port): New procedure.
* tests/syscalls.scm ("read-utmpx, EOF")
("read-utmpx"): New tests.
2017-01-24 00:46:37 +01:00
Carlo Zancanaro 9475fd9217 gnu: Add electrum.
* gnu/packages/finance.scm (electrum): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-24 00:46:37 +01:00
Leo Famulari 2564b7c2df gnu: mplayer: Don't replace 'sh' reference with 'bash'.
* gnu/packages/video.scm (mplayer)[arguments]: Use (which "sh") instead
of (which "bash") in 'configure' phase.
2017-01-23 17:23:05 -05:00
Leo Famulari 47734a56d6 gnu: ffmpeg: Don't replace 'sh' reference with 'bash'.
* gnu/packages/video.scm (ffmpeg)[arguments]: Use (which "sh") instead
of (which "bash") in 'configure' phase.
2017-01-23 17:23:05 -05:00
Leo Famulari 2fed40421d gnu: avidemux: Don't replace 'sh' reference with 'bash'.
* gnu/packages/video.scm (avidemux)[arguments]: Use (which "sh") instead of
(which "bash") in 'repack-ffmpeg' phase.
2017-01-23 17:23:05 -05:00
Leo Famulari 344498c736 gnu: pybitmessage: Don't replace 'sh' reference with 'bash'.
* gnu/packages/messaging.scm (pybitmessage)[arguments]: Use (which "sh") instead
of (which "bash") in 'fix-makefile' phase.
2017-01-23 17:23:05 -05:00
Leo Famulari 195279529c gnu: sendmail: Don't replace 'sh' reference with 'bash'.
* gnu/packages/mail.scm (sendmail)[arguments]: Use (which "sh") instead of
(which "bash") in 'replace-/bin/sh' phase.
2017-01-23 17:23:04 -05:00
Leo Famulari 7ba0249223 gnu: signing-party: Don't replace 'sh' reference with 'bash'.
* gnu/packages/gnupg.scm (signing-party)[arguments]: Use (which "sh") instead of
(which "bash") in 'configure' phase.
2017-01-23 17:23:04 -05:00
Leo Famulari 2e4b67b950 gnu: gnupg-1: Don't replace 'sh' reference with 'bash'.
* gnu/packages/gnupg.scm (gnupg-1)[arguments]: Use (which "sh") instead of
(which "bash") in 'patch-check-sh' phase.
2017-01-23 17:23:04 -05:00
Leo Famulari 3a534f4264 gnu: gnupg-2.0: Don't replace 'sh' reference with 'bash'.
* gnu/packages/gnupg.scm (gnupg-2.0)[arguments]: Use (which "sh") instead of
(which "bash") in 'patch-config-files' phase.
2017-01-23 17:23:04 -05:00
Leo Famulari bfeda42146 gnu: gegl: Don't replace 'sh' reference with 'bash'.
* gnu/packages/gimp.scm (gegl)[arguments]: Use (which "sh") instead of
(which "bash") in 'pre-build' phase.
2017-01-23 17:23:03 -05:00
Leo Famulari 147c6b391b gnu: orpheus: Don't replace 'sh' reference with 'bash'.
* gnu/packages/orpheus.scm (orpheus)[arguments]: Use (which "sh") instead of
(which "bash") in 'patch-shells' phase.
2017-01-23 17:23:03 -05:00
Leo Famulari f2ea722ae7 gnu: node: Don't replace 'sh' reference with 'bash'.
* gnu/packages/node.scm (node)[arguments]: Use (which "sh") instead of
(which "bash") in 'patch-files' phase.
2017-01-23 17:23:03 -05:00
Danny Milosavljevic ee6e780b2c gnu: Add compface.
* gnu/packages/mail.scm (compface): New variable.
2017-01-23 23:16:10 +01:00
Ludovic Courtès 58ea4d407c Merge branch 'master' into core-updates 2017-01-23 22:33:10 +01:00
Ludovic Courtès fcd75bdbfa search-paths: Allow specs with #f as their separator.
This adds support for single-entry search paths.
Fixes <http://bugs.gnu.org/25422>.
Reported by Leo Famulari <leo@famulari.name>.

* guix/search-paths.scm (<search-path-specification>)[separator]:
Document as string or #f.
(evaluate-search-paths): Add case for SEPARATOR as #f.
(environment-variable-definition): Handle SEPARATOR being #f.
* guix/build/utils.scm (list->search-path-as-string): Add case for
SEPARATOR as #f.
(search-path-as-string->list): Likewise.
* guix/build/profiles.scm (abstract-profile): Likewise.
* tests/search-paths.scm: New file.
* Makefile.am (SCM_TESTS): Add it.
* tests/packages.scm ("--search-paths with single-item search path"):
New test.
* gnu/packages/version-control.scm (git)[native-search-paths](separator):
New field.
2017-01-23 22:23:41 +01:00
Ludovic Courtès c5746f2399 guix package: Honor the order of profiles when -p appears multiple times.
* guix/scripts/package.scm (process-query): Reverse the order of
PROFILES.
* tests/guix-package-net.sh: Test it with '--search-paths'.
2017-01-23 22:21:23 +01:00
Leo Famulari 08a78c2fde gnu: openssl: Don't replace 'sh' reference with 'bash'.
* gnu/packages/tls.scm (openssl)[arguments]: Use /bin/sh instead of /bin/bash in
'patch-tests' phase.
2017-01-23 16:02:25 -05:00
Leo Famulari 3dd9b765c9 gnu: mit-krb5: Don't replace 'sh' reference with 'bash'.
* gnu/packages/mit-krb5.scm (mit-krb5)[arguments]: Use /bin/sh instead of
/bin/bash in 'pre-check' phase.
2017-01-23 16:02:25 -05:00
Leo Famulari 2f2f4265b9 gnu: ghostscript: Don't replace 'sh' reference with 'bash'.
* gnu/packages/ghostscript.scm (ghostscript)[arguments]: Use /bin/sh instead of
/bin/bash in 'patch-config-files' phase.
2017-01-23 16:02:25 -05:00
Leo Famulari 370522b888 gnu: attr: Don't replace 'sh' reference with 'bash'.
* gnu/packages/attr.scm (attr)[arguments]: Use /bin/sh instead of /bin/bash in
'check' phase.
2017-01-23 15:50:23 -05:00
Leo Famulari 84b60a7cdf gnu: lcms: Fix an out-of-bounds read.
* gnu/packages/patches/lcms-fix-out-of-bounds-read.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ghostscript.scm (lcms)[replacement]: New field.
[properties]: Specify the 'cpe-name'.
(lcms/fixed): New variable.
2017-01-23 15:34:03 -05:00
ng0 bed2e0dfd1 gnu: menu-cache: Update to 1.0.2.
* gnu/packages/lxde.scm (menu-cache): Update to 1.0.2.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-23 21:28:47 +01:00
ng0 e139652d4e gnu: pcmanfm, libfm: Update to 1.2.5.
* gnu/packages/lxde.scm (pcmanfm): Update to 1.2.5.
* gnu/packages/lxde.scm (libfm): Update to 1.2.5.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-23 21:27:53 +01:00
ng0 dc29cc7710 gnu: lxterminal: Update to 0.3.0.
* gnu/packages/lxde.scm (lxterminal): Update to 0.3.0.
[arguments]: Disable tests.
[source]: Update to use new '.tar.xz' tarball.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-23 21:19:17 +01:00
Marius Bakke d71d6fe85c gnu: gcc@5: Respect SOURCE_DATE_EPOCH in __DATE__ and __TIME__ macros.
* gnu/packages/patches/gcc-5-source-date-epoch-1.patch,
  gnu/packages/patches/gcc-5-source-date-epoch-2.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
* gnu/packages/gcc.scm (gcc-5)[source]: Use them.
2017-01-23 20:39:47 +01:00
Kei Kebreau 34ab353849 gnu: cppcheck: Update to 1.77.
* gnu/packages/check.scm (cppcheck): Update to 1.77.
2017-01-23 14:33:47 -05:00
Marius Bakke 5171ea38c6 gnu: wavpack: Update to 5.1.0.
* gnu/packages/audio.scm (wavpack): Update to 5.1.0.
[arguments]: Remove field.
2017-01-23 19:54:08 +01:00
Thomas Danckaert 2903ee1ea5 gnu: duplicity: Update to 0.7.11.
* gnu/packages/backup.scm (duplicity): Update to 0.7.11.
  [source]: Remove patches.
  [inputs]: Add lftp, update gnupg, remove python-2, make python2-lockfile a
  propagated input, make python2-mock a native-input.
  [propagated-inputs]: Add python2-lockfile, python2-urllib3.
  [native-inputs]: Add python2-pexpect, python2-mock.
  [arguments]: Add build phase to embed gnupg store name.
* gnu/packages/patches/duplicity-piped-password.patch: Delete it.
* gnu/packages/patches/duplicity-test_selection-tmp.patch: Delete it.
* gnu/local.mk (dist_patch_DATA): Remove patches.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-23 19:35:31 +01:00
Marius Bakke 82110ef658 gnu: glpk: Update to 4.61.
* gnu/packages/maths.scm (glpk): Update to 4.61.
[home-page]: Use HTTPS.
2017-01-23 18:54:27 +01:00
Marius Bakke c063f34f6b gnu: libxi: Update to 1.7.9.
* gnu/packages/xorg.scm (libxi): Update to 1.7.9.
2017-01-23 18:03:55 +01:00
Marius Bakke bb2f8bbc5a gnu: nginx: Don't replace 'sh' reference with 'bash'.
* gnu/packages/web.scm (nginx)[arguments]: Substitute /bin/sh with "which sh"
  instead of "which bash" in 'patch-/bin/sh' phase.
2017-01-23 17:48:47 +01:00
ng0 e6880040b4 gnu: Add es.
* gnu/packages/shells.scm (es): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-23 15:20:04 +01:00
Clément Lassieur 87508d9a0b services: prosody: Fix activation script.
* gnu/services/messaging.scm (prosody-activation): Import (guix build utils)
  for 'mkdir-p'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-23 15:20:04 +01:00
宋文武 d918d79f60 doc: Mention the need of a BIOS boot partition when using GPT.
* doc/guix.text (Preparing for Installation)[Disk Partitioning]:
Mention the need of a BIOS boot partition when using GPT with the defualt
GRUB.
2017-01-23 20:25:18 +08:00
Ben Woodcroft e4b6c565be gnu: r-ggplot2: Add r-svglite to propagated-inputs.
* gnu/packages/statistics.scm (r-ggplot2)[propagated-inputs]: Add
r-svglite.
2017-01-23 21:23:33 +10:00
Ben Woodcroft 843f255388 gnu: bundler: Update to 1.14.2.
* gnu/packages/ruby.scm (bundler): Update to 1.14.2.
2017-01-23 20:49:34 +10:00
Jelle Licht 4e58e9d023 gnu: Add libtorrent-rasterbar.
* gnu/packages/bittorrent.scm (libtorrent-rasterbar): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-23 11:01:18 +01:00
Maxim Cournoyer fa445d6499 doc: Fix a typo in guix.texi.
* doc/guix.texi (Invoking guix environment): s/the use/use the/

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-23 11:01:18 +01:00
Mekeor Melire 174b091fb7 gnu: xmonad: Update to 0.12.
* gnu/packages/wm.scm (xmonad): Update to 0.12.
[source](snippet, modules): Remove.
[inputs]: Add GHC-SETLOCALE and GHC-QUICKCHECK.
(ghc-xmonad-contrib): Update to 0.12.
2017-01-23 11:01:17 +01:00
Mekeor Melire c7bdb4139d gnu: Add ghc-setlocale.
* gnu/packages/haskell.scm (ghc-setlocale): New variable.
2017-01-23 11:01:17 +01:00
Efraim Flashner 0e88ada940 gnu: Remove pcre-CVE-2016-3191.patch.
This is a follow-up to 026ee1a5a6.

* gnu/packages/patches/pcre-CVE-2016-3191.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-23 10:28:15 +02:00
Efraim Flashner a3dbea473a gnu: gcal: Update to 4.1.
* gnu/packages/gcal.scm (gcal): Update to 4.1.
[home-page]: Use https.
2017-01-23 10:20:09 +02:00
Leo Famulari 62cf8fa7cd gnu: libtiff: Fix CVE-2017-5225.
* gnu/packages/patches/libtiff-CVE-2017-5225.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/image.scm (libtiff/fixed)[source]: Use it.
2017-01-23 02:13:38 -05:00
Leo Famulari 026ee1a5a6 gnu: pcre: Update to 8.40.
* gnu/packages/pcre.scm (pcre): Update to 8.40.
[source]: Remove obsolete patch 'pcre-CVE-2016-3191.patch'.
2017-01-23 00:55:10 -05:00
Leo Famulari ffcfaf2b18 gnu: imagemagick: Update to 6.9.7-5.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-5.
2017-01-22 22:42:45 -05:00
Mathieu Othacehe 11b7717deb services: cuirass: Add port to cuirass configuration
* gnu/services/cuirass.scm (<cuirass-configuration>): Add port field.
(cuirass-shepherd-service): Honor it.
* doc/guix.texi (Continuous Integration): Document it.

Signed-off-by: Mathieu Lirzin <mthl@gnu.org>
2017-01-22 23:51:56 +01:00
Efraim Flashner 93719a6686 gnu: libinput: Update to 1.6.0.
* gnu/packages/freedesktop.scm (libinput): Update to 1.6.0.
2017-01-22 23:19:12 +02:00
Ludovic Courtès 33ae7d4385 gnu: gcc: Properly set the dynamic linker file name on GNU/Hurd.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: In 'pre-configure' phase,
match 'GNU_USER_DYNAMIC_LINKER' in addition to 'GLIBC_DYNAMIC_LINKER'.
This fixes GNU/Hurd cross-compilation as reported at
<https://lists.gnu.org/archive/html/guix-devel/2017-01/msg01731.html>.
2017-01-22 13:13:36 +01:00
Ludovic Courtès c8b44fc107 gnu: sed: Do not attempt to rebuild 'doc/sed.1'.
* gnu/packages/base.scm (sed)[arguments]: Add 'dont-rebuild-sed.1'
phase.
[native-inputs]: Remove.
2017-01-22 13:13:36 +01:00
Ludovic Courtès 8a296947a6 gnu: sed: Use the same phases whether or not we're cross-compiling.
* gnu/packages/base.scm (sed)[arguments]: Make #:phases argument
unconditional.  In 'patch-test-suite' phase, use (which "sh") instead of
referring to the "bash" input.
2017-01-22 13:13:35 +01:00
Efraim Flashner 8ba237a280 gnu: qemu: Patch CVE-2016-10155, CVE-2017-5552.
* gnu/packages/qemu.scm (qemu)[source]: Add patches.
* gnu/packages/patches/qemu-CVE-2016-10155.patch,
gnu/packages/patches/qemu-CVE-2017-5552.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
2017-01-22 13:40:44 +02:00
Ricardo Wurmus 79f3e82bdc gnu: fish: Embed full path to Python.
Fixes <https://bugs.gnu.org/25467>.

* gnu/packages/shells.scm (fish)[arguments]: Rename phase "patch-bc" to
"embed-store-paths"; embed full path to Python.
2017-01-22 10:16:28 +01:00
宋文武 df05d80ad0 gnu: Add guile-sdl2.
* gnu/packages/sdl.scm (guile-sdl2): New variable.
2017-01-22 14:31:54 +08:00
Carlo Zancanaro af7caada40 gnu: Add python2-slowaes.
* gnu/packages/python.scm (python2-slowaes): New variable.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-01-22 13:40:48 +08:00
Carlo Zancanaro cba84a3805 gnu: Add python-qrcode.
* gnu/packages/python.scm (python-qrcode, python2-qrcode): New variables.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-01-22 13:39:57 +08:00
Carlo Zancanaro 916aafa401 gnu: Add python-pbkdf2.
* gnu/packages/python.scm (python-pbkdf2, python2-pbkdf2): New variables.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-01-22 13:39:23 +08:00
Maxim Cournoyer d6c73cb4c4 gnu: perl-term-readkey: Update to 2.37.
The previous version, 2.32, is not available for download anymore.

* gnu/packages/perl.scm (perl-term-readkey): Update to 2.37.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-01-22 12:36:17 +08:00
Leo Famulari b848f98e04 gnu: bash: Update to patch level 11.
* gnu/packages/bash.scm (%patch-series-4.4): Add patches 6 through 11.
2017-01-21 21:36:16 -05:00
Kei Kebreau ec3487a664 gnu: red-eclipse: Update to 1.5.8.
* gnu/packages/games.scm (red-eclipse): Update to 1.5.8.
2017-01-21 15:27:45 -05:00
Kei Kebreau ca085a3af3 gnu: tintin++: Update to 2.01.2.
* gnu/packages/games.scm (tintin++): Update to 2.01.2.
2017-01-21 13:54:32 -05:00
Ludovic Courtès ac080e296e lint: Display PACKAGE@VERSION.
* guix/scripts/lint.scm (run-checkers): Remove 'name' variable.  Display
PACKAGE@VERSION instead of PACKAGE-VERSION.
2017-01-21 16:43:26 +01:00
José Miguel Sánchez García cacf4e9db0 gnu: Add compton.
* gnu/packages/compton.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add compton.scm

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-21 16:43:26 +01:00
Björn Höfling a760757280 gnu: Add geos.
* gnu/packages/geo.scm (geos): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-21 14:00:51 +01:00
Marius Bakke f07e53fb53 gnu: gflags: Update to 2.2.0.
* gnu/packages/popt.scm (gflags): Update to 2.2.0.
[source]: Use tarball release.
2017-01-21 12:44:42 +01:00
Ben Woodcroft c0dee46c85 gnu: r-vegan: Update to 2.4-2.
* gnu/packages/bioinformatics.scm (r-vegan): Update to 2.4-2.
2017-01-21 18:17:16 +10:00
Ben Woodcroft cda0f9a4a9 gnu: diamond: Update to 0.8.34.
* gnu/packages/bioinformatics.scm (diamond): Update to 0.8.34.
2017-01-21 17:28:11 +10:00
Mark H Weaver 5aa0932eaf gnu: linux-libre: Update to 4.9.5.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.5.
2017-01-20 21:56:02 -05:00
Mark H Weaver 523fe6a3ab gnu: linux-libre@4.4: Update to 4.4.44.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.44.
2017-01-20 21:54:47 -05:00
Mark H Weaver 13c0eccbbb gnu: linux-libre@4.1: Update to 4.1.38.
* gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.38.
2017-01-20 21:48:43 -05:00
Ludovic Courtès 168c400045 gnu: ld-wrapper-boot0: Remove workaround for <http://bugs.gnu.org/24832>.
Fixes <http://bugs.gnu.org/24832>.

* gnu/packages/commencement.scm (ld-wrapper-boot0): Change the first
'make-ld-wrapper' argument to "ld-wrapper-boot0"; change #:target to
BOOT-TRIPLET.
2017-01-20 22:57:47 +01:00
Ludovic Courtès 677b30221b hydra: Add "i586-pc-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add "i586-pc-gnu".
2017-01-20 22:32:47 +01:00
Ludovic Courtès 079f013be2 gnu: gnutls: Add 'guile2.2-gnutls'.
Suggested by Chris Webber.

* gnu/packages/tls.scm (gnutls/guile-2.2): New variable.
2017-01-20 21:39:17 +01:00
Ludovic Courtès be051880c4 services: Reindent vpn.scm.
This fixes indentation of 'match' forms.

* gnu/services/vpn.scm: Pass through 'indent-code.el'.
2017-01-20 21:39:17 +01:00
Ludovic Courtès 830d4c1fcd etc: indent-code.el: Add indentation info for non-Guix Scheme constructs.
* etc/indent-code.el.in (guix-syntax--scheme-indent): New macro.
Use it.
2017-01-20 21:39:17 +01:00
Marius Bakke a50e030141 gnu: python-scipy, python-matplotlib: Fix build after Sphinx update.
* gnu/packages/python.scm (python-sphinx-1.2.3, python2-sphinx-1.2.3): New
variables.
(python-matplotlib)[native-inputs]: Change 'python-sphinx' to 'python-sphinx-1.2.3'.
(python2-matplotlib)[native-inputs]: New field.
(python-scipy)[native-inputs]: Change 'python-sphinx' to 'python-sphinx-1.2.3'.
(python2-scipy)[native-inputs]: New field.
2017-01-20 20:18:07 +01:00
Feng Shu 7386a0481c gnu: Add fcitx-configtool.
* gnu/packages/fcitx.scm (fcitx-configtool): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-20 19:35:47 +01:00
Marius Bakke ff99fe6505 gnu: datamash: Update to 1.1.1.
* gnu/packages/datamash.scm (datamash): Update to 1.1.1.
2017-01-20 19:35:47 +01:00
Marius Bakke 53b8ee2881 gnu: gd: Fix source URL.
This is a followup to 3f0603ea65.

* gnu/packages/gd.scm (gd-2.2.4)[source]: Fix URL.
2017-01-20 19:35:46 +01:00
Leo Famulari 3f0603ea65 gnu: gd: Replace with gd-2.2.4 [fixes CVE-2016-{6912,9317} and others].
'CHANGELOG.md' in the development repository lists several fixed bugs with
potential security implications:

https://github.com/libgd/libgd/blob/gd-2.2.4/CHANGELOG.md

* gnu/packages/gd.scm (gd)[replacement]: New field.
(gd-2.2.4): New variable.
2017-01-20 10:30:08 -05:00
Ricardo Wurmus 2923f3e5b9 gnu: r-msnid: Expand abbreviation in description.
* gnu/packages/bioinformatics.scm (r-msnid)[description]: Expand "MS/MS"
to "tandem mass spectrometry".
2017-01-20 15:38:03 +01:00
Ricardo Wurmus e614d6398a gnu: r-msnbase: Expand abbreviation in description.
* gnu/packages/bioinformatics.scm (r-msnbase)[description]: Expand "MS"
to "mass spectrometry".
2017-01-20 15:38:03 +01:00
Raoul Jean Pierre Bonnal e431eb670d gnu: Add r-fastica.
* gnu/packages/statistics.scm (r-fastica): New variable.
2017-01-20 15:38:03 +01:00
Raoul Jean Pierre Bonnal 793f2edbbc gnu: Add r-lars.
* gnu/packages/statistics.scm (r-lars): New variable.
2017-01-20 15:38:03 +01:00
Raoul Jean Pierre Bonnal efba686c80 gnu: Add r-mixtools.
* gnu/packages/statistics.scm (r-mixtools): New variable.
2017-01-20 15:38:03 +01:00
Raoul Jean Pierre Bonnal c6017f7222 gnu: Add r-cowplot.
* gnu/packages/statistics.scm (r-cowplot): New variable.
2017-01-20 15:38:02 +01:00
Christopher Baines b726096bc5 services: network-manager: Use record for configuration.
* gnu/services/network-manager.scm (<network-manager-configuration>): New
record type.
(network-manager-shpeherd-service): Change to use the
network-manager-configuration record, rather than a package.  Generate a
simple configuration file from the network-manager-configuration record.
(network-manager-service-type): Update extensions to take the
network-manager-configuration rather than a package.
(network-manager-service): Remove function, the network-manager-service-type
can be used instead, and this avoids keeping the function signature and value
coresponding to the service type in sync.
* doc/guix.texi (Networking Services): Remove documentation for the removed
network-manager-service procedure, and add documentation of the
network-manager-service-type variable and network-manager-configuration
record.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-01-20 21:45:56 +08:00
Efraim Flashner 4f98c3c553 gnu: obs: Update to 17.0.2.
* gnu/packages/video.scm (obs): Update to 17.0.2.
[inputs]: Add alsa-lib, fontconfig, speex.
2017-01-20 11:33:19 +02:00
Leo Famulari 10a8746968 gnu: mariadb: Update to 10.1.21 [security fixes].
Fixes CVE-2016-3238 and CVE-2017-{3238,3243,3244,3257,3258,3265,3291,3312,3317,
3318}.

* gnu/packages/databases.scm (mariadb): Update to 10.1.21.
2017-01-19 21:24:25 -05:00
Ludovic Courtès caa7816673 services: Create /var/run/utmpx upon activation.
This fixes a bug whereby /var/run/utmpx would never be created, and thus
accounting information would be missing.

* gnu/services.scm (activation-script): Create /var/run/utmpx.
* gnu/tests/base.scm (run-basic-test)["utmpx entry"]: New test.
2017-01-19 23:45:11 +01:00
Ludovic Courtès 150309726f syscalls: Add utmpx procedures and data structure.
* guix/build/syscalls.scm (<utmpx-entry>): New record type.
(%utmpx): New C struct.
(login-type): New bits.
(setutxent, endutxent, getutxent, utmpx-entries): New procedures.
2017-01-19 23:21:25 +01:00
Ludovic Courtès 57f068bec5 syscalls: Extract 'bytes->string'.
* guix/build/syscalls.scm (bytes->string): New procedure.
(bytevector->string-list): Use it.
2017-01-19 23:20:57 +01:00
Marius Bakke db967b6462 gnu: python-scipy: Fix expression after changing to 'modify-phases'.
This is a followup to 16ca6aaac8.

* gnu/packages/python.scm (python-scipy)[arguments]: Fix parens.
2017-01-19 18:48:37 +01:00
Ludovic Courtès 0691c9c05d gnu: ansible: Update to 2.2.1 [fixes CVE-2016-9587].
* gnu/packages/admin.scm (ansible): Update to 2.2.1.
2017-01-19 17:59:23 +01:00
Mathieu OTHACEHE d18b79fed8 import: github: Catch HTTP 403 error during fetch.
* guix/import/github.scm (json-fetch*): Catch 403 HTTP error that may be
  raised if a github token has not been set.

Signed-off-by: Mathieu OTHACEHE <m.othacehe@gmail.com>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-19 17:17:16 +01:00
Marius Bakke 16ca6aaac8 gnu: python-scipy: Use 'modify-phases' syntax.
* gnu/packages/python.scm (python-scipy)[arguments]: Use 'modify-phases'.
2017-01-19 16:59:28 +01:00
Danny Milosavljevic c8d7e063d0 gnu: Add python-reno.
* gnu/packages/openstack.scm (python-reno, python-reno2): New variables.
2017-01-19 16:36:38 +01:00
Danny Milosavljevic 7adb90311f gnu: python-testtools: Update to 1.4.0.
* gnu/packages/python.scm (python-testtools): Update to 1.4.0.
  [source]: Use pypi-uri.
  [arguments]: New field.
2017-01-19 16:29:56 +01:00
Danny Milosavljevic d83d872259 gnu: Add python-dulwich.
* gnu/packages/python.scm (python-dulwich, python2-dulwich): New variables.
2017-01-19 15:34:46 +01:00
Ludovic Courtès 11f3885bb5 tests: Add 'nginx-service-type' test.
* gnu/tests/web.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2017-01-19 14:44:59 +01:00
Ludovic Courtès dc72a7f7f7 services: nginx: Add default values for <nginx-configuration> fields.
* gnu/services/web.scm (<nginx-configuration>)[nginx, log-directory]
[run-directory, server-blocks, upstream-blocks, file]: Add default
values.
2017-01-19 14:44:59 +01:00
Christopher Baines 9c557a69ae services: nginx: Add support for 'location' blocks.
* gnu/services/web.scm (<nginx-server-configuration>): Add field 'locations'.
(<nginx-location-configuration>): New record type.
(<nginx-named-location-configuration>): New record type.
(nginx-location-config): New function.
(default-nginx-server-config): Include locations.
* doc/guix.texi (Web Services): Document the new nginx-location-configuration
and nginx-named-location-configuration data types, as well as the changes to
the nginx-server-configuration.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-19 14:44:59 +01:00
Christopher Baines cb341293fa services: nginx: Add support the 'upstream' module.
* gnu/services/web.scm (<nginx-upstream-configuration>): New record type.
(<nginx-configuration>): Add new field upstream-blocks.
(nginx-upstream): New function.
(default-nginx-config): Add upstream-list parameter.
(nginx-service): Add optional upstream list keyword argument.
* doc/guix.texi (Web Services): Document the new nginx-upstream-configuration
data type and changes to the nginx function.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-19 14:44:59 +01:00
Christopher Baines cb6d322afc gnu: dnsmasq: Enable dbus support.
* gnu/pacakges/dns.scm (dnsmasq): Enable dbus support to allow for
NetworkManager to use dnsmasq.
[native-inputs]: Add pkg-config.
[inputs]: Add dbus.
[arguments]: Add COPTS="-DHAVE_DBUS" to make-flags.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2017-01-19 20:05:24 +08:00
Ricardo Wurmus e87cb754a6 gnu: Add libgig.
* gnu/packages/music.scm (libgig): New variable.
2017-01-19 09:54:15 +01:00
Leo Famulari 8a9cffb202 doc: Show how to deploy any version of Guix.
* doc/guix.texi (Invoking guix pull): Give some examples of how to deploy
arbitrary Guix versions with the --url option.
2017-01-18 22:01:30 -05:00
Danny Milosavljevic b585e36184 gnu: Add python-fastimport.
* gnu/packages/python.scm (python-fastimport, python2-fastimport):
  New variables.
2017-01-19 00:39:49 +01:00
Danny Milosavljevic 376c4619cf gnu: python-mox3: Remove python-oslosphinx dependency (since the tests don't run anyway).
* gnu/packages/openstack.scm (python-mox3)[native-inputs]: Remove python-oslosphinx.
2017-01-19 00:38:53 +01:00
Danny Milosavljevic c227458ac8 gnu: python-sphinx: Update to 1.5.1 and enable tests.
* gnu/packages/python.scm (python-sphinx): Update to 1.5.1.
  [arguments]: New field.
  [native-inputs]: Add graphviz, python-html5lib, python-mock, python-nose,
  python-requests.
  (python2-sphinx)[native-inputs]: Add python2-enum34.
2017-01-19 00:32:35 +01:00
Ludovic Courtès 840f38ba37 guix environment, build: Allow absolute file names with '--root'.
Reported by Chris Webber.

* guix/scripts/build.scm (register-root): If ROOT is absolute, keep it
as is.
* guix/scripts/environment.scm (register-gc-root): Likewise.
* tests/guix-environment.sh (expected): Add test.
2017-01-19 00:11:15 +01:00
Ludovic Courtès 67fee545cc gnu: Add Heimdal.
* gnu/packages/kerberos.scm (heimdal): New variable.
2017-01-19 00:11:15 +01:00
Ludovic Courtès 89e34644d9 gnu: Move Kerberos implemetations to (gnu packages kerberos).
* gnu/packages/mit-krb5.scm: Remove.
* gnu/packages/shishi.scm: Remove.
* gnu/packages/kerberos.scm: New file, from the concatenation of these
two.
* gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly.
* gnu/packages/admin.scm, gnu/packages/cyrus-sasl.scm,
gnu/packages/gnome.scm, gnu/packages/gnuzilla.scm,
gnu/packages/gsasl.scm, gnu/packages/java.scm,
gnu/packages/networking.scm, gnu/packages/nfs.scm,
gnu/packages/onc-rpc.scm, gnu/packages/ssh.scm,
gnu/packages/web.scm: Adjust accordingly.
2017-01-19 00:11:15 +01:00
ng0 877c6163fa gnu: stagit: Update to 0.5.
* gnu/packages/version-control.scm (stagit): Update to 0.5.
2017-01-18 22:46:50 +01:00
Efraim Flashner 9ca1972767 gnu: qemu: Fix CVE-2017-5525, CVE-2017-5526.
* gnu/packages/qemu.scm (qemu)[source]: Add patches.
* gnu/packages/patches/qemu-CVE-2017-5525.patch,
gnu/packages/patches/qemu-CVE-2017-5526.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
2017-01-18 23:32:49 +02:00
Kei Kebreau 539108e113 gnu: tk: Update to 8.6.6.
* gnu/packages/tcl.scm (tk): Update to 8.6.6.
2017-01-18 16:03:00 -05:00
Kei Kebreau 9f19f3a0ad gnu: tcl: Update to 8.6.6.
* gnu/packages/tcl.scm (tcl): Update to 8.6.6.
2017-01-18 15:32:58 -05:00
Marius Bakke df893a3855 gnu: Add python-cram.
* gnu/packages/python.scm (python-cram, python2-cram): New variables.
2017-01-18 21:28:59 +01:00
Marius Bakke b9f771a795 gnu: Add leveldb.
* gnu/packages/databases.scm (leveldb): New variable.
2017-01-18 21:23:23 +01:00
ng0 cd4a232dd5 gnu: Add mcabber.
* gnu/packages/messaging.scm (mcabber): New variable.

Co-authored-by: Marius Bakke <mbakke@fastmail.com>
2017-01-18 20:24:18 +01:00
ng0 fdfb4b9604 gnu: Add loudmouth.
* gnu/packages/messaging.scm (loudmouth): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-18 20:24:16 +01:00
ng0 395751c05d gnu: Add menumaker.
* gnu/packages/wm.scm (menumaker): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-18 19:11:22 +01:00
Marius Bakke 0d53d55cca gnu: xf86-input-evdev: Update to 2.10.5.
* gnu/packages/xorg.scm (xf86-input-evdev): Update to 2.10.5.
2017-01-18 18:28:35 +01:00
Marius Bakke e19b0bd157 gnu: xf86-video-r128: Update to 6.10.2.
* gnu/packages/xorg.scm (xf86-video-r128): Update to 6.10.2.
2017-01-18 18:25:55 +01:00
Marius Bakke a354c7d8b4 gnu: xf86-video-savage: Update to 2.3.9.
* gnu/packages/xorg.scm (xf86-video-savage): Update to 2.3.9.
2017-01-18 18:23:53 +01:00
Marius Bakke 619ff9329d gnu: xf86-video-trident: Update to 1.3.8.
* gnu/packages/xorg.scm (xf86-video-trident): Update to 1.3.8.
2017-01-18 18:22:12 +01:00
Marius Bakke a0029fda3b gnu: xf86-video-glint: Update to 1.2.9.
* gnu/packages/xorg.scm (xf86-video-glint): Update to 1.2.9.
[source]: Remove upstreamed patch.
* gnu/packages/patches/xf86-video-glint-remove-mibstore.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-18 18:19:49 +01:00
Marius Bakke f733e60345 gnu: xf86-video-nv: Update to 2.1.21.
* gnu/packages/xorg.scm (xf86-video-nv): Update to 2.1.21.
[source]: Remove upstreamed patch.
* gnu/packages/patches/xf86-video-nv-remove-mibstore.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-18 18:15:56 +01:00
Marius Bakke 3a50b71298 gnu: xf86-video-siliconmotion: Update to 1.7.9.
* gnu/packages/xorg.scm (xf86-video-siliconmotion): Update to 1.7.9.
2017-01-18 18:11:42 +01:00
Marius Bakke c2a970582e gnu: xf86-video-mga: Update to 1.6.5.
* gnu/packages/xorg.scm (xf86-video-mga): Update to 1.6.5.
2017-01-18 18:10:04 +01:00
Marius Bakke 798dd616e3 gnu: xf86-video-sis: Update to 0.10.9.
* gnu/packages/xorg.scm (xf86-video-sis): Update to 0.10.9.
2017-01-18 18:08:35 +01:00
Marius Bakke 76400ca594 gnu: xf86-video-tdfx: Update to 1.4.7.
* gnu/packages/xorg.scm (xf86-video-tdfx): Update to 1.4.7.
2017-01-18 18:05:40 +01:00
Ricardo Wurmus 1778ea740e gnu: multiqc: Add python-nose to inputs.
* gnu/packages/bioinformatics.scm (multiqc)[propagated-inputs]: Add
python-nose.
2017-01-18 16:09:49 +01:00
Efraim Flashner 7c524e0f6b gnu: screen: Update to 4.5.0.
* gnu/packages/screen.scm (screen): Update to 4.5.0.
[home-page]: Use https.
2017-01-18 15:51:04 +02:00
ng0 899bcad310 gnu: Add emacs-sx.
* gnu/packages/emacs.scm (emacs-sx): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-18 12:57:23 +03:00
Christopher Baines cf006d2e73 gnu: Add emacs-ag.
* gnu/packages/emacs.scm (emacs-ag): New variable.

Signed-off-by: Alex Kost <alezost@gmail.com>
2017-01-18 12:57:23 +03:00
Feng Shu 12b8f6b401 gnu: Add font-wqy-microhei.
* gnu/packages/fonts.scm (font-wqy-microhei): New variable.
2017-01-18 09:43:14 +01:00
Marius Bakke c9a1812527 gnu: Add python-geventhttpclient.
* gnu/packages/python.scm (python-geventhttpclient, python2-geventhttpclient):
New variables.
2017-01-18 00:20:39 +01:00
Marius Bakke d1ba1d6bfd gnu: python-requests: Update to 2.12.4.
* gnu/packages/python.scm (python-requests, python2-requests): Update to 2.12.4.
2017-01-18 00:19:04 +01:00
ng0 3163a289ab gnu: Add mlmmj.
* gnu/packages/mail.scm (mlmmj): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-17 23:57:15 +01:00
Ludovic Courtès 6cd1059340 doc: Add '--manifest' example using 'specification->package+output'.
* doc/guix.texi (Invoking guix package): Add --manifest example using
'specification->package+output'.
2017-01-17 23:57:15 +01:00
Ludovic Courtès 1f4f2360ad gnu: guile-json: Update to 0.6.0.
* gnu/packages/guile.scm (guile-json): Update to 0.6.0.
2017-01-17 23:57:15 +01:00
Julien Lepiller fd6e260ef7 gnu: Add ocaml-ocurl.
* gnu/pcakages/ocaml.scm (ocaml-ocurl): New variable.
2017-01-17 23:22:07 +01:00
Julien Lepiller 800ab1fb16 gnu: Add ocaml-jsonm.
* gnu/packages/ocaml.scm (ocaml-jsonm): New variable.
2017-01-17 23:21:42 +01:00
Julien Lepiller 84290923d9 gnu: Add ocaml-uutf.
* gna/packages/ocaml.scm (ocaml-uutf): New variable.
2017-01-17 23:21:22 +01:00
Julien Lepiller 33f16b9a57 gnu: Add ocaml-uchar.
* gnu/packages/ocaml.scm (ocaml-uchar): New variable.
2017-01-17 23:20:55 +01:00
Julien Lepiller 6e9b678efe gnu: Add ocaml-ulex.
* gnu/packages/ocaml.scm (ocaml-ulex): New variable.
2017-01-17 23:20:13 +01:00
Julien Lepiller 036b857978 gnu: Add ocaml-xmlm.
* gnu/packages/ocaml.scm (ocaml-xmlm): New variable.
2017-01-17 23:14:42 +01:00
Julien Lepiller 33e0702d8a gnu: Add ocaml-bos.
* gnu/packages/ocaml.scm (ocaml-bos): New variable.
2017-01-17 23:14:38 +01:00
Julien Lepiller fbf38b0985 gnu: Add ocaml-fpath.
* gnu/packages/ocaml.scm (ocaml-fpath): New variable.
2017-01-17 23:14:34 +01:00
Julien Lepiller 9dc7dcb261 gnu: Add ocaml-logs.
* gnu/packages/ocaml.scm (ocaml-logs): New variable.
2017-01-17 23:13:19 +01:00
Ricardo Wurmus 66da3a9f31 gnu: Add r-msnid.
* gnu/packages/bioinformatics.scm (r-msnid): New variable.
2017-01-17 21:46:50 +01:00
Ricardo Wurmus 11879284cb gnu: Add r-msnbase.
* gnu/packages/bioinformatics.scm (r-msnbase): New variable.
2017-01-17 21:46:50 +01:00
Ricardo Wurmus 6a67e181ac gnu: Add r-pcamethods.
* gnu/packages/bioinformatics.scm (r-pcamethods): New variable.
2017-01-17 21:46:50 +01:00
Ricardo Wurmus 4aa7d592f1 gnu: Add r-mzid.
* gnu/packages/bioinformatics.scm (r-mzid): New variable.
2017-01-17 21:46:50 +01:00
Ricardo Wurmus 7c08afaf7b gnu: Add r-vsn.
* gnu/packages/bioinformatics.scm (r-vsn): New variable.
2017-01-17 21:46:50 +01:00
Ricardo Wurmus 05c7e5fb76 gnu: Add r-affy.
* gnu/packages/bioinformatics.scm (r-affy): New variable.
2017-01-17 21:46:49 +01:00
Ricardo Wurmus 5c9d15055f gnu: Add r-affyio.
* gnu/packages/bioinformatics.scm (r-affyio): New variable.
2017-01-17 21:46:49 +01:00
Ricardo Wurmus 71676a1f4c gnu: Add r-mzr.
* gnu/packages/bioinformatics.scm (r-mzr): New variable.
2017-01-17 21:46:49 +01:00
Ricardo Wurmus ae26217430 gnu: Add r-protgenerics.
* gnu/packages/bioinformatics.scm (r-protgenerics): New variable.
2017-01-17 21:46:49 +01:00
Ricardo Wurmus 0e7d058e44 gnu: Add r-maldiquant.
* gnu/packages/bioinformatics.scm (r-maldiquant): New variable.
2017-01-17 21:46:49 +01:00
Ricardo Wurmus 1f40e73cb5 gnu: Add r-raremetals2.
* gnu/packages/bioinformatics.scm (r-raremetals2): New variable.
2017-01-17 21:46:48 +01:00
Ricardo Wurmus fb1e528ef1 gnu: Add r-seqminer.
* gnu/packages/bioinformatics.scm (r-seqminer): New variable.
2017-01-17 21:46:48 +01:00
Ricardo Wurmus 26a281ef27 gnu: Add r-compquadform.
* gnu/packages/statistics.scm (r-compquadform): New variable.
2017-01-17 21:46:48 +01:00
Ricardo Wurmus 769fc6bb18 gnu: Add ribodiff.
* gnu/packages/bioinformatics.scm (ribodiff): New variable.
2017-01-17 21:46:48 +01:00
Ricardo Wurmus e84efc50d7 gnu: Add hisat2.
* gnu/packages/bioinformatics.scm (hisat2): New variable.
2017-01-17 21:46:48 +01:00
Ricardo Wurmus 5f764dd7ff gnu: Add r-fivethirtyeight.
* gnu/packages/statistics.scm (r-fivethirtyeight): New variable.
2017-01-17 21:46:47 +01:00
Ricardo Wurmus 40effef7ca gnu: powertabeditor: Update to 2.0.0-alpha9.
* gnu/packages/music.scm (powertabeditor): Update to 2.0.0-alpha9.
[source]: Simplify snippet.
[arguments]: Adjust phases; remove unnecessary configure flag.
2017-01-17 21:46:25 +01:00
Danny Milosavljevic 4c9c8a294e gnu: boost: Update to 1.63.0.
* gnu/packages/boost.scm (boost): Update to 1.63.0.
2017-01-17 21:34:39 +01:00
Tobias Geerinckx-Rice 79e90f05b6 gnu: cups-filters: Disable mutool integration.
* gnu/packages/cups.scm (cups-filters)[arguments]: Add ‘--disable-mutool’
to #:configure-flags.
[inputs]: Remove mupdf.
2017-01-17 15:14:25 -05:00
Leo Famulari 46076d08ed Revert "gnu: cups-filters: Disable mutool integration."
This change would cause 594 packages to be rebuilt, so it was moved to
the staging branch.

This reverts commit 58a7bbc5fe.
2017-01-17 15:13:54 -05:00
Leo Famulari cf3768fa06 gnu: webkitgtk: Update to 2.14.3 [security fixes].
Fixes CVE-2016-{7586,7589,7592,7599,7623,7632,7635,7639,7641,7645,7652,7654,7656}.

* gnu/packages/webkit.scm (webkitgtk): Update to 2.14.3.
2017-01-17 14:56:13 -05:00
Tobias Geerinckx-Rice 58a7bbc5fe gnu: cups-filters: Disable mutool integration.
* gnu/packages/cups.scm (cups-filters)[arguments]: Add ‘--disable-mutool’
to #:configure-flags.
[inputs]: Remove mupdf.
2017-01-17 18:42:37 +01:00
Tobias Geerinckx-Rice 16869cecf6 gnu: libpsl: Update to 0.17.0.
* gnu/packages/web.scm (libpsl): Update to 0.17.0.
2017-01-17 18:42:36 +01:00
Tobias Geerinckx-Rice cdb93e50ea gnu: proxychains-ng: Update to 4.12.
* gnu/packages/networking.scm (proxychains-ng): Update to 4.12.
2017-01-17 18:42:34 +01:00
Marius Bakke 718c12786b gnu: password-store: Install bash completions.
* gnu/packages/password-utils.scm (password-store)[arguments]: Add
'install-shell-completions' phase.
2017-01-17 16:18:35 +01:00
Ricardo Wurmus c554c6bab8 gnu: gnucash: Update to 2.6.15.
* gnu/packages/gnucash.scm (gnucash): Update to 2.6.15.
2017-01-17 15:07:08 +01:00
Björn Höfling 065d012511 gnu: Add proj.4.
* gnu/packages/geo.scm (proj.4): New variable.
(gnome-maps): Use license: prefix.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-17 14:41:08 +01:00
Marius Bakke f68647299c gnu: xscreensaver: Update to 5.36.
* gnu/packages/xdisorg.scm (xscreensaver): Update to 5.36.
2017-01-17 14:21:10 +01:00
Leo Famulari 351ab2c13f Merge branch 'master' into staging 2017-01-17 03:56:08 -05:00
Thomas Danckaert 603308ee60 gnu: doxygen: Use sh from the store.
* gnu/packages/documentation.scm (doxygen)[inputs]: Add bash-minimal.
[arguments]: Add phase to add store prefix to "/bin/sh".

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-17 03:55:31 -05:00
Leo Famulari 7e5b944e8f gnu: libdrm: Update to 2.4.74.
* gnu/packages/xdisorg.scm (libdrm): Update to 2.4.74.
2017-01-17 03:55:31 -05:00
Leo Famulari b4fddeae20 gnu: flac: Update to 1.3.2.
* gnu/packages/xiph.scm (flac): Update to 1.3.2.
2017-01-17 03:55:30 -05:00
Leo Famulari 8efd10cd11 gnu: speex: Update to 1.2.0.
* gnu/packages/xiph.scm (speex): Update to 1.2.0.
2017-01-17 03:55:30 -05:00
Leo Famulari b1972a83e8 gnu: libsndfile: Update to 1.0.27.
* gnu/packages/pulseaudio.scm (libsndfile): Update to 1.0.27.
2017-01-17 03:55:30 -05:00
Leo Famulari ae6591efa5 gnu: perl-image-exiftool: Update to 10.40.
* gnu/packages/photo.scm (perl-image-exiftool): Update to 10.40.
[synopsis, description]: Mention more capabilities.
2017-01-17 03:50:36 -05:00
Ricardo Wurmus 265afbdfe7 gnu: ghc-quickcheck-instances: Update to 0.3.12.
* gnu/packages/haskell.scm (ghc-quickcheck-instances): Update to 0.3.12.
[inputs]: Add ghc-scientific and ghc-vector.
2017-01-17 03:58:19 +01:00
Leo Famulari 19083a5eee gnu: imagemagick: Update to 6.9.7-4 [security fixes].
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-4.
2017-01-16 18:39:41 -05:00
Leo Famulari 9381a02a53 gnu: Add scrypt.
* gnu/packages/crypto.scm (scrypt): New variable.
2017-01-16 18:02:14 -05:00
Ricardo Wurmus ce9701fb95 gnu: Add emacs-stripe-buffer.
* gnu/packages/emacs.scm (emacs-stripe-buffer): New variable.
2017-01-16 23:37:43 +01:00
Ricardo Wurmus 0b35f11d76 gnu: Add emacs-git-timemachine.
* gnu/packages/emacs.scm (emacs-git-timemachine): New variable.
2017-01-16 23:37:43 +01:00
Ludovic Courtès ae21519f63 gnu: guile-sqlite3: Provide a new source URL.
* gnu/packages/guile.scm (guile-sqlite3)[home-page]: Change.
2017-01-16 23:27:23 +01:00
Ludovic Courtès 384344198d file-systems: 'file-system-needed-for-boot?' is #t for parents of the store.
Suggested by John Darrington <john@darrington.wattle.id.au>.

* gnu/system/file-systems.scm (%not-slash): New variable.
(file-prefix?): New procedure.
(file-system-needed-for-boot?): Use it to check whether FS holds the
store.
* tests/file-systems.scm ("file-system-needed-for-boot?"): New test.
* gnu/tests/install.scm (%separate-store-os)[file-systems]: Remove
'needed-for-boot?' field for "/gnu".
2017-01-16 23:27:23 +01:00
Ricardo Wurmus b91cfa22e1 gnu: Add r-centipede.
* gnu/packages/bioinformatics.scm (r-centipede): New variable.
2017-01-16 23:18:27 +01:00
Julien Lepiller 1fdfbadff0 gnu: Add ocaml-lwt.
* gnu/packages/ocaml.scm (ocaml-lwt): New variable.
2017-01-16 22:34:53 +01:00
Julien Lepiller 37f17e2a1e gnu: Add ocaml-ssl.
* gnu/packages/ocaml.scm (ocaml-ssl): New variable.
2017-01-16 22:34:51 +01:00
Julien Lepiller 1342fce102 gnu: Add ocaml-react.
* gnu/packages/ocaml.scm (ocaml-react): New variable.
2017-01-16 22:34:48 +01:00
Julien Lepiller 0a7b43a818 gnu: Add ocaml-ppx-tools.
* gnu/packages/ocaml.scm (ocaml-ppx-tools): New variable.
2017-01-16 22:34:45 +01:00
Julien Lepiller 69705efe94 gnu: Add ocaml-alcotest.
* gnu/packages/ocaml.scm (ocaml-alcotest): New variable.
2017-01-16 22:34:42 +01:00
Julien Lepiller f46bceb670 gnu: Add ocaml-astring.
* gnu/packages/ocaml.scm (ocaml-astring): New variable.
2017-01-16 22:34:39 +01:00
Julien Lepiller beeb2d419b gnu: Add ocaml-fmt.
* gnu/packages/ocaml.scm (ocaml-fmt): New variable.
2017-01-16 22:34:36 +01:00
Julien Lepiller 8fe6b9327d gnu: camlzip: Install both modules.
* gnu/packages/ocaml.scm (camlzip) [arguments]: Install both zip and camlzip
modules.
2017-01-16 22:34:30 +01:00
Thomas Danckaert 138adbbe05 gnu: Add python-autopep8.
* gnu/packages/python.scm (python-autopep8, python2-autopep8): New variables.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 22:13:21 +01:00
Thomas Danckaert 2f4d08ee7f gnu: kdevelop: Set more paths in wrapper script.
* gnu/packages/kde.scm (kdevelop)[arguments]: Add more paths in
 wrap-executable: add "/share" output of kdevplatform and kcmutils to
 $XDG_DATA_DIRS; add "lib/plugins" from user profile to $QT_PLUGIN_PATH.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 22:13:21 +01:00
Thomas Danckaert fc11b0d3b2 gnu: kdevelop: Update to 5.0.3.
* gnu/packages/kde.scm (kdevelop, kdevplatform): Update to 5.0.3.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 22:13:21 +01:00
Ludovic Courtès 0aeed5e310 grafts: Preserve the cache across recursive calls.
Before this commit, we'd lose the cache across recursive calls to
'cumulative-grafts', which isn't great performance-wise.

This bug was already present before
d38bc9a9f6.

* guix/grafts.scm (with-cache): In the miss case, call 'current-state'
after EXP has been evaluated.
2017-01-16 22:13:21 +01:00
Ludovic Courtès 90ad5c8836 grafts: Actually cache grafts during the derivation DAG traversal.
This fixes a regression introduced in
d38bc9a9f6 whereby the cache was
effectively disabled.

Reported by Thomas Danckaert <thomas.danckaert@gmail.com>.

* guix/grafts.scm (with-cache): In the cache miss case, wrap body in
'mbegin'.
2017-01-16 22:13:21 +01:00
Danny Milosavljevic 8c6b077bfa gnu: gdk-pixbuf: Make it reproducible.
Fixes <http://bugs.gnu.org/25414>.

* gnu/packages/gtk.scm (gdk-pixbuf)[source](patches): New field.
2017-01-16 16:27:51 +01:00
Mark H Weaver b09903619f gnu: linux-libre: Update to 4.9.4.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.4.
2017-01-16 05:26:33 -05:00
Mark H Weaver 8220c963e1 gnu: linux-libre@4.4: Update to 4.4.43.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.43.
2017-01-16 05:23:04 -05:00
ng0 ad1c349db0 gnu: dwm: Add '.desktop' file.
Fixes <https://bugs.gnu.org/25438>.

* gnu/packages/suckless.scm (dwm)[arguments]: Add
'install-xsession' phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 11:03:46 +01:00
ng0 0d2c8f3420 gnu: dwm: Use modify-phases.
* gnu/packages/suckless.scm (dwm): Use modify-phases.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 11:03:46 +01:00
Christopher Baines 849a1b8133 profiles: Export 'ca-certificate-bundle'.
* guix/profiles.scm: Export ca-certificate-bundle, such that it can be used in
other G-expressions.  This is useful where these G-expressions run programs
that require a ca-certificate-bundle, e.g. git.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 11:03:42 +01:00
Christopher Baines 7d8b59139a services: Export 'service-extension' procedures.
* gnu/services.scm: Export service-extension-target and
service-extension-compute.  This allows for greater extensiblity of services
by enabling service extensions to be wrapped.  For example, the parameters
passed to the compute function can be modified, or the return value of the
compute function can be modified.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-16 11:03:26 +01:00
Marius Bakke 4ec840917c gnu: zathura-pdf-poppler: Update to 0.2.7.
* gnu/packages/pdf.scm (zathura-pdf-poppler): Update to 0.2.7.
2017-01-16 10:21:46 +01:00
Marius Bakke 16a9f83fe0 gnu: zathura-djvu: Update to 0.2.6.
* gnu/packages/pdf.scm (zathura-djvu): Update to 0.2.6.
2017-01-16 10:20:15 +01:00
Marius Bakke fe5fe355fd gnu: zathura-ps: Update to 0.2.4.
* gnu/packages/pdf.scm (zathura-ps): Update to 0.2.4.
2017-01-16 10:18:47 +01:00
Marius Bakke 4df3dc419d gnu: zathura-cb: Update to 0.1.6.
* gnu/packages/pdf.scm (zathura-cb): Update to 0.1.6.
2017-01-16 10:16:59 +01:00
Marius Bakke 623feb452a gnu: zathura: Update to 0.3.7.
* gnu/packages/pdf.scm (zathura): Update to 0.3.7.
2017-01-16 10:15:00 +01:00
Marius Bakke 24bbd9e149 gnu: girara: Update to 0.2.7.
* gnu/packages/gtk.scm (girara): Update to 0.2.7.
2017-01-16 10:14:00 +01:00
Marius Bakke 017ecf72ca gnu: vim: Update to 8.0.0194.
* gnu/packages/vim.scm (vim, vim-full): Update to 8.0.0194.
2017-01-16 10:09:19 +01:00
Marius Bakke 2a72d18c71 gnu: ccid: Update to 1.4.26.
* gnu/packages/security-token.scm (ccid): Update to 1.4.26.
2017-01-16 10:00:16 +01:00
Marius Bakke 8f8921eb4a gnu: dnscrypt-proxy: Update to 1.9.2.
* gnu/packages/dns.scm (dnscrypt-proxy): Update to 1.9.2.
2017-01-16 10:00:16 +01:00
Mark H Weaver a5ff4d6517 Merge branch 'gnome-updates' 2017-01-16 03:53:50 -05:00
Efraim Flashner 6cd0045347 gnu: zlib: Use 'modify-phases' syntax.
* gnu/packages/compression.scm (zlib)[arguments]: Use 'modify-phases'.
2017-01-16 09:54:47 +02:00
Efraim Flashner 2b8bea03b6 gnu: zlib: Update to 1.2.11.
* gnu/packages/compression.scm (zlib): Update to 1.2.11.
2017-01-16 09:52:54 +02:00
Leo Famulari 8afabb2eca gnu: cups-filters: Fix CVE-2016-{10132,10133} in statically linked mupdf.
The vulnerabilities are in the MuJS that is bundled with MuPDF.

* gnu/packages/cups.scm (cups-filters)[replacement]: New field.
(mupdf/fixed-instead-of-mupdf), (cups-filters/fixed): New variables.
2017-01-15 20:24:34 -05:00
Marius Bakke af8c7e1014 gnu: mupdf: Fix CVE-2016-{10132,10133} in bundled mujs.
* gnu/packages/patches/mupdf-mujs-CVE-2016-10132.patch,
gnu/packages/patches/mupdf-mujs-CVE-2016-10133.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/pdf.scm (mupdf)[replacement]: New field.
(mupdf/fixed): New variable.

Co-authored-by: Leo Famulari <leo@famulari.name>
2017-01-15 20:24:30 -05:00
Marius Bakke e58db46bb8 gnu: sqlite: Update to 3.16.2.
* gnu/packages/databases.scm (sqlite): Update to 3.16.2.
2017-01-15 23:37:04 +01:00
Ludovic Courtès 6da5bb7b1b guix build: Add '--repair'.
* guix/scripts/build.scm (show-help, %options): Add '--repair'.
* doc/guix.texi (Invoking guix gc): Mention 'guix build --repair'.
(Additional Build Options): Document it.
2017-01-15 22:47:25 +01:00
Ludovic Courtès abdc5f345c gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to d9da3a7.
2017-01-15 22:47:25 +01:00
Mark H Weaver 757768035b gnu: icecat: Add more fixes from upstream mozilla-esr45.
* gnu/packages/gnuzilla.scm (icecat)[source]: Add selected patches from
the upstream mozilla-esr45 repository.
2017-01-15 16:11:25 -05:00
Marius Bakke d502db8441 gnu: fio: Update to 2.16.
* gnu/packages/benchmark.scm (fio): Update to 2.16.
2017-01-15 22:07:12 +01:00
José Miguel Sánchez García 139c8f94ff gnu: lua-lpeg: Update to 1.0.1.
* gnu/packages/lua.scm (lua-lpeg): Update to 1.0.1.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-15 20:23:55 +01:00
ng0 1954699044 gnu: Add obconf.
* gnu/packages/openbox.scm (obconf): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-15 20:09:22 +01:00
Ricardo Wurmus 49586905b8 gnu: epiphany: Update to 3.22.4.
* gnu/packages/gnome.scm (epiphany): Update to 3.22.4.
2017-01-15 19:28:21 +01:00
Ludovic Courtès d9da3a757d guix build: Do not force 'build-cores', 'max-build-jobs', and 'max-silent-time'.
This lets the daemon use its own default settings unless otherwise
specified.

* guix/scripts/build.scm (set-build-options-from-command-line): Do not
provide default values for #:build-cores and #:max-build-jobs.
(%default-options): Remove 'max-silent-time'.
2017-01-15 15:43:22 +01:00
Ludovic Courtès deac976d3d daemon: Client settings no longer override daemon settings.
Fixes <http://bugs.gnu.org/20217>.

* nix/libstore/worker-protocol.hh (PROTOCOL_VERSION): Bump to 0x161.
* nix/nix-daemon/nix-daemon.cc (performOp): "build-max-jobs",
"build-max-silent-time", and "build-cores" are no longer read upfront;
instead, read them from the key/value list at the end.
* nix/nix-daemon/guix-daemon.cc (main): Explicitly set
'settings.maxBuildJobs'.
* guix/store.scm (%protocol-version): Bump to #x161.
(set-build-options): #:max-build-jobs, #:max-silent-time, and
 #:build-cores now default to #f.  Adjust handshake to new protocol.
* tests/store.scm ("build-cores"): New test.
* tests/guix-daemon.sh: Add test for default "build-cores" value.
2017-01-15 15:43:22 +01:00
Tobias Geerinckx-Rice 09cadc8e78 gnu: weechat: Update to 1.7.
* gnu/packages/irc.scm (weechat): Update to 1.7.
2017-01-15 14:59:01 +01:00
Tobias Geerinckx-Rice 3e129a77a8 gnu: wcslib: Update to 5.16.
* gnu/packages/astronomy.scm (wcslib): Update to 5.16.
2017-01-15 14:59:00 +01:00
Julien Lepiller 2be1b4712d gnu: Add openvpn service.
* gnu/services/vpn.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (VPN Services): New section.
2017-01-15 12:24:52 +01:00
Ricardo Wurmus 7cc9847324 gnu: tipp10: Adjust phases.
* gnu/packages/education.scm (tipp10)[arguments]: Return #t for
"disable-new-version-check"; fix indentation.
2017-01-15 12:16:49 +01:00
Ricardo Wurmus 9e39ac415d gnu: tipp10: Fix description.
* gnu/packages/education.scm (tipp10)[description]: Do not mention
operating systems; remove hint about language settings.
2017-01-15 12:14:31 +01:00
Ricardo Wurmus 415dd1f603 gnu: xfce4-terminal: Update to 0.8.3.
* gnu/packages/xfce.scm (xfce4-terminal): Update to 0.8.3.
2017-01-15 12:02:48 +01:00
Ricardo Wurmus bdeecf5664 gnu: sbcl-stumpwm: Update to 1.0.0.
* gnu/packages/lisp.scm (sbcl-stumpwm): Update to 1.0.0.
2017-01-15 12:02:44 +01:00
Efraim Flashner f968f1a748 gnu: vc-dwim: Update to 1.8.
* gnu/packages/version-control.scm (vc-dwim): Update to 1.8.
[home-page]: Use https.
2017-01-15 12:04:26 +02:00
Efraim Flashner ef7a6714b3 gnu: terminology: Update to 1.0.0.
* gnu/packages/enlightenment.scm (terminology): Update to 1.0.0.
[home-page]: Update home-page.
2017-01-15 12:01:43 +02:00
Tobias Geerinckx-Rice 6fb0b6648e gnu: vim: Update to 8.0.0187.
* gnu/packages/vim.scm (vim, vim-full): Update to 8.0.0187.
2017-01-15 02:18:21 +01:00
Tobias Geerinckx-Rice f88e82687c gnu: youtube-dl: Update to 2017.01.14.
* gnu/packages/video.scm (youtube-dl): Update to 2017.01.14.
2017-01-15 02:18:21 +01:00
Hartmut Goebel 117134a78f gnu: python-django: Update to 1.10.5.
* gnu/packages/django.scm(python-django): Update to 1.10.5.
2017-01-14 23:43:02 +01:00
Danny Milosavljevic fdcbf10b70 gnu: python-matplotlib: Make sure that phases end with #t.
* gnu/packages/python.scm (python-matplotlib)[arguments]:
  Make sure that phases end with #t.
2017-01-14 22:35:42 +01:00
Danny Milosavljevic 84e0f8c1ed gnu: python-matplotlib: Fix reST markup error.
* gnu/packages/python.scm (python-matplotlib)[arguments]:
  Fix reST markup error.
2017-01-14 22:07:04 +01:00
Danny Milosavljevic 42b7009a00 gnu: python-matplotlib: Use 'modify-phases' syntax.
* gnu/packages/python.scm (python-matplotlib)[arguments]: Use 'modify-phases'.
2017-01-14 22:03:54 +01:00
Mark H Weaver 2d5785adca gnu: mate-themes: Update source hash.
This is a followup to commit 44350d23da.

* gnu/packages/mate.scm (mate-themes)[source]: Update hash.
* gnu/packages/gtk.scm (gtk+): Add reminder comment.
2017-01-14 16:03:06 -05:00
Leo Famulari df0625ab73 gnu: certbot, python-acme: Update to 0.10.1.
These packages should be updated together.

* gnu/packages/tls.scm (certbot, python-acme, python2-acme): Update to 0.10.1.
2017-01-14 15:04:55 -05:00
Leo Famulari 268e8ad87f gnu: python-icalendar: Update to 3.11.2.
* gnu/packages/python.scm (python-icalendar): Update to 3.11.2.
2017-01-14 14:18:30 -05:00
Hartmut Goebel b84257c0ff gnu: Add tipp10 touch typing tutor.
* gnu/packages/education.scm (touch10): New variable.
* gnu/packages/patches/tipp10-fix-compiling.patch,
  gnu/packages/patches/tipp10-remove-license-code.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
2017-01-14 20:13:06 +01:00
Ludovic Courtès ed824a36c4 gnu: xorg: Make font packages bit-reproducible.
* gnu/packages/xorg.scm (%xorg-font-origin): Add 'snippet' and 'modules'
fields.
2017-01-14 19:39:29 +01:00
Ludovic Courtès 58d222ed0b gnu: xorg: Factorize Xorg font origins.
* gnu/packages/xorg.scm (%xorg-font-origin): New procedure.
(xorg-font-origin): New macro.
(font-adobe100dpi, font-adobe75dpi, font-alias)
(font-arabic-misc, font-cronyx-cyrillic, font-dec-misc)
(font-isas-misc, font-micro-misc, font-misc-cyrillic)
(font-misc-ethiopic, font-misc-misc, font-mutt-misc)
(font-schumacher-misc, font-screen-cyrillic, font-sony-misc)
(font-sun-misc, font-winitzki-cyrillic, font-xfree86-type1): Use it.
2017-01-14 19:39:28 +01:00
ng0 06116573b5 gnu: Add ruby-mail.
* gnu/packages/ruby.scm (ruby-mail): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-14 17:53:05 +01:00
David Craven 5713993f35 gnu: libxt: Add libxt-guix-search-paths.patch.
Followup to 54d8d0fef1.

* gnu/local.mk (dist_patch_DATA): Add it.
2017-01-14 17:26:54 +01:00
Mark H Weaver 5827ea30ee Merge branch 'master' into gnome-updates 2017-01-14 05:24:09 -05:00
Raoul Jean Pierre Bonnal dd42a330d1 gnu: Add r-sva.
* gnu/packages/bioinformatics.scm (r-sva): New variable.
2017-01-14 11:15:18 +01:00
Ludovic Courtès 153b62957c challenge: Add '--verbose'.
* guix/scripts/challenge.scm (summarize-report): Add #:verbose?
parameter.
[report-hashes]: New procedure.  Use it.
Honor VERBOSE? in the 'match case.
(show-help, %options): Add '--verbose'.
(guix-challenge): Honor it.
2017-01-14 00:57:51 +01:00
Ludovic Courtès 4d8e95097e challenge: Return comparison reports instead of just discrepancies.
This makes it easier to distinguish between matches, mismatches, and the
various cases of inconclusive reports.

* guix/scripts/challenge.scm (<discrepancy>): Rename to...
(<comparison-report>): ... this.  Add 'result' field.
(comparison-report): New macro.
(comparison-report-predicate, comparison-report-mismatch?)
(comparison-report-match?)
(comparison-report-inconclusive?): New procedures.
(discrepancies): Rename to...
(compare-contents): ... this.  Change to return a list of
<comparison-report>.  Remove calls to 'warning'.
(summarize-discrepancy): Rename to...
(summarize-report): ... this.  Adjust to <comparison-report>.
(guix-challenge): Likewise.
* tests/challenge.scm ("no discrepancies")
("one discrepancy"): Adjust to new API.
("inconclusive: no substitutes")
("inconclusive: no local build"): New tests.
2017-01-14 00:57:51 +01:00
Leo Famulari 7988af9919 gnu: Removed unused module import from (gnu packages gimp).
* gnu/packages/gimp.scm (define-module): Remove (gnu packages imagemagick).
2017-01-13 17:28:16 -05:00
Leo Famulari 1003fbcfc6 gnu: python2-dogtail: Fix typo in synopsis.
* gnu/packages/python.scm (python2-dogtail)[synopsis]: Remove 'ZERO
WIDTH SPACE' (U+200B) character.
2017-01-13 17:12:43 -05:00
Kei Kebreau cb4d70f46e gnu: audacity: Update to 2.1.2.
* gnu/packages/audacity.scm (audacity): Update to 2.1.2.
[source](uri): Update source URL.
[inputs]: Replace wxwidgets-2 with wxwidgets-gtk2.
[native-inputs]: Add gettext-minimal.
2017-01-13 17:03:58 -05:00
Danny Milosavljevic 9a8acd00da gnu: python-sphinx: Update to 1.4.8.
* gnu/packages/python.scm (python-sphinx)[version]: Update to 1.4.8.
  [source]: Use pypi-uri.
  [propagated-inputs]: Add python-imagesize, python-sphinx-alabaster-theme,
  python-babel, python-snowballstemmer, python-six.
  [properties]: Add python2-variant.
  (python2-sphinx)[native-inputs]: Add python2-mock.
  [propagated-inputs]: Add python2-pytz.
2017-01-13 22:58:54 +01:00
ng0 0318305cdb gnu: Add lchat.
* gnu/packages/suckless.scm (lchat): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:05 -05:00
ng0 37d5fc7b5a gnu: Add libutf.
* gnu/packages/suckless.scm (libutf): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:05 -05:00
ng0 021bdbd262 gnu: Add colors.
* gnu/packages/suckless.scm (colors): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:05 -05:00
ng0 e3c101eb95 gnu: Add fortify-headers.
* gnu/packages/suckless.scm (fortify-headers): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:04 -05:00
ng0 73aca00d53 gnu: Add human.
* gnu/packages/suckless.scm (human): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:03 -05:00
ng0 823d7f536b gnu: Add noice.
* gnu/packages/suckless.scm (noice): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:03 -05:00
ng0 974ddc2134 gnu: Add prout.
* gnu/packages/suckless.scm (prout): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:03 -05:00
ng0 401f4f0816 gnu: Add sbm.
* gnu/packages/suckless.scm (sbm): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:02 -05:00
ng0 559115a64e gnu: Add skroll.
* gnu/packages/suckless.scm (skroll): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:02 -05:00
ng0 d8c8e423ed licenses: Add wtfpl2.
* guix/licenses.scm (wtfpl2): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:01 -05:00
ng0 c2b4c06391 gnu: Add spoon.
* gnu/packages/suckless.scm (spoon): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:01 -05:00
ng0 f63abd0d10 gnu: Add wificurse.
* gnu/packages/suckless.scm (wificurse): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:13:01 -05:00
ng0 4f5a0f32f4 gnu: Add xbattmon.
* gnu/packages/suckless.scm (xbattmon): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-13 14:12:57 -05:00
Julien Lepiller fa3346b852 gnu: openvpn: Update to 2.4.0.
* gnu/packages/vpn.scm (openvpn): Update to 2.4.0.
2017-01-13 19:13:35 +01:00
Ludovic Courtès 557d9c8d7a etc: Support indentation of whole files.
* etc/indent-package.el.in: Rename to...
* etc/indent-code.el.in: ... this.  Add case for a single argument.
* doc/contributing.texi (Formatting Code): Adjust accordingly.
* configure.ac: Likewise.
2017-01-13 18:49:31 +01:00
Ludovic Courtès 608a50b66c http-client: Provide 'User-Agent' header by default.
* guix/http-client.scm (http-fetch): Add #:headers parameter and honor
it.  Rename 'auth-header' to 'headers'.
* guix/import/github.scm (json-fetch*): Add comment about required
User-Agent.
2017-01-13 18:24:19 +01:00
Ludovic Courtès 4cd5ec801b import: github: Fix regression on the /releases retrieval.
Fixes a regression introduced in
62bd24db39, which introduced a call to
'hash-table->alist'.

* guix/import/github.scm (json-fetch*): New procedure.
(latest-released-version): Use it.
2017-01-13 18:24:19 +01:00
Ludovic Courtès 6d30b1b2ca ui: Wrap 'canonicalize-path' for better error reporting.
Reported by Christopher Baines.

* guix/ui.scm (canonicalize-path): New procedure.
2017-01-13 18:24:19 +01:00
Ludovic Courtès e7ff05438f ui: Factorize error-reporting wrapper code.
* guix/ui.scm (augmented-system-error-handler): New procedure.
(error-reporting-wrapper): New macro.
(symlink, copy-file): Define using 'error-reporting-wrapper'.
2017-01-13 18:24:19 +01:00
Leo Famulari cc0725914e Merge branch 'master' into python-tests 2017-01-13 10:21:17 -05:00
Raoul Jean Pierre Bonnal ce195ba122 gnu: Add perl-parallel-forkmanager.
* gnu/packages/perl.scm (perl-parallel-forkmanager): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-13 12:26:03 +01:00
Mark H Weaver 692e05e293 gnu: linux-libre: Update to 4.9.3.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.3.
2017-01-13 02:33:55 -05:00
John Darrington 79728b621b gnu: xfig: Correct typographic error.
* gnu/packages/xfig.scm (xfig) [arguments]: Fix typo.
2017-01-13 07:28:57 +01:00
John Darrington 7d35462923 gnu: aqbanking: Update source hash.
* gnu/packages/gnucash.scm (aqbanking): Update source hash.  This was
  inadvertently omitted from commit cac19f0df9
2017-01-13 07:28:52 +01:00
Efraim Flashner f66b3e1523 gnu: qtxmlpatterns: Skip network tests.
* gnu/packages/qt.scm (qtxmlpatterns)[arguments]: Add custom phase to
prevent the building of network tests.
2017-01-13 07:00:03 +02:00
Efraim Flashner c195b5ba98 gnu: qtsvg: Build tests by default.
* gnu/packages/qt.scm (qtsvg)[arguments]: Set QT_BUILD_PARTS in the
custom 'configure phase to include tests. Add custom 'set-display
phase to enable offscreen tests.
(qtx11extras, qtxmlpatterns, qtdeclarative, qtwebsockets, qtlocation,
qttools, qtquickcontrols, qtquickcontrols2, qtgraphicaleffects,
qtcharts, qtdatavis3d)[arguments]: Disable tests.
(qtmultimedia)[source]: Edit snippet to not build 'spectrum' example.
[arguments]: Disable tests.
(qtscxml)[source]: Edit snippet to not build 'scion' test.
(qtcanvas3d)[arguments]: Don't build the test suite, don't run the tests.
2017-01-13 07:00:03 +02:00
Efraim Flashner a69945a78d gnu: Add qtdatavis3d.
* gnu/packages/qt.scm (qtdatavis3d): New variable.
2017-01-13 07:00:03 +02:00
Efraim Flashner 68bbe14b15 gnu: Add qtcharts.
* gnu/packages/qt.scm (qtcharts): New variable.
2017-01-13 07:00:03 +02:00
Efraim Flashner 173b54b994 gnu: Add qtcanvas3d.
* gnu/packages/qt.scm (qtcanvas3d): New variable.
2017-01-13 07:00:02 +02:00
Efraim Flashner de5e018057 gnu: Add qtpurchasing.
* gnu/packages/qt.scm (qtpurchasing): New variable.
2017-01-13 07:00:02 +02:00
Efraim Flashner 56cd88fd3c gnu: Add qtscxml.
* gnu/packages/qt.scm (qtscxml): New variable.
2017-01-13 07:00:02 +02:00
Efraim Flashner 51519fd3fc gnu: Add qtgamepad.
* gnu/packages/qt.scm (qtgamepad): New variable.
2017-01-13 07:00:02 +02:00
Efraim Flashner a98ffab5ca gnu: Add qtserialbus.
* gnu/packages/qt.scm (qtserialbus): New variable.
2017-01-13 07:00:02 +02:00
Efraim Flashner 843bdfb77e gnu: Add qtdeclarative-render2d.
* gnu/packages/qt.scm (qtdeclarative-render2d): New variable.
2017-01-13 06:59:47 +02:00
Tobias Geerinckx-Rice 5bb9dbc0a8 gnu: nano: Update to 2.7.4.
* gnu/packages/nano.scm (nano): Update to 2.7.4.
2017-01-12 23:40:39 +01:00
Marius Bakke e9384e3b74 gnu: ed: Update to 1.14.1.
* gnu/packages/ed.scm (ed): Update to 1.14.1.
[arguments]: Make sure 'patch-test-suite' phase ends with #t.
[home-page]: Use HTTPS.
2017-01-12 23:28:59 +01:00
Ludovic Courtès 4cdff6ae37 challenge: Use a warning when substitutes are lacking.
* guix/scripts/challenge.scm (discrepancies): Use 'warning' instead of
'leave'.
2017-01-12 23:28:45 +01:00
Mark H Weaver 08b98ae8d3 gnu: linux-libre@4.4: Update to 4.4.42.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.42.
2017-01-12 16:28:27 -05:00
John Darrington 60bc300680 gnu: Add twm.
* gnu/packages/xorg.scm (twm): New variable.
2017-01-12 21:11:31 +01:00
John Darrington 6ea1523ac8 gnu: Add xmag.
* gnu/packages/xorg.scm (xmag): New variable.
2017-01-12 21:11:26 +01:00
John Darrington f50fff693b gnu: Add xmessage.
* gnu/packages/xorg.scm (xmessage): New variable.
2017-01-12 21:11:21 +01:00
Danny Milosavljevic 9a443cf90d gnu: xonsh: Update to 0.5.2.
* gnu/packages/shells.scm (xonsh): Update to 0.5.2.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-12 19:17:03 +01:00
Tobias Geerinckx-Rice d9cf11e0f0 gnu: miniupnpc: Update to 2.0.20161216.
* gnu/packages/upnp.scm (miniupnpc): Update to 2.0.20161216.
[source]: Use HTTPS.
2017-01-12 17:44:28 +01:00
Tobias Geerinckx-Rice cd7caa3ee2 gnu: mcelog: Update to 147.
* gnu/packages/linux.scm (mcelog): Update to 147.
2017-01-12 17:44:28 +01:00
John Darrington 97fedab17d gnu: xfig: Remove wrapper and clean up implementation.
* gnu/packages/xorg.scm (%app-defaults-dir): Make public.
* gnu/packages/xfig.scm (xfig)[attributes]: Remove wrapper and set
the XAPPLOADDIR in the Imakefile instead.
2017-01-12 17:41:06 +01:00
John Darrington 0eefac0f2f gnu: xfig: Use modify-phases.
* gnu/packages/xfig.scm (xfig): Use modify-phases.
2017-01-12 17:41:00 +01:00
John Darrington 5aae77e44b gnu: xfd: Remove wrapper.
* gnu/packages/xorg.scm (xfd): Remove wrapper.
2017-01-12 17:40:55 +01:00
John Darrington 73ae4e69a1 gnu: editres: Use %app-defaults-dir.
* gnu/packages/xorg.scm (editres): Replace string literal with
%app-defaults-dir.
2017-01-12 17:40:47 +01:00
John Darrington 5dc8dd07b0 gnu: xfontsel: Simplify definition.
* gnu/packages/xorg.scm (%app-defaults-dir): New variable.
(xfontsel): Remove wrapper.
2017-01-12 17:40:35 +01:00
Christopher Baines 67cadaca47 services: Add 'redis-service-type'.
* gnu/services/database.scm (<redis-configuration>): New record type.
(%redis-accounts, redis-service-type): New variables.
(default-redis.conf, redis-activation, redis-shepherd-service): New
procedures.
* doc/guix.texi (Database Services): Document the new redis service.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-12 16:49:47 +01:00
Danny Milosavljevic 35c99a1fa0 gnu: ghc-semigroups: Update to 0.18.2.
* gnu/packages/haskell.scm (ghc-semigroups): Update to 0.18.2.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-12 16:49:47 +01:00
Danny Milosavljevic 9076281529 gnu: Add ghc-wave.
* gnu/packages/haskell.scm (ghc-wave): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-12 16:49:47 +01:00
Danny Milosavljevic ff26453601 gnu: ghc-quickcheck: Update to 2.8.2.
* gnu/packages/haskell.scm (ghc-quickcheck): Update to 2.8.2.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-12 16:49:47 +01:00
Roel Janssen ac1f1e4e02 gnu: Add r-ggthemes.
* gnu/packages/statistics.scm (r-ggthemes):  New variable.
2017-01-12 15:14:04 +01:00
Ludovic Courtès 409c573322 build: Remove reference to 'doc/emacs.texi'.
This is a followup to deb6276dda.

* doc/local.mk (EXTRA_DIST): Remove 'emacs.texi'.
2017-01-12 14:59:36 +01:00
Ludovic Courtès 7bb2b10cd0 etc: Add 'indent-package.el' script.
* configure.ac: Check for 'emacs', substitute 'EMACS', and emit
'etc/indent-package.el'.
* etc/indent-package.el.in: New file.
* doc/contributing.texi (Formatting Code): Mention
'etc/indent-package.el'.
(Submitting Patches): Likewise, and link to the above node.

Co-authored-by: Alex Kost <alezost@gmail.com>
2017-01-12 14:56:52 +01:00
Ludovic Courtès a91740655c gnu: guix: Update development snapshot.
* gnu/packages/package-management.scm (guix-devel): Update to eefd042.
2017-01-12 10:13:35 +01:00
Ludovic Courtès e5d861f305 gnu: eudev: Add 'eudev-with-hwdb' variant that contains 'hwdb.bin'.
* gnu/packages/linux.scm (eudev-with-hwdb): New variable.
(usbutils)[inputs]: Use it instead of EUDEV.
2017-01-12 10:13:35 +01:00
Roel Janssen c5173d74d6 gnu: Add r-txdb-mmusculus-ucsc-mm10-knowngene.
* gnu/packages/bioinformatics.scm (r-txdb-mmusculus-ucsc-mm10-knowngene): New variable.
2017-01-12 10:02:57 +01:00
Leo Famulari eefd042e60 gnu: bind: Update to 9.10.4-P5 [fixes CVE-2016-{9131,9147,9444}].
* gnu/packages/dns.scm (bind): Update to 9.10.4-P5.
2017-01-11 18:13:39 -05:00
Leo Famulari 639168dde2 gnu: isc-dhcp: Update bundled bind to 9.9.9-P5 [security fixes].
Fixes CVE-2016-{9131,9147,9444}.

* gnu/packages/admin.scm (isc-dhcp): Update bundled bind to 9.9.9-P5.
2017-01-11 18:13:39 -05:00
Ludovic Courtès 5c3d6c1da8 gnu: fprintd: Provide the right file name for 'fprintd.conf'.
* gnu/packages/freedesktop.scm (fprintd)[arguments]: New field.
2017-01-11 23:01:54 +01:00
Ludovic Courtès 26ab00a0a9 perform-download: Add backward-compatible case.
This is meant to ease transition for people running an older guix-daemon
invoking a recent 'guix perform-download' with only one argument.

This is a followup to 9b5364a3af.

* guix/scripts/perform-download.scm (perform-download): Make 'output'
optional.  Bind 'output*' from DRV's "out" and honor it.
(guix-perform-download): Add clause with one argument.
2017-01-11 23:01:54 +01:00
Ludovic Courtès aaa2581b61 gnu: abiword: Remove timestamps from libabiword.
* gnu/packages/abiword.scm (abiword)[source](modules, snippet): New
fields.
2017-01-11 23:01:54 +01:00
Ludovic Courtès 89b99531c2 gnu: abiword: Allow GTK+ schemas to be found.
Fixes <http://bugs.gnu.org/25037>.
Reported by Adonay Felipe Nogueira <adfeno@openmailbox.org>.

* gnu/packages/abiword.scm (abiword)[build-system]: Set to
GLIB-OR-GTK-BUILD-SYSTEM.
2017-01-11 23:01:54 +01:00
Danny Milosavljevic 8d67610bdc gnu: Add python2-cheetah
* gnu/packages/python.scm (python2-cheetah): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-11 13:09:21 -05:00
Mathieu Lirzin dc673fa113 derivations: Make <derivation> record datatype immutable.
* guix/derivations.scm (<derivation>): Make it immutable.
(derivation): Use generic 'set-field' instead of ad-hoc functional setter.
2017-01-11 18:55:31 +01:00
Mathieu Lirzin 5c6a30c511 git download: Remove redundant argument in 'gexp->derivation' call.
* guix/git-download.scm (git-fetch): Call 'gexp->derivation' with only one
'#:local-build?' keyword argument.
2017-01-11 18:55:26 +01:00
Mark H Weaver 57203ebba0 gnu: gnome-session: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-session): Update to 3.22.2.
2017-01-11 11:35:11 -05:00
Mark H Weaver 2e45916c43 gnu: gnome-shell-extensions: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-shell-extensions): Update to 3.22.2.
2017-01-11 11:35:09 -05:00
Mark H Weaver 759a077cca gnu: gnome-shell: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-shell): Update to 3.22.2.
2017-01-11 11:35:07 -05:00
Mark H Weaver fc119619c1 gnu: gjs: Update to 1.46.0.
* gnu/packages/gnome.scm (gjs): Update to 1.46.0.
[arguments]: Start Xvfb in 'pre-check' phase.
2017-01-11 11:35:05 -05:00
Mark H Weaver 7a6cd578e3 gnu: gnome-control-center: Update to 3.22.1.
* gnu/packages/gnome.scm (gnome-control-center): Update to 3.22.1.
2017-01-11 11:35:03 -05:00
Mark H Weaver e1f3c790d6 gnu: gnome-settings-daemon: Update to 3.22.1.
* gnu/packages/gnome.scm (gnome-settings-daemon): Update to 3.22.1.
2017-01-11 11:35:01 -05:00
Mark H Weaver 4edc6a9c7e gnu: gdm: Update to 3.22.1.
* gnu/packages/gnome.scm (gdm): Update to 3.22.1.
2017-01-11 11:35:00 -05:00
Mark H Weaver 11bffbfab6 gnu: network-manager: Update to 1.4.4.
* gnu/packages/gnome.scm (network-manager): Update to 1.4.4.
2017-01-11 11:34:57 -05:00
Mark H Weaver 09d8890569 gnu: nautilus: Update to 3.22.2.
* gnu/packages/gnome.scm (nautilus): Update to 3.22.2.
[arguments]: Remove "--disable-tracker" from configure flags.
[inputs]: Add gnome-autoar, nettle, and tracker.
2017-01-11 11:34:55 -05:00
Mark H Weaver b64e217f0d gnu: Add tracker.
* gnu/packages/gnome.scm (tracker): New variable.
2017-01-11 11:34:54 -05:00
Mark H Weaver dc69fe187b gnu: Add gnome-autoar.
* gnu/packages/gnome.scm (gnome-autoar): New variable.
2017-01-11 11:34:52 -05:00
Mark H Weaver a88d5a0c25 gnu: mutter: Update to 3.22.2.
* gnu/packages/gnome.scm (mutter): Update to 3.22.2.  Add comment
noting that forked versions of 'cogl' and 'clutter' are now bundled
with mutter.
[arguments]: Add "--disable-wayland" to configure flags.  Add TODO comments
reminding us to add support for wayland and the native backend.  Add configure
flags from 'cogl' and 'clutter'.
[propagated-inputs]: Remove clutter.  Add new inputs needed by
mutter-{clutter,cogl}-1.0.pc.
[inputs]: Add libgudev and libxrandr.  Move libxkbcommon to propagated-inputs.
Remove mesa-headers, replaced by mesa in propagated-inputs.
(cogl, clutter): Add comments to note that changes to cogl and clutter may
also be needed in mutter.
2017-01-11 11:34:50 -05:00
Mark H Weaver ee0f4e78b0 gnu: zenity: Update to 3.22.0.
* gnu/packages/gnome.scm (zenity): Update to 3.22.0.
2017-01-11 11:34:48 -05:00
Mark H Weaver c88e669a44 gnu: aisleriot: Update to 3.22.1.
* gnu/packages/gnome.scm (aisleriot): Update to 3.22.1.
2017-01-11 11:34:46 -05:00
Mark H Weaver d56bea89ea gnu: gnome-sudoku: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-sudoku): Update to 3.22.2.
2017-01-11 11:34:45 -05:00
Mark H Weaver 7399296264 gnu: gnome-mines: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-mines): Update to 3.22.2.
[inputs]: Add libgnome-games-support.
2017-01-11 11:34:43 -05:00
Mark H Weaver f4eae76fb9 gnu: gnome-klotski: Update to 3.22.1.
* gnu/packages/gnome.scm (gnome-klotski): Update to 3.22.1.
[inputs]: libgames-support -> libgnome-games-support.
2017-01-11 11:34:41 -05:00
Mark H Weaver 43ec26046c gnu: Add libgnome-games-support.
* gnu/packages/gnome.scm (libgnome-games-support): New variable.
2017-01-11 11:34:39 -05:00
Mark H Weaver ac20cd7bbd gnu: telepathy-mission-control: Update to 5.16.4.
* gnu/packages/freedesktop.scm (telepathy-mission-control): Update to 5.16.4.
[source][uri]: Use .tar.gz file.
2017-01-11 11:34:38 -05:00
Mark H Weaver f169ad102e gnu: gnome-tweak-tool: Update to 3.22.0.
* gnu/packages/gnome.scm (gnome-tweak-tool): Update to 3.22.0.
2017-01-11 11:34:36 -05:00
Mark H Weaver acc5b65ef2 gnu: gnome-system-monitor: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-system-monitor): Update to 3.22.2.
2017-01-11 11:34:34 -05:00
Mark H Weaver efa355bceb gnu: gnome-screenshot: Update to 3.22.0.
* gnu/packages/gnome.scm (gnome-screenshot): Update to 3.22.0.
2017-01-11 11:34:32 -05:00
Mark H Weaver 4b8aae4177 gnu: gnome-calendar: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-calendar): Update to 3.22.2.
[inputs]: Add gsettings-desktop-schemas.
2017-01-11 11:34:31 -05:00
Mark H Weaver b9e63fc9cb gnu: gnome-backgrounds: Update to 3.22.1.
* gnu/packages/gnome.scm (gnome-backgrounds): Update to 3.22.1.
2017-01-11 11:34:29 -05:00
Mark H Weaver fd408e296f gnu: dconf-editor: Update to 3.22.1.
* gnu/packages/gnome.scm (dconf-editor): Update to 3.22.1.
2017-01-11 11:34:27 -05:00
Mark H Weaver 3edeaeb229 gnu: baobab: Update to 3.22.1.
* gnu/packages/gnome.scm (baobab): Update to 3.22.1.
2017-01-11 11:34:25 -05:00
Mark H Weaver 7d04b13c14 gnu: d-feet: Update to 0.3.11.
* gnu/packages/gnome.scm (d-feet): Update to 0.3.11.
2017-01-11 11:34:24 -05:00
Mark H Weaver 4faa8abebe gnu: rhythmbox: Update to 3.4.1.
* gnu/packages/gnome.scm (rhythmbox): Update to 3.4.1.
2017-01-11 11:34:22 -05:00
Mark H Weaver e6f5e6b65a gnu: file-roller: Update to 3.22.2.
* gnu/packages/gnome.scm (file-roller): Update to 3.22.2.
2017-01-11 11:34:20 -05:00
Mark H Weaver 76aea80d45 gnu: devhelp: Update to 3.22.0.
* gnu/packages/gnome.scm (devhelp): Update to 3.22.0.
2017-01-11 11:34:18 -05:00
Mark H Weaver 491cc0dc61 gnu: yelp: Update to 3.22.0.
* gnu/packages/gnome.scm (yelp): Update to 3.22.0.
2017-01-11 11:34:16 -05:00
Mark H Weaver 0803a6b60d gnu: epiphany: Update to 3.22.4.
* gnu/packages/gnome.scm (epiphany): Update to 3.22.4.
2017-01-11 11:34:15 -05:00
Mark H Weaver 0acaac9e3e gnu: evince: Update to 3.22.1.
* gnu/packages/gnome.scm (evince): Update to 3.22.1.
2017-01-11 11:34:13 -05:00
Mark H Weaver 9beae2a2da gnu: gedit: Update to 3.22.0.
* gnu/packages/gnome.scm (gedit): Update to 3.22.0.
2017-01-11 11:34:11 -05:00
Mark H Weaver f635aa8cd9 gnu: eog: Update to 3.20.5.
* gnu/packages/gnome.scm (eog): Update to 3.20.5.
2017-01-11 11:34:09 -05:00
Mark H Weaver 7f760a8474 gnu: totem: Update to 3.22.0.
* gnu/packages/gnome.scm (totem): Update to 3.22.0.
[source]: Remove patch.
* gnu/packages/patches/totem-debug-format-fix.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-11 11:34:08 -05:00
Mark H Weaver 22753632f7 gnu: grilo-plugins: Update to 0.3.3.
* gnu/packages/gnome.scm (grilo-plugins): Update to 0.3.3.
2017-01-11 11:34:06 -05:00
Mark H Weaver e7305878d3 gnu: grilo: Update to 0.3.2.
* gnu/packages/gnome.scm (grilo): Update to 0.3.2.
[inputs]: Add nettle.
2017-01-11 11:34:04 -05:00
Mark H Weaver 5e503e73a4 gnu: upower: Update to 0.99.4.
* gnu/packages/gnome.scm (upower): Update to 0.99.4.
* gnu/packages/patches/upower-builddir.patch: Adapt.
2017-01-11 11:34:02 -05:00
Mark H Weaver 59339bb480 gnu: gnome-terminal: Update to 3.22.1.
* gnu/packages/gnome.scm (gnome-terminal): Update to 3.22.1.
2017-01-11 11:34:00 -05:00
Mark H Weaver de1215e20b gnu: vte: Update to 0.46.1.
* gnu/packages/gnome.scm (vte): Update to 0.46.1.
[propagated-inputs]: Add pcre2.
2017-01-11 11:33:58 -05:00
Mark H Weaver 6b7d7e9b6f gnu: gusb: Update to 0.2.9.
* gnu/packages/gnome.scm (gusb): Update to 0.2.9.
2017-01-11 11:33:56 -05:00
Mark H Weaver 8852ca2461 gnu: gvfs: Update to 1.30.3.
* gnu/packages/gnome.scm (gvfs): Update to 1.30.3.
[inputs]: Add libcap and polkit.
2017-01-11 11:33:54 -05:00
Mark H Weaver 41d54c1558 gnu: gnome-themes-standard: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-themes-standard): Update to 3.22.2.
2017-01-11 11:33:52 -05:00
Mark H Weaver ea2c15825c gnu: adwaita-icon-theme: Update to 3.22.0.
* gnu/packages/gnome.scm (adwaita-icon-theme): Update to 3.22.0.
2017-01-11 11:33:50 -05:00
Mark H Weaver b62a0070bf gnu: hicolor-icon-theme: Update to 0.15.
* gnu/packages/gnome.scm (hicolor-icon-theme): Update to 0.15.
[source][uri]: Use .tar.xz file.
2017-01-11 11:33:49 -05:00
Mark H Weaver b18e5945b6 gnu: font-abattis-cantarell: Update to 0.0.25.
* gnu/packages/fonts.scm (font-cantarell): Update to 0.0.25.
2017-01-11 11:33:47 -05:00
Mark H Weaver aab951cda6 gnu: evolution-data-server: Update to 3.22.3.
* gnu/packages/gnome.scm (evolution-data-server): Update to 3.22.3.
2017-01-11 11:33:45 -05:00
Mark H Weaver b1cd747b4f gnu: gnome-online-accounts: Update to 3.22.3.
* gnu/packages/gnome.scm (gnome-online-accounts): Update to 3.22.3.
2017-01-11 11:33:44 -05:00
Mark H Weaver e980cbe99a gnu: totem-pl-parser: Update to 3.10.7.
* gnu/packages/gnome.scm (totem-pl-parser): Update to 3.10.7.
[source][uri]: Use 'version-major+minor'.
2017-01-11 11:33:42 -05:00
Mark H Weaver c01deb86dc gnu: gnome-desktop: Update to 3.22.2.
* gnu/packages/gnome.scm (gnome-desktop): Update to 3.22.2.
2017-01-11 11:33:40 -05:00
Mark H Weaver 0dd6aed9bd gnu: libpeas: Update to 1.20.0.
* gnu/packages/gnome.scm (libpeas): Update to 1.20.0.
2017-01-11 11:33:38 -05:00
Mark H Weaver bd03f9db44 gnu: libgweather: Update to 3.20.4.
* gnu/packages/gnome.scm (libgweather): Update to 3.20.4.
2017-01-11 11:33:36 -05:00
Mark H Weaver 195bfa68d5 gnu: libnotify: Update to 0.7.7.
* gnu/packages/gnome.scm (libnotify): Update to 0.7.7.
2017-01-11 11:33:35 -05:00
Mark H Weaver 0abc663433 gnu: libgnomekbd: Update to 3.22.0.
* gnu/packages/gnome.scm (libgnomekbd): Update to 3.22.0.
2017-01-11 11:33:33 -05:00
Mark H Weaver 80f2d23a52 gnu: libchamplain: Update to 0.12.14.
* gnu/packages/gnome.scm (libchamplain): Update to 0.12.14.
2017-01-11 11:33:31 -05:00
Mark H Weaver 70241d9d7e gnu: clutter-gst: Update to 3.0.22.
* gnu/packages/gnome.scm (clutter-gst): Update to 3.0.22.
2017-01-11 11:33:29 -05:00
Mark H Weaver a6e448358d gnu: clutter-gtk: Update to 1.8.2.
* gnu/packages/gnome.scm (clutter-gtk): Update to 1.8.2.
2017-01-11 11:33:28 -05:00
Mark H Weaver 6a55accc80 gnu: cogl: Update to 1.22.2.
* gnu/packages/gnome.scm (cogl): Update to 1.22.2.
2017-01-11 11:33:26 -05:00
Mark H Weaver 124596f29a gnu: gtkmm@2: Update to 2.24.5.
* gnu/packages/gtk.scm (gtkmm-2): Update to 2.24.5.
2017-01-11 11:33:24 -05:00
Mark H Weaver b1d6910e5d gnu: gtkmm: Update to 3.22.0.
* gnu/packages/gtk.scm (gtkmm): Update to 3.22.0.
2017-01-11 11:33:23 -05:00
Mark H Weaver 44350d23da gnu: gtk+: Update to 3.22.6.
* gnu/packages/gtk.scm (gtk+): Update to 3.22.6.
2017-01-11 11:33:21 -05:00
Mark H Weaver 8d2952e351 gnu: at-spi2-atk: Update to 2.22.0.
* gnu/packages/gtk.scm (at-spi2-atk): Update to 2.22.0.
2017-01-11 11:33:19 -05:00
Mark H Weaver d8c6438fe3 gnu: at-spi2-core: Update to 2.22.0.
* gnu/packages/gtk.scm (at-spi2-core): Update to 2.22.0.
2017-01-11 11:33:17 -05:00
Mark H Weaver 3084d8f4c3 gnu: atk: Update to 2.22.0.
* gnu/packages/gtk.scm (atk): Update to 2.22.0.
2017-01-11 11:33:15 -05:00
Mark H Weaver 53c18fac01 gnu: gtksourceview: Update to 3.22.2.
* gnu/packages/gtk.scm (gtksourceview): Update to 3.22.2.
2017-01-11 11:33:14 -05:00
Mark H Weaver 8c44bd581e gnu: pango: Update to 1.40.3.
* gnu/packages/gtk.scm (pango): Update to 1.40.3.
2017-01-11 11:33:12 -05:00
Mark H Weaver f8671271dd gnu: harfbuzz: Update to 1.4.1.
* gnu/packages/gtk.scm (harfbuzz): Update to 1.4.1.
2017-01-11 11:33:10 -05:00
Mark H Weaver 532cbe22c4 gnu: glib-networking: Update to 2.50.0.
* gnu/packages/gnome.scm (glib-networking): Update to 2.50.0.
2017-01-11 11:33:09 -05:00
Mark H Weaver d7a6d2ed6e gnu: python-pygobject: Update to 3.22.0.
* gnu/packages/glib.scm (python-pygobject): Update to 3.22.0.
2017-01-11 11:33:07 -05:00
Mark H Weaver 707ae4e6e8 gnu: gsettings-desktop-schemas: Update to 3.22.0.
* gnu/packages/gnome.scm (gsettings-desktop-schemas): Update to 3.22.0.
2017-01-11 11:33:05 -05:00
Mark H Weaver 562a79de7d gnu: desktop-file-utils: Update to 0.23.
* gnu/packages/gnome.scm (desktop-file-utils): Update to 0.23.
2017-01-11 11:33:03 -05:00
Mark H Weaver b43b584f8e gnu: shared-mime-info: Update to 1.8.
* gnu/packages/gnome.scm (shared-mime-info): Update to 1.8.
2017-01-11 11:33:01 -05:00
Mark H Weaver ee2b2d2fe9 gnu: gmime: Update to 2.6.22.
* gnu/packages/mail.scm (gmime): Update to 2.6.22.
2017-01-11 11:33:00 -05:00
Mark H Weaver e60d3a5593 gnu: gdk-pixbuf: Eliminate graft.
* gnu/packages/gtk.scm (gdk-pixbuf): Update to 2.36.3.
[replacement]: Remove field.
(gdk-pixbuf/fixed): Remove variable.
(package/inherit): Remove macro.
(gdk-pixbuf+svg): Remove use of 'package/inherit'.
2017-01-11 11:32:58 -05:00
Mark H Weaver e31677719b gnu: libgee: Update to 0.18.1.
* gnu/packages/gnome.scm (libgee): Update to 0.18.1.
2017-01-11 11:32:56 -05:00
Mark H Weaver 40a62e60c1 gnu: vala: Update to 0.34.4.
* gnu/packages/gnome.scm (vala): Update to 0.34.4.
2017-01-11 11:32:55 -05:00
Mark H Weaver aae468e980 gnu: gobject-introspection: Update to 1.50.0.
* gnu/packages/glib.scm (gobject-introspection): Update to 1.50.0.
2017-01-11 11:32:52 -05:00
Mark H Weaver ef51eb9907 gnu: libgsf: Update to 1.14.41.
* gnu/packages/gnome.scm (libgsf): Update to 1.14.41.
2017-01-11 11:32:50 -05:00
Mark H Weaver 919fc6aa03 gnu: dbus-glib: Update to 0.108.
* gnu/packages/glib.scm (dbus-glib): Update to 0.108.
2017-01-11 11:32:47 -05:00
Mark H Weaver 8344a85e9e gnu: libxml++: Update to 3.0.1.
* gnu/packages/gnome.scm (libxml++): Update to 3.0.1.
2017-01-11 11:32:45 -05:00
Mark H Weaver 2913a8195d gnu: glibmm: Update to 2.50.0.
* gnu/packages/glib.scm (glibmm): Update to 2.50.0.
2017-01-11 11:32:43 -05:00
Mark H Weaver 2b95aed464 gnu: glib: Update to 2.50.2.
* gnu/packages/glib.scm (glib): Update to 2.50.2.
[inputs]: Add util-linux.
2017-01-11 11:32:41 -05:00
Mark H Weaver d0d0f8d1de gnu: mesa: Update to 13.0.3.
* gnu/packages/gl.scm (mesa): Update to 13.0.3.
2017-01-11 11:32:40 -05:00
Mark H Weaver b02733d495 gnu: libosinfo: Fix substitute fetching for usb.ids.
* gnu/packages/qemu.scm (libosinfo)[native-inputs]: Add 'file-name' field to
'origin' record of "usb.ids".  Otherwise, the default file name contains a "?"
which leads to failure to fetch nars from substitute servers.
2017-01-11 11:32:38 -05:00
David Craven c5edbb9790 gnu: ardour: Add eudev dependency.
* gnu/packages/audio.scm (ardour)[inputs]: Add eudev.
2017-01-11 11:23:44 -05:00
David Craven c96cb01a88 Revert "gnu: Add threaded variants of fftw and fftwf for Ardour and mod-host."
These variants are no longer needed.

Followup to 86f4e9d76a.

This reverts commit 45591fd7fd.
2017-01-11 11:23:43 -05:00
Ludovic Courtès 9e485ffa1b gnu: kcrash: Work around race condition when starting Xvfb.
Sometimes tests would start running before Xvfb is listening.
See <https://hydra.gnu.org/build/1750201>.

* gnu/packages/kde-frameworks.scm (kcrash)[arguments]: In
'start-xorg-server', add 'sleep' call after starting Xvfb.  Pass "Xvfb"
to 'system' instead of its absolute file name.
2017-01-11 11:23:41 -05:00
Leo Famulari dca73a742c Revert "gnu: nss: Add comment about test failures in NSS 3.27.2"
This reverts commit 4f6ff977c2.
2017-01-11 11:23:39 -05:00
Efraim Flashner 5a52e86eb4 gnu: cairomm: Update to 1.12.2.
* gnu/packages/gtk.scm (cairomm): Update to 1.12.2.
[source]: Download from cairographics.org.
[home-page]: Use https.
2017-01-11 11:23:37 -05:00
Efraim Flashner b3822954ea gnu: cairo: Update to 1.14.8.
* gnu/packages/gtk.scm (cairo): Update to 1.14.8.
[source]: Use https.
[home-page]: Use https.
2017-01-11 11:23:36 -05:00
Efraim Flashner 16f6ee9932 gnu: harfbuzz: Update to 1.3.4.
* gnu/packages/gtk.scm (harfbuzz): Update to 1.3.4.
2017-01-11 11:23:34 -05:00
Efraim Flashner 51f0592fbf gnu: poppler: Update to 0.50.0.
* gnu/packages/pdf.scm (poppler): Update to 0.50.0.
2017-01-11 11:23:32 -05:00
Efraim Flashner f8489f160b gnu: cups-filters: Update to 1.13.1.
* gnu/packages/cups.scm (cups-filters): Update to 1.13.1.
[inputs]: Switch libjpeg-8 to libjpeg.
[arguments]: Disable driverless printing, set location for bash shell.
2017-01-11 11:23:30 -05:00
David Thompson b4c8c413ca gnu: mesa: Enable floating point textures.
* gnu/packages/gl.scm (mesa): Add --enable-texture-float to configure flags.
2017-01-11 11:23:29 -05:00
Marius Bakke 5e107b22df gnu: libxpm: Update to 3.5.12.
* gnu/packages/xorg.scm (libxpm): Update to 3.5.12.
2017-01-11 11:23:27 -05:00
Tobias Geerinckx-Rice 45e38a07eb gnu: kmod: Update to 23.
* gnu/packages/linux.scm (kmod): Update to 23.
2017-01-11 11:23:25 -05:00
John Darrington 54d8d0fef1 gnu: Patch libxt's default search path.
* gnu/packages/patches/libxt-guix-search-paths.patch: New file.
* gnu/packages/xorg.scm (libxt) [source]: Add patch.
2017-01-11 11:23:23 -05:00
Ludovic Courtès 9b5364a3af daemon: Allow check builds of 'builtin:download' derivations.
Fixes <http://bugs.gnu.org/25089>.
Reported by Leo Famulari <leo@famulari.name>.

* nix/libstore/build.cc (DerivationGoal::runChild): In the 'isBuiltin'
case, check whether DRV's output is in 'redirectedOutputs', and pass an
'output' argument to the built-in builder.
(DerivationGoal::addHashRewrite): Add 'printMsg' call.
* nix/libstore/builtins.hh (derivationBuilder): Add 'output' parameter.
* nix/libstore/builtins.cc (builtinDownload): Likewise.
Add OUTPUT to ARGV.
* guix/scripts/perform-download.scm (perform-download): Add 'output'
parameter.
(guix-perform-download): Adjust 'match' clauses accordingly.
* tests/derivations.scm ("'download' built-in builder, check mode"): New
test.
2017-01-11 17:06:31 +01:00
Ludovic Courtès aa042770da guix package: Fix version and output for 'guix package -i /gnu/store/…'.
* guix/utils.scm (package-name->name+version): Add optional 'delimiter'
parameter.
* guix/scripts/package.scm (store-item->manifest-entry): Pass #\- as the
delimiter for 'package-name->name+version'.  Use "out" instead of #f for
the 'output' field.
* tests/guix-package.sh: Add test.
2017-01-11 11:58:21 +01:00
Ludovic Courtès 69323016d3 services: wicd: Create /var/run/wpa_supplicant.
* gnu/services/networking.scm (%wicd-activation): Create
/var/run/wpa_supplicant.
2017-01-11 11:16:14 +01:00
Leo Famulari 7b903a920c gnu: eyed3: Update to 0.7.10.
* gnu/packages/mp3.scm (eyed3): Update to 0.7.10.
2017-01-11 00:48:48 -05:00
Leo Famulari 541b3f59ae gnu: beets: Update to 1.4.3.
* gnu/packages/music.scm (beets): Update to 1.4.3.
2017-01-11 00:48:47 -05:00
Leo Famulari 653439c6b1 gnu: python-mutagen: Update to 1.36.
* gnu/packages/music.scm (python-mutagen, python2-mutagen): Update to 1.36.
2017-01-11 00:48:44 -05:00
Kei Kebreau 2fbc004f43 gnu: moc: Update to 2.5.2.
* gnu/packages/music.scm (moc): Update to 2.5.2.
[source](modules, snippet): Remove timestamps from the output.
2017-01-10 20:30:28 -05:00
Leo Famulari b0a567640c gnu: cracklib: Fix buffer overflow.
* gnu/packages/patches/cracklib-fix-buffer-overflow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/password-utils.scm (cracklib)[source]: Use it.
2017-01-10 17:52:42 -05:00
Leo Famulari 4b96149d8b gnu: libtiff: Fix CVE-2016-{10092,10093,10094} and others.
* gnu/packages/patches/libtiff-CVE-2016-10092.patch,
gnu/packages/patches/libtiff-CVE-2016-10093.patch,
gnu/packages/patches/libtiff-CVE-2016-10094.patch,
gnu/packages/patches/libtiff-assertion-failure.patch,
gnu/packages/patches/libtiff-divide-by-zero-ojpeg.patch,
gnu/packages/patches/libtiff-divide-by-zero-tiffcp.patch,
gnu/packages/patches/libtiff-divide-by-zero-tiffcrop.patch,
gnu/packages/patches/libtiff-divide-by-zero.patch,
gnu/packages/patches/libtiff-heap-overflow-pixarlog-luv.patch,
gnu/packages/patches/libtiff-heap-overflow-tif-dirread.patch,
gnu/packages/patches/libtiff-heap-overflow-tiffcp.patch,
gnu/packages/patches/libtiff-heap-overflow-tiffcrop.patch,
gnu/packages/patches/libtiff-invalid-read.patch,
gnu/packages/patches/libtiff-null-dereference.patch,
gnu/packages/patches/libtiff-tiffcp-underflow.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/image.scm (libtiff)[replacement]: New field.
(libtiff/fixed): New variable.
2017-01-10 17:52:42 -05:00
Marius Bakke 8966c6b439 gnu: notmuch: Update to 0.23.5.
* gnu/packages/mail.scm (notmuch, python2-notmuch): Update to 0.23.5.
2017-01-10 23:42:38 +01:00
Marius Bakke 0d11a69f30 gnu: xapian: Update to 1.4.2.
* gnu/packages/search.scm (xapian): Update to 1.4.2.
2017-01-10 23:42:38 +01:00
Ludovic Courtès 3c0f7910e4 gnu: gnutls: Replace with 3.5.8 [fixes GNUTLS-SA-2017-{1,2}].
* gnu/packages/tls.scm (gnutls-3.5.8): New variable.
(gnutls)[replacement]: New field.
2017-01-10 23:40:33 +01:00
Marius Bakke 88f2dd1ddf gnu: rofi: Update to 1.3.1.
* gnu/packages/xdisorg.scm (rofi): Update to 1.3.1.
2017-01-10 22:35:05 +01:00
Ludovic Courtès 39dc70323c gnu: youtube-dl: Update to 2017.01.10.
* gnu/packages/video.scm (youtube-dl): Update to 2017.01.10.  Change
URLs to yt-dl.org.
2017-01-10 22:15:27 +01:00
Ludovic Courtès 082be6d2a1 gnu: e2fsprogs: Remove timestamp from 'libext2fs.info.gz'.
* gnu/packages/linux.scm (e2fsprogs)[source](snippet): Patch
'doc/Makefile.in' to use the '-n' option of gzip.
2017-01-10 22:15:26 +01:00
Ludovic Courtès 74d212911e gnu: e2fsprogs: Use symlinks instead of hard links.
* gnu/packages/linux.scm (e2fsprogs)[arguments]: Pass
"--enable-symlink-install".
2017-01-10 22:15:26 +01:00
Leo Famulari 6d3e08d4e8 gnu: Add sysstat.
* gnu/packages/linux.scm (sysstat): New variable.
2017-01-10 13:38:35 -05:00
Tobias Geerinckx-Rice d4acb6db2f gnu: python-click: Update to 6.7.
* gnu/packages/python.scm (python-click): Update to 6.7.
2017-01-10 17:36:57 +01:00
Mark H Weaver 3720371580 gnu: linux-libre@4.4: Update hash for fixed upstream tarball.
The initial upload of linux-libre-4.4.41-gnu.tar.xz was corrupted.

* gnu/packages/linux.scm (linux-libre-4.4)[source]: Update hash.
2017-01-10 11:04:13 -05:00
Ludovic Courtès 1545a012cb guix archive: Allow compilation in the absence of Guile-JSON.
Fixes <http://bugs.gnu.org/25409>.
Reported by Ben Woodcroft <b.woodcroft@uq.edu.au>.

* guix/scripts/archive.scm: Use 'module-autoload!' instead of #:use-module
to (guix docker).
2017-01-10 15:56:49 +01:00
Ludovic Courtès 022c977258 gnu: libgit2, python-pygit2: Update to 0.25.1 [security fixes].
See <http://www.openwall.com/lists/oss-security/2017/01/10/5>.

* gnu/packages/version-control.scm (libgit2): Update to 0.25.1.
* gnu/packages/python.scm (python-pygit2): Update to 0.25.0.
2017-01-10 15:49:49 +01:00
Ludovic Courtès dd1141eba2 http-client: Improve error reporting.
* guix/http-client.scm (http-fetch): Change message in &message
condition to include URI, CODE, and the reason phrase.
2017-01-10 15:34:11 +01:00
David Craven b1a505baf6 system: Add btrfs file system support.
* gnu/build/file-systems.scm (%btrfs-endianness, btrfs-superblock?,
  read-btrfs-superblock, btrfs-superblock-uuid,
  btrfs-superblock-volume-name, check-btrfs-file-system): New variables.
  (%paritition-label-readers, %partition-uuid-readers): Add btrfs
  readers.
* gnu/system/linux-initrd.scm (linux-modules): Add btrfs modules when a
  btrfs file-system is used.
* gnu/tests/install.scm (%btrfs-root-os %btrfs-root-os-source,
  %btrfs-root-installation-script, %test-btrfs-root-os): New system
  test.
* doc/guix.texi: Adjust accordingly.

Fixes <http://bugs.gnu.org/19280>.
2017-01-10 12:00:35 +01:00
David Craven f3e44f5cd0 gnu: Add btrfs-progs/static.
* gnu/packages/linux.scm (btrfs-progs/static): New variable.
2017-01-10 12:00:34 +01:00
David Craven ab4e939c50 file-systems: Refactor file-system predicates.
* gnu/build/file-systems.scm (partition-field-reader,
  read-partition-field, %partition-label-readers,
  %partition-uuid-readers, read-partition-label, read-partition-uuid):
  New variables.
  (partition-predicate, partition-label-predicate,
  partition-uuid-predicate, luks-partition-uuid-predicate): Use
  partition field readers.
  (find-partition): New variable.
  (find-partition-by-label, find-partition-by-uuid,
  find-partition-by-luks-uuid): Use find-partition-by.
2017-01-10 12:00:05 +01:00
David Craven 26905ec8a6 file-systems: Refactor check-file-system.
* gnu/build/file-systems.scm (check-file-system): Use file-system type
  specific checker.
  (check-ext2-file-system): New variable.
2017-01-10 11:58:11 +01:00
David Craven 313880c73a gnu: e2fsck/static: Only copy e2fsck.
* gnu/packages/linux.scm (e2fsck/static)[arguments]: Only copy e2fsck.
  [synopsis, description]: Adjust accordingly.
2017-01-10 11:58:11 +01:00
Ricardo Wurmus f03168327f gnu: Add pcc.
* gnu/packages/c.scm (pcc): New variable.
2017-01-10 11:30:42 +01:00
Ben Woodcroft cba53c60d5 gnu: ruby-sqlite3: Update to 1.3.13.
* gnu/packages/ruby.scm (ruby-sqlite3): Update to 1.3.13.
2017-01-10 18:40:58 +10:00
Mark H Weaver d33f889dac gnu: linux-libre: Update to 4.9.2.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.2.
2017-01-09 22:42:32 -05:00
Mark H Weaver 75fd35b670 gnu: linux-libre@4.4: Update to 4.4.41.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.41.
2017-01-09 22:41:21 -05:00
Alex Kost 28fd01bceb gnu: emacs-guix: Update to 0.2.2.
* gnu/packages/emacs.scm (emacs-guix): Update to 0.2.2.
2017-01-10 00:23:07 +03:00
Alex Kost f6b1dd233d gnu: emacs-bui: Update to 1.1.0.
* gnu/packages/emacs.scm (emacs-bui): Update to 1.1.0.
2017-01-10 00:23:07 +03:00
ng0 5ed962263c gnu: whois: Update to 5.2.14.
* gnu/packages/networking.scm (whois): Update to 5.2.14.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-09 16:04:55 -05:00
Leo Famulari 5ba5b4b240 gnu: imagemagick: Update to 6.9.7-3.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-3.
2017-01-09 14:18:51 -05:00
John Darrington 4f903085ac Revert "gnu: Update imagemagick to version 7.0.4-3."
This reverts commit dea228cf12.
2017-01-09 20:06:26 +01:00
Mathieu Lirzin 04927b6f26 gnu: cuirass: Update to 0.0.1 revision 3.
* gnu/packages/ci.scm (cuirass): Update to 0.0.1 revision 3.
[arguments]: Move 'bootstrap' phase before 'configure'.  Disable
"tests/repo.scm" test.
2017-01-09 18:57:15 +01:00
John Darrington cac19f0df9 gnu: Update aqbanking to version 5.6.12.
* gnu/packages/gnucash.scm (aqbanking): Update to version 5.6.12.
2017-01-09 18:55:27 +01:00
John Darrington dea228cf12 gnu: Update imagemagick to version 7.0.4-3.
* gnu/packages/imagemagick.scm: Update to version 7.0.4-3
2017-01-09 18:55:22 +01:00
José Miguel Sánchez García 84aafbbb66 gnu: Add nim.
* gnu/packages/nim.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add nim.scm.
2017-01-09 18:01:52 +01:00
David Craven 5d18d776d2 gnu: rustc: Retain binutils.
* gnu/packages/rust.scm (rustc)[arguments]: Retain binutils. Add
  wrap-rustc phase.

Problem reported by Ben Woodcroft <donttrustben@gmail.com>.
2017-01-09 18:01:52 +01:00
John Darrington 834458f6ff gnu: Simplify the downloads from http://www.aquamaniac.de
* gnu/packages/gnucash.scm (aqbanking, gwenhyfar): Remove dummy parameter
from source url.
2017-01-09 17:50:49 +01:00
Christopher Allan Webber ab4a1731d8 gnu: guile-8sync: Add #t at end of setenv phase.
* gnu/packages/guile.scm: Add #t at end of setenv phase.
2017-01-09 09:51:10 -06:00
Christopher Allan Webber c5793e7eb7 gnu: Add guile-8sync.
* gnu/packages/guile.scm (guile-8sync): New variable.
2017-01-09 09:41:30 -06:00
Thomas Danckaert 7bbf2e39f7 gnu: hdf4: Update to 4.2.12.
* gnu/packages/maths.scm (hdf4): Update to 4.2.12.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-09 15:55:57 +01:00
Maxim Cournoyer 392c26b0d1 gnu: python-pip: Update to 9.0.1
* gnu/packages/python.scm (python-pip): Update to 9.0.1.
[native-inputs]: Remove.
[arguments]: New field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-09 15:55:57 +01:00
Alex Sassmannshausen 814b18e587 gnu: Add Guile-ICS.
* gnu/packages/guile.scm (guile-ics): New variable.
2017-01-09 11:34:09 +01:00
Danny Milosavljevic ee719fba2d gnu: Add corrode.
* gnu/packages/haskell.scm (corrode): New variable.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-01-09 10:44:52 +01:00
ng0 f048f12ba1 gnu: Add dotherside.
* gnu/packages/qt.scm (dotherside): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-09 10:33:07 +01:00
ng0 bb0756c7c7 gnu: Add font-google-roboto.
* gnu/packages/fonts.scm (font-google-roboto): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-09 10:33:07 +01:00
Mark H Weaver 96404be814 gnu: gdk-pixbuf: Update replacement to 2.36.3.
* gnu/packages/gtk.scm (gdk-pixbuf/fixed): Update to 2.36.3.
2017-01-08 23:42:03 -05:00
Mark H Weaver 86c41ec3e4 gnu: icecat: Add fixes from upstream mozilla-esr45.
* gnu/packages/gnuzilla.scm (icecat)[source][patches]: Add selected fixes
from the upstream mozilla-esr45 repository.
2017-01-08 20:36:29 -05:00
Mark H Weaver 989862005a gnu: icecat: Rename patches that have been assigned CVEs.
* gnu/packages/gnuzilla.scm (icecat)[source][patches]: Rename patches that
have since been assigned CVEs.
2017-01-08 20:36:27 -05:00
Mark H Weaver b9acdad717 gnu: gdk-pixbuf: Replace with 2.36.2.
* gnu/packages/gtk.scm (gdk-pixbuf)[replacement]: New field.
(gdk-pixbuf/fixed): New variable.
(package/inherit): New macro.
(gdk-pixbuf+svg): Use 'package/inherit'.
2017-01-08 20:36:20 -05:00
Clément Lassieur 78cef99b98 gnu: Add Prosody service.
* gnu/services/messaging.scm: New file.
* gnu/services/configuration.scm: New exported procedures.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add gnu/services/messaging.scm.
* doc/guix.texi (Messaging Services): New section.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-08 23:39:36 +01:00
Clément Lassieur 84bf2a2e74 gnu: prosody: Make config and data files visible to 'prosodyctl'.
* gnu/packages/messaging.scm (prosody)[arguments]: Add a 'fix-makefile' phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-08 23:38:49 +01:00
Clément Lassieur 5b4946180e gnu: prosody: Add OpenSSL and Coreutils to the PATH of programs.
* gnu/packages/messaging.scm (prosody)[arguments]: In 'wrap-programs'
phase, add 'openssl' and 'coreutils' to 'PATH'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-08 23:37:06 +01:00
Ludovic Courtès 9e3e972d1e gnu: Add fprintd.
* gnu/packages/freedesktop.scm (fprintd): New variable.
2017-01-08 23:26:47 +01:00
Ludovic Courtès dfb01baec4 gnu: Add libfprint.
* gnu/packages/freedesktop.scm (libfprint): New variable.
2017-01-08 23:26:47 +01:00
David Craven ec460a2a37 gnu: font-liberation: Use @item in @enumerate.
* gnu/packages/fonts.scm (font-liberation)[description]: Use @item.

Followup to 0102fba27c.
2017-01-08 23:00:55 +01:00
Mark H Weaver 3a3e309975 gnu: ruby-yard: Fix typo in source URI.
This is a followup to commit 6499893ef8.

* gnu/packages/ruby.scm (ruby-yard)[source][uri]: Fix typo.
2017-01-08 07:25:45 -05:00
Ben Woodcroft 6499893ef8 gnu: ruby-yard: Update to 0.9.6.
* gnu/packages/ruby.scm (ruby-yard): Update to 0.9.6.
[source]: Use 'GitHub' source.
[arguments]: Run tests without 'Rakefile'.
[native-inputs]: Replace 'ruby-rspec-2' with ruby-rspec'.
* gnu/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch: Delete
file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-08 11:10:28 +10:00
Mark H Weaver 57fe28a082 gnu: linux-libre: Update to 4.9.1.
* gnu/packages/linux.scm (%linux-libre-version, %linux-libre-hash)
(linux-libre): Update to 4.9.1.
* gnu/packages/linux-libre-4.8-x86_64.conf,
gnu/packages/linux-libre-4.8-i686.conf: Delete files.
* gnu/packages/linux-libre-4.9-x86_64.conf,
gnu/packages/linux-libre-4.9-i686.conf: New files.
* Makefile.am (KCONFIGS): Update accordingly.
2017-01-07 19:42:36 -05:00
Mark H Weaver 0860081413 gnu: linux-libre@4.4: Update to 4.4.40.
* gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.40.
2017-01-07 19:42:23 -05:00
Leo Famulari 1c9cea74b4 gnu: python-pygpgme: Fix build failure.
* gnu/packages/patches/python-pygpgme-fix-pinentry-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnupg.scm (python-pygpgme, python2-pygpgme)[source]: Use it.
2017-01-07 19:00:58 -05:00
Clément Lassieur 261f56914c gnu: econnman: Add missing input.
* gnu/packages/connman.scm (econnman)[inputs]: Add python2-dbus.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-07 23:02:48 +01:00
Alex Griffin 2b84170782 gnu: gnome-mpv: Update to 0.11.
* gnu/packages/video.scm (gnome-mpv): Update to 0.11.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-07 22:55:40 +01:00
Thomas Danckaert e10872cc83 gnu: gpgme: Patch CMake files.
* gnu/packages/gnupg.scm (gpgme)[arguments]: Substitute '@libsuffix@' by
  '.so'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-07 22:55:40 +01:00
Ludovic Courtès b2859a4fef gnu: zlib: Fix alternate download URL.
* gnu/packages/compression.scm (zlib)[source](uri): Update SourceForge URL.
2017-01-07 22:55:40 +01:00
Ludovic Courtès 01445711db guix archive: '-f docker' supports package names as arguments.
This allows users to type:

  guix archive -f docker emacs

as was already the case for the 'nar' format.

Reported by David Thompson.

* guix/scripts/archive.scm (%default-options): Add 'format'.
(export-from-store): Dispatch based on the 'format' key in OPTS.
(guix-archive): Call 'export-from-store' in all cases when the 'export'
key is in OPTS.
2017-01-07 22:55:40 +01:00
Leo Famulari 9385f0e9cb Revert "gnu: nspr: Update to 4.13.1."
There were many reports that NSS failed to build with this change.

This reverts commit 707c65aad7.
2017-01-07 15:38:30 -05:00
Ludovic Courtès d7d5050c51 gnu: ao-cad: Point 'LD_LIBRARY_PATH' to Mesa.
* gnu/packages/engineering.scm (ao)[arguments]: In
'install-guile-bindings', wrap 'ao-guile' to set 'LD_LIBRARY_PATH'.
[inputs]: Add MESA.
2017-01-07 00:38:03 +01:00
Tobias Geerinckx-Rice a2bd16ff99 gnu: vim: Update to 8.0.0147.
* gnu/packages/vim.scm (vim, vim-full): Update to 8.0.0147.
2017-01-07 00:26:23 +01:00
Tobias Geerinckx-Rice 0102fba27c gnu: font-liberation: Use @enumerate in description.
* gnu/packages/fonts.scm (font-liberation)[description]: Use @enumerate.
2017-01-07 00:26:22 +01:00
Tobias Geerinckx-Rice b4774d87e4 gnu: fonts: Improve synopses & descriptions.
* gnu/packages/fonts.scm (font-google-noto, font-hack)[synopsis,
description]: Fix typos, grammar, and general style only.
(font-dejavu, font-terminus, font-wqy-zenhei)[description]: Likewise.
2017-01-07 00:26:22 +01:00
Tobias Geerinckx-Rice 8837860c66 gnu: fonts: Use install-file where appropriate.
* gnu/packages/fonts.scm (font-ubuntu, font-dejavu, font-bitstream-vera,
font-gnu-freefont-ttf, font-liberation, font-wqy-zenhei, font-anonymous-pro,
font-google-noto, font-un, font-hack): Substitute the simpler INSTALL-FILE
for every COPY-FILE invoked with redundant arguments.
2017-01-07 00:26:12 +01:00
Tobias Geerinckx-Rice 9657aeb187 gnu: python-tblib: Properly @end enumerate.
* gnu/packages/python.scm (python-tblib)[description]: Don't use
‘@end itemize’ to end an ‘@enumerate’ block.
2017-01-07 00:23:53 +01:00
Leo Famulari 8ee40f6849 Revert "Revert "gnu: gawk: Don't replace 'sh' reference with 'bash'.""
This reverts commit f537ad0bf3.
2017-01-06 17:16:03 -05:00
Leo Famulari e483139141 gnu: glibc/linux: Use /bin/sh instead of /bin/bash as the default shell.
* gnu/packages/base.scm (glibc/linux)[arguments]: Use /bin/sh for scripts that
lack a shebang.
2017-01-06 17:16:03 -05:00
Leo Famulari 11b6687609 gnu: glibc/linux: Don't replace 'sh' reference with 'bash'.
* gnu/packages/base.scm (glibc/linux)[arguments]: Use /bin/sh instead of
/bin/bash in 'pre-configure' phase.
2017-01-06 17:16:03 -05:00
Leo Famulari 60f3ad8c07 gnu: gnu-make: Don't replace 'sh' reference with 'bash'.
* gnu/packages/base.scm (gnu-make)[arguments]: Use /bin/sh instead of /bin/bash
in 'set-default-shell' phase.
2017-01-06 17:16:02 -05:00
Leo Famulari fa6428a19f gnu: m4: Don't replace 'sh' reference with 'bash'.
* gnu/packages/m4.scm (m4)[arguments]: Use /bin/sh instead of /bin/bash in
'pre-check' phase.
2017-01-06 17:16:02 -05:00
Leo Famulari 74288230ea Merge branch 'master' into core-updates 2017-01-06 17:14:41 -05:00
Leo Famulari aa21c764d6 gnu: python-pycrypto: Fix CVE-2013-7459.
* gnu/packages/patches/python-pycrypto-CVE-2013-7459.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-pycrypto, python2-pycrypto)[source]: Use the
patch. Use pypi-uri.
2017-01-06 13:50:18 -05:00
Leo Famulari 707c65aad7 gnu: nspr: Update to 4.13.1.
* gnu/packages/gnuzilla.scm (nspr): Update to 4.13.1.
2017-01-06 13:09:05 -05:00
Ricardo Wurmus 03476a23ff guix: Add Docker image export.
* guix/docker.scm: New file.
* Makefile.am (MODULES): Register it.
* guix/scripts/archive.scm (show-help, %options, guix-archive): Add
support for "--format".
* doc/guix.texi (Invoking guix archive): Document it.
2017-01-06 16:44:00 +01:00
Ricardo Wurmus 3a3bf2f819 gnu: Add r-copywriter.
* gnu/packages/bioinformatics.scm (r-copywriter): New variable.
2017-01-06 16:31:19 +01:00
Ricardo Wurmus d407bdb931 gnu: Add r-copyhelper.
* gnu/packages/bioinformatics.scm (r-copyhelper): New variable.
2017-01-06 16:31:14 +01:00
Ricardo Wurmus 6193563a36 gnu: Add r-chipseq.
* gnu/packages/bioinformatics.scm (r-chipseq): New variable.
2017-01-06 16:31:02 +01:00
David Craven 974e02da76 file-systems: Refactor file system detection logic.
* gnu/build/file-systems.scm (read-superblock,
  null-terminated-latin1->string): New variables.
  (sub-bytevector): Move to general section.
  (ext2-superblock?, read-ext2-superblock): New variables.
  (ext2-superblock-uuid, ext2-superblock-volume-name): Use
  sub-bytevector and null-terminated-latin1->string.
  (%ext2-sblock-magic, %ext2-sblock-creator-os, %ext2-sblock-uuid,
  %ext2-sblock-volume-name): Inline constants.
  (luks-superblock?, read-luks-header): New variables.
  (%luks-header-size, %luks-magic): Inline.
  (partition-label-predicate, partition-uuid-predicate,
  luks-partition-uuid-predicate): Use new functions.
2017-01-06 15:06:42 +01:00
Christopher Baines fab2784dbb gnu: gnome-tweak-tool: Add missing inputs.
* gnu/packages/gnome.scm (gnome-tweak-tool)[inputs]: Add gnome-desktop
and libsoup.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-06 10:23:27 +01:00
Christopher Baines adb41527ad gnu: gnome-tweak-tool: Make propagated-inputs just inputs.
* gnu/packages/gnome.scm (gnome-tweak-tool)[propagated-inputs]: Merge
with...
[inputs]: ... this.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-06 10:23:27 +01:00
Christopher Baines 9af6bce1e1 gnu: gnome-tweak-tool: Wrap program to set 'GI_TYPELIB_PATH'.
* gnu/packages/gnome.scm (gnome-tweak-tool)[arguments]: Add
'wrap-program' phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-06 10:23:27 +01:00
Christopher Baines 7ef335b0e8 gnu: gnome-tweak-tool: Use glib-or-gtk-build-system.
This allows gobject introspection namespaces to be found.

* gnu/packages/gnome.scm (gnome-tweak-tool)[build-system]: Set to
GLIB-OR-GTK-BUILD-SYSTEM.
[arguments]: Use %GLIB-OR-GTK-BUILD-SYSTEM-MODULES in #:imported-modules.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-06 10:23:27 +01:00
Ben J Woodcroft dbf9d37114 gnu: bioruby: Update to 1.5.1.
* gnu/packages/bioinformatics.scm (bioruby): Update to 1.5.1.
2017-01-06 19:06:07 +10:00
Ben J Woodcroft 0c37e2a3d2 gnu: cd-hit: Update to 4.6.6.
* gnu/packages/bioinformatics.scm (cd-hit): Update to 4.6.6.
2017-01-06 19:06:03 +10:00
Leo Famulari e50d5b8c9d gnu: khal: Disable failing tests.
* gnu/packages/patches/khal-disable-failing-tests.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/calendar.scm (khal): Use it.
2017-01-06 03:19:40 -05:00
Leo Famulari e0c32fc817 gnu: vdirsyncer: Update to 0.14.1.
* gnu/packages/dav.scm (vdirsyncer): Update to 0.14.1.
2017-01-06 03:19:40 -05:00
Leo Famulari 491b78a8e8 gnu: python-icalendar: Update to 3.11.1.
* gnu/packages/python.scm (python-icalendar): Update to 3.11.1.
2017-01-06 03:19:36 -05:00
Ludovic Courtès 76c31074c8 derivations: Share a cache between 'derivation' and 'read-derivation'.
This leads a 13% speedup on 'guix build libreoffice -d' and 18% on
'guix build gnome -d'.

* guix/derivations.scm (%derivation-cache): New variable.
(read-derivation): Use it instead of the private 'cache' variable.
(derivation): Populate %DERIVATION-CACHE before returning.
2017-01-05 23:45:39 +01:00
Ludovic Courtès fbec5abeef gnu: gv: Do not propagate Ghostscript.
* gnu/packages/gv.scm (gv)[propagated-inputs]: Remove.
[arguments]: New field.
[inputs]: Add GHOSTCRIPT/X.
2017-01-05 23:45:38 +01:00
Ludovic Courtès 6d943e553d derivations: Micro-optimize 'write-derivation'.
* guix/derivations.scm (write-derivation)[write-input]: Use 'display'
instead of 'write' for PATH.
Use 'simple-format' instead of 'format', and '~a' instead of '~s' for
SYSTEM and BUILDER.
2017-01-05 23:45:38 +01:00
Alex Kost ec14d2157d gnu: emacs-smartparens: Update to 1.9.0.
* gnu/packages/emacs.scm (emacs-smartparens): Update to 1.9.0.
2017-01-06 00:31:03 +03:00
Alex Kost 922ab34446 gnu: magit: Update to 2.10.0.
* gnu/packages/emacs.scm (magit, emacs-magit-popup): Update to 2.10.0.
2017-01-06 00:29:23 +03:00
Alex Kost cfb9026aa5 gnu: emacs-with-editor: Update to 2.5.9.
* gnu/packages/emacs.scm (emacs-with-editor): Update to 2.5.9.
2017-01-06 00:29:23 +03:00
Danny Milosavljevic 6c8a387af2 gnu: Add ghc-markdown-unlit.
* gnu/packages/haskell.scm (ghc-markdown-unlit): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-05 18:47:40 +01:00
Tobias Geerinckx-Rice 12c15242f4 gnu: beep: Ignore substitute* return value.
* gnu/packages/terminals.scm (beep)[arguments]: End 'patch-makefile phase
with truth.
2017-01-05 17:40:54 +01:00
Leo Famulari 92e779592d gnu: libtool: Correct replacement shebang.
* gnu/packages/autotools.scm (libtool)[arguments]: Correct replacement
shebang in 'restore-ltmain-shebang' phase.
2017-01-05 11:32:44 -05:00
David Thompson 543bd0eede gnu: sdl2: Add fcitx input.
* gnu/packages/sdl.scm (sdl2)[inputs]: Add fcitx.
2017-01-05 11:27:10 -05:00
David Thompson e0101b54b7 gnu: sdl2: Fix double input events bug.
* gnu/packages/sdl.scm (sdl2)[inputs]: Add dbus, gblib, and ibus.
2017-01-05 11:22:32 -05:00
Leo Famulari f537ad0bf3 Revert "gnu: gawk: Don't replace 'sh' reference with 'bash'."
This commit causes too many rebuilds. It will be re-committed to core-updates.

This reverts commit 5b2834ae79.
2017-01-05 11:22:07 -05:00
Leo Famulari 5b2834ae79 gnu: gawk: Don't replace 'sh' reference with 'bash'.
* gnu/packages/gawk.scm (gawk)[arguments]: Use /bin/sh instead of /bin/bash in
'set-shell-file-name' phase.
2017-01-05 11:06:06 -05:00
Leo Famulari 78c172a56e gnu: libtool: Make sure all phases return a successful value.
* gnu/packages/autotools.scm (libtool)[arguments]: Return #t from 'pre-check'
and 'restore-ltmain-shebang' phases.
2017-01-05 10:46:34 -05:00
Marius Bakke d9d23101ce gnu: irssi: Update to 1.0.0.
* gnu/packages/irc.scm (irssi): Update to 1.0.0.
[arguments]: Remove --with-ncurses configure flag.
[native-inputs]: Move 'perl' to ...
[inputs]: ... here.
[home-page]: Use HTTPS.
2017-01-05 16:44:34 +01:00
Leo Famulari c5862bda95 gnu: libtool: Don't replace 'sh' reference with 'bash'.
Bash behaves differently based on how it is invoked (see Invocation in bash(1)).

* gnu/packages/autotools.scm (libtool)[arguments]: Use /bin/sh instead
of /bin/bash in 'pre-check' phase. Fix typo in comment.
2017-01-05 10:43:17 -05:00
ng0 98341757c8 gnu: libtool: Restore ltmain.sh shebang.
This fixes <http://bugs.gnu.org/25304>

* gnu/packages/autotools.scm (libtool)[arguments]: Add new phase
'restore-ltmain-shebang'.
[native-inputs]: Add help2man.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-05 10:43:17 -05:00
ng0 dc70626d26 gnu: libtool: Use 'modify-phases'.
* gnu/packages/autotools.scm (libtool): Use 'modify-phases'.
[arguments]: Use 'modify-phases'.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-05 10:43:14 -05:00
Marius Bakke 1bd858cc14 gnu: Fix indentation of some python packages.
This is a followup to abe2ec73..807a5b32.

* gnu/packages/python.scm (python-snowballstemmer,
  python-sphinx-cloud-sptheme, python-sphinx-alabaster-theme): Fix indentation.
2017-01-05 16:28:01 +01:00
Danny Milosavljevic 807a5b32bf gnu: Add python-sphinx-alabaster-theme.
* gnu/packages/python.scm (python-sphinx-alabaster-theme,
  python2-sphinx-alabaster-theme): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-05 16:17:27 +01:00
Danny Milosavljevic 754bfd7019 gnu: Add python-sphinx-cloud-sptheme.
* gnu/packages/python.scm (python-sphinx-cloud-sptheme,
  python2-sphinx-cloud-sptheme): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-05 16:17:27 +01:00
Danny Milosavljevic 89cd988b6c gnu: Add python-snowballstemmer.
* gnu/packages/python.scm (python-snowballstemmer,
  python2-snowballstemmer): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2017-01-05 16:17:26 +01:00
Marius Bakke 7d7ea947f5 gnu: sed: Update to 4.3.
* gnu/packages/base.scm (sed): Update to 4.3.
[source]: Use xz tarball. Remove upstreamed patch.
[arguments]: Fix '/bin/sh' -> 'bash' substitution.
[home-page]: Use https.
[native-inputs]: Add perl.
* gnu/packages/patches/sed-hurd-path-max.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-05 15:21:23 +01:00
José Miguel Sánchez García abe2ec735f gnu: Add beep.
* gnu/packages/terminals.scm (beep): New variable.

Co-authored-by: Tobias Geerinckx-Rice <me@tobias.gr>
2017-01-05 13:09:19 +01:00
Tobias Geerinckx-Rice 88a46c9812 gnu: Remove unused module import from (gnu packages mtools).
This is a follow-up to commit 3b0f2ba46b.

* gnu/packages/mtools.scm: Remove import of (gnu packages python).
2017-01-05 13:09:19 +01:00
Ben Woodcroft 19e5fb6030 gnu: ruby-nokogiri: Update to 1.7.0.1.
* gnu/packages/ruby.scm (ruby-nokogiri): Update to 1.7.0.1.
2017-01-05 21:00:51 +10:00
Ben Woodcroft 8e941f2068 gnu: ruby-hoe: Update to 3.16.0.
* gnu/packages/ruby.scm (ruby-hoe): Update to 3.16.0.
2017-01-05 20:52:22 +10:00
Ludovic Courtès 9410a5aa91 hydra: Add "powerpc-linux-gnu" as a cross-compilation target.
* build-aux/hydra/gnu-system.scm (%cross-targets): Add
"powerpc-linux-gnu".
2017-01-05 00:00:59 +01:00
Carlos Sánchez de La Lama 4a6f099e2c gnu: bootstrap: Add the dynamic linker name for "powerpc-linux".
This commit completes cross-compilation support for powerpc-linux-gnu.

* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add "powerpc-linux"
case.
2017-01-04 23:57:30 +01:00
Carlos Sánchez de La Lama 440a3143f0 gnu: linux-libre: Adjust for PowerPC.
* gnu/packages/linux.scm (system->defconfig): New procedure.
(linux-libre-headers)[arguments]: Use it in 'build' phase to determine
the target name.
* gnu/packages/cross-base.scm (cross-kernel-headers)[xlinux-headers]
(arguments): Likewise.
2017-01-04 23:57:05 +01:00
Carlos Sánchez de La Lama fc649d0aad gnu: gcc: Adjust for PowerPC.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add powerpc specific
substitutions for dynamic linker and start files locations in
'pre-configure' phase.
* gnu/packages/make-bootstrap.scm (%gcc-static)[arguments]: Add
"gcc/config/rs6000/sysv4.h" to the list of files in 'remove-lgcc_s'
phase.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-04 23:55:36 +01:00
Leo Famulari 69355e1283 doc: Add a Git hook that verifies signatures before pushing.
* HACKING (Commit Access): Describe the pre-push Git hook.
* etc/git/pre-push: New file.
2017-01-04 16:27:20 -05:00
Leo Famulari 5f0fabec54 gnu: unrtf: Fix CVE-2016-10091.
* gnu/packages/patches/unrtf-CVE-2016-10091.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/unrtf.scm (unrtf)[source]: Use it.
2017-01-04 14:42:58 -05:00
Alex Griffin 7a203059d3 gnu: libreoffice: Update to 5.1.6.2.
* gnu/packages/libreoffice.scm (libreoffice): Update to 5.1.6.2.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-04 14:37:58 -05:00
David Craven 3dcaa1226d gnu: ocamlmod: Enable tests.
Followup to 93eeadf022.

* gnu/packages/ocaml.scm (ocamlmod)[arguments]: Enable tests.

Problem reported by Julien Lepiller <julien@lepiller.eu>.
2017-01-04 19:10:01 +01:00
David Craven 337273e41f gnu: ocaml-ounit: Enable tests.
Followup to 7a76b4afd0.

* gnu/packages/ocaml.scm (ocaml-ounit)[arguments]: Enable tests.

Problem reported by Julien Lepiller <julien@lepiller.eu>.
2017-01-04 19:10:00 +01:00
Efraim Flashner 9c64f76e8a gnu: aria2: Update to 1.30.0.
* gnu/packages/bittorrent.scm (aria2): Update to 1.30.0.
2017-01-04 19:15:00 +02:00
Ricardo Wurmus 68f9067324 gnu: inkscape: Update to 0.92.0.
* gnu/packages/patches/inkscape-drop-wait-for-targets.patch: Remove it.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/inkscape.scm (inkscape): Update to 0.92.0.
[build-system]: Use "cmake-build-system".
[native-inputs]: Add glib:bin.
[arguments]: Remove obsolete arguments; disable tests.
2017-01-04 18:06:44 +01:00
Julien Lepiller 6548e53fcb gnu: Add ocaml-cmdliner.
* gnu/packages/ocaml.scm (ocaml-cmdliner): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:11 +01:00
Julien Lepiller eb1ba73185 gnu: Add ocaml-mtime.
* gnu/packages/ocaml.scm (ocaml-mtime): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:11 +01:00
Julien Lepiller 63147e5e1e gnu: Add ocaml-rresult.
* gnu/packages/ocaml.scm (ocaml-rresult): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:11 +01:00
Julien Lepiller a359c7277c gnu: Add ocaml-topkg.
* gnu/packages/ocaml.scm (ocaml-topkg): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:11 +01:00
Julien Lepiller 704b990c36 gnu: Add ocaml-result.
* gnu/packages/ocaml.scm (ocaml-result): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:11 +01:00
Julien Lepiller 44c23cb8d8 gnu: Add ocaml-bitstring.
* gnu/packages/ocaml.scm (ocaml-bitstring): New variable.
* gnu/packages/patches/ocaml-bitstring-fix-configure.patch: New file.
* gnu/local.mk (dist_patch_DATA): New patch.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:11 +01:00
Julien Lepiller a5b5bd1d18 gnu: Add ocaml-bisect.
* gnu/packages/ocaml.scm (ocaml-bisect): New variable.
* gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch:
  New file.
* gnu/local.mk (dist_patch_DATA): Add patch.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:10 +01:00
Julien Lepiller 3d598ebd35 gnu: Add ocaml-stringext.
* gnu/packages/ocaml.scm (ocaml-stringext): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:10 +01:00
Julien Lepiller 0472836fce gnu: Add ocaml-qtest.
* gnu/packages/ocaml.scm (ocaml-qtest): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:10 +01:00
Julien Lepiller ff891f10ed gnu: Add ocaml-frontc.
* gnu/packages/ocaml.scm (ocaml-frontc): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 17:41:10 +01:00
Ludovic Courtès b96a0640a3 graph: Add '%reverse-package-node-type'.
* guix/scripts/graph.scm (%reverse-package-node-type): New variable.
(%node-types): Add it.
* tests/graph.scm ("reverse package DAG"): New test.
* doc/guix.texi (Invoking guix refresh): Add cross-reference to
"Invoking guix graph".
(Invoking guix graph): Document 'reverse-package'.
2017-01-04 16:18:53 +01:00
Ludovic Courtès a614ce389f gnu: Add Guile-Bash.
* gnu/packages/guile.scm (guile-bash): New variable.
2017-01-04 16:18:52 +01:00
Ludovic Courtès d38bc9a9f6 grafts: Move caching to a new 'with-cache' macro.
* guix/grafts.scm (with-cache): New macro.
(cumulative-grafts)[return/cache]: Remove.
Use 'with-cache' instead.
2017-01-04 16:18:52 +01:00
Julien Lepiller ddf2b503b1 gnu: Add ocaml-zarith.
* gnu/packages/ocaml.scm (ocaml-zarith): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:05:28 +01:00
Julien Lepiller 93eeadf022 gnu: Add ocamlmod.
* gnu/packages/ocaml.scm (ocamlmod): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:05:25 +01:00
Julien Lepiller bc2c3bc627 gnu: Add camlzip.
* gnu/packages/ocaml.scm (camlzip): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:05:06 +01:00
Julien Lepiller 7a76b4afd0 gnu: Add ocaml-ounit.
* gnu/packages/ocaml.scm (ocaml-ounit): New variable.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:04:51 +01:00
Julien Lepiller ad3d730e3a gnu: camlp4: Install camlp4 META file.
* gnu/packages/ocaml.scm (camlp4)[arguments]: Install in OCAMLPATH and
  META file.
  (ocaml-findlib)[arguments]: Delete camlp4 META file.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:04:32 +01:00
Julien Lepiller 56f73eadc0 gnu: ocaml: Use a helper function to download from ocaml-forge.
* gnu/packages/ocaml.scm (ocaml-forge-origin): New procedure.
  (lablgtk)[origin]: Use it.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:03:56 +01:00
Julien Lepiller e6876cb9dc gnu: Add ocaml-build-system.
* guix/build/ocaml-build-system.scm: New file.
* guix/build-system/ocaml.scm: New file.
* Makefile.am (MODULES): Add them.
* gnu/packages/ocaml.scm (ocaml)[native-search-paths]: Adjuste OCAMLPATH.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:03:39 +01:00
Julien Lepiller e0ddaa8be3 gnu: camlp4: Compile native version.
* gnu/packages/ocaml.scm (camlp4)[arguments]: Disable parallel-build.
  Change default target to "all" to compile native and byte version.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:03:16 +01:00
David Craven 2b1f7b83f7 gnu: ocaml: Fix indentation.
* gnu/packages/ocaml.scm (ocaml): Fix indentation.
2017-01-04 16:03:07 +01:00
Julien Lepiller 796a17ab01 gnu: ocaml: Add CAML_LD_LIBRARY_PATH search-path.
* gnu/packages/ocaml.scm (ocaml)[native-search-paths]: Add
  CAML_LD_LIBRARY_PATH.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:03:00 +01:00
Julien Lepiller 8bd10c1082 gnu: ocaml: Add a .file directive to generated .s files.
* gnu/packages/ocaml.scm (ocaml)[origin]: Add patch.
* gnu/packages/patches/ocaml-Add-a-.file-directive.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.

Signed-off-by: David Craven <david@craven.ch>
2017-01-04 16:02:38 +01:00
David Craven 1ff755d1d5 gnu: Reorder imports in (gnu packages ocaml).
* gnu/packages/ocaml.scm: Reorder imports alphabetically.
2017-01-04 14:07:56 +01:00
David Craven d8e0a08c26 gnu: Use 'license:' prefix in (gnu packages ocaml).
* gnu/packages/ocaml.scm (ocaml, opam, camlp4, camlp5, hevea, coq,
  proof-general, ocaml-menhir, lablgtk, unison, ocaml-findlib)[license]:
  Add prefix.
2017-01-04 14:07:56 +01:00
David Craven 3254e1aba9 gnu: Add idris-lens.
* gnu/packages/idris.scm (idris-lens): New variable.
2017-01-04 12:11:14 +01:00
David Craven 5a16d828b3 gnu: Add idris-bifunctors.
* gnu/packages/idris.scm (idris-bifunctors): New variable.
2017-01-04 12:11:14 +01:00
David Craven 4e17fff386 gnu: Add idris-wl-pprint.
* gnu/packages/idris.scm (idris-wl-pprint): New variable.
2017-01-04 12:11:14 +01:00
David Craven ea3b38f1e1 gnu: Add idris-lightyear.
* gnu/packages/idris.scm (idris-lightyear, idris-default-arguments):
  New variables.
2017-01-04 12:11:14 +01:00
David Craven ae482ce12d gnu: idris: Move to (gnu packages idris).
* gnu/packages/haskell.scm: Move 'idris' to...
* gnu/packages/idris.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add idris.scm.
2017-01-04 11:51:36 +01:00
David Craven c7a7129c5a gnu: idris: Update to 0.99.
* gnu/packages/haskell.scm (idris): Update to 0.99.
2017-01-04 11:44:07 +01:00
David Craven c0d5b6452b gnu: Order module imports in (gnu packages haskell) alphabetically.
* gnu/packages/haskell.scm: Order module imports alphabetically.
2017-01-04 11:44:07 +01:00
David Craven ee17a9e06e git-download: Add some helpers.
* guix/git-download.scm (git-version, git-file-name): New variables.
2017-01-04 11:44:07 +01:00
Ricardo Wurmus 9b4ec5730a doc: Change wording for "--with-graft".
* doc/guix.texi (Package Transformation Options): Change wording for
"--with-graft" documentation.
2017-01-04 11:42:31 +01:00
Ricardo Wurmus de793e9a5a gnu: ghc-language-c: Fix up.
* gnu/packages/haskell.scm (ghc-language-c): Fix up indentation and
description.
2017-01-04 11:41:43 +01:00
David Craven 3b7ccbe94c build-system: cargo: Use correct cargo.
* gnu/packages/rust.scm (cargo-bootstrap): Make private.
* guix/build-system/cargo.scm (default-cargo): Use cargo.
2017-01-04 11:29:15 +01:00
David Craven b5a09649db gnu: Add cargo.
* gnu/packages/rust.scm (cargo): New variable.
2017-01-04 11:29:14 +01:00
Danny Milosavljevic 2d2388e243 gnu: Add ghc-language-c.
* gnu/packages/haskell.scm (ghc-language-c): New variable.
2017-01-04 11:27:24 +01:00
Leo Famulari 324f4fc559 gnu: mcrypt: Fix patches for CVE-2012-{4409,4527}.
This fixes CVE-2012-{4409,4527}.

This is a followup to commit fd1461879c.

* gnu/packages/patches/mcrypt-CVE-2012-4409.patch,
gnu/packages/patches/mcrypt-CVE-2012-4527.patch: Apply the patches to the mcrypt
source code.
2017-01-04 02:46:51 -05:00
Alex Griffin 37e8a2e219 gnu: calibre: Update to 2.76.0.
* gnu/packages/ebook.scm (calibre): Update to 2.76.0.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-04 00:00:34 -05:00
Alex Griffin f7e9f1cadc gnu: feh: Update to 2.18.
* gnu/packages/image-viewers.scm (feh): Update to 2.18.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 23:39:22 -05:00
Alex Griffin eb5378f902 gnu: bs1770gain: Update to 0.4.12.
* gnu/packages/audio.scm (bs1770gain): Update to 0.4.12.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 23:39:22 -05:00
Alex Griffin 648733dc14 gnu: dwm: Update to 6.1.
* gnu/packages/suckless.scm (dwm): Update to 6.1.
[inputs]: Add libxft and freetype.
[arguments]: Set FREETYPEINC in #:make-flags.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 23:39:22 -05:00
Alex Griffin bc47382a5d gnu: dmenu: Update to 4.6.
* gnu/packages/suckless.scm (dmenu): Update to 4.6.
[inputs]: Add libxft and freetype.
[arguments]: Set FREETYPEINC in #:make-flags.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 23:39:21 -05:00
Alex Griffin f3a53f3c8f gnu: slock: Update to 1.4.
* gnu/packages/suckless.scm (slock): Update to 1.4.
[source] Remove CVE-2016-6866 patch (no longer needed).
* gnu/packages/patches/slock-CVE-2016-6866.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 23:39:21 -05:00
Alex Griffin 8efd807f95 gnu: trash-cli: Update to 0.17.1.1.
* gnu/packages/shellutils.scm (trash-cli): Update to 0.17.1.1.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 23:39:21 -05:00
Tobias Geerinckx-Rice 3b40213923 gnu: Add wimlib.
* gnu/packages/backup.scm (wimlib): New variable.
2017-01-04 05:14:22 +01:00
Tobias Geerinckx-Rice 835d371f4b gnu: parallel: Update to 20161222.
* gnu/packages/parallel.scm (parallel): Update to 20161222.
2017-01-04 05:14:22 +01:00
Tobias Geerinckx-Rice 0b2a91d8b7 gnu: global: Update to 6.5.6.
* gnu/packages/code.scm (global): Update to 6.5.6.
2017-01-04 05:14:22 +01:00
Tobias Geerinckx-Rice 02dadd3827 gnu: nano: Update to 2.7.3.
* gnu/packages/nano.scm (nano): Update to 2.7.3.
2017-01-04 05:14:22 +01:00
Tobias Geerinckx-Rice 3b3b60d037 gnu: Use HTTPS for all sourceforge.net home pages.
* gnu/packages/admin.scm (mingetty, clusterssh)[home-page]: Use HTTPS.
* gnu/packages/audio.scm (libbs2b, soxr)[home-page]: Likewise.
* gnu/packages/bioinformatics.scm (bless)[home-page]: Likewise.
* gnu/packages/display-managers.scm (slim)[home-page]: Likewise.
* gnu/packages/games.scm (extremetuxracer)[home-page]: Likewise.
* gnu/packages/ghostscript.scm (gs-fonts)[home-page]: Likewise.
* gnu/packages/haskell.scm (ghc-regex-base, ghc-regex-posix,
ghc-regex-compat)[home-page]: Likewise.
* gnu/packages/image.scm (imlib2)[home-page]: Likewise.
* gnu/packages/libreoffice.scm (librevenge, libcmis, libodfgen, libmwaw)
[home-page]: Likewise.
* gnu/packages/linux.scm (hdparm, acpid, libavc1394, rng-tools)
[home-page]: Likewise.
* gnu/packages/mail.scm (esmtp)[home-page]: Likewise.
* gnu/packages/mp3.scm (ripperx)[home-page]: Likewise.
* gnu/packages/onc-rpc.scm (libtirpc)[home-page]: Likewise.
* gnu/packages/perl.scm (perl-czplib)[home-page]: Likewise.
* gnu/packages/python.scm (python-pyasn1-modules)[home-page]: Likewise.
* gnu/packages/xdisorg.scm (xosd)[home-page]: Likewise.
2017-01-04 05:14:22 +01:00
Christopher Baines 0916dc526e gnu: Add emacs-git-gutter
* gnu/packages/emacs.scm (emacs-git-gutter): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 22:46:55 -05:00
Kei Kebreau ea5cc29561 gnu: supertux: Update to 0.5.1.
* gnu/packages/games.scm (supertux): Update to 0.5.1.
2017-01-03 18:07:45 -05:00
Marius Bakke 0c1b29db3a gnu: m4: Update to 1.4.18.
* gnu/packages/m4.scm (m4): Update to 1.4.18.
[source]: Use xz compressed tarball.
2017-01-03 19:57:22 +01:00
Leo Famulari f339f2773d gnu: assword: Update to 0.10.
* gnu/packages/password-utils.scm (assword): Update to 0.10.
[arguments]: Use Python 3 instead of Python 2.
[inputs]: Use Python 3 variants of inputs. Replace python2-pygpgme with
python-gpg. Remove python2-pygtk. Add python-pygobject.
[native-inputs]: Replace help2man with txt2man.
[arguments]: Remove PYTHONPATH from 'Makefile' in the 'manpage' phase.
2017-01-03 12:35:45 -05:00
Leo Famulari 7637de2313 gnu: Add python-xdo.
* gnu/packages/python.scm (python-xdo): New variable.
(python2-xdo): Use package-with-python2.
2017-01-03 12:35:44 -05:00
Leo Famulari e871c332a0 gnu: python2-xdo: Update to 0.3.
* gnu/packages/python.scm (python2-xdo): Update to 0.3.
2017-01-03 12:35:44 -05:00
Leo Famulari e3dd1f0cb8 gnu: Add python-gpg.
* gnu/packages/gnupg.scm (python-gpg, python2-gpg): New variable.
2017-01-03 12:35:44 -05:00
Leo Famulari 9e0f16f23f gnu: gpgme: Update to 1.8.0.
* gnu/packages/gnupg.scm (gpgme): Update to 1.8.0.
[arguments]: Don't set 'GPG=gpg2' in #:configure-flags. GnuPG-2.x is
installed as 'gpg' on Guix.
2017-01-03 12:35:44 -05:00
Ludovic Courtès 4d0a3d8e9f system: grub: Load relevant EFI modules on EFI systems.
* gnu/system/grub.scm (eye-candy)[setup-gfxterm-body]: Add 'insmod'
invocations when ${grub_platform} is "efi".
2017-01-03 18:16:01 +01:00
Ludovic Courtès 70c6341110 gnu: Add Zile-on-Guile.
* gnu/packages/zile.scm (zile-on-guile): New variable.
2017-01-03 18:16:01 +01:00
Marius Bakke e2c3037427 gnu: pcsc-lite: Update to 1.8.20 [fixes CVE-2016-10109].
* gnu/packages/security-token.scm (pcsc-lite): Update to 1.8.20.
2017-01-03 17:15:04 +01:00
Manolis Ragkousis 484437bd43 guix: build: make-bootstrap: Copy libpthread_nonshared.a to the new system.
* guix/build/make-bootstrap.scm (%libc-object-files-rx): Update regexp.
2017-01-03 16:00:43 +02:00
Manolis Ragkousis 367f701379 gnu: glibc-hurd: Disable werror.
* gnu/packages/base.scm (glibc/hurd)[arguments]: Add "--disable-werror".
2017-01-03 16:00:43 +02:00
Manolis Ragkousis 62596a158b gnu: Use hurd-triplet? to check if GNU/Hurd.
* gnu/packages/make-bootstrap.scm (hurd-triplet?): Move it from here..
* gnu/packages/hurd.scm: ..to here. New exported procedure.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
  [arguments]: Replace string-match.
  [inputs]: Same.
* gnu/packages/cross-base.scm (cross-libc)[native-inputs]: Same.
2017-01-03 16:00:39 +02:00
Kei Kebreau 6a37872cd2 gnu: chicken: Fix CVE-2016-{6830,6831}.
* gnu/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch: New file.
* gnu/local.mk (dist_patch_DATA): Use it.
* gnu/packages/scheme.scm (chicken)[source]: Use it.
2017-01-03 08:35:02 -05:00
Kei Kebreau b9b6db45e8 gnu: chicken: Update to 4.11.1.
* gnu/packages/scheme.scm (chicken): Update to 4.11.1.
2017-01-03 08:34:54 -05:00
Julien Lepiller d338237d8c services: nginx: Make service extensible.
* gnu/services/web.scm (<nginx-configuration>)[server-blocks]: New
field.
(nginx-activation): When CONFIG-FILE is #f, use 'default-nginx-config'.
(nginx-shepherd-service): Likewise.
(nginx-service-type): Add 'compose' and 'extend' fields.
(nginx-service): Change default value of #:server-list to '(), and
default value of #:config-file to #f.
* doc/guix.texi (Web Services): Document it.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2017-01-03 14:30:44 +01:00
Julien Lepiller 4e9ae301ce services: nginx: Fix multiple index and server name.
* gnu/services/web.scm (config-domain-strings, config-index-string): separate
names with a space.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-03 14:30:44 +01:00
Julien Lepiller 3b9b12ef49 services: nginx: Rename "vhost" to "server".
* gnu/services/web.scm (<nginx-vhost-configuration>): Rename to...
(<nginx-server-configuration>): ... this.
* doc/guix.texi (Web Services): Adjust accordingly.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-03 14:30:44 +01:00
Roel Janssen 7b030c9f9b gnu: r-plotrix: Update to 3.6-4.
* gnu/packages/statistics.scm (r-plotrix): Update to 3.6-4.
2017-01-03 13:51:05 +01:00
Roel Janssen 0c74399d98 gnu: r-git2r: Update to 0.18.0.
* gnu/packages/statistics.scm (r-git2r): Update to 0.18.0.
2017-01-03 13:49:18 +01:00
Roel Janssen 807db78fc9 gnu: r-hmisc: Update to 4.0-2.
* gnu/packages/statistics.scm (r-hmisc): Update to 4.0-2.
  [propagated-inputs]: Add r-base64enc.
2017-01-03 13:46:14 +01:00
Roel Janssen 437d064dc5 gnu: r-openssl: Update to 0.9.6.
* gnu/packages/statistics.scm (r-openssl): Update to 0.9.6.
2017-01-03 13:39:51 +01:00
Roel Janssen 596fcfac88 gnu: r-jsonlite: Update to 1.2.
* gnu/packages/web.scm (r-jsonlite): Update to 1.2.
2017-01-03 13:37:55 +01:00
Roel Janssen da13738ef0 gnu: r-ggplot2: Update to 2.2.1.
* gnu/packages/statistics.scm (r-ggplot2): Update to 2.2.1.
2017-01-03 13:34:53 +01:00
Roel Janssen 407a280103 gnu: r-genomicranges: Update to 1.26.2.
* gnu/packages/bioinformatics.scm (r-genomicranges): Update to 1.26.2.
2017-01-03 13:28:35 +01:00
Roel Janssen ac370a3397 gnu: r-genomeinfodb: Update to 1.10.2.
* gnu/packages/bioinformatics.scm (r-genomeinfodb): Update to 1.10.2.
2017-01-03 12:47:36 +01:00
Efraim Flashner 4fb14fad94 gnu: sudo: Update to 1.8.19p1.
* gnu/packages/admin.scm (sudo): Update to 1.8.19p1.
2017-01-03 10:12:27 +02:00
Brandon Ludwig b1251a2f96 gnu: arc-theme: Update to 20161119.
* gnu/packages/gnome.scm (arc-theme): Update to 20161119.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 00:29:42 -05:00
Maxim Cournoyer 6155186838 gnu: gimp: Enable PDF support
* gnu/packages/gimp.scm (gimp)[inputs]: Add poppler.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-03 00:18:51 -05:00
Leo Famulari 47932c0d44 gnu: lynx: Update to 2.8.9dev.11 [fixes CVE-2016-9179].
* gnu/packages/lynx.scm (lynx): Update to 2.8.9dev.11.
2017-01-02 23:52:12 -05:00
Leo Famulari b3e2ea8d48 gnu: Add sonic.
* gnu/packages/speech.scm (sonic): New variable.
2017-01-02 18:03:10 -05:00
Ludovic Courtès d925cdc35f ui: Keep the word "Copyright" untranslated.
Suggested by John Darrington <john@darrington.wattle.id.au>.

* guix/ui.scm (show-version-and-exit): Make "Copyright (C) 2017"
untranslatable, except "(C)" itself, like Gnulib's version-etc does.
2017-01-02 23:14:36 +01:00
Mathieu OTHACEHE 5819431c59 gnu: Add cmst.
* gnu/packages/connman.scm (cmst): New variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-02 22:55:33 +01:00
Mathieu OTHACEHE 125e3cdece gnu: connman: Add dependency on polkit.
* gnu/packages/connman.scm (connman)[arguments]: Add "--enable-polkit".
[inputs]: Add POLKIT.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-02 22:55:33 +01:00
Efraim Flashner 832d60dc01 gnu: mpv: Update to 0.23.0.
* gnu/packages/video.scm (mpv): Update to 0.23.0.
2017-01-02 21:48:49 +02:00
Efraim Flashner 8d2de491e5 gnu: openvpn: Update to 2.3.14.
* gnu/packages/vpn.scm (openvpn): Update to 2.3.14.
2017-01-02 21:48:48 +02:00
Efraim Flashner 68b3627cd6 gnu: ffmpeg@2.8: Update to 2.8.10.
* gnu/packages/video.scm (ffmpeg@2.8): Update to 2.8.10.
2017-01-02 21:48:48 +02:00
Efraim Flashner 4b50daab00 gnu: jasper: Update to 2.0.10.
* gnu/packages/image.scm (jasper): Update to 2.0.10.
2017-01-02 21:48:38 +02:00
Ludovic Courtès eeb05e87d3 guix hash: '-x' excludes '.git' even when it is a regular file.
* guix/scripts/hash.scm (guix-hash)[vcs-file?]: Add case for '.git'
regular files.
2017-01-02 15:23:21 +01:00
Ludovic Courtès 1a49a10a94 gnu: fftw: Factorize creation of the --enable-threads variant.
* gnu/packages/algebra.scm (pthread-variant): New procedure.
(fftw-with-threads, fftwf-with-threads): Use it.
2017-01-02 14:54:24 +01:00
Ludovic Courtès 7355634db3 gnu: Disambiguate packages with the same name.
* gnu/packages/algebra.scm (fftw-with-threads, fftwf-with-threads): Add
'name' field.
* gnu/packages/llvm.scm (llvm-for-extempore): Likewise.
2017-01-02 14:54:24 +01:00
Ludovic Courtès 9af076245f gnu: gfortran: Remove non-'eq?' duplicate of gfortran@4.9.
* gnu/packages/gcc.scm (gfortran): Turn into an alias for GFORTRAN-4.9.
2017-01-02 14:54:24 +01:00
Tobias Geerinckx-Rice 1b5ea0922f gnu: python-s3transfer: Update to 0.1.10.
* gnu/packages/python.scm (python-s3transfer): Update to 0.1.10.
2017-01-02 08:37:26 +01:00
Tobias Geerinckx-Rice 1f89fb1691 gnu: python-greenlet: Update to 0.4.11.
* gnu/packages/python.scm (python-greenlet): Update to 0.4.11.
2017-01-02 08:37:25 +01:00
Tobias Geerinckx-Rice 3753f2e6e9 gnu: python-mako: Update to 1.0.6.
* gnu/packages/python.scm (python-mako): Update to 1.0.6.
2017-01-02 08:37:25 +01:00
Tobias Geerinckx-Rice af27e845e1 gnu: awscli: Update to 1.11.35.
* gnu/packages/python.scm (awscli): Update to 1.11.35.
2017-01-02 08:37:24 +01:00
Tobias Geerinckx-Rice bbb99d6b37 gnu: python-werkzeug: Update to 0.11.15.
* gnu/packages/python.scm (python-werkzeug): Update to 0.11.15.
2017-01-02 08:37:23 +01:00
Tobias Geerinckx-Rice 27f9148e1d gnu: python-backports-abc: Update to 0.5.
* gnu/packages/python.scm (python-backports-abc): Update to 0.5.
2017-01-02 08:37:23 +01:00
Tobias Geerinckx-Rice d79fa7da1b gnu: python-decorator: Update to 4.0.10.
* gnu/packages/python.scm (python-decorator): Update to 4.0.10.
2017-01-02 08:37:22 +01:00
Tobias Geerinckx-Rice 819939cb94 gnu: python-pycparser: Use ‘modify-phases’ syntax.
* gnu/packages/python.scm (python-pycparser)[arguments]: Use
‘modify-phases’.
2017-01-02 08:37:21 +01:00
Tobias Geerinckx-Rice 5043b20dcd gnu: python-pycparser: Update to 2.17.
* gnu/packages/python.scm (python-pycparser): Update to 2.17.
2017-01-02 08:28:28 +01:00
Leo Famulari 0d48ff811f gnu: beets: Build with Python 3.
* gnu/packages/music.scm (beets)[arguments]: Build with python@3.
(native-inputs): Use Python-2 variants of all inputs.
(inputs): Use Python-2 variants of all inputs. Remove python-pyechonest.
2017-01-01 21:06:32 -05:00
Leo Famulari 27ccefc3d2 gnu: beets: Update to 1.4.2.
* gnu/packages/music.scm (beets): Update to 1.4.2.
2017-01-01 21:06:24 -05:00
Alex Vong 20be64dcf7 gnu: tar: Fix CVE-2016-6321.
* gnu/packages/patches/tar-CVE-2016-6321.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/base.scm (tar)[source]: Use it.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-01 20:19:36 -05:00
Leo Famulari 2e161eafd8 gnu: python-pyicu: Update to 1.9.5.
* gnu/packages/python.scm (python-pyicu, python2-pyicu): Update to 1.9.5.
[source]: Use pypi-uri.
2017-01-01 20:15:06 -05:00
Theodoros Foradis 9a93f57473 gnu: yosys: Update to 0.7.
* gnu/packages/fpga.scm (yosys): Update to 0.7.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-01 20:06:43 -05:00
Theodoros Foradis f90f6b683e gnu: yosys: Add xdot functionality.
* gnu/packages/fpga.scm (yosys)[inputs]: Add xdot, graphviz and psmisc.
[arguments]: Add 'fix-paths' phase.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-01 20:06:43 -05:00
Theodoros Foradis abdd28e8c1 gnu: Add xdot.
* gnu/packages/graphviz.scm (xdot): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-01 20:06:43 -05:00
Ludovic Courtès 74d862e8a2 ui: It's 2017 now!
* guix/ui.scm (show-version-and-exit): Change year to 2017.
2017-01-01 23:38:52 +01:00
Ludovic Courtès a6e0ae4046 syscalls: 'terminal-columns' swallows ENOSYS.
* guix/build/syscalls.scm (terminal-columns): Catch ENOSYS.
2017-01-01 23:38:07 +01:00
Ludovic Courtès 231eddc88a services: cuirass: Remove 'cuirass-service' procedure.
* gnu/services/cuirass.scm (<cuirass-configuration>)[specifications]:
Remove default value.
(cuirass-service): Remove.
* doc/guix.texi (Continuous Integration): Adjust accordingly.
2017-01-01 23:30:31 +01:00
Ludovic Courtès 8de938d59a services: cuirass: Allow for gexps in specifications.
* gnu/services/cuirass.scm (<cuirass-configuration>)[specifications]:
Change default value to #~'().
(cuirass-shepherd-service): Remove conditional for "--specifications".
Use 'scheme-file' instead of 'plain-file'.  Change file name to
"cuirass-specs.scm".
* doc/guix.texi (Continuous Integration): Change the example to use a
gexp where #:file refers to a file within Cuirass.  Adjust
documentation.
2017-01-01 23:30:30 +01:00
Ludovic Courtès fef494d27d gnu-maintenance: Update ViewVC URLs.
* guix/gnu-maintenance.scm (%gnumaint-base-url): Change "/gnumaint" to
"/womb/gnumaint".
(%package-list-url, %package-description-url): Adjust accordingly.
2017-01-01 23:30:30 +01:00
Ludovic Courtès 5e2e4a51f9 gexp: Support 'ungexp' forms in improper lists.
* guix/gexp.scm (gexp)[collect-escapes, substitute-references]: Replace
the (exp0 exp ...) patterns with (exp0 . exp) to match improper lists.
Adjust clause bodies accordingly.
* tests/gexp.scm ("one input package, dotted list"): New test.
2017-01-01 23:30:30 +01:00
Ludovic Courtès 4a6e889feb gexp: Properly report substitution errors.
* guix/gexp.scm (gexp)[substitute-ungexp]: Wrap body in 'with-syntax'
and pass EXP as the last argument to 'syntax-error'.
[substitute-ungexp-splicing]: Pass EXP as the last argument to
'syntax-error'.
2017-01-01 23:30:30 +01:00
Leo Famulari 7be13d0006 gnu: python-ndg-httpsclient: Use pypi-uri.
* gnu/packages/python.scm (python-ndg-httpsclient, python2-ndg-httpsclient)
[source]: Use pypi-uri.
2017-01-01 17:01:32 -05:00
Ricardo Wurmus 5dbeccf5b4 gnu: diffoscope: Embed tool references.
Fixes <http://bugs.gnu.org/25315>.

* gnu/packages/package-management.scm (diffoscope)[inputs]: Add
colordiff and vim.
[arguments]: Add "embed-tool-references" build phase to embed references
to "colordiff", "xxd", and "readelf".
2017-01-01 21:53:50 +01:00
Alex Vong ed88dd4512 gnu: mariadb: Update to 10.1.20.
* gnu/packages/databases.scm (mariadb): Update to 10.1.20.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-01 14:51:04 -05:00
Alex Vong e63b19f509 gnu: mysql: Update to 5.7.17.
* gnu/packages/databases.scm (mysql): Update to 5.7.17.

Signed-off-by: Leo Famulari <leo@famulari.name>
2017-01-01 14:45:23 -05:00
David Craven f1d136957d build-system: cargo: Handle Cargo.lock file not present.
* guix/build-system/cargo.scm (cargo-build): Add src output.
  (private-keywords): Add #:outputs.
* guix/build/cargo-build-system.scm (configure): Use /share/rust-source
  when replacing inputs.
  (build, check): Don't do anything when there isn't a Cargo.lock file
  present.
  (install): Install sources to src output. When a Cargo.lock file is
  present use cargo install to install binaries to out.
* guix/import/crate.scm (make-crate-sexp): Importer uses the src output
  for crate inputs by default.
* guix/import/utils.scm (package-names->package-inputs, maybe-inputs,
  maybe-native-inputs): Take an optional output argument.
* tests/crate.scm (crate->guix-package test): Update.

Problem reported by Francisco Gómez García <espectalll@kydara.com>.
2017-01-01 18:20:52 +01:00
David Craven f53a5514e0 import: crate: Provide a default home-page value.
* guix/import/crate.scm (make-crate-sexp): Provide a default home-page
  value.
* tests/crate.scm (test-crate): Add repository field.

Problem reported by ng0 <ng0@libertad.pw>.
2017-01-01 18:12:06 +01:00
David Craven dc77498c1c build-system: cargo: Make Cargo.toml writeable.
* guix/build/cargo-build-system.scm (configure): Make sure Cargo.toml
  is writeable before attempting modification.

Problem reported by Danny Milosavljevic <dannym@scratchpost.org>.
2017-01-01 18:11:57 +01:00
Ricardo Wurmus 395bbfdbea gnu: Add propeller-development-suite.
* gnu/packages/embedded.scm (propeller-development-suite): New variable.
2017-01-01 13:56:28 +01:00
Ricardo Wurmus 3ebc86d9bd gnu: Add spinsim.
* gnu/packages/embedded.scm (spinsim): New variable.
2017-01-01 13:56:28 +01:00
Ricardo Wurmus 0a7860c438 gnu: Add spin2cpp.
* gnu/packages/embedded.scm (spin2cpp): New variable.
2017-01-01 13:56:28 +01:00
Ricardo Wurmus c6b96af794 gnu: Add propeller-load.
* gnu/packages/embedded.scm (propeller-load): New variable.
2017-01-01 13:56:28 +01:00
Ricardo Wurmus 150e0a1ec6 gnu: Add openspin.
* gnu/packages/embedded.scm (openspin): New variable.
2017-01-01 13:56:27 +01:00
Ricardo Wurmus eb88fbafcd gnu: Add propeller-toolchain.
* gnu/packages/embedded.scm (propeller-toolchain): New variable.
2017-01-01 13:56:27 +01:00
Ricardo Wurmus 0d0079b2c5 gnu: Add proplib.
* gnu/packages/embedded.scm (proplib): New variable.
2017-01-01 13:56:27 +01:00
Ricardo Wurmus 68cb27840e gnu: Add propeller-gcc.
* gnu/packages/embedded.scm (propeller-gcc): New variable.
2017-01-01 13:56:27 +01:00
Ricardo Wurmus 2d7c92134e gnu: Add propeller-binutils.
* gnu/packages/embedded.scm (propeller-binutils): New variable.
2017-01-01 13:56:27 +01:00
Ricardo Wurmus 6f5b1c9107 gnu: Add dummy linker for propeller-elf.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add case for
propeller-elf.
2017-01-01 13:56:27 +01:00
Ricardo Wurmus c26ba570cc gnu: clisp: Remove timestamps.
* gnu/packages/lisp.scm (clisp)[arguments]: Add "remove-timestamps"
phase to remove "__DATE__" and "__TIME__".
2017-01-01 13:55:50 +01:00
Ricardo Wurmus 636c77d066 gnu: clisp: Use modify-phases syntax.
* gnu/packages/lisp.scm (clisp)[arguments]: Use modify-phases syntax.
2017-01-01 13:55:50 +01:00
Alex Kost 6f7bcaad6a Update .mailmap.
* .mailmap: Add new entries for Alex Sassmannshausen, Ben Woodcroft,
Daniel Pimentel, David Hashe, George Clemmer, Ivan Vilata i Balaguer,
Jeff Mickey, John J. Foerch, Marek Benc, Pjotr Prins, Raoul Jean Pierre
Bonnal, Rene Saavedra, 宋文武, Stefan Reichör, Thomas Danckaert and
Vincent Legoll.
2017-01-01 11:47:08 +03:00
Alex Kost c50dc711a1 gnu: manaplus: Update to 1.6.12.24.
* gnu/packages/games.scm (manaplus): Update to 1.6.12.24.
2017-01-01 11:47:08 +03:00
Ben Woodcroft 25d84d3122 gnu: python-dendropy: Update to 4.2.0.
* gnu/packages/bioinformatics.scm (python-dendropy): Update to 4.2.0.
[source]: Remove patch.
(python2-dendropy)[source]: Use the same source as python-dendropy.
* gnu/packages/patches/python-dendropy-exclude-failing-tests.patch: Remove
file.
* gnu/local.mk (dist_patch_DATA): Remove it.
2017-01-01 16:47:47 +10:00
Ben Woodcroft 322a583fcf gnu: diamond: Update to 0.8.31.
* gnu/packages/bioinformatics.scm (diamond): Update to 0.8.31.
2017-01-01 16:47:47 +10:00
Ludovic Courtès 7fc2d377d1 gnu: nagios: Update to 4.2.4 [fixes CVE-2016-{9565,9566}].
* gnu/packages/monitoring.scm (nagios): Update to 4.2.4.
[native-inputs]: New field.
2016-12-31 20:02:59 +01:00
Ludovic Courtès f11c444d44 Add 'guix copy'.
* guix/scripts/copy.scm: New file.
* guix/scripts/archive.scm (options->derivations+files): Export.
* doc/guix.texi (Invoking guix copy): New node.
* Makefile.am (MODULES) [HAVE_GUILE_SSH]: Add guix/scripts/copy.scm.
* po/guix/POTFILES.in: Likewise.
2016-12-31 18:35:29 +01:00
Ludovic Courtès 13164a2102 ssh: 'retrieve-files' detects remote export failures.
* guix/ssh.scm (retrieve-files): Call 'lookahead-u8' and raise a
'&message' condition when it returns EOF.
2016-12-31 18:35:29 +01:00
Ludovic Courtès 23973e4fbf ssh: 'send-files' returns the list of items sent.
* guix/ssh.scm (send-files): Return MISSING.
2016-12-31 18:35:29 +01:00
Ludovic Courtès e9629e8221 ssh: Allow transfers of complete closures.
* guix/ssh.scm (store-export-channel, send-files)
(file-retrieval-port, retrieve-files): Add #:recursive? parameter and
honor it.
2016-12-31 18:35:29 +01:00
Ludovic Courtès c0b2d08bf4 git-download: Use a single download script for all derivations.
That way, we have only one /gnu/store/…-git-download instead of one
/gnu/store/…-PACKAGE-checkout-builder for each package.

This is a followup to ced200328c.

* guix/git-download.scm (git-fetch)[build]: Get the URL, commit, and
recursive parameter using 'getenv'.  Pass #:script-name and #:env-vars
arguments to 'gexp->derivation'.
2016-12-31 18:35:29 +01:00
Tobias Geerinckx-Rice b13a5b4d16 gnu: python-graphql-relay: Update to 0.4.5.
* gnu/packages/python.scm (python-graphql-relay): Update to 0.4.5.
2016-12-31 16:51:56 +01:00
Tobias Geerinckx-Rice 0c315fb394 gnu: python-freezegun: Update to 0.3.8.
* gnu/packages/python.scm (python-freezegun): Update to 0.3.8.
2016-12-31 16:51:56 +01:00
Tobias Geerinckx-Rice 234ade2d7b gnu: python-ply: Update to 3.9.
* gnu/packages/python.scm (python-ply): Update to 3.9.
[source]: Use pypi-uri.
2016-12-31 16:51:55 +01:00
Tobias Geerinckx-Rice ab0c342924 gnu: python-pyquery: Update to 1.2.17.
* gnu/packages/python.scm (python-pyquery): Update to 1.2.17.
2016-12-31 16:51:55 +01:00
Tobias Geerinckx-Rice 42734b9a88 gnu: python-click-log: Update to 0.1.8.
* gnu/packages/python.scm (python-click-log): Update to 0.1.8.
2016-12-31 16:51:54 +01:00
Tobias Geerinckx-Rice ae476d01da gnu: python-ndg-httpsclient: Update to 0.4.2.
* gnu/packages/python.scm (python-ndg-httpsclient): Update to 0.4.2.
2016-12-31 16:51:54 +01:00
Tobias Geerinckx-Rice f165648e1b gnu: python-ipykernel: Update to 4.5.2.
* gnu/packages/python.scm (python-ipykernel): Update to 4.5.2.
2016-12-31 16:51:53 +01:00
Tobias Geerinckx-Rice 45cc957c72 gnu: python-jupyter-core: Update to 4.2.1.
* gnu/packages/python.scm (python-jupyter-core): Update to 4.2.1.
2016-12-31 16:51:53 +01:00
Tobias Geerinckx-Rice 594358f5b6 gnu: python2-fastlmm: Update to 0.2.26.
* gnu/packages/python.scm (python2-fastlmm): Update to 0.2.26.
2016-12-31 16:51:40 +01:00
Tobias Geerinckx-Rice a5f92ca04f gnu: python-pytz: Update to 2016.10.
* gnu/packages/python.scm (python-pytz): Update to 2016.10.
2016-12-31 16:36:20 +01:00
Tobias Geerinckx-Rice bf5e4bc42a gnu: python-pyyaml: Update to 3.12.
* gnu/packages/python.scm (python-pyyaml): Update to 3.12.
[source]: Use pypi-uri.
2016-12-31 15:27:24 +01:00
Tobias Geerinckx-Rice 7d2e758df5 gnu: python-pygments: Update to 2.1.3.
* gnu/packages/python.scm (python-pygments): Update to 2.1.3.
2016-12-31 15:27:23 +01:00
Kei Kebreau c055a37c8c gnu: tiled: Update to 0.18.0.
* gnu/packages/game-development.scm (tiled): Update to 0.18.0.
2016-12-30 21:45:51 -05:00
Ludovic Courtès a3a2774501 hydra: Remove 'qemu-image' job.
As per the discussion at
<https://lists.gnu.org/archive/html/guix-devel/2016-12/msg01098.html>.

* build-aux/hydra/gnu-system.scm (demo-os): Remove.
(qemu-jobs): Remove 'qemu-image' job.
* build-aux/hydra/demo-os.scm: Remove.
2016-12-31 01:44:04 +01:00
ng0 da62a4a19e gnu: mc: Partially fix absolute file paths.
Partially fixes <http://bugs.gnu.org/25273>.

* gnu/packages/mc.scm (mc)[arguments]: Add new phase 'fix-absolutism.
This substitutes absolute file paths with functional file paths.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-31 01:44:04 +01:00
Troy Sankey 0f391063d9 gnu: pius: Update to 2.2.2-0.891687c.
* gnu/packages/gnupg.scm (pius): Update to 2.2.2-0.891687c.
[inputs]: Change GNUPG-2.0 to GNUPG (2.1).

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-31 01:44:04 +01:00
Ludovic Courtès 987a29ba43 Add (guix ssh) module.
* guix/scripts/offload.scm (connect-to-remote-daemon)
(store-import-channel, store-export-channel, send-files)
(retrieve-files): Move to (guix ssh).
(nonce): Add optional 'name' parameter and use it.
(retrieve-files*): New procedure.
(transfer-and-offload): Use it instead of 'retrieve-files', and add
first parameter to 'send-files'.
(assert-node-can-import): Likewise.
(assert-node-can-export): Use 'retrieve-files' instead of
'store-export-channel'.
* guix/ssh.scm: New file.
* configure.ac: Use 'GUIX_CHECK_GUILE_SSH' and define 'HAVE_GUILE_SSH'
Automake conditional.
* Makefile.am (MODULES) [HAVE_GUILE_SSH]: Add guix/ssh.scm.
2016-12-31 01:44:04 +01:00
José Miguel Sánchez García 68415aa4e1 gnu: libtermkey: Update to 0.19.
* gnu/packages/terminals.scm (libtermkey): Update to 0.19.

Co-authored-by: Leo Famulari <leo@famulari.name>
2016-12-30 16:15:25 -05:00
Leo Famulari 858b9afeaf gnu: libpng: Mention CVE-2016-10087.
* gnu/packages/patches/libpng-fix-null-ptr-dereference.patch: Rename to ...
* gnu/packages/patches/libpng-CVE-2016-10087.patch: ... this.
* gnu/local.mk (dist_patch_DATA): Adjust.
* gnu/packages/image.scm (libpng/fixed)[source]: Use renamed patch.
2016-12-30 14:33:21 -05:00
David Thompson 6023041346 import: crate: Do not build when guile-json is not available.
* Makefile.am (MODULES): Add 'guix/import/crate.scm' and
'guix/scripts/import/crate.scm' only when HAVE_GUILE_JSON.
2016-12-30 14:15:35 -05:00
Mark H Weaver 4037e5f52b gnu: linux-libre@4.1: Update to 4.1.37.
* gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.37.
2016-12-30 04:26:11 -05:00
Ben Woodcroft a29929b32c gnu: multiqc: Update to 0.9.
Suggested by Raoul Bonnal <ilpuccio.febo@gmail.com>.

* gnu/packages/bioinformatics.scm (multiqc): Update to 0.9.
[origin]: Add patch.
* gnu/packages/patches/multiqc-fix-git-subprocess-error.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2016-12-30 17:22:43 +10:00
Andreas Enge 89ccb1d881 gnu: gmp: Update to 6.1.2.
* gnu/packages/multiprecision.scm (gmp): Update to 6.1.2.
2016-12-30 00:38:24 +01:00
Chris Marusich 95d7d0c57f gnu: elogind: Enable ACL support.
* gnu/packages/freedesktop.scm (elogind) [inputs]: Add acl.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-29 23:42:23 +01:00
Ludovic Courtès 3547a5effe services: Add libmtp's udev rules to '%desktop-services'.
Suggested by Chris Marusich <cmmarusich@gmail.com>.

* gnu/services/desktop.scm (%desktop-services): Add 'mtp' service via
call to 'simple-service'.
2016-12-29 23:35:42 +01:00
Leo Famulari 87b5209558 gnu: mpd: Install systemd service files.
* gnu/packages/mpd.scm (mpd)[arguments]: Add 'install-service-files' phase.
2016-12-29 17:28:34 -05:00
Ricardo Wurmus 76b64381cb gnu: r-genomicfeatures: Update to 1.26.2.
* gnu/packages/bioinformatics.scm (r-genomicfeatures): Update to 1.26.2.
2016-12-29 22:24:12 +01:00
Ricardo Wurmus 2f642e5229 gnu: r-biostrings: Update to 2.42.1.
* gnu/packages/bioinformatics.scm (r-biostrings): Update to 2.42.1.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus 72c2693b9e gnu: r-limma: Update to 3.30.7.
* gnu/packages/bioinformatics.scm (r-limma): Update to 3.30.7.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus 5796af9981 gnu: r-variantannotation: Update to 1.20.2.
* gnu/packages/bioinformatics.scm (r-variantannotation): Update to 1.20.2.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus 5d3acc0b36 gnu: r-edger: Update to 3.16.5.
* gnu/packages/bioinformatics.scm (r-edger): Update to 3.16.5.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus 81a17b61e7 gnu: r-genomeinfodb: Update to 1.10.1.
* gnu/packages/bioinformatics.scm (r-genomeinfodb): Update to 1.10.1.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus 54d9b568fc gnu: r-iranges: Update to 2.8.1.
* gnu/packages/bioinformatics.scm (r-iranges): Update to 2.8.1.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus 86fc9c4a2c gnu: r-s4vectors: Update to 0.12.1.
* gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.12.1.
2016-12-29 22:24:11 +01:00
Ricardo Wurmus c8ad8b6976 gnu: r-biocstyle: Update to 2.2.1.
* gnu/packages/bioinformatics.scm (r-biocstyle): Update to 2.2.1.
2016-12-29 22:24:10 +01:00
Ricardo Wurmus 007ee80277 gnu: r-deseq2: Update to 1.14.1.
* gnu/packages/bioinformatics.scm (r-deseq2): Update to 1.14.1.
2016-12-29 22:24:10 +01:00
Ricardo Wurmus d0f0579e6f gnu: r-annotate: Update to 1.52.1.
* gnu/packages/bioinformatics.scm (r-annotate): Update to 1.52.1.
[propagated-inputs]: Add r-rcurl.
2016-12-29 22:24:10 +01:00
Leo Famulari a57495e27a gnu: khard: Update to 0.11.3.
* gnu/packages/mail.scm (khard): Update to 0.11.3.
[arguments]: Build with python instead of python-2. Remove
'disable-egg-compression' phase.
[propagated-inputs]: Don't use python-2 variants of propagated-inputs.
2016-12-29 16:12:13 -05:00
Ricardo Wurmus 35bb2ff88a gnu: r-rsqlite: Update to 1.1-1.
* gnu/packages/statistics.scm (r-rsqlite): Update to 1.1-1.
[propagated-inputs]: Add r-bh, r-memoise, r-plogr, and r-rcpp.
2016-12-29 21:49:13 +01:00
Ricardo Wurmus 28c041afe8 gnu: Add r-plogr.
* gnu/packages/statistics.scm (r-plogr): New variable.
2016-12-29 21:49:13 +01:00
Ricardo Wurmus ab607061cd gnu: r-hmisc: Update to 4.0-1.
* gnu/packages/statistics.scm (r-hmisc): Update to 4.0-1.
[propagated-inputs]: Remove r-cluster, r-foreign, r-lattice, r-nnet, and
r-rpart; add r-base64.
2016-12-29 21:49:12 +01:00
Ricardo Wurmus 0811f0f9d2 gnu: Add r-base64.
* gnu/packages/statistics.scm (r-base64): New variable.
2016-12-29 21:49:12 +01:00
Ricardo Wurmus ca380feb37 gnu: r-rmarkdown: Update to 1.3.
* gnu/packages/statistics.scm (r-rmarkdown): Update to 1.3.
[propagated-inputs]: Remove r-tibble; add r-rprojroot.
2016-12-29 21:49:12 +01:00
Ricardo Wurmus 046e27e3f5 gnu: Add r-rprojroot.
* gnu/packages/statistics.scm (r-rprojroot): New variable.
2016-12-29 21:49:12 +01:00
Ricardo Wurmus a8e45b3240 gnu: r-rcpparmadillo: Update to 0.7.600.1.0.
* gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.7.600.1.0.
* gnu/packages/maths.scm (armadillo-for-rcpparmadillo): Update to
7.600.1.
2016-12-29 21:49:12 +01:00
Ricardo Wurmus b1c1f4d012 gnu: armadillo: Update to 7.600.2.
* gnu/packages/maths.scm (armadillo): Update to 7.600.2.
2016-12-29 21:49:12 +01:00
Ricardo Wurmus c729d3dc0e gnu: r-zoo: Update to 1.7-14.
* gnu/packages/statistics.scm (r-zoo): Update to 1.7-14.
[propagated-inputs]: Remove r-lattice.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus 53941eb7a5 gnu: r-fastcluster: Update to 1.1.22.
* gnu/packages/statistics.scm (r-fastcluster): Update to 1.1.22.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus 3a181dc46e gnu: r-plotly: Update to 4.5.6.
* gnu/packages/statistics.scm (r-plotly): Update to 4.5.6.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus 54aa6eb6ee gnu: r-r-rsp: Update to 0.40.0.
* gnu/packages/statistics.scm (r-r-rsp): Update to 0.40.0.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus 1a44753b95 gnu: r-r-utils: Update to 2.5.0.
* gnu/packages/statistics.scm (r-r-utils): Update to 2.5.0.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus 62350c0797 gnu: r-coda: Update to 0.19-1.
* gnu/packages/statistics.scm (r-coda): Update to 0.19-1.
[propagated-inputs]: Remove r-lattice.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus 3607afbe4c gnu: r-chron: Update to 2.3-48.
* gnu/packages/statistics.scm (r-chron): Update to 2.3-48.
2016-12-29 21:49:11 +01:00
Ricardo Wurmus eaec5506ad gnu: r-knitr: Update to 1.15.1.
* gnu/packages/statistics.scm (r-knitr): Update to 1.15.1.
[propagated-inputs]: Remove r-formatr.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus fd7810d323 gnu: r-bh: Update to 1.62.0-1.
* gnu/packages/statistics.scm (r-bh): Update to 1.62.0-1.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus dd4ae2950a gnu: r-svglite: Update to 1.2.0.
* gnu/packages/statistics.scm (r-svglite): Update to 1.2.0.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus 48a87bbe3b gnu: r-gdtools: Update to 0.1.3.
* gnu/packages/statistics.scm (r-gdtools): Update to 0.1.3.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus ab01f1cdb1 gnu: r-ggplot2: Update to 2.2.0.
* gnu/packages/statistics.scm (r-ggplot2): Update to 2.2.0.
[propagated-inputs]: Remove r-proto and r-svglite; add r-lazyeval and
r-tibble.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus b94b03b7fa gnu: r-scales: Update to 0.4.1.
* gnu/packages/statistics.scm (r-scales): Update to 0.4.1.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus 8a8fc31c6a gnu: r-mgcv: Update to 1.8-16.
* gnu/packages/statistics.scm (r-mgcv): Update to 1.8-16.
2016-12-29 21:49:10 +01:00
Ricardo Wurmus 421f7772b4 gnu: r-qtl: Update to 1.40-8.
* gnu/packages/bioinformatics.scm (r-qtl): Update to 1.40-8.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus 2a1c1b8074 gnu: r-hms: Update to 0.3.
* gnu/packages/statistics.scm (r-hms): Update to 0.3.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus 85455a08f4 gnu: r-git2r: Update to 0.17.0.
* gnu/packages/statistics.scm (r-git2r): Update to 0.17.0.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus abb6f0540e gnu: r-ade4: Update to 1.7-5
* gnu/packages/statistics.scm (r-ade4): Update to 1.7-5.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus db1b38af4e gnu: r-xml: Update to 3.98-1.5.
* gnu/packages/statistics.scm (r-xml): Update to 3.98-1.5.
[propagated-inputs]: Remove r-rcurl.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus 773a50114c gnu: r-sparsem: Update to 1.74.
* gnu/packages/statistics.scm (r-sparsem): Update to 1.74.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus 76ce7c3767 gnu: r-data-table: Update to 1.10.0.
* gnu/packages/statistics.scm (r-data-table): Update to 1.10.0.
[propagated-inputs]: Remove r-chron.
2016-12-29 21:49:09 +01:00
Ricardo Wurmus 58b93ad5d9 gnu: r-estimability: Update to 1.2.
* gnu/packages/statistics.scm (r-estimability): Update to 1.2.
2016-12-29 21:49:08 +01:00
Ricardo Wurmus eebac90aa8 gnu: r-rcpp: Update to 0.12.8.
* gnu/packages/statistics.scm (r-rcpp): Update to 0.12.8.
2016-12-29 21:49:08 +01:00
Ricardo Wurmus 9cdf10f1c9 gnu: r-yaml: Update to 2.1.14.
* gnu/packages/statistics.scm (r-yaml): Update to 2.1.14.
2016-12-29 21:49:08 +01:00
Ricardo Wurmus c616810720 gnu: r-htmlwidgets: Update to 0.8.
* gnu/packages/web.scm (r-htmlwidgets): Update to 0.8.
2016-12-29 21:49:08 +01:00
Ricardo Wurmus f4ca28d911 gnu: r-curl: Update to 2.3.
* gnu/packages/web.scm (r-curl): Update to 2.3.
2016-12-29 21:49:08 +01:00
Ricardo Wurmus d3122150ca gnu: r-servr: Update to 0.5.
* gnu/packages/web.scm (r-servr): Update to 0.5.
2016-12-29 21:49:08 +01:00
Alex Kost deb6276dda Remove Emacs interface.
* emacs/guix-about.el: Remove file.
* emacs/guix-backend.el: Likewise.
* emacs/guix-base.el: Likewise.
* emacs/guix-buffer.el: Likewise.
* emacs/guix-build-log.el: Likewise.
* emacs/guix-command.el: Likewise.
* emacs/guix-config.el.in: Likewise.
* emacs/guix-devel.el: Likewise.
* emacs/guix-entry.el: Likewise.
* emacs/guix-external.el: Likewise.
* emacs/guix-geiser.el: Likewise.
* emacs/guix-guile.el: Likewise.
* emacs/guix-help-vars.el: Likewise.
* emacs/guix-helper.scm.in: Likewise.
* emacs/guix-history.el: Likewise.
* emacs/guix-hydra-build.el: Likewise.
* emacs/guix-hydra-jobset.el: Likewise.
* emacs/guix-hydra.el: Likewise.
* emacs/guix-info.el: Likewise.
* emacs/guix-init.el: Likewise.
* emacs/guix-license.el: Likewise.
* emacs/guix-list.el: Likewise.
* emacs/guix-location.el: Likewise.
* emacs/guix-main.scm: Likewise.
* emacs/guix-messages.el: Likewise.
* emacs/guix-pcomplete.el: Likewise.
* emacs/guix-popup.el: Likewise.
* emacs/guix-prettify.el: Likewise.
* emacs/guix-profiles.el: Likewise.
* emacs/guix-read.el: Likewise.
* emacs/guix-ui-generation.el: Likewise.
* emacs/guix-ui-license.el: Likewise.
* emacs/guix-ui-location.el: Likewise.
* emacs/guix-ui-package.el: Likewise.
* emacs/guix-ui-system-generation.el: Likewise.
* emacs/guix-ui.el: Likewise.
* emacs/guix-utils.el: Likewise.
* emacs/local.mk: Likewise.
* doc/emacs.texi: Likewise.
* doc/guix.texi: Remove cross-references to Emacs nodes.
(Package Management): Mention 'emacs-guix' package.
* doc/contributing.texi (The Perfect Setup): Remove the reference.
* doc/htmlxref.cnf: Add 'emacs-guix' URL.
* Makefile.am: Remove Emacs stuff.
* configure.ac: Likewise.
* gnu/packages/package-management.scm (guix-0.12.0)[native-inputs]:
Remove "emacs".
[propagated-inputs]: Remove "geiser" and "emacs-magit-popup".

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-12-29 23:40:24 +03:00
Ricardo Wurmus 94a6f20baf gnu: r-colorspace: Update to 1.3-2.
* gnu/packages/statistics.scm (r-colorspace): Update to 1.3-2.
2016-12-29 20:10:07 +01:00
Raoul Jean Pierre Bonnal 2fd261a37a gnu: Add r-statmod.
* gnu/packages/statistics.scm (r-statmod): New variable.
2016-12-29 19:54:59 +01:00
Raoul Jean Pierre Bonnal 294304169a gnu: Add r-ggbeeswarm.
* gnu/packages/statistics.scm (r-ggbeeswarm): New variable.
2016-12-29 19:54:59 +01:00
Raoul Jean Pierre Bonnal 649d0c4841 gnu: Add r-sourcetools.
* gnu/packages/statistics.scm (r-sourcetools): New variable.
2016-12-29 19:54:59 +01:00
Raoul Jean Pierre Bonnal 6ba279853c gnu: Add r-beeswarm.
* gnu/packages/statistics.scm (r-beeswarm): New variable.
2016-12-29 19:54:59 +01:00
Raoul Jean Pierre Bonnal 069581351b gnu: Add r-vipor.
* gnu/packages/statistics.scm (r-vipor): New variable.
2016-12-29 19:54:58 +01:00
Leo Famulari fc604eda3d gnu: libpng-1.2: Update to 1.2.57 [security update].
* gnu/packages/image.scm (libpng-1.2): Update to 1.2.57.
[replacement]: New field.
2016-12-29 13:41:43 -05:00
Leo Famulari 322e724bfa gnu: libpng: Fix a null pointer dereference [fixes security issue].
* gnu/packages/patches/libpng-fix-null-ptr-dereference.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/image.scm (libpng)[replacement]: New field.
(libpng/fixed): New variable.
2016-12-29 13:36:00 -05:00
Ludovic Courtès 8ecc3c6c44 daemon: Allow fixed-output derivation builds with TMPDIR set.
Fixes <http://bugs.gnu.org/25242>.
Reported by Leo Famulari <leo@famulari.name>.
The regression was introduced in 94d92c7796.

* nix/libstore/build.cc (DerivationGoal::startBuilder): Set 'useChroot'
as a function 'of isBuiltin(drv)'.
(DerivationGoal::runChild): Use 'useChroot' instead of
'useChroot && !isBuiltin(drv)'.
2016-12-29 18:22:49 +01:00
Carlo Zancanaro 681a555b83 import: elpa: Import dependencies as propagated-inputs
* guix/import/elpa.scm (elpa-package->sexp): Import dependencies as
propagated-inputs.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-29 18:22:49 +01:00
Carlo Zancanaro 36225d4fef import: elpa: Fix call-with-downloaded-file
* guix/import/elpa.scm (call-with-downloaded-file): Make function behaviour
match documentation string.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-29 18:22:49 +01:00
Leo Famulari d835c6cc4b gnu: mpd: Update to 0.19.21.
* gnu/packages/mpd.scm (mpd): Update to 0.19.21.
2016-12-29 11:30:31 -05:00
ng0 b954256337 gnu: rustc: Update to 1.14.0.
* gnu/packages/rust.scm (rustc): Update to 1.14.0.
  %rust-bootstrap-binaries: Update to 1.13.0.

Signed-off-by: David Craven <david@craven.ch>
2016-12-29 12:38:23 +01:00
Ricardo Wurmus e62e975b1f gnu: mu: Avoid bootstrapping.
* gnu/packages/mail.scm (mu)[arguments]: Rename "patch-configure.ac" to
"patch-configure" and only patch "configure" script; remove "autoreconf"
phase.
[native-inputs]: Remove "autoconf", "automake", "libtool", and
"texinfo".
2016-12-29 09:20:08 +01:00
Ricardo Wurmus e7b9da2411 gnu: mu: Update to 0.9.18.
* gnu/packages/mail.scm (mu): Update to 0.9.18.
2016-12-29 08:58:57 +01:00
Tobias Geerinckx-Rice 43c0b9beaf gnu: perl-zip: Update to 1.59.
* gnu/packages/zip.scm (perl-zip): Update to 1.59.
2016-12-29 05:37:01 +01:00
ng0 d5bbf806f3 gnu: Add python-trollius-redis.
* gnu/packages/python.scm (python-trollius-redis, python2-trollius-redis): New
variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:53 -05:00
ng0 789de5e279 gnu: Add python-straight-plugin.
* gnu/packages/python.scm (python-straight-plugin, python2-straight-plugins):
New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:53 -05:00
ng0 a0e41de4ab gnu: Add python-openid-teams.
* gnu/packages/python.scm (python-openid-teams, python2-openid-teams): New
variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:53 -05:00
ng0 03702173f1 gnu: Add python-openid-cla.
* gnu/packages/python.scm (python-openid-cla, python2-openid-cla): New
variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:52 -05:00
ng0 3ef00f5609 gnu: Add python2-openid.
* gnu/packages/python.scm (python2-openid): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:52 -05:00
ng0 0151a8df22 gnu: Add python-pygit2.
* gnu/packages/python.scm (python-pygit2, python2-pygit2): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:52 -05:00
ng0 460fccd4b3 gnu: Add python-munch.
* gnu/packages/python.scm (python-munch, python2-munch): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:51 -05:00
ng0 9f21414de4 gnu: Add python-kitchen.
* gnu/packages/python.scm (python-kitchen, python2-kitchen): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:51 -05:00
ng0 a2c7d88e74 gnu: Add python-flask-multistatic.
* gnu/packages/python.scm (python-flask-multistatic, python2-flask-multistatic):
New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:51 -05:00
ng0 a7ad802be5 gnu: Add python-flask-wtf.
* gnu/packages/python.scm (python-flask-wtf, python2-flask-wtf): New variables.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-28 22:41:45 -05:00
Tobias Geerinckx-Rice 50f7da2fc8 gnu: xonsh: Update to 0.5.1.
* gnu/packages/shells.scm (xonsh): Update to 0.5.1.
2016-12-29 02:38:21 +01:00
Tobias Geerinckx-Rice 6a34f4ccc8 gnu: python-prompt-toolkit: Update to 1.0.9.
* gnu/packages/python.scm (python-prompt-toolkit): Update to 1.0.9.
2016-12-29 02:38:21 +01:00
Tobias Geerinckx-Rice 791ac6a68d gnu: python-markdown: Update to 2.6.7.
* gnu/packages/python.scm (python-markdown): Update to 2.6.7.
2016-12-29 02:38:20 +01:00
Tobias Geerinckx-Rice 2ee57340f4 gnu: python-numexpr: Update to 2.6.1.
* gnu/packages/python.scm (python-numexpr): Update to 2.6.1.
2016-12-29 02:38:20 +01:00
Tobias Geerinckx-Rice ffb1e98d74 gnu: python-babel: Update to 2.3.4.
* gnu/packages/python.scm (python-babel): Update to 2.3.4.
2016-12-29 02:38:20 +01:00
Leo Famulari 3221d1a392 gnu: icu4c: Update to 58.2.
* gnu/packages/icu4c.scm (icu4c): Update to 58.2.
2016-12-28 19:35:22 -05:00
Manolis Ragkousis 1d9c889881 gnu: glibc-hurd: Update to 2.23.
* gnu/packages/base.scm (glibc/hurd)[version]: Update to version 2.23.
2016-12-28 21:14:20 +02:00
Marius Bakke 517c3207d3 gnu: rofi: Update to 1.3.0.
* gnu/packages/xdisorg.scm (rofi): Update to 1.3.0.
2016-12-28 18:00:02 +01:00
Tobias Geerinckx-Rice 48dc9f3af3 gnu: znc: Update to 1.6.4.
* gnu/packages/messaging.scm (znc): Update to 1.6.4.
2016-12-28 05:14:05 +01:00
Tobias Geerinckx-Rice c09dd486a2 gnu: util-linux: Update to 2.28.2.
* gnu/packages/linux.scm (util-linux): Update to 2.28.2.
2016-12-27 22:24:44 +01:00
Nicolas Goaziou 4dbaa12f5d gnu: wireshark: Update to 2.2.3.
* gnu/packages/networking.scm (wireshark): Update to 2.2.3.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-27 17:05:07 +01:00
Nicolas Goaziou d531b9fdfe gnu: emacs-org: Update to 20161224.
* gnu/packages/emacs.scm (emacs-org): Update to 20161224.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-27 17:03:45 +01:00
Stefan Reichoer 9e6c7c425e gnu: Add httpstat.
* gnu/packages/networking.scm (httpstat): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-27 16:56:34 +01:00
Thomas Danckaert ea8450c82a gnu: Add python-netcdf4.
* gnu/packages/python.scm (python-netcdf4, python2-netcdf4): New variables.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-27 16:30:59 +01:00
Ricardo Wurmus 2c8d6c0be4 gnu: r-rcas: Update to 1.1.1.
* gnu/packages/bioinformatics.scm (r-rcas): Update to 1.1.1.
[propagated-inputs]: Add plotrix.
2016-12-27 14:50:55 +01:00
Leo Famulari 1194575b3c gnu: python-pycrypto: Add TODO "removal" comment.
* gnu/packages/python.scm (python-pycrypto, python2-pycrypto): Add
comment.
2016-12-26 19:51:54 -05:00
Leo Famulari 4de2a710a6 gnu: python-stem: Don't use python-pycrypto.
Python-pycrypto is an optional dependency of python-stem. Python-pycrypto is
unmaintained [0] and contains an exploitable buffer overflow bug [1].

[0] https://github.com/dlitz/pycrypto/issues/173
[1] https://github.com/dlitz/pycrypto/issues/176

* gnu/packages/python.scm (python-stem, python2-stem)[propagated-inputs]: Remove
python-pycrypto.
2016-12-26 19:51:49 -05:00
ng0 91426243f1 gnu: awesome: Update to 4.0.
* gnu/packages/wm.scm (awesome): Update to 4.0.
[source]: Adjust URL.
[inputs]: Add xcb-util-xrm and libxkbcommon.
* gnu/packages/patches/awesome-reproducible-png.patch: Adjust patch.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-26 19:13:27 -05:00
Ben Woodcroft 9916ef8bb6 gnu: diamond: Update to 0.8.30.
* gnu/packages/bioinformatics.scm (diamond): Update to 0.8.30.
2016-12-27 09:18:05 +10:00
Leo Famulari c976b319fe gnu: python-stem: Update to 1.5.3.
* gnu/packages/python.scm (python-stem, python2-stem): Update to 1.5.3.
[source]: Update URL.
2016-12-26 13:20:52 -05:00
Ben Woodcroft f1775db660 gnu: ruby-minitest: Update to 5.10.1.
* gnu/packages/ruby.scm (ruby-minitest): Update to 5.10.1.
2016-12-26 22:43:59 +10:00
Roel Janssen 328398e752 gnu: Add ripit.
* gnu/packages/cdrom.scm (ripit): New variable.
2016-12-26 12:58:29 +01:00
Roel Janssen fb222fb2b0 gnu: Add perl-cddb-get.
* gnu/packages/perl.scm (perl-cddb-get): New variable.
2016-12-26 12:45:48 +01:00
Alex Kost b2f1f7b0d9 gnu: emacs-guix: Update to 0.2.1.
* gnu/packages/emacs.scm (emacs-guix): Update to 0.2.1.
2016-12-26 13:53:53 +03:00
Efraim Flashner 9f74424f37 gnu: xf86-video-qxl: Update to 0.1.5.
* gnu/packages/xorg.scm (xf86-video-qxl): Update to 0.1.5.
2016-12-26 04:32:05 +02:00
Ricardo Wurmus 33ca551731 gnu: Add roffit.
* gnu/packages/groff.scm (roffit): New variable.
2016-12-25 22:02:39 +01:00
Efraim Flashner f077aa2b29 gnu: libevdev: Update to 1.5.5.
* gnu/packages/xorg.scm (libevdev): Update to 1.5.5.
[houme-page]: Use https.
2016-12-25 16:16:10 +02:00
Efraim Flashner db10a5e78a gnu: libinput: Update to 1.5.3.
* gnu/packages/freedesktop.scm (libinput): Update to 1.5.3.
2016-12-25 16:16:00 +02:00
Marius Bakke 4a95b3882d gnu: exim: Update to 4.87.1 [fixes CVE-2016-9963].
* gnu/packages/mail.scm (exim): Update to 4.87.1.
2016-12-25 13:53:17 +01:00
Taylan Ulrich Bayırlı/Kammer d02fb7cec6 gnu: leptonica: Update to 1.74.0.
* gnu/packages/image.scm (leptonica): Update to 1.74.0.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-25 13:48:57 +01:00
Efraim Flashner c88bee0ace gnu: font-gnu-unifont: Update to 9.0.06.
* gnu/packages/fonts.scm (font-gnu-unifont): Update to 9.0.06.
2016-12-25 05:04:20 +02:00
Leo Famulari 3a2bcac6bd gnu: libxml2: Fix CVE-2016-5131.
* gnu/packages/patches/libxml2-CVE-2016-5131.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/xml.scm (libxml2/fixed)[source]: Add it.
2016-12-24 19:19:36 -05:00
Leo Famulari 0c83c6bf26 gnu: libxml2: Fix CVE-2016-4658.
* gnu/packages/xml.scm (libxml2)[replacement]: New field.
(libxml2/fixed): New variable.
* gnu/packages/patches/libxml2-CVE-2016-4658.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2016-12-24 19:19:32 -05:00
Efraim Flashner daa481f59a gnu: qt: Update to 5.7.1.
* gnu/packages/qt.scm (qtbase, qtsvg, qtimageformats, qtx11extras,
qtxmlpatterns, qtdeclarative, qtconnectivity, qtwebsockets, qtsensors,
qtmultimedia, qtwayland, qtserialport, qtwebchannel, qtlocation,
qttools, qtscript, qtquickcontrols, qtquickcontrols2, qtgraphicaleffects,
qtwebkit): Update to 5.7.1.
2016-12-25 01:49:36 +02:00
Efraim Flashner 457d154fdf gnu: alsa-utils: Update to 1.1.3.
* gnu/packages/linux.scm (alsa-utils): Update to 1.1.3.
2016-12-25 01:47:22 +02:00
Efraim Flashner 7604106f2c gnu: busybox: Update to 1.26.0.
* gnu/packages/busybox.scm (busybox): Update to 1.26.0.
[arguments]: Enable previously broken grep test.
2016-12-25 01:47:22 +02:00
Thomas Danckaert db82557013 gnu: netcdf: Enable HDF4 support.
* gnu/packages/maths.scm (netcdf)[inputs]: Add hdf4-alt and libjpeg.
  [arguments]: Add "--enable-hdf4" configure flag.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-24 14:41:50 +01:00
Marius Bakke f7fb34a06c gnu: notmuch: Update to 0.23.4.
* gnu/packages/mail.scm (notmuch, python-notmuch, python2-notmuch): Update to
0.23.4.
2016-12-24 14:26:39 +01:00
Tobias Geerinckx-Rice b672e1ed1e gnu: moreutils: Update to 5.9.
* gnu/packages/moreutils.scm (moreutils): Update to 5.9.
[source]: Update the fall-back Debian snapshot URL.
[inputs]: Move docbook-xml, docbook-xsl, libxml2, and libxslt from here...
[native-inputs]: ...to this new variable.
[arguments]: Delete the configure phase altogether.  Set the DOCBOOKXSL path
in #:make-flags instead.
[home-page]: Use HTTPS.
2016-12-24 03:19:03 +01:00
Tobias Geerinckx-Rice 4d2fd1c016 gnu: yadifa: Explicitly enable DNSSEC & caching.
* gnu/packages/dns.scm (yadifa)[arguments]: Add configure flags to
consistently enable the ‘nsec’, ‘nsec3’, ‘tsig’, and ‘caching’ features.
2016-12-23 23:54:15 +01:00
Tobias Geerinckx-Rice 8769d482ef gnu: yadifa: Update to 2.2.3.
* gnu/packages/dns.scm (yadifa): Update to 2.2.3.
[version, source]: Remove monotonic revision number from the version
string.  Use it only to reconstruct the download URL.
2016-12-23 23:54:15 +01:00
Kei Kebreau eed2a95e9f gnu: minetest: Update to 0.4.15.
* gnu/packages/games.scm (minetest-data, minetest): Update to 0.4.15.
2016-12-23 17:34:41 -05:00
Tobias Geerinckx-Rice 41d23dd1e2 gnu: btrfs-progs: Update to 4.9.
* gnu/packages/linux.scm (btrfs-progs): Update to 4.9.
2016-12-23 20:29:18 +01:00
ng0 50e9f81a22 gnu: gnurl: Split man pages to doc output.
* gnu/packages/gnunet.scm (gnurl)[arguments]: Add 'move-man3-pages' phase.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-23 11:58:03 -05:00
ng0 4ec08b637b gnu: gnurl: Make tests more verbose.
* gnu/packages/gnunet.scm (gnurl)[arguments]: Replace the 'check' phase.
Move the 'disable-test1026' and 'patch-runtests' phases into 'check' phase.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-23 11:58:03 -05:00
ng0 a0e43c9fa7 gnu: gnurl: Update to 7.52.1 [fixes CVE-2016-{9586, 9952, 9953, 9594}].
* gnu/packages/gnunet.scm (gnurl): Update to 7.52.1.
[arguments]: Add 'autoconf' and 'disable-test1026' phases.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-23 11:58:02 -05:00
Chris Marusich 426e6083ae gnu: Add asunder.
* gnu/packages/cdrom.scm (asunder): New variable.

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-12-23 11:34:42 -05:00
Marius Bakke d0f1673dc3 gnu: dnscrypt-proxy: Update to 1.8.1.
* gnu/packages/dns.scm (dnscrypt-proxy): Update to 1.8.1.
2016-12-23 15:53:51 +01:00
Marius Bakke 14251e30c4 gnu: curl: Update replacement to 7.52.1 [fixes CVE-2016-{9586,9594}].
* gnu/packages/curl.scm (curl)[replacement]: Update to 7.52.1.
[home-page]: Use HTTPS.
(curl-7.51.0): Replace with ...
(curl-7.52.1): ... this.
2016-12-23 15:31:36 +01:00
Bake Timmons b881dc6d98 gnu: Add wwwoffle.
* gnu/packages/web.scm (wwwoffle): New variable.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2016-12-23 15:18:02 +01:00
Thomas Danckaert d205f895ca gnu: Add python-hdf4.
* gnu/packages/python.scm (python-hdf4, python2-hdf4): New variables.

Co-authored-by: Marius Bakke <mbakke@fastmail.com>
2016-12-23 14:51:56 +01:00
Leo Famulari 4b4ff6938d gnu: qsyncthingtray: Update to 0.5.7.
* gnu/packages/sync.scm (qsyncthingtray): Update to 0.5.7.
2016-12-23 02:01:28 -05:00
Kei Kebreau e813f3956e gnu: xonsh: Fix description.
* gnu/packages/shells.scm (xonsh)[description]: Two spaces after a period.
2016-12-22 18:06:56 -05:00
Efraim Flashner a532a6711e gnu: qtimageformats: Add jasper support.
* gnu/packages/qt.scm (qtimageformats)[inputs]: Add jasper.
2016-12-23 01:01:27 +02:00
Stefan Reichör 572ee05c31 gnu: xonsh: Update to 0.5.0.
* gnu/packages/shells.scm (xonsh): Update to 0.5.0.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2016-12-22 17:59:41 -05:00
Marius Bakke 059b3aa9c3 gnu: gnupg: Fix build on 32-bit architectures.
* gnu/packages/patches/gnupg-test-segfault-on-32bit-arch.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gnupg.scm (gnupg)[source]: Use it.
2016-12-22 15:05:50 +01:00
Ricardo Wurmus 8e401ab6db gnu: python-scikit-learn: Update to 0.18.1.
* gnu/packages/python.scm (python-scikit-learn): Update to 0.18.1.
[arguments]: Remove special "check" phase.
[native-inputs]: Add python-cython.
2016-12-22 13:19:20 +01:00
Leo Famulari 8bf4a6aecd gnu: shotwell: Update to 0.25.2.
* gnu/packages/gnome.scm (shotwell): Update to 0.25.2.
2016-12-22 02:54:42 -05:00
Leo Famulari 5d97f4c74a gnu: libssh2: Update to 1.8.0.
* gnu/packages/ssh.scm (libssh2): Update to 1.8.0.
2016-12-22 00:17:54 -05:00
Efraim Flashner 5d0ebcc4cf gnu: gcc: Update to 6.3.0.
* gnu/packages/gcc.scm (gcc): Update to 6.3.0.
2016-12-22 02:53:24 +02:00
Efraim Flashner 0d1baed223 gnu: abcde: Add flac support.
* gnu/packages/cdrom.scm (abcde)[inputs]: Add flac.
[arguments]: Wrap the bunary with flac's bin dir also.
2016-12-22 02:53:19 +02:00
Ludovic Courtès 7c247809ef guix build: '--with-source' overrides the 'replacement' of a package.
* guix/scripts/build.scm (package-with-source): Set 'replacement' to #f.
* tests/scripts-build.scm ("options->transformation, with-source,
replacement"): New test.
2016-12-21 23:48:14 +01:00
Ricardo Wurmus 590b80d29a Merge branch 'version-0.12.0' 2016-12-21 23:33:18 +01:00
John Darrington d1f3063196 gnu: Fix typo in comment.
* gnu/services/sddm.scm: Fix typo.
2016-12-21 20:45:34 +01:00
Efraim Flashner d229ba9502 gnu: qemu: Update to 2.8.0.
* gnu/packages/qemu.scm (qemu): Update to 2.8.0.
[source]: Remove patches.
[arguments]: Set host_cc during 'configure.
* gnu/packages/patches/qemu-CVE-2016-8576.patch,
gnu/packages/patches/qemu-CVE-2016-8577.patch,
gnu/packages/patches/qemu-CVE-2016-8577.patch: Remove files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2016-12-21 21:28:15 +02:00
Julien Lepiller 4da696877c gnu: coq: Build coqide
* gnu/packages/ocaml.scm (coq): Build coqide.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-21 17:54:18 +01:00
Julien Lepiller 8afd19585f gnu: lablgtk: use ocamlfind in installation
* gnu/packages/ocaml.scm (lablgtk): Use ocamlfind in installation.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-21 17:54:18 +01:00
Julien Lepiller 054fea97b7 gnu: lablgtk: Update to 2.18.5
* gnu/packages/ocaml.scm (lablgtk): Update to 2.18.5.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-12-21 17:54:18 +01:00
Leo Famulari c8c385a04a Revert "gnu: curl: Update replacement to 7.52.0 [fixes CVE-2016-{9586,9952,9953}]."
The curl maintainers said this about 7.52.0:

"Attention! We will release a patch update within a few days to fix a
serious security problem found in curl 7.52.0. You may consider holding
off until then."

This message was displayed at <https://curl.haxx.se/download.html> on
2016-12-21.

This reverts commit 42366b35c3.
2016-12-21 11:52:36 -05:00
Tobias Geerinckx-Rice f05f5b307e gnu: mlt: Update to 6.4.1.
* gnu/packages/video.scm (mlt): Update to 6.4.1.
2016-12-21 16:37:01 +01:00
Tobias Geerinckx-Rice 9fa7284155 gnu: jsoncpp: Update to 1.8.0.
* gnu/packages/serialization.scm (jsoncpp): Update to 1.8.0.
2016-12-21 16:37:01 +01:00
Tobias Geerinckx-Rice e177f819c0 gnu: xf86-video-vmware: Update to 13.2.1.
* gnu/packages/xorg.scm (xf86-video-vmware): Update to 13.2.1.
[native-inputs]: Add eudev.
2016-12-21 16:37:00 +01:00
Tobias Geerinckx-Rice 7aef9930f0 gnu: xcb-util-xrm: Update to 1.2.
* gnu/packages/xdisorg.scm (xcb-util-xrm): Update to 1.2.
2016-12-21 16:37:00 +01:00
Tobias Geerinckx-Rice 82f44a36e4 gnu: xcape: Update to 1.2.
* gnu/packages/xdisorg.scm (xcape): Update to 1.2.
2016-12-21 16:37:00 +01:00
Marius Bakke 42366b35c3 gnu: curl: Update replacement to 7.52.0 [fixes CVE-2016-{9586,9952,9953}].
* gnu/packages/curl.scm (curl)[replacement]: Update to 7.52.0.
(curl-7.51.0): Replace with ...
(curl-7.52.0): ... this.
2016-12-21 14:56:34 +01:00
Leo Famulari 6a148b9db5 gnu: imagemagick: Update to 6.9.7-0.
* gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.7-0.
2016-12-20 20:50:50 -05:00
Marius Bakke 21eced80a0 gnu: nmap: Update to 7.40.
* gnu/packages/admin.scm (nmap): Update to 7.40.
2016-12-21 00:14:08 +01:00
Ludovic Courtès 64b5e41376 gnu: linux-libre: Avoid invalid "kconfig" input on armhf and mips64el.
This fixes a bug whereby:

  guix build linux-libre -s armhf-linux

would fail with:

  guix build: error: gnu/packages/linux.scm:231:2: package `linux-libre-4.8.15' has an invalid input: ("kconfig" #f)

This led 'tests/guix-system.sh' to fail.

* gnu/packages/linux.scm (make-linux-libre)[native-inputs]: Never add #f
as a "kconfig" input.
2016-12-20 23:39:30 +01:00
Efraim Flashner 899358d18a gnu: msmtp: Update to 1.6.6.
* gnu/packages/mail.scm (msmtp): Update to 1.6.6.
2016-12-20 22:43:07 +02:00
Efraim Flashner 837ca0f071 gnu: getmail: Update to 4.52.0.
* gnu/packages/mail.scm (getmail): Update to 4.52.0.
2016-12-20 22:43:06 +02:00
Efraim Flashner c55fa42b2d gnu: bogofilter: Use 'modify-phases'.
* gnu/packages/mail.scm (bogofilter)[arguments]: Use 'modify-phases'.
2016-12-20 22:43:06 +02:00
Efraim Flashner 329e0a9ca0 gnu: mutt: Update to 1.7.2.
* gnu/packages/mail.scm (mutt): Update to 1.7.2.
2016-12-20 22:43:06 +02:00
Efraim Flashner de75f0b1bf gnu: mailutils: Use 'modify-phases' syntax.
* gnu/packages/mail.scm (mailutils)[arguments]: Use 'modify-phases'.
2016-12-20 22:43:06 +02:00
Efraim Flashner abe5d2dc8d gnu: mailutils: Update to 3.1.1.
* gnu/packages/mail.scm (mailutils): Update to 3.1.1.
[inputs]: Build with current readline.
[arguments]: Set sysconfdir as /etc.
[home-page]: Use https.
2016-12-20 22:43:05 +02:00
Efraim Flashner e31d35de3f gnu: gnupg: Remove unneeded input.
* gnu/packages/gnupg.scm (gnupg)[inputs]: Remove adns.
2016-12-20 22:43:01 +02:00
Leo Famulari 8cb3e7e7de gnu: borg: Update to 1.0.9.
* gnu/packages/backup.scm (borg): Update to 1.0.9.
[arguments]: Run the check phase in its own directory. Skip the test
'test_get_security_dir'.
2016-12-20 14:50:19 -05:00
Leo Famulari 4f6ff977c2 gnu: nss: Add comment about test failures in NSS 3.27.2
* gnu/packages/gnuzilla.scm (nss): Add comment.
2016-12-20 14:44:53 -05:00
Leo Famulari 6eda11de44 Revert "gnu: nss, nss-certs: Update to 3.27.2."
This reverts commit 7ab3ea4266.
2016-12-20 14:35:21 -05:00
Ludovic Courtès 62bd24db39 import: github: Use 'json-fetch'.
* guix/import/github.scm (json-fetch*): Remove.
(latest-released-version): Adjust accordingly.
2016-12-20 19:14:41 +01:00
Ludovic Courtès f943c317fb environment: Add '--root' option.
* guix/scripts/environment.scm (show-help, %options): Add --root.
(register-gc-root): New procedure.
(guix-environment): Call 'register-gc-root' when OPTS has a 'gc-root'
option.
* doc/guix.texi (Invoking guix environment): Document it.
* tests/guix-environment.sh: Add tests.
2016-12-20 19:14:41 +01:00
ng0 7d2511bc6b gnu: Add alsa-plugins.
* gnu/packages/linux.scm (alsa-plugins): New variable.

Signed-off-by: Kei Kebreau <kei@openmailbox.org>
2016-12-20 10:22:06 -05:00
Marius Bakke 3a35070c50 mailmap: Add alias for Marius Bakke.
* .mailmap: Map m.bakke@warwick.ac.uk to current address.
2016-12-20 15:55:50 +01:00
Marius Bakke 06fcd4a89e gnu: gnupg: Update to 2.1.17.
* gnu/packages/gnupg.scm (gnupg): Update to 2.1.17.
2016-12-20 15:48:24 +01:00
Ludovic Courtès b20644ed18 build: Delete all the .service and .conf files upon 'make clean'.
* nix/local.mk (CLEANFILES): Define to add $(nodist_systemdservice_DATA)
and $(nodist_upstartjob_DATA).
2016-12-20 15:14:40 +01:00
Marius Bakke 4cb7786eff import: pypi: Match new 'pypi-uri' domain in updater.
* guix/import/pypi.scm (pypi-package?): Match pypi.io domain.
2016-12-20 12:57:26 +01:00
Marius Bakke a25b6880f1 gnu: python-efl: Disable tests.
* gnu/packages/enlightenment.scm (python-efl, python2-efl)[arguments]: Add
phase to set test environment. And set #:tests? #f.
2016-12-19 18:13:24 +01:00
Marius Bakke c0b12a606b gnu: sshoot: Fix tests.
* gnu/packages/vpn.scm (sshoot)[arguments]: Add 'patch-paths' phase.
2016-12-19 04:13:59 +01:00
Marius Bakke 1c1b67a3c9 gnu: thefuck: Correct inputs and disable tests.
* gnu/packages/admin.scm (thefuck)[arguments]: Set #:tests? #f.
[inputs]: Move everything to ...
[propagated-inputs]: ... here. Remove duplicate [inputs] and python-setuptools.
[native-inputs]: Add python-pytest, python-pytest-mock and python-mock.
2016-12-19 01:28:27 +01:00
Marius Bakke 7b6ff42aa3 gnu: git-annex-remote-hubic: Fix python-dateutil dependency.
This is a followup to 22d7360b16.

* gnu/packages/version-control.scm (git-annex-remote-hubic)[propagated-inputs]:
Change python-dateutil-2 to python-dateutil.
2016-12-18 00:44:09 +01:00
Marius Bakke 39d0de3375 gnu: asciinema: Fix test requirements.
* gnu/packages/terminals.scm (asciinema)[native-inputs]: Add python-requests.
2016-12-17 12:19:41 +01:00
Leo Famulari e02f1473da gnu: libgcrypt: Update to 1.7.5.
* gnu/packages/gnupg.scm (libgcrypt): Update to 1.7.5.
2016-12-17 00:56:48 -05:00
Marius Bakke cdc2bb50b2 gnu: pbtranscript-tofu: Disable tests.
* gnu/packages/bioinformatics.scm (pbtranscript-tofu)[arguments]: Set #:tests? #f.
2016-12-16 18:15:47 +01:00
Marius Bakke ee94ca11a1 gnu: python-beautifulsoup4: Fix python2 variant.
This is a followup to 5f37f0b66e.

* gnu/packages/python.scm (python-beautifulsoup4)[properties]: New
  field. Delay python2 variant.
2016-12-16 16:15:41 +01:00
Marius Bakke 752eb9e0d8 gnu: python2-kombu: Disable tests.
* gnu/packages/python.scm (python2-kombu)[arguments]: Set #:tests? #f.
2016-12-16 15:33:13 +01:00
Marius Bakke 7c6bf660d8 gnu: python-pyopenssl: Enable tests.
* gnu/packages/patches/python-pyopenssl-skip-network-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-pyopenssl, python2-pyopenssl)[source]: Use it.
[arguments]: Replace 'check' with custom phase.
2016-12-16 14:36:15 +01:00
Marius Bakke 329553482d gnu: ptpython: Disable tests.
* gnu/packages/python.scm (ptpython, ptpython2)[arguments]: Set #:tests? #f.
2016-12-16 13:39:07 +01:00
Marius Bakke 0d90875974 gnu: multiqc: Fix test dependencies.
* gnu/packages/bioinformatics.scm (multiqc)[native-inputs]: Add python-nose.
2016-12-16 13:28:49 +01:00
Marius Bakke 52f622ef9f gnu: python-sympy: Update to 1.0.
* gnu/packages/python.scm (python-sympy, python2-sympy): Update to 1.0.
[propagated-inputs]: Add python-mpmath.
2016-12-16 13:22:12 +01:00
Marius Bakke 58a35665d9 gnu: Add python-mpmath.
* gnu/packages/python.scm (python-mpmath, python2-mpmath): New variables.
2016-12-16 13:22:10 +01:00
Marius Bakke 14386fc7d9 gnu: idr: Remove explicit wrapper. This is now done implicitly.
* gnu/packages/bioinformatics.scm (idr)[arguments]: Remove #:phases.
2016-12-16 13:16:39 +01:00
Marius Bakke b7a820fc97 gnu: idr: Correct inputs.
* gnu/packages/bioinformatics.scm (idr)[inputs]: Move everything from here ...
[propagated-inputs]: ... to here. Add python-sympy.
2016-12-16 13:11:20 +01:00
Marius Bakke 1c10a1d75c gnu: idr: Disable tests.
* gnu/packages/bioinformatics.scm (idr)[arguments]: Set #:tests? #f.
2016-12-16 13:08:57 +01:00
Marius Bakke aaffb9c97b gnu: deeptools: Fix test dependency.
* gnu/packages/bioinformatics.scm (deeptools)[native-inputs]: Add python-nose.
2016-12-16 04:27:35 +01:00
Marius Bakke d281be18bc gnu: clipper: Fix test dependency.
* gnu/packages/bioinformatics.scm (clipper)[native-inputs]: Add python2-nose.
2016-12-16 04:26:32 +01:00
Tobias Geerinckx-Rice 68ea090b93 gnu: libcap: Update to 2.25.
* gnu/packages/linux.scm (libcap): Update to 2.25.
2016-12-16 03:09:13 +01:00
Marius Bakke 154d207c43 gnu: python-apsw: Fix tests.
* gnu/packages/python.scm (python-apsw, python2-apsw)[arguments]: Use
  'modify-phases'. Add installed PYTHONPATH before running tests.
2016-12-16 02:45:49 +01:00
Marius Bakke 80ce42bdbf gnu: python-argcomplete: Fix tests.
* gnu/packages/python.scm (python-argcomplete,
  python2-argcomplete)[native-inputs]: Add python-pexpect and tcsh.
2016-12-16 02:16:23 +01:00
Marius Bakke 58f5fae7c4 gnu: python-widgetsnbextension: Fix tests.
* gnu/packages/python.scm (python-widgetsnbextension,
  python2-widgetsnbextension)[native-inputs]: Add python-certifi.
2016-12-16 02:14:54 +01:00
Marius Bakke ed11804309 gnu: python-pexpect: Update to 4.2.1.
* gnu/packages/python.scm (python-pexpect, python2-pexpect): Update to 4.2.1.
[source]: Use 'pypi-uri'.
[arguments]: Add 'prepare-tests' phase to patch paths and delete network test.
[native-inputs]: Add python-pytest, man-db and which.
[propagated-inputs]: Add python-ptyprocess.
2016-12-16 02:10:58 +01:00
Marius Bakke 01fb9f6638 gnu: python-axolotl: Remove workaround for bug #20765.
* gnu/packages/python.scm (python-axolotl, python2-axolotl)[arguments]:
Remove #:configure-flags.
2016-12-16 01:07:41 +01:00
Marius Bakke 22d7360b16 gnu: Remove python-dateutil@1.5.
* gnu/packages/python.scm (python-dateutil-2, python2-dateutil-2): Rename to ...
(python-dateutil, python2-dateutil): ... this. Remove 1.5 version.
(python-tzlocal, python2-tzlocal): Adjust variable name.
(python-rst.linker, python2-rst.linker): Likewise.
(pelican): Likewise.
(python-matplotlib, python2-matplotlib): Likewise.
(python-sqlalchemy-utils, python2-sqlalchemy-utils): Likewise.
(python-icalendar, python2-icalendar): Likewise.
(python-botocore, python2-botocore): Likewise.
(python-vobject, python2-vobject): Likewise.
(python-arrow, python2-arrow): Likewise.
(python-fake-factory, python2-fake-factory): Likewise.
(python-freezegun, python2-freezegun): Likewise.
(python-aniso8601, python2-aniso8601): Likewise.
* gnu/packages/jrnl.scm (jrnl): Likewise.
* gnu/packages/calendar.scm (limnoria): Likewise.
2016-12-16 00:54:48 +01:00
Marius Bakke 59f74825d6 gnu: python-flask-restplus: Disable tests.
* gnu/packages/python.scm (python-flask-restplus)[arguments]: Set #:tests? #f.
2016-12-15 19:56:44 +01:00
Marius Bakke ad348f9f39 gnu: python-gridmap: Disable tests.
* gnu/packages/python.scm (python-gridmap, python2-gridmap)[arguments]:
Set #:tests? #f.
2016-12-15 19:50:12 +01:00
Marius Bakke 15c37077bc gnu: python-hy: Fix test suite.
* gnu/packages/python.scm (python-hy, python2-hy)[arguments]: Replace 'check'
phase with custom command.
[native-inputs]: Add python-coverage and python-nose.
2016-12-15 19:49:06 +01:00
Marius Bakke 8653c1d557 gnu: python-py3status: Disable tests.
* gnu/packages/python.scm (python-py3status)[arguments]: Set #:tests? #f.
2016-12-15 19:09:18 +01:00
Marius Bakke 810f89839c gnu: python-pylast: Disable tests.
* gnu/packages/music.scm (python-pylast, python2-pylast)[arguments]:
Set #:tests? #f.
2016-12-15 19:06:12 +01:00
Marius Bakke 0a70200951 gnu: python-pyserial: Disable tests.
* gnu/packages/python.scm (python-pyserial, python2-pyserial)[arguments]:
Set #:tests? #f.
2016-12-15 18:42:22 +01:00
Marius Bakke 8bd5164b4a gnu: python-pystache: Disable tests for python3 variant.
* gnu/packages/python.scm (python-pystache)[arguments]: Disable tests.
[properties]: New field. Delay python2 variant.
(python2-pystache)[arguments]: Replace 'check' phase with custom command.
2016-12-15 18:35:21 +01:00
Marius Bakke 1f31a5e0bf gnu: python-pytest-django: Disable tests.
* gnu/packages/django.scm (python-pytest-django,
  python2-pytest-django)[arguments]: Set #:tests? #f.
2016-12-15 18:19:34 +01:00
Marius Bakke 4eb385fb33 gnu: python-pytest-xdist: Disable tests.
* gnu/packages/python.scm (python-pytest-xdist,
  python2-pytest-xdist)[arguments]: Set #:tests? #f.
2016-12-15 18:11:43 +01:00
Marius Bakke 9e378e6a5c gnu: python-reportlab: Fix tests.
* gnu/packages/pdf.scm (python-reportlab, python2-reportlab)[arguments]:
Set #:test-target.
2016-12-15 17:55:36 +01:00
Marius Bakke 444464ec28 gnu: python-rpy2: Fix tests.
* gnu/packages/python.scm (python-rpy2, python2-rpy2)[arguments]: Replace
  check phase with custom post-install command.
2016-12-15 17:55:36 +01:00
Marius Bakke 6f976df677 gnu: python-seaborn: Disable tests.
* gnu/packages/python.scm (python-seaborn, python2-seaborn)[arguments]:
  Disable tests.
2016-12-15 17:31:29 +01:00
Marius Bakke 35d56b7b60 gnu: python-sqlalchemy-utils: Disable tests.
* gnu/packages/python.scm (python-sqlalchemy-utils,
  python2-sqlalchemy-utils)[arguments]: Set #:tests? #f.
  [native-inputs]: Add python-dateutil-2, python-flexmock, python-pcycopg2 and
  python-pytz.
2016-12-15 17:26:42 +01:00
Marius Bakke bfba083684 gnu: python-keystoneclient: Disable tests.
* gnu/packages/openstack.scm (python-keystoneclient,
  python2-keystoneclient)[arguments]: Set #:tests? #f.
2016-12-15 16:55:17 +01:00
Marius Bakke c616b5d3b5 gnu: python-oauthlib: Fix tests.
* gnu/packages/python.scm (python-oauthlib)[native-inputs]:
  Add python-mock.
(python2-oauthlib)[native-inputs]: Inherit python-mock.
2016-12-15 16:50:15 +01:00
Marius Bakke f959495ba0 gnu: python-tempest-lib: Disable tests.
* gnu/packages/openstack.scm (python-tempest-lib,
  python2-tempest-lib)[arguments]: Set #:tests? #f.
2016-12-15 15:23:39 +01:00
Marius Bakke 73b494a11d gnu: python-oslo.log: Disable tests.
* gnu/packages/openstack.scm (python-oslo.log, python2-oslo.log)[arguments]:
  Set #:tests? #f.
2016-12-15 15:22:16 +01:00
Marius Bakke 49910e6a7c gnu: python-paramiko: Disable tests.
* gnu/packages/python.scm (python-paramiko, python2-paramiko)[arguments]:
Set #:tests? #f.
2016-12-15 14:01:27 +01:00
Marius Bakke 5ae31b547c gnu: python-oslo.serialization: Disable tests.
* gnu/packages/openstack.scm (python-oslo.serialization,
  python2-oslo.serialization)[arguments]: Set #:tests? #f.
2016-12-15 13:55:54 +01:00
Marius Bakke ad59ebda53 gnu: python-oslo.utils: Disable tests.
* gnu/packages/openstack.scm (python-oslo.utils,
  python2-oslo.utils)[arguments]: Set #:tests? #f.
  [native-inputs]: Add python-bandit and python-oslo.config.
2016-12-15 13:50:55 +01:00
Marius Bakke d9184f4f76 gnu: python-oslo.config: Disable tests.
* gnu/packages/openstack.scm (python-oslo.config,
  python2-oslo.config)[arguments]: Set #:tests? #f.
2016-12-15 13:49:08 +01:00
Marius Bakke 130f68ec3b gnu: python-stevedore: Fix tests.
* gnu/packages/openstack.scm (python-stevedore,
  python2-stevedore)[native-inputs]: Add python-discover, python-oslosphinx,
  python-sphinx and python-testrepository.
2016-12-15 13:45:07 +01:00
Marius Bakke bb56d9a18c gnu: python-oslo.i18n: Disable tests.
* gnu/packages/openstack.scm (python-oslo.i18n, python2-oslo.i18n)[arguments]:
  Set #:tests? #f.
2016-12-15 13:35:57 +01:00
Marius Bakke f30e53369b gnu: python-oslo.context: Disable tests.
* gnu/packages/openstack.scm (python-oslo.context,
  python2-oslo.context)[arguments]: Set #:tests? #f.
  [native-inputs]: Add python-coverage, python-hacking, python-mock,
  python-os-client-config, python-oslosphinx and python-sphinx.
2016-12-15 13:33:16 +01:00
Marius Bakke 767c7e0ed1 gnu: python-debtcollector: Disable tests.
* gnu/packages/openstack.scm (python-debtcollector,
  python2-debtcollector)[arguments]: Set #:tests? #f.
2016-12-15 13:23:56 +01:00
Marius Bakke 7917a13554 gnu: python-termstyle: Fix tests.
* gnu/packages/python.scm (python-termstyle)[arguments]: Replace 'check' phase
with custom command.
2016-12-15 13:17:29 +01:00
Marius Bakke a960e73fad gnu: python-twisted: Disable tests.
* gnu/packages/python.scm (python-twisted, python2-twisted)[arguments]:
Set #:tests? #f.
2016-12-15 13:13:23 +01:00
Marius Bakke a74f9b12ae gnu: python-zope-security: Disable tests.
* gnu/packages/python.scm (python-zope-security,
  python2-zope-security)[arguments]: Set #:tests? #f.
  [native-inputs]: Add python-six.
2016-12-15 12:45:26 +01:00
Marius Bakke 40bb8e07ae gnu: python-zope-location: Disable tests.
* gnu/packages/python.scm (python-zope-location,
  python2-zope-location)[arguments]: Set #:tests? #f.
2016-12-15 12:42:39 +01:00
Marius Bakke 66b3aadb73 gnu: python-zope-proxy: Disable tests.
* gnu/packages/python.scm (python-zope-proxy, python2-zope-proxy)[arguments]:
  Set #:tests? #f.
2016-12-15 12:40:10 +01:00
Marius Bakke 7e8b1bfa4b gnu: python-zope-configuration: Disable tests.
* gnu/packages/python.scm (python-zope-configuration,
  python2-zope-configuration)[arguments]: Set #:tests? #f.
2016-12-15 12:38:04 +01:00
Marius Bakke 22dba2eff9 gnu: python-zope-interface: Disable tests.
* gnu/packages/python.scm (python-zope-schema,
  python2-zope-schema)[arguments]: Set #:tests? #f.
2016-12-15 12:35:26 +01:00
Marius Bakke 385871e5f7 gnu: python-zope-testrunner: Disable tests.
* gnu/packages/python.scm (python-zope-testrunner,
  python2-zope-testrunner)[arguments]: Set #:tests? #f.
2016-12-15 12:12:13 +01:00
Marius Bakke 7b93d86670 gnu: snakemake: Update to 3.9.0.
* gnu/packages/python.scm (snakemake): Update to 3.9.0.
[source]: Use 'pypi-uri'.
[arguments]: Disable tests.
[home-page]: Update.
2016-12-15 10:12:38 +01:00
Marius Bakke 972cf9be52 gnu: python-ly: Disable tests.
* gnu/packages/python.scm (python-ly): Set #:tests? #f.
2016-12-15 10:02:41 +01:00
Marius Bakke 9026e6890a gnu: python-scikit-image: Disable tests.
* gnu/packages/python.scm (python-scikit-image,
  python2-scikit-image)[arguments]: Set #:tests? #f.
2016-12-14 23:01:40 +01:00
Marius Bakke bfce8a344d gnu: python-jedi: Disable tests.
* gnu/packages/python.scm (python-jedi, python2-jedi)[arguments]: Disable
  tests.
  [native-inputs]: Add python-pytest.
2016-12-14 22:59:56 +01:00
Marius Bakke ee4722411f gnu: python-rdflib: Disable tests.
* gnu/packages/rdf.scm (python-rdflib)[arguments]: Set #:tests? #f.
[native-inputs]: Add python-nose.
(python2-rdflib)[inputs]: Remove field. Use 'package-with-python2'.
2016-12-14 22:24:50 +01:00
Marius Bakke 6145b60462 gnu: python-clint: Fix tests.
* gnu/packages/python.scm (python-clint, python2-clint)[native-inputs]: Add
  python-pytest.
  [arguments]: Replace 'check' phase with custom command.
2016-12-14 22:07:38 +01:00
Marius Bakke b7f3ea9532 gnu: python-fake-factory: Fix tests.
* gnu/packages/python.scm (python-fake-factory,
  python2-fake-factory)[arguments]: Replace 'check' phase with custom command.
2016-12-14 22:01:36 +01:00
Tobias Geerinckx-Rice 8471a8d1fe gnu: xkeyboard-config: Update to 2.19.
* gnu/packages/xorg.scm (xkeyboard-config): Update to 2.19.
2016-12-14 20:04:23 +01:00
Marius Bakke f620311a39 gnu: python-pyaml: Fix tests.
* gnu/packages/python.scm (python-pyaml, python2-pyaml)[native-inputs]: Add
  python-unidecode.
2016-12-14 19:53:21 +01:00
Marius Bakke e912752567 gnu: python-inflection: Fix test requirements.
* gnu/packages/python.scm (python-inflection,
  python2-inflection)[native-inputs]: Add python-pytest.
2016-12-14 19:50:44 +01:00
Marius Bakke 877fdac9e3 gnu: python-botocore: Disable tests.
* gnu/packages/python.scm (python-botocore, python2-botocore): Set #:tests? #f.
2016-12-14 19:49:35 +01:00
Marius Bakke 52a75a83f9 gnu: python-jmespath: Fix tests.
* gnu/packages/python.scm (python-jmespath, python2-jmespath)[native-inputs]:
  Add python-nose.
2016-12-14 19:45:46 +01:00
Marius Bakke 1b6d7c3f3f gnu: python2-fastlmm: Fix test requirements.
* gnu/packages/python.scm (python2-fastlmm)[native-inputs]: Add python2-nose.
2016-12-14 19:38:50 +01:00
Marius Bakke da5ebd1007 gnu: python-biom-format: Fix tests.
* gnu/packages/bioinformatics.scm (python-biom-format,
  python2-biom-format)[native-inputs]: Add python-nose.
2016-12-14 19:18:26 +01:00
Marius Bakke 30e0229a17 gnu: python-pyopenssl: Disable tests.
* gnu/packages/python.scm (python-pyopenssl, python2-pyopenssl)[arguments]:
Set #:tests? #f.
[native-inputs]: Add python-pytest.
2016-12-14 18:36:52 +01:00
Marius Bakke bd100c7112 gnu: python-hypothesis: Don't propagate test inputs.
* gnu/packages/python.scm (python-hypothesis,
  python2-hypothesis)[propagated-inputs]: Move everything from here ...
  [native-inputs]: ... to here.
(python2-hypothesis)[native-inputs]: Append inherited native-inputs.
2016-12-14 17:35:28 +01:00
Marius Bakke 497355dc09 gnu: python-nbconvert: Disable tests.
* gnu/packages/python.scm (python-nbconvert, python2-nbconvert)[arguments]:
Set #:tests? #f.
[native-inputs]: Add python-pytest.
2016-12-14 12:59:40 +01:00
Marius Bakke 63b02364aa gnu: python-iso8601: Fix test dependencies.
* gnu/packages/python.scm (python-iso8601, python2-iso8601)[native-inputs]:
  Add python-pytest.
2016-12-14 12:47:22 +01:00
Marius Bakke 55ab64516b gnu: python-django-filter: Fix test suite.
* gnu/packages/django.scm (python-django-filter,
  python2-django-filter)[arguments]: Replace 'check' phase with custom command.
2016-12-14 12:43:36 +01:00
Marius Bakke 281cc11c8e gnu: python-django-simple-math-captcha: Disable tests.
* gnu/packages/django.scm (python-django-simple-math-captcha,
  python2-django-simple-math-captcha)[arguments]: Set #:tests? #f.
2016-12-14 12:40:13 +01:00
Marius Bakke ea8907c5d5 gnu: python-mox3: Disable tests.
* gnu/packages/openstack.scm (python-mox3, python2-mox3)[arguments]: Disable
  tests.
  [native-inputs]: Add python-oslosphinx and python-sphinx.
2016-12-14 12:02:45 +01:00
Marius Bakke 2ff4559b49 gnu: python-hacking: Disable tests.
* gnu/packages/openstack.scm (python-hacking, python2-hacking)[arguments]:
Set #:tests? #f.
2016-12-14 11:40:34 +01:00
Marius Bakke a717e8a698 gnu: python-flake8-2.2.4: Disable tests.
* gnu/packages/python.scm (python-flake8-2.2.4,
  python2-flake8-2.2.4)[arguments]: Set #:tests? #f.
2016-12-14 11:40:25 +01:00
Marius Bakke 73e3060d57 gnu: python-pep8-1.5.7: Disable tests.
* gnu/packages/python.scm (python-pep8-1.5.7, python2-pep8-1.5.7)[arguments]:
Set #:tests? #f.
2016-12-14 11:21:50 +01:00
Marius Bakke 0d84e1ef22 gnu: python-pyflakes-0.8.1: Disable tests.
* gnu/packages/python.scm (python-pyflakes-0.8.1,
  python2-pyflakes-0.8.1)[arguments]: Set #:tests? #f.
2016-12-14 11:19:11 +01:00
Marius Bakke 90110ef956 gnu: python-testrepository: Disable tests.
* gnu/packages/python.scm (python-testrepository, python2-testrepository):
Set #:tests? #f.
2016-12-14 10:46:47 +01:00
Marius Bakke f6c1ef1804 gnu: python-fixtures: Fix test suite.
* gnu/packages/python.scm (python-fixtures, python2-fixtures): Replace 'check'
  with custom phase.
  [native-inputs]: Add python-mock.
2016-12-14 10:40:21 +01:00
Marius Bakke fb08c4fedc gnu: python-psutil: Disable tests.
* gnu/packages/python.scm (python-psutil, python2-psutil): Disable tests.
2016-12-14 10:18:33 +01:00
Leo Famulari 9d3a15b496 gnu: python-sphinx-rtd-theme: Build with python-sphinx.
* gnu/packages/python.scm (python-sphinx-rtd-theme,
python2-sphinx-rtd-theme)[propagated-inputs]: Add python-sphinx.
2016-12-13 20:54:34 -05:00
Leo Famulari 2b9e4bead9 gnu: python-zope-schema: Build with python-zope-exceptions.
* gnu/packages/python.scm (python-zope-schema,
python2-zope-schema)[propagated-inputs]: Add python-zope-schema.
2016-12-13 20:54:29 -05:00
Marius Bakke a792e1aa8d gnu: python-cairocffi: Disable tests.
* gnu/packages/python.scm (python-cairocffi, python2-cairocffi)[arguments]:
Set #:tests? #f.
2016-12-13 17:04:20 -05:00
Marius Bakke 6734c7bae3 gnu: python-cairocffi: Use 'modify-phases' syntax.
* gnu/packages/python.scm (python-cairocffi)[arguments]: Use 'modify-phases'.
2016-12-13 17:04:20 -05:00
Marius Bakke e2816ac72d gnu: python-xcffib: Disable tests.
* gnu/packages/python.scm (python-xcffib, python2-xcffib)[arguments]:
Set #:tests? #f.
2016-12-13 17:04:20 -05:00
Marius Bakke c8cd850c87 gnu: python-xcffib: Use 'modify-phases' syntax.
* gnu/packages/python.scm (python-xcffib)[arguments]: Use 'modify-phases'.
2016-12-13 17:04:19 -05:00
Marius Bakke cff0ccf9dc gnu: python-requests: Disable tests.
* gnu/packages/python.scm (python-requests, python2-requests,
python-requests-2.7)[native-inputs]: Remove field.
[arguments]: New field. Set #:tests? #f.
2016-12-13 17:04:19 -05:00
Marius Bakke 97be1bc231 gnu: python-click: Fix tests.
* gnu/packages/python.scm (python-click, python2-click)[arguments]: Replace
'check' with custom phase.
[native-inputs]: Add python-pytest.
2016-12-13 17:04:19 -05:00
Marius Bakke 3fe2c209e0 gnu: python-tornado: Disable tests.
* gnu/packages/python.scm (python-tornado, python2-tornado)[arguments]:
Set #:tests? #f.
2016-12-13 17:04:19 -05:00
Marius Bakke 03cb5f9edb gnu: python-sphinx: Disable tests.
* gnu/packages/python.scm (python-sphinx, python2-sphinx)[arguments]:
Set #:tests? #f.
2016-12-13 17:04:18 -05:00
Marius Bakke 995cb99e4b gnu: python-pygments: Disable tests.
* gnu/packages/python.scm (python-pygments, python2-pygments)[arguments]:
Set #:tests? #f.
2016-12-13 17:04:18 -05:00
Marius Bakke bd10e677d1 gnu: python-coverage: Disable tests.
* gnu/packages/python.scm (python-coverage, python2-coverage)[arguments]:
Set #:tests? #f.
2016-12-13 17:04:18 -05:00
Marius Bakke 4fd129ee86 gnu: python-six: Fix test dependencies.
* gnu/packages/python.scm (python-six, python2-six)[native-inputs]: Add
python-py and python-pytest.
2016-12-13 17:04:18 -05:00
Marius Bakke dcb0da7bff gnu: python-py: Disable tests.
* gnu/packages/python.scm (python-py, python2-py)[arguments]: Set #:tests? #f.
2016-12-13 21:04:31 +01:00
Marius Bakke e46a043ecd build-system/python: Make sure 'check' returns failures.
* guix/build/python-build-system.scm (check): Wrap 'call-setuppy' in 'if' so
that it actually fails when the tests fail. Print informational message when
skipped.
2016-12-13 21:04:31 +01:00
Marius Bakke 673c0390aa gnu: xproto: Update to 7.0.31.
* gnu/packages/xorg.scm (xproto): Update to 7.0.31.
2016-12-13 20:48:14 +01:00
Tobias Geerinckx-Rice c82fd97e0b gnu: libgcrypt: Update to 1.7.4.
* gnu/packages/gnupg.scm (libgcrypt): Update to 1.7.4.
2016-12-13 03:46:58 +01:00
Tobias Geerinckx-Rice 20f7a750ed gnu: gnutls: Update to 3.5.7.
* gnu/packages/tls.scm (gnutls): Update to 3.5.7.
2016-12-13 03:46:57 +01:00
Ludovic Courtès b810a85019 gnu: Default to GCC 5.
This reinstates and adjusts
commit e3d0fcbf7e.

* gnu/packages/patches/gcc-libiberty-printf-decl.patch: New file.
* gnu/packages/gcc.scm (gcc-5)[source]: Use it.
[patches]: Add "gcc-arm-bug-71399.patch".
(gcc): Switch to GCC-5.
* gnu/packages/commencement.scm (libstdc++-boot0): New variable.
(gcc-boot0)[inputs]: Add it.
(gcc-toolchain-4.9): Switch to GCC-4.9.
(gcc-toolchain-5): Switch to GCC-FINAL.
* gnu/local.mk (dist_patch_DATA): Add 'gcc-libiberty-printf-decl.patch'.
2016-12-13 00:40:57 +01:00
Marius Bakke 1d0ceb4775 gnu: sqlite: Update to 3.15.2.
* gnu/packages/databases.scm (sqlite): Update to 3.15.2.
2016-12-12 22:54:25 +01:00
Ludovic Courtès 92cc9cf180 gnu: guile: Update to 2.0.13.
* gnu/packages/guile.scm (guile-2.0): Update to 2.0.13.
[source](patches): New field.
[replacement]: Remove.
(guile-2.0.13): Remove.
2016-12-12 00:42:32 +01:00
Efraim Flashner 78636f0b8c gnu: grep: Update to 2.27.
* gnu/packages/base.scm (grep): Update to 2.27.
2016-12-10 22:10:30 +02:00
Efraim Flashner d54c0bfde4 gnu: libunistring: Update to 0.9.7.
* gnu/packages/libunistring.scm (libunistring): Update to 0.9.7.
[home-page]: Use https.
[license]: License has changed to dual lgpl3+ gpl2.
2016-12-03 19:35:27 +02:00
Efraim Flashner bec5022ffe gnu: coreutils: Update to 8.26.
* gnu/packages/base.scm (coreutils): Update to 8.26.
2016-12-03 17:30:33 +02:00
David Craven 83dcfa72d4 gnu: flex: Update to 2.6.2.
* gnu/packages/flex.scm (flex): Update to 2.6.2.
  [native-inputs]: Add help2man.
  [origin]: Update uri to github. Remove CVE-2016-6354 patch.
  (flex-2.6.1): Remove variable.
* gnu/packages/patches/flex-CVE-2016-6354.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Update.
* gnu/packages/kde-frameworks.scm (solid, kservice)[native-inputs]: Use
  flex.
2016-12-02 21:28:05 +01:00
Tobias Geerinckx-Rice 7d07e2a527 gnu: gnutls: Update 3.5.6.
* gnu/packages/tls.scm (gnutls): Update to 3.5.6.
2016-11-30 14:26:28 +01:00
Manolis Ragkousis 9b5f498def gnu: glibc-hurd: Force mach/hurd/libpthread subdirs to build first.
* gnu/packages/base.scm (glibc/hurd)[arguments]: Replace 'build' phase.

Co-authored-by: Ludovic Court<C3><A8>s <ludo@gnu.org>
2016-11-30 15:17:38 +02:00
Leo Famulari f265a3cee5 gnu: libarchive: Update to 3.2.2.
* gnu/packages/backup.scm (libarchive): Update to 3.2.2.
[source]: Remove obsolete patches.
* gnu/packages/patches/libarchive-7zip-heap-overflow.patch,
gnu/packages/patches/libarchive-fix-filesystem-attacks.patch,
gnu/packages/patches/libarchive-fix-symlink-check.patch,
gnu/packages/patches/libarchive-safe_fprintf-buffer-overflow.patch:
Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2016-11-28 21:10:25 -05:00
Leo Famulari e673a1df29 gnu: libarchive: Fix typo in 'libarchive-safe_fprintf-buffer-overflow.patch'.
* gnu/packages/patches/libarchive-safe_fprintf-buffer-overflow.patch:
Use correct URL in patch documentation.
2016-11-28 21:10:19 -05:00
Marius Bakke be12f4e275 build-system/perl: Don't create non-deterministic 'perllocal.pod' files.
* guix/build/perl-build-system.scm (configure): Add "NO_PERLLOCAL=1"
to Makefile.PL arguments.
2016-11-28 23:11:39 +01:00
Efraim Flashner bd128e2e8f gnu: mpfr: Update to 3.1.5.
* gnu/packages/multiprecision.scm (mpfr): Update to 3.1.5.
2016-11-27 10:47:06 +02:00
Efraim Flashner 51c8e2996c gnu: sed: Use 'modify-phases' syntax.
* gnu/packages/base.scm (sed)[arguments]: Use 'modify-phases' syntax.
2016-11-27 10:25:45 +02:00
Efraim Flashner b7a5a4821f gnu: grep: Update to 2.26.
* gnu/packages/base.scm (grep): Update to 2.26.
2016-11-27 10:23:59 +02:00
Efraim Flashner 31bd09e5a8 gnu: nettle: Update to 3.3.
* gnu/packages/nettle.scm (nettle): Update to 3.3.
[home-page]: Use https.
2016-11-27 09:44:48 +02:00
Efraim Flashner feefbb0946 gnu: bash: Update to patch level 5.
* gnu/packages/bash.scm (%patch-url-seqno): Update for bash-4.4.
(%patch-series-4.4): Add patches 1 to 5.
2016-11-27 09:24:40 +02:00
Efraim Flashner c296d5d119 gnu: icu4c: Use 'modify-phases' syntax.
* gnu/packages/icu4c.scm (icu4c)[arguments]: Use 'modify-phases' syntax.
2016-11-27 09:24:40 +02:00
Efraim Flashner 5499de02ca gnu: icu4c: Update to 58.1.
* gnu/packages/icu4c.scm (icu4c): Update to 58.1.
[source]: Download from their website.
[arguments]: Remove extra bash replacement.
2016-11-27 09:24:40 +02:00
Leo Famulari e30abbbb02 gnu: cyrus-sasl: Incorporate grafted patch.
* gnu/packages/cyrus-sasl.scm (cyrus-sasl)[source]: Use
'cyrus-sasl-CVE-2013-4122.patch'.
[replacement]: Remove field.
(cyrus-sasl/fixed): Remove variable.
2016-11-26 16:23:42 -05:00
Leo Famulari a282cdae10 Merge branch 'master' into core-updates 2016-11-26 16:21:47 -05:00
Marius Bakke 3ad8cb4163 gnu: sqlite: Update to 3.15.1.
* gnu/packages/databases.scm (sqlite): Update to 3.15.1.
[source]: Download from sqlite.org.
[home-page]: Use HTTPS.
(sqlite-3.15.1): Remove.
* gnu/packages/php.scm (php)[inputs]: Change 'sqlite-3.15.1' to 'sqlite'.
2016-11-26 09:09:17 +01:00
Marius Bakke c254ac3200 build-system/gnu: Make libraries writable before stripping.
* guix/build/gnu-build-system.scm (strip)[strip-dir]: Change mode of
files before running strip-command.
2016-11-26 09:07:07 +01:00
Leo Famulari c8d1e7a130 gnu: libgc-7.2: Remove package.
This package variant was unused.

* gnu/packages/bdw-gc.scm (libgc-7.2): Delete variable.
2016-11-23 23:11:30 -05:00
John Darrington 5ac13f9218 gnu: Update mit-krb5 to version 1.14.4.
* gnu/packages/mit-krb5.scm (mit-krb5): Update to 1.14.4
2016-11-23 07:21:28 +01:00
Leo Famulari c0bb7178be gnu: libtiff: Update to 4.0.7.
* gnu/packages/image.scm (libtiff): Update to 4.0.7.
[source]: Update URL and remove obsolete patches.
[home-page]: Update URL.
(libtiff-4.0.7): Delete variable.
* gnu/packages/patches/libtiff-CVE-2015-8665+CVE-2015-8683.patch,
gnu/packages/patches/libtiff-CVE-2016-3623.patch,
gnu/packages/patches/libtiff-CVE-2016-3945.patch,
gnu/packages/patches/libtiff-CVE-2016-3990.patch,
gnu/packages/patches/libtiff-CVE-2016-3991.patch,
gnu/packages/patches/libtiff-CVE-2016-5314.patch,
gnu/packages/patches/libtiff-CVE-2016-5321.patch,
gnu/packages/patches/libtiff-CVE-2016-5323.patch,
gnu/packages/patches/libtiff-oob-accesses-in-decode.patch,
gnu/packages/patches/libtiff-oob-write-in-nextdecode.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
2016-11-23 00:17:12 -05:00
Leo Famulari de76f0a45b Merge branch 'master' into core-updates 2016-11-23 00:11:30 -05:00
Marius Bakke c70047f12d gnu: freetype: Update to 2.7.
* gnu/packages/fontutils.scm (freetype): Update to 2.7.
[home-page]: Use HTTPS.
2016-11-22 17:50:07 +01:00
Tobias Geerinckx-Rice eec9c4a7c5 gnu: progress: Update to 0.13.1.
* gnu/packages/admin.scm (progress): Update to 0.13.1.
[native-inputs]: Add pkg-config and which.
[arguments]: Drop LDFLAGS (now handled by pkg-config) from #:make-flags.
2016-11-22 01:12:03 +01:00
Tobias Geerinckx-Rice 57742b35dc gnu: ncurses: Install pkg-config ‘.pc’ files.
* gnu/packages/ncurses.scm (ncurses)[arguments]: Add ‘--enable-pc-files’
and ‘--with-pkg-config-libdir=’ to #:configure-flags. Create ‘non-wide’
compatibility symbolic links for ‘.pc’ files in the post-install-phase.
[native-inputs]: Add pkg-config.
2016-11-22 01:12:02 +01:00
Petter 6e388b0839 gnu: openssl: Remove redundant use of mkdir-p.
* gnu/packages/tls.scm (openssl)[arguments]: Remove redundant (mkdir-p).

Signed-off-by: Leo Famulari <leo@famulari.name>
2016-11-21 14:41:28 -05:00
Leo Famulari 4b269baf44 gnu: libgc: Update to 7.6.0.
* gnu/packages/bdw-gc.scm (libgc): Update to 7.6.0.
2016-11-21 14:24:29 -05:00
Leo Famulari a8ce976fe6 gnu: libgc-7.2: Update to 7.2g.
* gnu/packages/bdw-gc.scm (libgc-7.2): Update to 7.2g.
2016-11-21 14:24:28 -05:00
Leo Famulari a373c68588 gnu: libatomic-ops: Update to 7.4.4.
* gnu/packages/bdw-gc.scm (libatomic-ops): Update to 7.4.4.
2016-11-21 14:17:29 -05:00
Leo Famulari d3d2167728 gnu: libgpg-error: Update to 1.25.
* gnu/packages/gnupg.scm (libgpg-error): Update to 1.25.
2016-11-19 11:54:40 -05:00
John Darrington d9804e5011 gnu: util-linux: Add current system profile to fs search path.
* gnu/packages/linux.scm (util-linux)[arguments]: Add
"--enable-fs-paths-default=/run/current-system/profile/sbin"
to configure-flags.
2016-11-16 20:13:41 +01:00
860 changed files with 97214 additions and 31017 deletions
+10
View File
@@ -17,13 +17,20 @@
(eval . (put 'call-with-prompt 'scheme-indent-function 1))
(eval . (put 'test-assert 'scheme-indent-function 1))
(eval . (put 'test-assertm 'scheme-indent-function 1))
(eval . (put 'test-equalm 'scheme-indent-function 1))
(eval . (put 'test-equal 'scheme-indent-function 1))
(eval . (put 'test-eq 'scheme-indent-function 1))
(eval . (put 'call-with-input-string 'scheme-indent-function 1))
(eval . (put 'guard 'scheme-indent-function 1))
(eval . (put 'lambda* 'scheme-indent-function 1))
(eval . (put 'substitute* 'scheme-indent-function 1))
;; 'modify-phases' and its keywords.
(eval . (put 'modify-phases 'scheme-indent-function 1))
(eval . (put 'replace 'scheme-indent-function 1))
(eval . (put 'add-before 'scheme-indent-function 2))
(eval . (put 'add-after 'scheme-indent-function 2))
(eval . (put 'modify-services 'scheme-indent-function 1))
(eval . (put 'with-directory-excursion 'scheme-indent-function 1))
(eval . (put 'package 'scheme-indent-function 0))
@@ -52,6 +59,8 @@
(eval . (put 'with-derivation-narinfo 'scheme-indent-function 1))
(eval . (put 'with-derivation-substitute 'scheme-indent-function 2))
(eval . (put 'mlambda 'scheme-indent-function 1))
(eval . (put 'mlambdaq 'scheme-indent-function 1))
(eval . (put 'syntax-parameterize 'scheme-indent-function 1))
(eval . (put 'with-monad 'scheme-indent-function 1))
(eval . (put 'mbegin 'scheme-indent-function 1))
@@ -66,6 +75,7 @@
(eval . (put 'call-with-container 'scheme-indent-function 1))
(eval . (put 'container-excursion 'scheme-indent-function 1))
(eval . (put 'eventually 'scheme-indent-function 1))
;; Recognize '~', '+', and '$', as used for gexps, as quotation symbols.
;; This notably allows '(' in Paredit to not insert a space when the
+6 -5
View File
@@ -6,11 +6,14 @@
*.tar.xz
*.tmp
*~
.#*
\#*\#
,*
/ABOUT-NLS
/INSTALL
/aclocal.m4
/autom4te.cache
/build-aux/ar-lib
/build-aux/compile
/build-aux/config.guess
/build-aux/config.rpath
@@ -30,6 +33,7 @@
/doc/guix.cps
/doc/guix.fn
/doc/guix.fns
/doc/guix.html
/doc/guix.info
/doc/guix.info-[0-9]
/doc/guix.ky
@@ -43,11 +47,6 @@
/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
/etc/guix-publish.conf
@@ -128,3 +127,5 @@ stamp-h[0-9]
tmp
/doc/os-config-lightweight-desktop.texi
/nix/scripts/download
/etc/indent-code.el
/.version
+27 -8
View File
@@ -2,24 +2,32 @@
# contributors reported by "git log" and "git shortlog" commands.
Al McElrath <hello@yrns.org> <hello@atonesir.com>
Alex Sassmannshausen <alex@pompo.co> <alex.sassmannshausen@gmail.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 <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>
Daniel Pimentel <d4n1@d4n1.org> <d4n1@member.fsf.org>
Danny Milosavljevic <dannym@scratchpost.org> <dannym+a@scratchpost.org>
David Hashe <david.hashe@dhashe.com> <address@hidden>
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>
George Clemmer <myglc2@gmail.com>
Ivan Vilata i Balaguer <ivan@selidor.net>
Jeff Mickey <j@codemac.net> <jm@igneous.io>
John Darrington <jmd@gnu.org> <john@darrington.wattle.id.au>
John J. Foerch <jjfoerch@earthlink.net>
Joshua Grant <tadni@riseup.net> <gzg@riseup.net>
Joshua Grant <tadni@riseup.net> <jgrant@parenthetical.io>
Joshua Grant <tadni@riseup.net> <tadnimi@gmail.com>
@@ -27,21 +35,32 @@ Joshua Grant <tadni@riseup.net> <youlysses@riseup.net>
Kei Kebreau <kei@openmailbox.org>
Leo Famulari <leo@famulari.name> <lfamular@gmail.com>
Ludovic Courtès <ludo@gnu.org> <ludovic.courtes@inria.fr>
Marek Benc <dusxmt@gmx.com> <merkur32@gmail.com>
Marius Bakke <mbakke@fastmail.com> <m.bakke@warwick.ac.uk>
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>
ng0 <ng0@libertad.pw> <ng0@we.make.ritual.n0.is>
ng0 <ng0@libertad.pw> <ngillmann@runbox.com>
ng0 <ng0@libertad.pw> <niasterisk@grrlz.net>
ng0 <ng0@libertad.pw> <ng@niasterisk.space>
ng0 <ng0@libertad.pw>
Pjotr Prins <pjotr.public01@thebird.nl>
Pjotr Prins <pjotr.public01@thebird.nl> <pjotr.public12@thebird.nl>
ng0 <ng0@no-reply.pragmatique.xyz>
ng0 <ng0@no-reply.pragmatique.xyz> <contact.ng0@cryptolab.net>
ng0 <ng0@no-reply.pragmatique.xyz> <ng0@we.make.ritual.n0.is>
ng0 <ng0@no-reply.pragmatique.xyz> <ngillmann@runbox.com>
ng0 <ng0@no-reply.pragmatique.xyz> <niasterisk@grrlz.net>
ng0 <ng0@no-reply.pragmatique.xyz> <ng@niasterisk.space>
ng0 <ng0@no-reply.pragmatique.xyz> <ng0@libertad.pw>
Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public01@thebird.nl>
Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public12@thebird.nl>
Pjotr Prins <pjotr.guix@thebird.nl> <pjotr.public12@email>
Raimon Grau <raimonster@gmail.com> <raimon@3scale.net>
Raoul Jean Pierre Bonnal <ilpuccio.febo@gmail.com>
Raymond Nicholson <rain1@openmailbox.org>
Rene Saavedra <rennes@openmailbox.org>
Ricardo Wurmus <rekado@elephly.net>
Ricardo Wurmus <rekado@elephly.net> <ricardo.wurmus@mdc-berlin.de>
Sou Bunnbu (宋文武) <iyzsong@gmail.com>
Sou Bunnbu (宋文武) <iyzsong@gmail.com> <iyzsong@member.fsf.org>
Stefan Reichör <stefan@xsteve.at>
Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
Thomas Danckaert <thomas.danckaert@gmail.com> <post@thomasdanckaert.be>
Tobias Geerinckx-Rice <me@tobias.gr> <tobias.geerinckx.rice@gmail.com>
Tomáš Čech <sleep_walker@gnu.org> <sleep_walker@suse.cz>
Tobias Geerinckx-Rice <me@tobias.gr> <tobias.geerinckx.rice@gmail.com>
Vincent Legoll <vincent.legoll@gmail.com> <vincent.legoll@idgrilles.fr>
+18 -6
View File
@@ -2,8 +2,9 @@
#+TITLE: Hacking GNU Guix and Its Incredible Distro
Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
Copyright © 2015, 2017 Mathieu Lirzin <mthl@gnu.org>
Copyright © 2017 Leo Famulari <leo@famulari.name>
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
@@ -13,7 +14,7 @@ Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
See the manual for useful hacking informations, either by running
info -f doc/guix.info "(guix) Contributing"
info -f doc/guix.info "Contributing"
or by checking the [[http://www.gnu.org/software/guix/manual/guix.html#Contributing][web copy of the manual]].
@@ -24,8 +25,10 @@ convenient. When you deem it necessary, feel free to ask for it on the
mailing list. When you get commit access, please make sure to follow the
policy below (discussions of the policy can take place on guix-devel@gnu.org.)
Non-trivial patches should always be posted to guix-devel@gnu.org (trivial
patches include fixing typos, etc.)
Non-trivial patches should always be posted to guix-patches@gnu.org (trivial
patches include fixing typos, etc.) This mailing list fills the
patch-tracking database at [[https://bugs.gnu.org/guix-patches]]; see
"Contributing" in the manual for details.
For patches that just add a new package, and a simple one, its OK to commit,
if youre confident (which means you successfully built it in a chroot setup,
@@ -43,7 +46,16 @@ configure Git to automatically sign commits, run:
git config commit.gpgsign true
git config user.signingkey CABBA6EA1DC0FF33
For anything else, please post to guix-devel@gnu.org and leave time for a
You can prevent yourself from accidentally pushing unsigned commits to
Savannah by using the pre-push Git hook called located at etc/git/pre-push:
cp etc/git/pre-push .git/hooks/pre-push
When pushing a commit on behalf of somebody else, please add a Signed-off-by
line at the end of the commit log message (e.g. with git am --signoff).
This improves tracking of who did what.
For anything else, please post to guix-patches@gnu.org and leave time for a
review, without committing anything. If you didnt receive any reply
after two weeks, and if youre confident, its OK to commit.
+222 -49
View File
@@ -1,9 +1,11 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013 Andreas Enge <andreas@enge.fr>
# Copyright © 2015 Alex Kost <alezost@gmail.com>
# Copyright © 2015, 2017 Alex Kost <alezost@gmail.com>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2016 Mark H Weaver <mhw@netris.org>
# Copyright © 2016, 2017 Mark H Weaver <mhw@netris.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017 Leo Famulari <leo@famulari.name>
#
# This file is part of GNU Guix.
#
@@ -27,9 +29,14 @@ nodist_noinst_SCRIPTS = \
pre-inst-env \
test-env
# Modules that are not compiled but are installed nonetheless, such as
# build-side modules with unusual dependencies.
MODULES_NOT_COMPILED =
include gnu/local.mk
MODULES = \
guix/base16.scm \
guix/base32.scm \
guix/base64.scm \
guix/cpio.scm \
@@ -39,10 +46,12 @@ MODULES = \
guix/pk-crypto.scm \
guix/pki.scm \
guix/combinators.scm \
guix/memoization.scm \
guix/utils.scm \
guix/sets.scm \
guix/modules.scm \
guix/download.scm \
guix/discovery.scm \
guix/git-download.scm \
guix/hg-download.scm \
guix/monads.scm \
@@ -57,12 +66,15 @@ MODULES = \
guix/upstream.scm \
guix/licenses.scm \
guix/graph.scm \
guix/cache.scm \
guix/cve.scm \
guix/workers.scm \
guix/zlib.scm \
guix/build-system.scm \
guix/build-system/ant.scm \
guix/build-system/cargo.scm \
guix/build-system/cmake.scm \
guix/build-system/dub.scm \
guix/build-system/emacs.scm \
guix/build-system/asdf.scm \
guix/build-system/glib-or-gtk.scm \
@@ -70,6 +82,7 @@ MODULES = \
guix/build-system/haskell.scm \
guix/build-system/perl.scm \
guix/build-system/python.scm \
guix/build-system/ocaml.scm \
guix/build-system/waf.scm \
guix/build-system/r.scm \
guix/build-system/ruby.scm \
@@ -86,6 +99,7 @@ MODULES = \
guix/build/download.scm \
guix/build/cargo-build-system.scm \
guix/build/cmake-build-system.scm \
guix/build/dub-build-system.scm \
guix/build/emacs-build-system.scm \
guix/build/asdf-build-system.scm \
guix/build/git.scm \
@@ -95,6 +109,7 @@ MODULES = \
guix/build/gnu-dist.scm \
guix/build/perl-build-system.scm \
guix/build/python-build-system.scm \
guix/build/ocaml-build-system.scm \
guix/build/r-build-system.scm \
guix/build/ruby-build-system.scm \
guix/build/waf-build-system.scm \
@@ -110,6 +125,7 @@ MODULES = \
guix/build/syscalls.scm \
guix/build/gremlin.scm \
guix/build/emacs-utils.scm \
guix/build/java-utils.scm \
guix/build/lisp-utils.scm \
guix/build/graft.scm \
guix/build/bournish.scm \
@@ -122,7 +138,6 @@ MODULES = \
guix/import/snix.scm \
guix/import/cabal.scm \
guix/import/cran.scm \
guix/import/crate.scm \
guix/import/hackage.scm \
guix/import/elpa.scm \
guix/scripts.scm \
@@ -134,6 +149,7 @@ MODULES = \
guix/scripts/package.scm \
guix/scripts/gc.scm \
guix/scripts/hash.scm \
guix/scripts/pack.scm \
guix/scripts/pull.scm \
guix/scripts/substitute.scm \
guix/scripts/authenticate.scm \
@@ -142,7 +158,6 @@ MODULES = \
guix/scripts/lint.scm \
guix/scripts/challenge.scm \
guix/scripts/import/cran.scm \
guix/scripts/import/crate.scm \
guix/scripts/import/gnu.scm \
guix/scripts/import/nix.scm \
guix/scripts/import/hackage.scm \
@@ -160,16 +175,30 @@ MODULES = \
if HAVE_GUILE_JSON
MODULES += \
guix/docker.scm \
guix/import/cpan.scm \
guix/import/crate.scm \
guix/import/gem.scm \
guix/import/github.scm \
guix/import/json.scm \
guix/import/pypi.scm \
guix/scripts/import/pypi.scm \
guix/import/cpan.scm \
guix/import/stackage.scm \
guix/scripts/import/crate.scm \
guix/scripts/import/gem.scm \
guix/import/gem.scm
guix/scripts/import/pypi.scm \
guix/scripts/import/stackage.scm
endif
if HAVE_GUILE_SSH
MODULES += \
guix/ssh.scm \
guix/scripts/copy.scm \
guix/store/ssh.scm
endif HAVE_GUILE_SSH
if BUILD_DAEMON_OFFLOAD
MODULES += \
@@ -180,27 +209,32 @@ endif BUILD_DAEMON_OFFLOAD
# Internal modules with test suite support.
dist_noinst_DATA = guix/tests.scm guix/tests/http.scm
# Linux-Libre configurations.
KCONFIGS = \
gnu/packages/linux-libre-4.8-i686.conf \
gnu/packages/linux-libre-4.8-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
# Auxiliary files for packages.
AUX_FILES = \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/linux-libre/4.11-i686.conf \
gnu/packages/aux-files/linux-libre/4.11-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.9-i686.conf \
gnu/packages/aux-files/linux-libre/4.9-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.4-i686.conf \
gnu/packages/aux-files/linux-libre/4.4-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.1-i686.conf \
gnu/packages/aux-files/linux-libre/4.1-x86_64.conf
# Templates, examples.
EXAMPLES = \
gnu/system/examples/bare-bones.tmpl \
gnu/system/examples/desktop.tmpl \
gnu/system/examples/lightweight-desktop.tmpl
gnu/system/examples/lightweight-desktop.tmpl \
gnu/system/examples/vm-image.tmpl
GOBJECTS = $(MODULES:%.scm=%.go) guix/config.go $(dist_noinst_DATA:%.scm=%.go)
nobase_dist_guilemodule_DATA = \
$(MODULES) $(KCONFIGS) $(EXAMPLES) \
nobase_dist_guilemodule_DATA = \
$(MODULES) $(MODULES_NOT_COMPILED) $(AUX_FILES) $(EXAMPLES) \
$(MISC_DISTRO_FILES)
nobase_nodist_guilemodule_DATA = $(GOBJECTS) guix/config.scm
nobase_nodist_guilemodule_DATA = guix/config.scm
nobase_nodist_guileobject_DATA = $(GOBJECTS)
# Do we need to provide our own non-broken (srfi srfi-37) module?
if INSTALL_SRFI_37
@@ -231,6 +265,7 @@ TEST_EXTENSIONS = .scm .sh
if CAN_RUN_TESTS
SCM_TESTS = \
tests/base16.scm \
tests/base32.scm \
tests/base64.scm \
tests/cpio.scm \
@@ -248,6 +283,7 @@ SCM_TESTS = \
tests/records.scm \
tests/upstream.scm \
tests/combinators.scm \
tests/discovery.scm \
tests/utils.scm \
tests/build-utils.scm \
tests/packages.scm \
@@ -261,6 +297,7 @@ SCM_TESTS = \
tests/nar.scm \
tests/union.scm \
tests/profiles.scm \
tests/search-paths.scm \
tests/syscalls.scm \
tests/gremlin.scm \
tests/bournish.scm \
@@ -270,13 +307,16 @@ SCM_TESTS = \
tests/size.scm \
tests/graph.scm \
tests/challenge.scm \
tests/cache.scm \
tests/cve.scm \
tests/workers.scm \
tests/zlib.scm \
tests/file-systems.scm \
tests/system.scm \
tests/services.scm \
tests/scripts-build.scm \
tests/containers.scm \
tests/pack.scm \
tests/import-utils.scm
if HAVE_GUILE_JSON
@@ -348,14 +388,16 @@ check-local:
endif !CAN_RUN_TESTS
check-system: $(GOBJECTS)
check-system: $(GOBJECTS) $(BOOTSTRAP_GUILE_TARBALLS)
$(AM_V_at)$(top_builddir)/pre-inst-env \
$(GUILE) --no-auto-compile \
-e '(@@ (run-system-tests) run-system-tests)' \
$(top_srcdir)/build-aux/run-system-tests.scm
# Public key used to sign substitutes from hydra.gnu.org.
dist_pkgdata_DATA = hydra.gnu.org.pub
# Public key used to sign substitutes from hydra.gnu.org & co.
dist_pkgdata_DATA = \
hydra.gnu.org.pub \
bayfront.guixsd.org.pub
# Bash completion file.
dist_bashcompletion_DATA = etc/completion/bash/guix
@@ -373,14 +415,14 @@ EXTRA_DIST = \
build-aux/compile-all.scm \
build-aux/hydra/evaluate.scm \
build-aux/hydra/gnu-system.scm \
build-aux/hydra/demo-os.scm \
build-aux/hydra/guix.scm \
build-aux/check-available-binaries.scm \
build-aux/check-final-inputs-self-contained.scm \
build-aux/download.scm \
build-aux/make-binary-tarball.scm \
build-aux/generate-authors.scm \
build-aux/test-driver.scm \
build-aux/update-guix-package.scm \
build-aux/update-NEWS.scm \
build-aux/run-system-tests.scm \
d3.v3.js \
graph.js \
@@ -433,14 +475,14 @@ SUFFIXES = .go
# files. See
# <http://lists.gnu.org/archive/html/guile-devel/2010-07/msg00125.html>
# for details.
guix_install_go_files = install-nobase_nodist_guilemoduleDATA
guix_install_go_files = install-nobase_nodist_guileobjectDATA
$(guix_install_go_files): install-nobase_dist_guilemoduleDATA
# The above trick doesn't work for 'config.go' because both 'config.scm' and
# 'config.go' are listed in $(nobase_nodist_guilemodule_DATA). Thus, give it
# 'config.go' are listed in $(nobase_nodist_guileobject_DATA). Thus, give it
# special treatment.
install-data-hook: set-bootstrap-executable-permissions
touch "$(DESTDIR)$(guilemoduledir)/guix/config.go"
touch "$(DESTDIR)$(guileobjectdir)/guix/config.go"
SUBDIRS = po/guix po/packages
@@ -457,35 +499,42 @@ 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.
# it finds an existing installation with a different localstatedir. Inherit
# 'ac_cv_guix_test_root' so that "make check" in $(distdir) does not have to
# repopulate the whole store, and to make sure $(GUIX_TEST_ROOT) is short
# enough for shebangs.
AM_DISTCHECK_CONFIGURE_FLAGS = \
--localstatedir="$$dc_install_base/var" \
--with-libgcrypt-prefix="$(LIBGCRYPT_PREFIX)" \
--with-libgcrypt-libdir="$(LIBGCRYPT_LIBDIR)" \
--with-nix-prefix="$(NIX_PREFIX)" \
--enable-daemon
--enable-daemon \
ac_cv_guix_test_root="$(GUIX_TEST_ROOT)"
dist_emacsui_DATA = emacs/guix-main.scm
nodist_emacsui_DATA = emacs/guix-helper.scm
include emacs/local.mk
# The self-contained tarball.
# The self-contained tarball. Add 'glibc-utf8-locales' along with glibc just
# so 'etc/profile' defines 'GUIX_LOCPATH' pointing to a valid set of locales.
guix-binary.%.tar.xz:
$(AM_V_GEN)GUIX_PACKAGE_PATH= \
$(top_builddir)/pre-inst-env "$(GUILE)" \
"$(top_srcdir)/build-aux/make-binary-tarball.scm" "$*" "$@"
$(AM_V_GEN)GUIX_PACKAGE_PATH= \
tarball=`$(top_builddir)/pre-inst-env guix pack -K -C xz \
-s "$*" --localstatedir guix glibc-utf8-locales \
-e '(@@ (gnu packages commencement) glibc-final)'` ; \
cp "$$tarball" "$@.tmp" ; mv "$@.tmp" "$@"
dist-hook: sync-descriptions gen-ChangeLog gen-AUTHORS
dist-hook: $(distdir)/ChangeLog gen-AUTHORS gen-tarball-version
dist-hook: assert-no-store-file-names
distcheck-hook: assert-binaries-available assert-final-inputs-self-contained
sync-descriptions:
$(AM_V_at)GUIX_PACKAGE_PATH= \
$(top_builddir)/pre-inst-env guix lint --checkers=gnu-description
EXTRA_DIST += $(top_srcdir)/.version
BUILT_SOURCES += $(top_srcdir)/.version
$(top_srcdir)/.version:
echo $(VERSION) > "$@-t" && mv "$@-t" "$@"
gen-ChangeLog:
gen-tarball-version:
echo $(VERSION) > "$(distdir)/.tarball-version"
gen-ChangeLog $(distdir)/ChangeLog:
$(AM_V_GEN)if test -d .git; then \
$(top_srcdir)/build-aux/gitlog-to-changelog \
> $(distdir)/cl-t; \
@@ -501,8 +550,134 @@ gen-AUTHORS:
"$(top_srcdir)" "$(distdir)/AUTHORS"; \
fi
#
# Release management.
#
releasedir = release-$(PACKAGE_VERSION)
PACKAGE_FULL_TARNAME = $(PACKAGE_TARNAME)-$(PACKAGE_VERSION)
# List of source tarballs produced. This must be kept in sync with the
# 'dist-' options of 'AM_INIT_AUTOMAKE' in 'configure.ac'.
SOURCE_TARBALLS = \
$(foreach ext,tar.gz,$(PACKAGE_FULL_TARNAME).$(ext))
# Systems supported by Guix.
SUPPORTED_SYSTEMS ?= x86_64-linux i686-linux armhf-linux
# Guix binary tarballs.
BINARY_TARBALLS = \
$(foreach system,$(SUPPORTED_SYSTEMS),guix-binary.$(system).tar.xz)
# Systems supported by GuixSD.
GUIXSD_SUPPORTED_SYSTEMS ?= x86_64-linux i686-linux
# Systems for which we build GuixSD VMs.
GUIXSD_VM_SYSTEMS ?= x86_64-linux
# Prefix of the GuixSD installation image file name.
GUIXSD_IMAGE_BASE = guixsd-usb-install-$(PACKAGE_VERSION)
# Prefix of the GuixSD VM image file name.
GUIXSD_VM_IMAGE_BASE = guixsd-vm-image-$(PACKAGE_VERSION)
# Size of the installation image (for x86_64 typically).
GUIXSD_INSTALLATION_IMAGE_SIZE ?= 950MiB
# Size of the VM image (for x86_64 typically).
GUIXSD_VM_IMAGE_SIZE ?= 2GiB
# The release process works in several phases:
#
# 0. We assume the developer created a 'vX.Y' tag.
# 1. Build the source tarball.
# 2. Update the 'guix' package so that it corresponds to the 'vX.Y' tag.
# 3. Build the binary tarballs for that 'guix' package.
# 4. Update the 'guix' package again.
# 5. Build the GuixSD installation images. The images will run 'guix'
# corresponding to 'vX.Y' + 1 commit, and they will install 'vX.Y'.
#
# This 'release' target takes care of everything and copies the resulting
# files to $(releasedir).
#
# XXX: Depend on 'dist' rather than 'distcheck' to work around the Gettext
# issue described at <https://savannah.gnu.org/bugs/index.php?51027>.
release: dist
cd po; git checkout .
@if ! git diff-index --quiet HEAD; then \
echo "There are uncommitted changes; stopping." >&2 ; \
exit 1 ; \
fi
$(MKDIR_P) "$(releasedir)"
rm -f "$(releasedir)"/*
mv $(SOURCE_TARBALLS) "$(releasedir)"
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`" "$(PACKAGE_VERSION)"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to $(PACKAGE_VERSION)."
rm -f $(BINARY_TARBALLS)
$(MAKE) $(BINARY_TARBALLS)
for system in $(SUPPORTED_SYSTEMS) ; do \
mv "guix-binary.$$system.tar.xz" \
"$(releasedir)/guix-binary-$(PACKAGE_VERSION).$$system.tar.xz" ; \
done
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to `git rev-parse HEAD | cut -c1-7`."
for system in $(GUIXSD_SUPPORTED_SYSTEMS) ; do \
image=`$(top_builddir)/pre-inst-env \
guix system disk-image \
--system=$$system \
--image-size=$(GUIXSD_INSTALLATION_IMAGE_SIZE) \
gnu/system/install.scm` ; \
if [ ! -f "$$image" ] ; then \
echo "failed to produced GuixSD installation image for $$system" >&2 ; \
exit 1 ; \
fi ; \
xz < "$$image" > "$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.xz.tmp" ; \
mv "$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.xz.tmp" \
"$(releasedir)/$(GUIXSD_IMAGE_BASE).$$system.xz" ; \
done
for system in $(GUIXSD_VM_SYSTEMS) ; do \
image=`$(top_builddir)/pre-inst-env \
guix system vm-image \
--system=$$system \
--image-size=$(GUIXSD_VM_IMAGE_SIZE) \
gnu/system/examples/vm-image.tmpl` ; \
if [ ! -f "$$image" ] ; then \
echo "failed to produced GuixSD VM image for $$system" >&2 ; \
exit 1 ; \
fi ; \
xz < "$$image" > "$(releasedir)/$(GUIXSD_VM_IMAGE_BASE).$$system.xz.tmp" ; \
mv "$(releasedir)/$(GUIXSD_VM_IMAGE_BASE).$$system.xz.tmp" \
"$(releasedir)/$(GUIXSD_VM_IMAGE_BASE).$$system.xz" ; \
done
@echo
@echo "Congratulations! All the release files are now in $(releasedir)."
@echo
update-guix-package:
git rev-parse HEAD
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`"
# Location of a checkout of <git://git.savannah.gnu.org/guix/maintenance.git>.
# Package data from this checkout is used by 'update-NEWS.scm'.
GUIX_MAINTENANCE_DIRECTORY ?= $(top_srcdir)/../guix-maintenance
update-NEWS: $(GOBJECTS)
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-NEWS.scm \
$(top_srcdir)/NEWS "$(GUIX_MAINTENANCE_DIRECTORY)/data"
# Make sure we're not shipping a file that embeds a local /gnu/store file name.
assert-no-store-file-names:
assert-no-store-file-names: $(distdir)/ChangeLog
$(AM_V_at)if grep -r --exclude=*.texi --exclude=*.info \
--exclude=*.info-[0-9] --exclude=*.dot \
--exclude=*.eps --exclude-dir=bootstrap \
@@ -532,9 +707,11 @@ hydra-jobs.scm: $(GOBJECTS)
"$(top_srcdir)/build-aux/hydra/gnu-system.scm" > "$@.tmp"
$(AM_V_at)mv "$@.tmp" "$@"
.PHONY: sync-descriptions gen-ChangeLog gen-AUTHORS clean-go make-go
.PHONY: gen-ChangeLog gen-AUTHORS gen-tarball-version
.PHONY: assert-no-store-file-names assert-binaries-available
.PHONY: assert-final-inputs-self-contained
.PHONY: clean-go make-go
.PHONY: update-guix-package update-NEWS release
## -------------- ##
## Silent rules. ##
@@ -548,10 +725,6 @@ 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" $@;
+610 -1
View File
@@ -2,7 +2,7 @@
#+TITLE: Guix NEWS history of user-visible changes
#+STARTUP: content hidestars
Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
Copyright © 2013, 2014, 2015, 2016, 2017 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,615 @@ Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
Please send Guix bug reports to bug-guix@gnu.org.
* Changes in 0.13.0 (since 0.12.0)
** Package management
*** Guix can now be used on aarch64 GNU/Linux systems
*** New guix pack command to create bundles
*** New guix copy command to copy store items over SSH
*** New --cache option for guix publish
*** $GUIX_DAEMON_SOCKET can specify remote daemons
*** Guix can now run on Guile 2.2, providing better performance
*** Emacs interface moved to separate Emacs-Guix package
*** New --root option for guix environment
*** guix pull now connects to git.savannah.gnu.org over HTTPS
*** New cross-compilation targets: aarch64-linux-gnu, powerpc-linux-gnu
*** Packages can specify “single-entry search paths” (e.g., GIT_EXEC_PATH)
*** guix import and guix refresh now support Stackage
*** Support for the deprecated “PKG-VERSION” syntax has been removed
*** New Cypher backend for guix graph
*** GnuTLS (Guile bindings) is now required
*** Guix now issues a warning when it detects that Guix has not been upgraded in a while
** Distribution
*** The GuixSD installation image supports (U)EFI systems
*** GuixSD supports Btrfs (<http://bugs.gnu.org/19280>)
*** Some system services are now run in separate namespaces (“containers”)
*** The LXDE desktop environment is now available
*** grub-configuration can specify settings for the user interface
*** Service types can now specify a default value for services
*** Create the /var/log/wtmp and /var/log/utmpx databases
*** A raw initial RAM disk can be created to support systems with custom kernel configurations
*** static-networking service can now be extended
*** Configuration of nginx-service-type has been greatly improved
*** New gnu-build-system phase to always reset gzip timestamps
*** New services
exim, mail-aliases, inetd, agetty, openvswitch, special-files, redis,
thermald
*** 840 new packages
0ad, 0ad-data, adb, alpine, alsa-plugins, angband, antlr2, antlr3,
appstream-glib, aris, aspell-dict-pt-br, asunder, balsa, bam, beep,
binutils-vc4, blind, blists, btrfs-progs-static, camlzip, cargo, catdoc,
catimg, ccd2cue, cdogs-sdl, cdrtools, ceph, checkpolicy, cifs-utils, cmst,
colors, compface, compton, cool-retro-term, corrode, crawl, darcs,
darktable, dcmtk, deutex, ding-libs, dotherside, dovecot-libsodium-plugin,
dovecot-trees, dub, dvd+rw-tools, dvdauthor, dvdstyler, dzen, e3, electrum,
emacs-adaptive-wrap, emacs-ag, emacs-aggressive-indent, emacs-alert,
emacs-ansi, emacs-calfw, emacs-cdlatex, emacs-commander,
emacs-default-encrypt, emacs-diminish, emacs-dream-theme,
emacs-evil-commentary, emacs-evil-surround, emacs-exwm, emacs-git-gutter,
emacs-git-timemachine, emacs-gntp, emacs-gnuplot, emacs-google-maps,
emacs-highlight-sexp, emacs-ht, emacs-htmlize, emacs-idle-highlight,
emacs-key-chord, emacs-keyfreq, emacs-linum-relative, emacs-log4e,
emacs-memoize, emacs-mew, emacs-monroe, emacs-mu4e-alert, emacs-ox-twbs,
emacs-pretty-mode, emacs-strace-mode, emacs-stripe-buffer, emacs-sx,
emacs-symon, emacs-transpose-frame, emacs-use-package, emacs-xelb,
emacs-xmlgen, emacs-yasnippet, emacspeak, enigma, ert-runner, es,
eudev-with-hwdb, f3, fabric, fcitx-configtool, filezilla, fillets-ng,
fish-guix, fmt, font-awesome, font-cns11643, font-cns11643-swjz,
font-comic-neue, font-go, font-google-material-design-icons,
font-google-roboto, font-iosevka, font-linuxlibertine, font-tamzen,
font-wqy-microhei, fortify-headers, fprintd, freeciv, freedoom, freegish,
freerdp, freetalk, freexl, gcc-vc4, gcompris-qt, geos, ghc-code-page,
ghc-hslogger, ghc-json, ghc-language-c, ghc-markdown-unlit, ghc-setlocale,
ghc-unexceptionalio, ghc-wave, git-crypt, gl2ps, gnome-autoar,
gnome-disk-utility, gnumach, gnushogi, gnustep-make, gpicview, grafx2,
graphene, guildhall, guile-8sync, guile-bash, guile-fibers, guile-git,
guile-ics, guile-miniadapton, guile-sdl2, guile-sjson,
guile-syntax-highlight, guile2.0-commonmark, guile2.0-haunt, guile2.0-json,
guile2.0-reader, guile2.0-ssh, guile2.2-gdbm-ffi, guile2.2-gnutls,
guile2.2-haunt, guile2.2-lib, guile2.2-reader, guile2.2-ssh, heimdal,
hiawatha, hisat2, http-parser, httpfs2, httpstat, hubbub, human, hurd,
hyperestraier, idris-bifunctors, idris-lens, idris-lightyear,
idris-wl-pprint, intel-gpu-tools, itpp, jacal, java-asm, java-cglib,
java-commons-cli, java-commons-codec, java-commons-collections4,
java-commons-compress, java-commons-daemon, java-commons-io,
java-commons-lang, java-commons-lang3, java-commons-logging-minimal,
java-commons-math3, java-commons-net, java-easymock, java-eclipse-ant-core,
java-eclipse-compare-core, java-eclipse-core-commands,
java-eclipse-core-contenttype, java-eclipse-core-expressions,
java-eclipse-core-filesystem, java-eclipse-core-jobs,
java-eclipse-core-resources, java-eclipse-core-runtime,
java-eclipse-core-variables, java-eclipse-equinox-app,
java-eclipse-equinox-common, java-eclipse-equinox-preferences,
java-eclipse-equinox-registry, java-eclipse-jdt-core, java-eclipse-osgi,
java-eclipse-team-core, java-eclipse-text, java-guava, java-hamcrest-all,
java-httpcomponents-httpclient, java-httpcomponents-httpcore,
java-httpcomponents-httpcore-ab, java-httpcomponents-httpcore-nio,
java-httpcomponents-httpmime, java-icu4j, java-javax-mail, java-jmh,
java-jmock, java-jopt-simple, java-jsch, java-jsr305, java-log4j-api,
java-mockito, java-objenesis, java-osgi-annotation, java-osgi-core,
java-osgi-service-event, java-plexus-interpolation, java-plexus-utils,
java-rsyntaxtextarea, java-simple-xml, java-usb4java, joe, kakoune,
keybinder, kiki, knot, lchat, le-certs, leafpad, lensfun, leveldb, libbson,
libcss, libdom, libfilezilla, libfprint, libgig, libgme,
libgnome-games-support, libircclient, libmesode, libmnl, libmp4v2,
libmpack, libnftnl, libnsbmp, libnsgif, libnspsl, libnsutils,
libparserutils, libpng-apng, libselinux, libsemanage, libsepol, libsmf,
libstaroffice, libstrophe, libsvgtiny, libtorrent-rasterbar, liburcu,
libusb4java, libutf, libvterm, libwapcaplet, libxls, libzmf, lierolibre,
light, lightdm, lightdm-gtk-greeter, linsmith, linuxdcpp,
llvm-for-extempore, lmms, loudmouth, lshw, lsyncd, lua-libmpack,
lua5.2-bitop, lua5.2-libmpack, lua5.2-lpeg, lugaru, luminance-hdr, lush2,
lxde, lxde-common, lxde-icon-theme, lxinput, lxmenu-data, lxpanel,
lxsession, maxflow, mbedtls-apache, mcabber, mcomix, mdbtools, megaglest,
megaglest-data, menumaker, mes, meson, mia, minizip, mlmmj,
multipath-tools, neofetch, neomutt, neovim, neovim-syntastic,
netcdf-fortran, niftilib, nim, nnn, no-more-secrets, noice, non-mixer,
non-timeline, nsgenbind, nss-pam-ldapd, nyacc, nyx, obconf, obnam,
ocaml-alcotest, ocaml-astring, ocaml-base64, ocaml-batteries,
ocaml-bin-prot, ocaml-bisect, ocaml-bitstring, ocaml-bos, ocaml-cmdliner,
ocaml-cppo, ocaml-csv, ocaml-expect, ocaml-fieldslib, ocaml-fileutils,
ocaml-fmt, ocaml-fpath, ocaml-frontc, ocaml-gsl, ocaml-js-build-tools,
ocaml-jsonm, ocaml-logs, ocaml-lwt, ocaml-mcl, ocaml-mtime, ocaml-oasis,
ocaml-ocurl, ocaml-ounit, ocaml-pcre, ocaml-ppx-assert, ocaml-ppx-bench,
ocaml-ppx-compare, ocaml-ppx-core, ocaml-ppx-deriving, ocaml-ppx-driver,
ocaml-ppx-enumerate, ocaml-ppx-here, ocaml-ppx-inline-test, ocaml-ppx-let,
ocaml-ppx-optcomp, ocaml-ppx-sexp-conv, ocaml-ppx-tools,
ocaml-ppx-type-conv, ocaml-ppx-typerep-conv, ocaml-ppx-variants-conv,
ocaml-qcheck, ocaml-qtest, ocaml-react, ocaml-result, ocaml-rresult,
ocaml-sexplib, ocaml-sqlite3, ocaml-ssl, ocaml-stringext, ocaml-topkg,
ocaml-typerep, ocaml-uchar, ocaml-ulex, ocaml-uutf, ocaml-variantslib,
ocaml-xmlm, ocaml-zarith, ocaml4.01-batteries, ocaml4.01-bisect,
ocaml4.01-camlzip, ocaml4.01-csv, ocaml4.01-findlib, ocaml4.01-gsl,
ocaml4.01-mcl, ocaml4.01-ounit, ocaml4.01-qtest, ocaml4.01-sqlite3,
ocaml4.01-xmlm, ocamlify, ocamlmod, omake, opencascade-oce, openspin,
openvswitch, orca, ovmf, pcc, pdfgrep, perl-any-moose, perl-anyevent,
perl-anyevent-i3, perl-async-interrupt, perl-canary-stability,
perl-cddb-get, perl-crypt-rc4, perl-cwd-guard, perl-devel-checkcompiler,
perl-ev, perl-extutils-depends, perl-extutils-pkgconfig, perl-file-pushd,
perl-module-build-xsutil, perl-mouse, perl-mousex-nativetraits,
perl-ole-storage-lite, perl-parallel-forkmanager, perl-switch,
perl-test-needs, perl-test-number-delta, perl-x11-xcb, perl-xml-descent,
perl-xml-tokeparser, perl-xs-object-magic, phonon-backend-gstreamer,
pngcrunch, policycoreutils, polkit-gnome, ponymix, pootle, postorius,
pplacer, prboom-plus, profanity, proj.4, proot, proot-static,
propeller-development-suite, propeller-gcc, propeller-load,
propeller-toolchain, proplib, prout, python-astroid, python-autopep8,
python-colorspacious, python-configparser, python-cram, python-cssmin,
python-cssutils, python-cycler, python-ddt, python-defusedxml,
python-diff-match-patch, python-dirsync, python-dj-database-url,
python-django-allauth, python-django-appconf, python-django-assets,
python-django-bulk-update, python-django-contact-form,
python-django-contrib-comments, python-django-gravatar2,
python-django-jsonfield, python-django-mailman3, python-django-overextends,
python-django-redis, python-django-rq, python-django-sortedm2m,
python-django-statici18n, python-dulwich, python-elasticsearch,
python-eventlet, python-factory-boy, python-faker, python-fakeredis,
python-fastimport, python-flake8-polyfill, python-flask-htmlmin,
python-flask-login, python-flask-multistatic, python-flask-oidc,
python-flask-wtf, python-fudge, python-geventhttpclient, python-gpg,
python-hdf4, python-hiredis, python-htmlmin, python-httpbin, python-ipy,
python-isort, python-kitchen, python-levenshtein, python-lz4, python-lzo,
python-mando, python-mando, python-matplotlib-documentation, python-mpmath,
python-munch, python-mwclient, python-mysqlclient, python-netcdf4,
python-nosexcover, python-numpy-documentation, python-oauth2client,
python-openid, python-openid-cla, python-openid-teams,
python-paramunittest, python-pbkdf2, python-poppler-qt5, python-pyatspi,
python-pycosat, python-pygit2, python-pykka, python-pylint,
python-pyodbc-c, python-pypeg2, python-pytest-catchlog,
python-pytest-httpbin, python-pytest-warnings, python-qrcode, python-reno,
python-rst2ansi, python-scandir, python-sepolgen, python-setools,
python-sge-pygame, python-snowballstemmer, python-sockjs-tornado,
python-sphinx-alabaster-theme, python-sphinx-cloud-sptheme,
python-sphinx-me, python-straight-plugin, python-tmx,
python-translate-toolkit, python-trollius-redis, python-utils,
python-webassets, python-xdo, python2-astroid, python2-autopep8,
python2-backports-functools-lru-cache,
python2-backports-shutil-get-terminal-size, python2-cheetah,
python2-cliapp, python2-colorspacious, python2-configparser,
python2-coverage-test-runner, python2-cram, python2-cssmin, python2-cycler,
python2-ddt, python2-defusedxml, python2-diff-match-patch, python2-dirsync,
python2-dj-database-url, python2-django-allauth, python2-django-appconf,
python2-django-assets, python2-django-bulk-update,
python2-django-contact-form, python2-django-contrib-comments,
python2-django-gravatar2, python2-django-jsonfield,
python2-django-mailman3, python2-django-overextends, python2-django-redis,
python2-django-rq, python2-django-sortedm2m, python2-django-statici18n,
python2-dulwich, python2-elasticsearch, python2-eventlet,
python2-factory-boy, python2-faker, python2-fakeredis, python2-fastimport,
python2-flake8-polyfill, python2-flask-htmlmin, python2-flask-login,
python2-flask-multistatic, python2-flask-wtf, python2-fudge,
python2-geventhttpclient, python2-gpg, python2-hdf4, python2-hiredis,
python2-htmlmin, python2-httpbin, python2-isort, python2-kitchen,
python2-larch, python2-levenshtein, python2-lz4, python2-lzo,
python2-mando, python2-matplotlib-documentation, python2-mpmath,
python2-munch, python2-mwclient, python2-mysqlclient, python2-netcdf4,
python2-nosexcover, python2-numpy-documentation, python2-openid,
python2-openid-cla, python2-openid-teams, python2-paramunittest,
python2-pbkdf2, python2-pycosat, python2-pygame, python2-pygit2,
python2-pykka, python2-pylint, python2-pyodbc-c, python2-pytest-catchlog,
python2-pytest-httpbin, python2-pytest-warnings, python2-qrcode,
python2-reno, python2-ruamel.ordereddict, python2-scandir,
python2-sge-pygame, python2-slowaes, python2-snowballstemmer,
python2-sockjs-tornado, python2-sphinx-alabaster-theme,
python2-sphinx-cloud-sptheme, python2-sphinx-me, python2-stemming,
python2-straight-plugin, python2-subprocess32, python2-tmx,
python2-tracing, python2-translate-toolkit, python2-trollius-redis,
python2-ttystatus, python2-utils, pzstd, qdbm, qjackctl, qtcanvas3d,
qtcharts, qtdatavis3d, qtdeclarative-render2d, qtgamepad, qtpurchasing,
qtscxml, qtserialbus, qutebrowser, r-affy, r-affyio, r-ape, r-base64,
r-beeswarm, r-bookdown, r-boot, r-bsgenome-hsapiens-1000genomes-hs37d5,
r-cairo, r-car, r-caret, r-centipede, r-chipseq, r-class, r-commonmark,
r-compquadform, r-copyhelper, r-copywriter, r-cowplot, r-delayedarray,
r-deoptimr, r-desc, r-diptest, r-fastica, r-fivethirtyeight, r-flexmix,
r-fnn, r-fpc, r-genomeinfodbdata, r-ggbeeswarm, r-ggthemes, r-lars, r-lme4,
r-maldiquant, r-mass, r-matrixmodels, r-mclust, r-minimal, r-minqa,
r-mixtools, r-mnormt, r-modelmetrics, r-modeltools, r-msnbase, r-msnid,
r-mzid, r-mzr, r-nlme, r-nloptr, r-numderiv, r-pbapply, r-pbkrtest,
r-pcamethods, r-plogr, r-prabclus, r-protgenerics, r-quantreg,
r-randomforest, r-ranger, r-rann, r-raremetals2, r-rcppeigen,
r-rcppprogress, r-rhdf5, r-robustbase, r-rprojroot, r-seqminer, r-seurat,
r-sn, r-sourcetools, r-spatial, r-statmod, r-sva, r-tclust, r-trimcluster,
r-tsne, r-txdb-mmusculus-ucsc-mm10-knowngene, r-tximport, r-vgam, r-vipor,
r-vsn, rdma-core, re2c, reducelcs, ribodiff, ripit, rocksdb, roffit,
rsnapshot, ruby-mail, sambamba, sbm, scheme48-rx, scm, scrypt, scsh,
seabios, secilc, sedsed, shellcheck, simh, skroll, slib, sonic,
speedtest-cli, speexdsp, spin2cpp, spinsim, spoon, sssd, stringtemplate3,
stringtemplate4, stunnel, swaks, syslinux, sysstat, tailon, talloc-static,
tango-icon-theme, taxtastic, tclx, teeworlds, tftp-hpa, thermald,
tidy-html, tipp10, tlp, tokyocabinet, tracker, tremc, twm, unibilium,
unrar, vim-airline, vim-airline-themes, vim-context-filetype, vim-luna,
vim-neocomplete, vim-neosnippet, vim-neosnippet-snippets, vim-scheme,
vim-syntastic, vinagre, volk, wificurse, wimlib, wwwoffle, wxsvg, xbattmon,
xcalc, xdot, xerces-c, xfce4-notifyd, xinetd, xmag, xmessage, xshogi,
you-get, youtube-dl-gui, zile-on-guile, zpaq, zstd
*** 1220 package updates
abbaye@2.0.1, abcde@2.8.1, abiword@3.0.2, acct@6.6.3, acme-client@0.1.16,
acpid@2.0.28, adwaita-icon-theme@3.24.0, aide@0.16, aisleriot@3.22.1,
allegro@5.0.11, allegro@5.2.0, alsa-lib@1.1.3, alsa-utils@1.1.3,
ams-lv2@1.2.1, amsynth@1.7.1, ansible@2.3.0.0, ant@1.9.9, apl@1.7,
aqbanking@5.6.12, arb@2.10.0, arc-icon-theme@20161122, arc-theme@20170302,
ardour@5.8, aria-maestosa@1.4.13, aria2@1.31.0,
arm-none-eabi-nano-toolchain@6.3.0, arm-none-eabi-toolchain@6.3.0,
armadillo@7.800.2, aseprite@1.1.7, assword@0.10, asymptote@2.41,
at-spi2-atk@2.22.0, at-spi2-core@2.22.0, atk@2.22.0, attica@5.34.0,
audacity@2.1.3, augeas@1.8.0, autoconf-archive@2017.03.21, autoconf@2.69,
awesome@4.0, awscli@1.11.63, baloo@5.34.0, bamtools@2.4.1, baobab@3.24.0,
bash-completion@2.5, bash-minimal@4.4.12, bash-static@4.4.12, bash@4.4.12,
bc@1.07.1, bedtools@2.26.0, beets@1.4.3, bind@9.11.1, bioruby@1.5.1,
bison@3.0.4, bitcoin-core@0.14.1, bitlbee@3.5.1, bluez-qt@5.34.0,
bluez@5.44, boost@1.63.0, borg@1.0.10, breeze-icons@5.34.0,
bs1770gain@0.4.12, btrfs-progs@4.10.2, bullet@2.86.1, bundler@1.14.5,
busybox@1.26.0, cairo-xcb@1.14.8, cairo@1.14.8, cairomm@1.12.2,
calibre@2.76.0, capnproto@0.6.0, cbatticon@1.6.5, ccache@3.3.4,
ccid@1.4.26, cd-hit@4.6.6, certbot@0.14.0, cgit@1.1, chicken@4.12.0,
cl-stumpwm@1.0.0, clang-runtime@3.9.1, clang@3.6.2, clang@3.7.1,
clang@3.8.1, clang@3.9.1, claws-mail@3.15.0, clutter-gst@3.0.22,
clutter-gtk@1.8.2, cmake@3.7.2, cmark@0.27.1, coda@2.18, cogl@1.22.2,
conky@1.10.6, connman@1.34, coreutils-minimal@8.26, coreutils@8.26,
coreutils@8.27, cppcheck@1.78, cpupower@4.11, cryptsetup-static@1.7.5,
cryptsetup@1.7.5, cuirass@0.0.1-6.870e8d6, cups-filters@1.13.1,
curl@7.53.0, d-feet@0.3.11, dash@0.5.9.1, datamash@1.1.1, dbus-glib@0.108,
dbus@1.10.16, dconf-editor@3.22.1, ddrescue@1.22, denemo@2.1,
desktop-file-utils@0.23, devhelp@3.22.0, devil@1.8.0, di@4.43,
diamond@0.8.38, diffoscope@81, diffstat@1.61, direnv@2.11.3, dlib@19.3,
dmenu@4.7, dnscrypt-proxy@1.9.5, docbook-xml@4.4, docbook-xml@4.5,
dosfstools@4.1, dovecot@2.2.29.1, doxygen@1.8.13, dropbear@2017.75,
drumkv1@0.8.2, dtc@1.4.4, duplicity@0.7.12, dwm@6.1, e2fsck-static@1.43.4,
e2fsprogs@1.43.4, ecl-stumpwm@1.0.0, ecl@16.1.3, ed@1.14.1, efl@1.18.5,
elfutils@0.169, elixir@1.4.2, emacs-auctex@11.90.0, emacs-bui@1.1.0,
emacs-clojure-mode@5.4.0, emacs-company@0.9.3, emacs-debbugs@0.14,
emacs-elfeed@2.1.0, emacs-emms@4.3, emacs-flycheck@30, emacs-guix@0.3.1,
emacs-ivy@0.9.1, emacs-magit-popup@2.10.3, emacs-minimal@25.2,
emacs-no-x-toolkit@25.2, emacs-no-x@25.2, emacs-org@20170502,
emacs-projectile@0.14.0, emacs-seq@2.19, emacs-slime@2.19,
emacs-smartparens@1.10.1, emacs-spinner@1.7.3, emacs-with-editor@2.5.10,
emacs-zenburn-theme@2.5, emacs@25.2, enlightenment@0.21.7, eog@3.20.5,
epiphany@3.22.7, erlang@19.3, ethtool@4.10, eudev@3.2.1, evince@3.22.1,
evolution-data-server@3.22.3, exempi@2.4.2, exfat-utils@1.2.6, exim@4.87.1,
extra-cmake-modules@5.34.0, extremetuxracer@0.7.4, eyed3@0.7.10,
fatfsck-static@4.1, faust@2.0.a51, feh@2.18.3, ffmpeg@2.8.11, ffmpeg@3.3.1,
file-roller@3.22.2, fio@2.19, fish@2.5.0, flac@1.3.2, flex@2.6.1,
flex@2.6.3, font-abattis-cantarell@0.0.25, font-gnu-unifont@9.0.06,
freefall@4.11, freetype@2.7.1, frescobaldi@3.0.0, fuse-exfat@1.2.6,
fuse@2.9.7, gajim@0.16.7, gcal@4.1,
gcc-cross-sans-libc-arm-none-eabi@5.4.0-1.227977,
gcc-cross-sans-libc-arm-none-eabi@6.3.0, gcc-stripped-tarball@5.4.0,
gcc-toolchain@4.9.4, gcc-toolchain@5.4.0, gcc-toolchain@6.3.0,
gcc-toolchain@7.1.0, gcc@4.8.5, gcc@4.9.4, gcc@5.4.0, gcc@6.3.0, gcc@7.1.0,
gcj@5.4.0, gd@2.2.4, gdb-arm-none-eabi@7.12.1, gdb@7.12.1,
gdk-pixbuf+svg@2.36.6, gdk-pixbuf@2.36.6, gdm@3.22.1, gedit@3.22.0,
geoclue@2.4.6, getmail@4.52.0, gflags@2.2.0, gfortran@6.3.0,
gfortran@7.1.0, ghc-quickcheck-instances@0.3.12, ghc-quickcheck@2.8.2,
ghc-semigroups@0.18.2, ghc-xmonad-contrib@0.12, ghc@8.0.2,
giac-xcas@1.2.3-37, gimp@2.8.22, girara@0.2.7, git-modes@1.2.4, git@2.13.0,
gitolite@3.6.6, gjs@1.46.0, glib-networking@2.50.0, glib@2.50.3,
glibc-hurd-headers@2.23, glibc-hurd@2.23, glibc-locales@2.25,
glibc-utf8-locales@2.25, glibc@2.22, glibc@2.23, glibc@2.24, glibc@2.25,
glibmm@2.50.0, global@6.5.6, glpk@4.61, glulxe@0.5.4, gmime@2.6.23,
gmp@6.1.2, gmsh@2.16.0, gnome-backgrounds@3.22.1, gnome-calendar@3.22.2,
gnome-control-center@3.22.1, gnome-desktop@3.22.2, gnome-klotski@3.22.1,
gnome-mines@3.22.2, gnome-mpv@0.11, gnome-online-accounts@3.22.3,
gnome-screenshot@3.22.0, gnome-session@3.22.2,
gnome-settings-daemon@3.22.1, gnome-shell-extensions@3.22.2,
gnome-shell@3.22.2, gnome-sudoku@3.22.2, gnome-system-monitor@3.22.2,
gnome-terminal@3.24.1, gnome-themes-standard@3.22.2,
gnome-tweak-tool@3.22.0, gnome@3.22.2, gnubik@2.4.3, gnucash@2.6.16,
gnupg@2.0.30, gnupg@2.1.20, gnuplot@5.0.6, gnurl@7.54.0, gnutls@3.5.9,
go@1.8.1, gobject-introspection@1.50.0, goffice@0.10.34, googletest@1.8.0,
gp2c@0.0.10, gparted@0.28.1, gperf@3.1, gpgme@1.9.0,
graphicsmagick@1.3.25-2.6156b4c, graphite2@1.3.9, greenisland@0.9.0.1,
grep@3.0, grilo-plugins@0.3.3, grilo@0.3.2,
gsettings-desktop-schemas@3.22.0, gst-libav@1.12.0, gst-plugins-bad@1.12.0,
gst-plugins-base@1.12.0, gst-plugins-good@1.12.0, gst-plugins-ugly@1.12.0,
gstreamer@1.12.0, gtk+@3.22.12, gtk-vnc@0.7.0, gtkmm@3.22.0,
gtksourceview@3.22.2, guile-aspell@0.4,
guile-bytestructures@20170402.91d042e, guile-daemon@0.1.2,
guile-json@0.6.0, guile-lib@0.2.5, guile-ncurses@2.2, guile-next@2.2.2,
guile-reader@0.6.2, guile-sqlite3@0.0-1.607721f, guile-ssh@0.11.0,
guile-static-stripped-tarball@2.0.14, guile-static-stripped@2.0.14,
guile2.2-json@0.6.0, guile@2.0.14, guile@2.2.2, guitarix-lv2@0.35.3,
guitarix@0.35.3, guix@0.12.0-11.ce92d26, gusb@0.2.9, gvfs@1.30.3,
gx-guvnor-lv2@0.1, gx-hyperion-lv2@0.1, gx-super-fuzz-lv2@0.1,
gx-suppa-tone-bender-lv2@0.1, gx-vintage-fuzz-master-lv2@0.1,
gx-voodoo-fuzz-lv2@0.1, gxtuner@2.4, harfbuzz@1.4.3, haunt@0.2.1,
hdf4-alt@4.2.12, hdf4@4.2.12, hdparm@9.52, hexchat@2.12.4,
hicolor-icon-theme@0.15, httpd@2.4.25, hwloc@1.11.7, hyperrogue@9.4g,
i3status@2.11, ibus-anthy@1.5.9, ibus-libpinyin@1.9.0, ibus@1.5.15,
icecat@52.1.0-gnu1, icedtea@3.3.0, icu4c@58.2, idris@1.0,
imagemagick@6.9.8-4, imlib2@1.4.10, inkscape@0.92.1, iperf@3.1.7,
iproute2@4.10.0, iptables@1.6.1, irssi@1.0.2, ixion@0.12.2, jack@0.125.0,
jalv-select@0.8, jalv@1.6.0, jasper@2.0.12, java-ngs@1.3.0, java-xz@1.6,
jemalloc@4.5.0, jsoncpp@1.8.0, julia@0.5.1, kactivities-stats@5.34.0,
kactivities@5.34.0, kapidox@5.34.0, karchive@5.34.0, kauth@5.34.0,
kbd@2.0.4, kbookmarks@5.34.0, kcmutils@5.34.0, kcodecs@5.34.0,
kcompletion@5.34.0, kconfig@5.34.0, kconfigwidgets@5.34.0,
kcoreaddons@5.34.0, kcrash@5.34.0, kdbusaddons@5.34.0, kdeclarative@5.34.0,
kded@5.34.0, kdesignerplugin@5.34.0, kdesu@5.34.0, kdevelop@5.1.0,
kdevplatform@5.1.0, kdnssd@5.34.0, kdoctools@5.34.0, kemoticons@5.34.0,
kfilemetadata@5.34.0, kglobalaccel@5.34.0, kguiaddons@5.34.0, khal@0.9.5,
khard@0.11.4, ki18n@5.34.0, kiconthemes@5.34.0, kidletime@5.34.0,
kimageformats@5.34.0, kinit@5.34.0, kio@5.34.0, kitemmodels@5.34.0,
kitemviews@5.34.0, kjobwidgets@5.34.0, kmod@24, knewstuff@5.34.0,
knotifications@5.34.0, knotifyconfig@5.34.0, kodi@18.0_alpha-4-b8ad238,
kpackage@5.34.0, kparts@5.34.0, kpeople@5.34.0, kplotting@5.34.0,
kpty@5.34.0, krunner@5.34.0, kservice@5.34.0, ksyntaxhighlighting@5.34.0,
ktexteditor@5.34.0, ktextwidgets@5.34.0, kunitconversion@5.34.0,
kwallet@5.34.0, kwayland@5.34.0, kwidgetsaddons@5.34.0,
kwindowsystem@5.34.0, kxmlgui@5.34.0, kxmlrpcclient@5.34.0, lablgtk@2.18.5,
lcms@2.8, ldc@0.17.3, ldc@1.1.1, leptonica@1.74.0, less@487,
letsencrypt@0.14.0, lftp@4.7.5, libarchive@3.2.2, libass@0.13.6,
libatomic-ops@7.4.4, libbluray@1.0.0, libcap@2.25, libchamplain@0.12.14,
libcmis@0.5.1, libdrm@2.4.80, libepoxy@1.4.1, libetonyek@0.1.6,
libetpan@1.8, libev@4.24, libevdev@1.5.6, libevent@2.1.8, libffcall@1.12,
libfm-extra@1.2.5, libfm@1.2.5, libgc@7.6.0, libgcrypt@1.7.6,
libgee@0.18.1, libgit2@0.25.1, libgnomekbd@3.22.0, libgpg-error@1.26,
libgsf@1.14.41, libgweather@3.20.4, libiberty@5.4.0, libiconv@1.15,
libidn2@0.16, libinput-minimal@1.7.0, libinput@1.7.0, libjpeg@9b,
libmp3splt@0.9.2, libmpdclient@2.11, libmtp@1.1.13, libnotify@0.7.7,
libosinfo@1.0.0, libpcap@1.8.1, libpciaccess@0.13.5, libpeas@1.20.0,
libpinyin@2.0.0, libpng@1.6.28, libpsl@0.17.0, libreoffice@5.3.1.2,
librep@0.92.6, libressl@2.5.4, libsamplerate@0.1.9, libseccomp@2.3.2,
libsndfile@1.0.28, libsodium@1.0.12, libssh2@1.8.0, libssh@0.7.4,
libtasn1@4.10, libtermkey@0.20, libtirpc@1.0.1, libunistring@0.9.7,
libupnp@1.6.21, libusb@1.0.21, libuv@1.11.0, libva@1.8.1,
libvirt-glib@1.0.0, libvirt@3.2.0, libvpx@1.6.1, libwacom@0.23,
libwebp@0.6.0, libwnck@3.20.1, libx11@1.6.5, libx264@20170316-2245,
libxcb@1.12, libxfont@2.0.1, libxi@1.7.9, libxkbcommon@0.7.1,
libxml++@3.0.1, libxpm@3.5.12, lilv@0.24.2, lilypond@2.19.58,
limnoria@2017.03.30, linux-libre-arm-generic@4.11,
linux-libre-headers@4.4.47, linux-libre@4.11, linux-libre@4.9.27,
linux-pam@1.3.0, llvm@3.6.2, llvm@3.7.1, llvm@3.8.1, llvm@3.9.1, lsof@4.89,
lua-lpeg@1.0.1, lua@5.3.4, luajit@2.1.0-beta2, lvm2-static@2.02.171,
lvm2@2.02.171, lxterminal@0.3.0, lynx@2.8.9dev.11, lz4@1.7.5, m4@1.4.18,
mafft@7.310, magit@2.10.3, mailutils@3.2, maim@4.4.62, man-pages@4.11,
manaplus@1.7.3.4, mariadb@10.1.23, mate-themes@3.22.10, mcelog@149,
mdadm-static@4.0, mdadm@4.0, mdds@1.2.2, menu-cache@1.0.2,
mesa-headers@17.0.4, mesa@17.0.4, mg@20161005, milkytracker@1.0.0,
minetest@0.4.15, miniupnpc@2.0.20170421, minixml@2.10, mit-krb5@1.14.4,
mlt@6.4.1, moc@2.5.2, mod-host@0.10.6-2.299a39774, modemmanager-qt@5.34.0,
moka-icon-theme@5.3.5, moreutils@0.60, mosh@1.3.0, mozjs@38.2.1.rc0,
mp3splt@2.6.2, mpd@0.20.6, mpfr@3.1.5, mpv@0.25.0, msgpack@1.4.2,
msmtp@1.6.6, mu@0.9.18, multiqc@0.9, mumble@1.2.19, mupdf@1.11, mutt@1.8.2,
mutter@3.22.2-1.23c315e, myrepos@1.20170129, mysql@5.7.18, nagios@4.2.4,
nano@2.8.2, nautilus@3.22.2, ncbi-vdb@2.8.2, ncmpc@0.27, neon@0.30.2,
netsurf@3.6, nettle@3.3, network-manager@1.6.2, networkmanager-qt@5.34.0,
nfs-utils@2.1.1, nginx@1.12.0, ngircd@24, ngs-sdk@1.3.0, ninja@1.7.2,
nix@1.11.9, nmap@7.40, node@7.8.0, non-sequencer@1.9.5-3.10c31e5,
non-session-manager@1.9.5-3.10c31e5, notmuch@0.24.1, nspr@4.14,
nss-certs@3.30.2, nss@3.30.2, ntp@4.2.8p10, obs@18.0.2, ocrad@0.26,
octave@4.2.1, offlineimap@7.1.0, ola@0.10.3, openjpeg@2.1.2, openssh@7.5p1,
openssl@1.1.0e, openvpn@2.4.2, opus@1.1.4, orcus@0.12.1,
owncloud-client@2.3.1, oxygen-icons@5.34.0, pango@1.40.3,
par2cmdline@0.7.0, parallel@20170422, pari-gp@2.9.1, password-store@1.7.1,
pciutils@3.5.4, pcmanfm@1.2.5, pcre2@10.23, pcre@8.40, pcsc-lite@1.8.20,
pd@0.47-1, perf@4.11, perl-b-hooks-endofscope@0.21, perl-capture-tiny@0.46,
perl-class-load@0.23, perl-clone@0.38, perl-common-sense@3.74,
perl-compress-raw-bzip2@2.074, perl-compress-raw-zlib@2.074,
perl-cpan-meta-check@0.011, perl-cpan-meta-requirements@2.140,
perl-cpan-meta-yaml@0.018, perl-db-file@1.840, perl-dbd-pg@3.5.3,
perl-dbd-sqlite@1.54, perl-devel-overloadinfo@0.004,
perl-devel-partialdump@0.18, perl-email-mime@1.940,
perl-email-simple@2.213, perl-image-exiftool@10.40, perl-io-compress@2.074,
perl-lingua-en-findnumber@1.32, perl-lingua-en-inflect-number@1.12,
perl-lingua-en-inflect@1.901, perl-lingua-en-number-isordinal@0.05,
perl-lingua-en-tagger@0.28, perl-module-runtime-conflicts@0.003,
perl-mojolicious@7.29, perl-moose@2.2004,
perl-package-deprecationmanager@0.17, perl-params-validate@1.26,
perl-parse-cpan-meta@2.150010, perl-scalar-list-utils@1.47,
perl-sub-name@0.21, perl-term-readkey@2.37, perl-test-cleannamespaces@0.22,
perl-test-exception@0.43, perl-test-simple@1.302078,
perl-test-warnings@0.026, perl-time-duration-parse@0.13,
perl-variable-magic@0.61, perl-xml-compile-soap@3.21,
perl-xml-compile-wsdl11@3.06, perl-yaml@1.23, perl-zip@1.59, phonon@4.9.1,
php@7.1.4, pianobar@2016.06.02, pidgin@2.12.0, pioneers@15.4, pius@2.2.4,
pkg-config@0.29.1, plasma-framework@5.34.0, podofo@0.9.5,
poppler-qt4@0.52.0, poppler-qt5@0.52.0, poppler@0.52.0,
portaudio@190600.20161030, postgresql@9.6.3, potrace@1.14,
powertabeditor@2.0.0-alpha9, progress@0.13.1, prosody@0.9.12,
proteinortho@5.16, proxychains-ng@4.12, psmisc@22.21, pugixml@1.8.1,
pulseaudio@10.0, python-acme@0.14.0, python-alembic@0.8.10,
python-appdirs@1.4.3, python-atomicwrites@1.1.5, python-babel@2.3.4,
python-backports-abc@0.5, python-beautifulsoup4@4.5.3,
python-botocore@1.5.26, python-certifi@2017.1.23, python-click-log@0.1.8,
python-click@6.7, python-colorama@0.3.7, python-cython@0.25.2,
python-dateutil@2.6.0, python-debian@0.1.28, python-decorator@4.0.10,
python-dendropy@4.2.0, python-django@1.10.7, python-drmaa@0.7.7,
python-email-validator@1.0.2, python-enum34@1.1.6,
python-feedgenerator@1.9, python-flake8@2.5.4, python-freezegun@0.3.8,
python-graphql-relay@0.4.5, python-greenlet@0.4.11, python-gst@1.12.0,
python-icalendar@3.11.4, python-ipaddress@1.0.18, python-ipykernel@4.5.2,
python-ipython@5.2.2, python-jupyter-core@4.2.1, python-libvirt@3.2.0,
python-llfuse@1.2, python-mako@1.0.6, python-markdown@2.6.8,
python-matplotlib@2.0.0, python-minimal-wrapper@3.5.3,
python-minimal@3.5.3, python-mistune@0.7.3, python-mutagen@1.36,
python-natsort@5.0.2, python-nbxmpp@0.5.5, python-ndg-httpsclient@0.4.2,
python-notmuch@0.24.1, python-numexpr@2.6.1, python-numpy@1.12.0,
python-orderedmultidict@0.7.11, python-oslosphinx@4.10.0,
python-pafy@0.5.3.1, python-pandas@0.19.2, python-paramiko@1.17.4,
python-parsedatetime@2.3, python-passlib@1.7.1, python-paste@2.0.3,
python-pbr@1.10.0, python-pexpect@4.2.1, python-pip@9.0.1, python-ply@3.9,
python-prompt-toolkit@1.0.9, python-psycopg2@2.6.2,
python-ptyprocess@0.5.1, python-publicsuffix2@2.20160818, python-py@1.4.32,
python-pycparser@2.17, python-pygame@1.9.3, python-pygments@2.1.3,
python-pygobject@3.22.0, python-pyicu@1.9.5, python-pyopenssl@17.0.0,
python-pyquery@1.2.17, python-pysam@0.10.0, python-pytest-cov@2.4.0,
python-pytest-django@3.1.2, python-pytest-runner@2.11.1,
python-pytest@3.0.7, python-pytz@2016.10, python-pyyaml@3.12,
python-rauth@0.7.3, python-redis@2.10.5, python-requests-mock@1.3.0,
python-requests@2.13.0, python-rq@0.7.1, python-s3transfer@0.1.10,
python-scikit-learn@0.18.1, python-scipy@0.18.1, python-seaborn@0.7.1,
python-setuptools-scm@1.15.0, python-sphinx@1.5.1, python-sphinx@1.5.3,
python-sphinxcontrib-programoutput@0.10, python-sqlalchemy-utils@0.32.13,
python-statsmodels@0.8.0, python-stem@1.5.4, python-sympy@1.0,
python-tabulate@0.7.7, python-testtools@1.4.0, python-texttable@0.8.7,
python-tornado@4.5.1, python-unidecode@0.04.20, python-waf@1.9.8,
python-wcwidth@0.1.7, python-werkzeug@0.11.15, python-wheel@0.30.0a0,
python-wrapper@3.5.3, python-wrapt@1.10.8, python-zope-component@4.3.0,
python2-acme@0.14.0, python2-alembic@0.8.10, python2-appdirs@1.4.3,
python2-atomicwrites@1.1.5, python2-babel@2.3.4, python2-backports-abc@0.5,
python2-beautifulsoup4@4.5.3, python2-botocore@1.5.26,
python2-certifi@2017.1.23, python2-click@6.7, python2-colorama@0.3.7,
python2-cython@0.25.2, python2-dateutil@2.6.0, python2-debian@0.1.28,
python2-decorator@4.0.10, python2-dendropy@4.2.0, python2-django@1.10.7,
python2-dogtail@0.9.9, python2-drmaa@0.7.7, python2-email-validator@1.0.2,
python2-enum34@1.1.6, python2-feedgenerator@1.9, python2-flake8@2.5.4,
python2-freezegun@0.3.8, python2-futures@3.0.5,
python2-graphql-relay@0.4.5, python2-greenlet@0.4.11, python2-gst@1.12.0,
python2-ipaddress@1.0.18, python2-ipykernel@4.5.2, python2-ipython@5.2.2,
python2-jupyter-core@4.2.1, python2-libvirt@3.2.0, python2-llfuse@1.2,
python2-mako@1.0.6, python2-markdown@2.6.8, python2-matplotlib@2.0.0,
python2-mistune@0.7.3, python2-mutagen@1.36, python2-natsort@5.0.2,
python2-nbxmpp@0.5.5, python2-ndg-httpsclient@0.4.2,
python2-notmuch@0.24.1, python2-numexpr@2.6.1, python2-numpy@1.12.0,
python2-orderedmultidict@0.7.11, python2-oslosphinx@4.10.0,
python2-pandas@0.19.2, python2-paramiko@1.17.4, python2-parsedatetime@2.3,
python2-passlib@1.7.1, python2-paste@2.0.3, python2-pbr@1.10.0,
python2-pexpect@4.2.1, python2-pip@9.0.1, python2-ply@3.9,
python2-prompt-toolkit@1.0.9, python2-psycopg2@2.6.2,
python2-ptyprocess@0.5.1, python2-publicsuffix2@2.20160818,
python2-py@1.4.32, python2-pycparser@2.17, python2-pygments@2.1.3,
python2-pygobject@3.22.0, python2-pyicu@1.9.5, python2-pyopenssl@17.0.0,
python2-pyquery@1.2.17, python2-pysam@0.10.0, python2-pysqlite@2.8.3,
python2-pytest-cov@2.4.0, python2-pytest-django@3.1.2,
python2-pytest-runner@2.11.1, python2-pytest@3.0.7, python2-pytz@2016.10,
python2-pyyaml@3.12, python2-rauth@0.7.3, python2-redis@2.10.5,
python2-requests-mock@1.3.0, python2-requests@2.13.0, python2-rq@0.7.1,
python2-s3transfer@0.1.10, python2-scikit-learn@0.18.1,
python2-scipy@0.18.1, python2-seaborn@0.7.1, python2-setuptools-scm@1.15.0,
python2-sphinx@1.5.1, python2-sphinxcontrib-programoutput@0.10,
python2-sqlalchemy-utils@0.32.13, python2-statsmodels@0.8.0,
python2-stem@1.5.4, python2-sympy@1.0, python2-tabulate@0.7.7,
python2-testtools@1.4.0, python2-texttable@0.8.7, python2-tornado@4.5.1,
python2-unidecode@0.04.20, python2-waf@1.9.8, python2-wcwidth@0.1.7,
python2-werkzeug@0.11.15, python2-wheel@0.30.0a0, python2-wrapt@1.10.8,
python2-xdo@0.3, python2-zope-component@4.3.0, python@3.5.3, qca@2.1.3,
qemu-minimal@2.9.0, qemu@2.9.0, qsyncthingtray@0.5.7, qsynth@0.4.4,
qt@5.6.2, qtbase@5.7.1, qtconnectivity@5.7.1, qtdeclarative@5.7.1,
qtgraphicaleffects@5.7.1, qtimageformats@5.7.1, qtkeychain@0.8.0,
qtlocation@5.7.1, qtmultimedia@5.7.1, qtquickcontrols2@5.7.1,
qtquickcontrols@5.7.1, qtractor@0.8.1, qtscript@5.7.1, qtsensors@5.7.1,
qtserialport@5.7.1, qtsvg@5.7.1, qttools@5.7.1, qtwayland@5.7.1,
qtwebchannel@5.7.1, qtwebkit@5.7.1, qtwebsockets@5.7.1, qtx11extras@5.7.1,
qtxmlpatterns@5.7.1, r-ade4@1.7-6, r-annotate@1.54.0,
r-annotationdbi@1.38.0, r-annotationforge@1.18.0, r-assertthat@0.2.0,
r-backports@1.0.5, r-bamsignals@1.8.0, r-bbmisc@1.11, r-bh@1.62.0-1,
r-biobase@2.36.0, r-bioccheck@1.12.0, r-biocgenerics@0.22.0,
r-biocinstaller@1.26.0, r-biocparallel@1.10.0, r-biocstyle@2.4.0,
r-biocviews@1.44.0, r-biomart@2.32.0, r-biostrings@2.44.0,
r-bsgenome@1.44.0, r-category@2.42.0, r-chron@2.3-50, r-cluster@2.0.6,
r-coda@0.19-1, r-colorspace@1.3-2, r-curl@2.5, r-data-table@1.10.4,
r-dbi@0.6-1, r-deseq2@1.16.0, r-digest@0.6.12, r-dnacopy@1.50.0,
r-e1071@1.6-8, r-edger@3.18.0, r-estimability@1.2, r-fastcluster@1.1.22,
r-gdtools@0.1.4, r-genefilter@1.58.0, r-geneplotter@1.54.0,
r-genomation@1.8.0, r-genomeinfodb@1.12.0, r-genomicalignments@1.12.0,
r-genomicfeatures@1.28.0, r-genomicranges@1.28.0, r-ggplot2@2.2.1,
r-git2r@0.18.0, r-gostats@2.42.0, r-graph@1.54.0, r-grohmm@1.10.0,
r-gseabase@1.38.0, r-hexbin@1.27.1-1, r-hmisc@4.0-2, r-hms@0.3,
r-htmltable@1.9, r-htmlwidgets@0.8, r-impute@1.50.0, r-iranges@2.10.0,
r-jsonlite@1.4, r-knitr@1.15.1, r-lattice@0.20-35, r-limma@3.32.0,
r-markdown@0.8, r-matrix@1.2-8, r-matrixstats@0.52.2, r-memoise@1.1.0,
r-mgcv@1.8-17, r-motifrg@1.20.0, r-multitaper@1.0-13,
r-mutationalpatterns@1.2.0, r-mvtnorm@1.0-6, r-openssl@0.9.6,
r-plotly@4.5.6, r-plotrix@3.6-4, r-pracma@2.0.4, r-preprocesscore@1.38.0,
r-qtl@1.40-8, r-r-rsp@0.41.0, r-r-utils@2.5.0, r-rbgl@1.52.0, r-rcas@1.1.1,
r-rcpp@0.12.10, r-rcpparmadillo@0.7.800.2.0, r-readr@1.1.0,
r-rhtslib@1.8.0, r-rmarkdown@1.4, r-roxygen2@6.0.1, r-rpart@4.1-11,
r-rsamtools@1.28.0, r-rsqlite@1.1-2, r-rtracklayer@1.36.0, r-rtsne@0.13,
r-s4vectors@0.14.0, r-scales@0.4.1, r-seqinr@3.3-6, r-seqlogo@1.42.0,
r-seqpattern@1.8.0, r-servr@0.5, r-shortread@1.34.0, r-sparsem@1.76,
r-stringi@1.1.5, r-stringr@1.2.0, r-summarizedexperiment@1.6.0,
r-survival@2.41-3, r-svglite@1.2.0, r-systempiper@1.10.0, r-tibble@1.3.0,
r-tidyr@0.6.1, r-topgo@2.28.0, r-variantannotation@1.22.0, r-vegan@2.4-3,
r-viridis@0.4.0, r-viridislite@0.2.0, r-xml2@1.1.1, r-xml@3.98-1.6,
r-xvector@0.16.0, r-yaml@2.1.14, r-zlibbioc@1.22.0, r-zoo@1.8-0, r@3.4.0,
racket@6.8, radeontop@1.0, radicale@1.1.2, ratpoison@1.4.9,
raul@0.8.4-1.f8bf77d3c, raxml@8.2.10, re2@2017-05-01, red-eclipse@1.5.8,
retroarch@1.5.0, rhythmbox@3.4.1, rofi@1.3.1, rpcbind@0.2.4,
ruby-coderay@1.1.1, ruby-hoe@3.16.0, ruby-minitar@0.5.4-1.e25205ec,
ruby-minitest@5.10.1, ruby-nokogiri@1.7.0.1, ruby-pry@0.10.4,
ruby-rspec-expectations@3.5.0, ruby-rspec@3.5.0,
ruby-shoulda-matchers@3.1.1, ruby-slop@4.1.0, ruby-sqlite3@1.3.13,
ruby-yard@0.9.6, rustc@1.16.0, samba@4.5.8, samplv1@0.8.2, samtools@1.3.1,
sbcl-stumpwm-with-slynk@1.0.0, sbcl-stumpwm@1.0.0, schismtracker@20170420,
screen@4.5.1, sdl-gfx@2.0.26, sed@4.4, serd@0.26.0, serf@1.3.9,
sessreg@1.1.1, setbfree@0.8.4, shadow@4.4, shared-mime-info@1.8,
shotwell@0.25.5, simple-scan@3.24.1, slock@1.4, slop@5.3.37,
slurm@16.05.9.1, snakemake@3.11.2, solid@5.34.0, sonnet@5.34.0,
sord@0.16.0, soxr@0.1.2, spice-gtk@0.33, spice-protocol@0.12.12,
sqlite@3.17.0, sra-tools@2.8.2-1, sratom@0.6.0, sshfs-fuse@2.9, stagit@0.5,
star@2.5.3a, starfighter@1.7, stellarium@0.15.1, strace@4.16,
sudo@1.8.19p1, suil@0.8.4, supertux@0.5.1, surf@2.0, synergy@1.8.8,
synthv1@0.8.2, talloc@2.1.9, tcl@8.6.6, tcpdump@4.9.0, tcsh@6.20.00,
telepathy-mission-control@5.16.4, terminology@1.0.0, texinfo@5.2,
texinfo@6.3, the-silver-searcher@1.0.2, thefuck@3.16, threadweaver@5.34.0,
tiled@0.18.2, tintin++@2.01.2, tk@8.6.6, tmux@2.4, tomb@2.3, tor@0.3.0.7,
totem-pl-parser@3.10.7, totem@3.22.0, trash-cli@0.17.1.14, tuxguitar@1.4,
tvtime@1.0.11, txt2man@1.6.0, tzdata@2017a, tzdata@2017b,
u-boot-am335x_boneblack@2017.03, u-boot-malta@2017.03,
u-boot-vexpress_ca9x4@2017.03, unionfs-fuse-static@2.0, unionfs-fuse@2.0,
units@2.14, upower@0.99.4, utf8proc@2.1.0, util-linux@2.29.2,
v4l-utils@1.12.3, vala@0.34.4, vapoursynth@37, vc-dwim@1.8,
vcftools@0.1.15, vdirsyncer@0.15.0, vim-full@8.0.0566, vim@8.0.0566,
virglrenderer@0.6.0, virt-manager@1.4.1, vis@0.3, vsearch@2.4.3,
vte-ng@0.48.2.a, vte@0.48.2, w3m@0.5.3+git20170102, wavpack@5.1.0,
wayland@1.13.0, wcslib@5.16, webkitgtk@2.16.2, weechat@1.8, weston@2.0.0,
wget@1.19.1, whois@5.2.15, windowmaker@0.95.8, wine@2.4, wiredtiger@2.9.1,
wireless-regdb@2017.03.07, wireshark@2.2.6, wxwidgets@3.0.2,
wxwidgets@3.1.0, x265@2.3, xapian@1.4.4, xauth@1.0.10, xcape@1.2,
xcb-proto@1.12, xcb-util-cursor@0.1.3, xcb-util-xrm@1.2, xdg-utils@1.1.1,
xf86-input-evdev@2.10.5, xf86-input-libinput@0.25.1,
xf86-input-wacom@0.34.0, xf86-video-geode@2.11.19, xf86-video-glint@1.2.9,
xf86-video-intel@2.99.917-5-b57abe2, xf86-video-mga@1.6.5,
xf86-video-nouveau@1.0.15, xf86-video-nv@2.1.21, xf86-video-qxl@0.1.5,
xf86-video-r128@6.10.2, xf86-video-savage@2.3.9,
xf86-video-siliconmotion@1.7.9, xf86-video-sis@0.10.9,
xf86-video-tdfx@1.4.7, xf86-video-trident@1.3.8, xf86-video-vmware@13.2.1,
xfce4-terminal@0.8.3, xkeyboard-config@2.20, xmonad@0.12, xonsh@0.5.9,
xorg-server-xwayland@1.19.3, xorg-server@1.19.3, xproto@7.0.31,
xscreensaver@5.36, yadifa@2.2.4, yelp@3.22.0, yoshimi@1.5.1.1, yosys@0.7,
youtube-dl@2017.05.07, zathura-cb@0.1.6, zathura-djvu@0.2.6,
zathura-pdf-poppler@0.2.7, zathura-ps@0.2.4, zathura@0.3.7, zenity@3.22.0,
zimg@2.5, zlib@1.2.11, znc@1.6.5
** Programming interfaces
*** (guix scripts challenge) returns complete reports, not just discrepancies
*** New dub-build-system for the D language and Dub
*** New ocaml-build-system for software written in OCaml
*** Improvements to the asdf-build-system for software written in various Common Lisp dialects.
*** New package-mapping procedure to rewrite package dependency graphs
*** New modules: (guix workers), (guix discovery), (guix cache),
(guix memoization), (guix ssh), (gnu build shepherd)
*** (gnu build file-systems) now has support for ISO-9660 file systems.
** Noteworthy bug fixes
*** Create home directories once file systems are mounted
(<http://bugs.gnu.org/21108>)
*** GNU R now builds bit-reproducibly (<https://bugs.gnu.org/25598>)
*** The daemons default settings are used unless overriden
(<https://bugs.gnu.org/20217>)
*** guix system now supports the common build option --root
(<https://bugs.gnu.org/26271>)
*** Mesa uses LLVM for better Gallium performance (<https://bugs.gnu.org/25953>)
*** Grafting no longer triggers a download of all the outputs of each derivation
(<https://bugs.gnu.org/24886>)
*** Home directories are created when using a separate /home
(<https://bugs.gnu.org/21108>)
** Native language support
Updated translations: fr (French)
* Changes in 0.12.0 (since 0.11.0)
** Package management
+2 -2
View File
@@ -20,7 +20,7 @@ Guix is based on the [[http://nixos.org/nix/][Nix]] package manager.
GNU Guix currently depends on the following packages:
- [[http://gnu.org/software/guile/][GNU Guile 2.0.x]], version 2.0.7 or later
- [[http://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.9 or later
- [[http://gnupg.org/][GNU libgcrypt]]
- [[http://www.gnu.org/software/make/][GNU Make]]
- optionally [[http://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command
@@ -42,7 +42,7 @@ When `--disable-daemon' was passed, you instead need the following:
See the manual for the installation instructions, either by running
info -f doc/guix.info "(guix) Installation"
info -f doc/guix.info "Installation"
or by checking the [[http://www.gnu.org/software/guix/manual/guix.html#Installation][web copy of the manual]].
+6
View File
@@ -0,0 +1,6 @@
(public-key
(ecc
(curve Ed25519)
(q #8D156F295D24B0D9A86FA5741A840FF2D24F60F7B6C4134814AD55625971B394#)
)
)
+72 -16
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -22,6 +22,7 @@
#:use-module (guix config)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-19)
#:use-module (ice-9 match)
#:export (build))
;;; Commentary:
@@ -58,11 +59,43 @@
(define xz
(first (find-best-packages-by-name "xz" #f)))
(define (false-if-wrong-guile package)
"Return #f if PACKAGE depends on the \"wrong\" major version of Guile (e.g.,
2.0 instead of 2.2), otherwise return PACKAGE."
(let ((guile (any (match-lambda
((label (? package? dep) _ ...)
(and (string=? (package-name dep) "guile")
dep)))
(package-direct-inputs package))))
(and (or (not guile)
(string-prefix? (effective-version)
(package-version guile)))
package)))
(define (package-for-current-guile . names)
"Return the package with one of the given NAMES that depends on the current
Guile major version (2.0 or 2.2), or #f if none of the packages matches."
(let loop ((names names))
(match names
(()
#f)
((name rest ...)
(match (find-best-packages-by-name name #f)
(()
(loop rest))
((first _ ...)
(or (false-if-wrong-guile first)
(loop rest))))))))
(define guile-json
(first (find-best-packages-by-name "guile-json" #f)))
(package-for-current-guile "guile-json"
"guile2.2-json"
"guile2.0-json"))
(define guile-ssh
(first (find-best-packages-by-name "guile-ssh" #f)))
(package-for-current-guile "guile-ssh"
"guile2.2-ssh"
"guile2.0-ssh"))
;; The actual build procedure.
@@ -80,6 +113,17 @@ person's version identifier."
;; XXX: Replace with a Git commit id.
(date->string (current-date 0) "~Y~m~d.~H"))
(define (guile-for-build)
"Return a derivation for Guile 2.0 or 2.2, whichever matches the currently
running Guile."
(package->derivation (cond-expand
(guile-2.2
(canonical-package
(specification->package "guile@2.2")))
(else
(canonical-package
(specification->package "guile@2.0"))))))
;; The procedure below is our return value.
(define* (build source
#:key verbose? (version (date-version-string))
@@ -104,15 +148,19 @@ files."
#~(begin
(use-modules (guix build pull))
(let ((json (string-append #$guile-json "/share/guile/site/2.0")))
(let ((json (string-append #$guile-json "/share/guile/site/"
#$(effective-version))))
(set! %load-path
(cons* json
(string-append #$guile-ssh "/share/guile/site/2.0")
%load-path))
(cons* json
(string-append #$guile-ssh "/share/guile/site/"
#$(effective-version))
%load-path))
(set! %load-compiled-path
(cons* json
(string-append #$guile-ssh "/lib/guile/2.0/site-ccache")
%load-compiled-path)))
(cons* json
(string-append #$guile-ssh "/lib/guile/"
#$(effective-version)
"/site-ccache")
%load-compiled-path)))
;; XXX: The 'guile-ssh' package prior to Guix commit 92b7258 was
;; broken: libguile-ssh could not be found. Work around that.
@@ -146,13 +194,21 @@ files."
(current-error-port)
(%make-void-port "w")))))
(gexp->derivation "guix-latest" builder
#:modules '((guix build pull)
(guix build utils))
(mlet %store-monad ((guile (guile-for-build)))
(gexp->derivation "guix-latest" builder
#:modules '((guix build pull)
(guix build utils)
;; Arrange so that our own (guix build …) modules are
;; used.
#:module-path (list (top-source-directory))))
;; Closure of (guix modules).
(guix modules)
(guix memoization)
(guix sets))
;; Arrange so that our own (guix build …) modules are
;; used.
#:module-path (list (top-source-directory))
#:guile-for-build guile)))
;; This file is loaded by 'guix pull'; return it the build procedure.
build
+6 -3
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -38,10 +38,13 @@
%hydra-supported-systems))
(cross (map (cut package-cross-derivation store
%bootstrap-tarballs <>)
'("mips64el-linux-gnuabi64")))
'("mips64el-linux-gnu"
"arm-linux-gnueabihf")))
(total (append native cross)))
(set-build-options store #:use-substitutes? #t)
(set-build-options store
#:use-substitutes? #t
#:substitute-urls %default-substitute-urls)
(let* ((total (map derivation->output-path total))
(available (substitutable-paths store total))
(missing (lset-difference string=? total available)))
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -57,7 +57,7 @@
if it does."
(let ((references (substitutable-references substitute)))
(when (any (cut string-contains <> "boot") references)
(leave (_ "'~a' refers to bootstrap inputs: ~s~%")
(leave (G_ "'~a' refers to bootstrap inputs: ~s~%")
(substitutable-path substitute) references))))
(define (test-final-inputs store system)
@@ -71,7 +71,7 @@ refer to the bootstrap tools."
(string=? (substitutable-path substitute)
dir))
available)
(leave (_ "~a (system: ~a) has no substitute~%")
(leave (G_ "~a (system: ~a) has no substitute~%")
dir system)))
inputs)
+35 -3
View File
@@ -1,6 +1,6 @@
;;; 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>
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -24,7 +24,10 @@
(guix build utils))
(define warnings
'(unsupported-warning format unbound-variable arity-mismatch))
;; FIXME: 'format' is missing because it reports "non-literal format
;; strings" due to the fact that we use 'G_' instead of '_'. We'll need
;; help from Guile to solve this.
'(unsupported-warning unbound-variable arity-mismatch))
(define host (getenv "host"))
@@ -63,6 +66,34 @@
(format #t " LOAD ~a~%" module)
(resolve-interface module)))
(cond-expand
(guile-2.2 (use-modules (language tree-il optimize)
(language cps optimize)))
(else #f))
(define %default-optimizations
;; Default optimization options (equivalent to -O2 on Guile 2.2).
(cond-expand
(guile-2.2 (append (tree-il-default-optimization-options)
(cps-default-optimization-options)))
(else '())))
(define %lightweight-optimizations
;; Lightweight optimizations (like -O0, but with partial evaluation).
(let loop ((opts %default-optimizations)
(result '()))
(match opts
(() (reverse result))
((#:partial-eval? _ rest ...)
(loop rest `(#t #:partial-eval? ,@result)))
((kw _ rest ...)
(loop rest `(#f ,kw ,@result))))))
(define (optimization-options file)
(if (string-contains file "gnu/packages/")
%lightweight-optimizations ;build faster
'()))
(define (compile-file* file output-mutex)
(let ((go (scm->go file)))
(with-mutex output-mutex
@@ -74,7 +105,8 @@
(lambda ()
(compile-file file
#:output-file go
#:opts `(#:warnings ,warnings)))))))
#:opts `(#:warnings ,warnings
,@(optimization-options file))))))))
;; Install a SIGINT handler to give unwind handlers in 'compile-file' an
;; opportunity to run upon SIGINT and to remove temporary output files.
+13 -14
View File
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,7 +27,7 @@
(web client)
(rnrs io ports)
(srfi srfi-11)
(guix utils)
(guix base16)
(guix hash))
(define %url-base
@@ -36,22 +37,20 @@
;;"http://www.fdn.fr/~lcourtes/software/guix/packages"
)
;; XXX: Work around <http://bugs.gnu.org/13095>, present in Guile
;; up to 2.0.7.
(module-define! (resolve-module '(web client))
'shutdown (const #f))
(define (file-name->uri file)
"Return the URI for FILE."
(match (string-tokenize file (char-set-complement (char-set #\/)))
((_ ... system basename)
(string->uri (string-append %url-base "/" system
(match system
("armhf-linux"
"/20150101/")
(_
"/20131110/"))
basename)))))
(string->uri
(string-append %url-base "/" system
(match system
("aarch64-linux"
"/20170217/")
("armhf-linux"
"/20150101/")
(_
"/20131110/"))
basename)))))
(match (command-line)
((_ file expected-hash)
+226
View File
@@ -0,0 +1,226 @@
#!/bin/sh
# Print a version string.
scriptversion=2017-01-09.19; # UTC
# Copyright (C) 2007-2017 Free Software Foundation, Inc.
#
# This program 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.
#
# This program 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/>.
# This script is derived from GIT-VERSION-GEN from GIT: http://git.or.cz/.
# It may be run two ways:
# - from a git repository in which the "git describe" command below
# produces useful output (thus requiring at least one signed tag)
# - from a non-git-repo directory containing a .tarball-version file, which
# presumes this script is invoked like "./git-version-gen .tarball-version".
# In order to use intra-version strings in your project, you will need two
# separate generated version string files:
#
# .tarball-version - present only in a distribution tarball, and not in
# a checked-out repository. Created with contents that were learned at
# the last time autoconf was run, and used by git-version-gen. Must not
# be present in either $(srcdir) or $(builddir) for git-version-gen to
# give accurate answers during normal development with a checked out tree,
# but must be present in a tarball when there is no version control system.
# Therefore, it cannot be used in any dependencies. GNUmakefile has
# hooks to force a reconfigure at distribution time to get the value
# correct, without penalizing normal development with extra reconfigures.
#
# .version - present in a checked-out repository and in a distribution
# tarball. Usable in dependencies, particularly for files that don't
# want to depend on config.h but do want to track version changes.
# Delete this file prior to any autoconf run where you want to rebuild
# files to pick up a version string change; and leave it stale to
# minimize rebuild time after unrelated changes to configure sources.
#
# As with any generated file in a VC'd directory, you should add
# /.version to .gitignore, so that you don't accidentally commit it.
# .tarball-version is never generated in a VC'd directory, so needn't
# be listed there.
#
# Use the following line in your configure.ac, so that $(VERSION) will
# automatically be up-to-date each time configure is run (and note that
# since configure.ac no longer includes a version string, Makefile rules
# should not depend on configure.ac for version updates).
#
# AC_INIT([GNU project],
# m4_esyscmd([build-aux/git-version-gen .tarball-version]),
# [bug-project@example])
#
# Then use the following lines in your Makefile.am, so that .version
# will be present for dependencies, and so that .version and
# .tarball-version will exist in distribution tarballs.
#
# EXTRA_DIST = $(top_srcdir)/.version
# BUILT_SOURCES = $(top_srcdir)/.version
# $(top_srcdir)/.version:
# echo $(VERSION) > $@-t && mv $@-t $@
# dist-hook:
# echo $(VERSION) > $(distdir)/.tarball-version
me=$0
version="git-version-gen $scriptversion
Copyright 2011 Free Software Foundation, Inc.
There is NO warranty. You may redistribute this software
under the terms of the GNU General Public License.
For more information about these matters, see the files named COPYING."
usage="\
Usage: $me [OPTION]... \$srcdir/.tarball-version [TAG-NORMALIZATION-SED-SCRIPT]
Print a version string.
Options:
--prefix PREFIX prefix of git tags (default 'v')
--fallback VERSION
fallback version to use if \"git --version\" fails
--help display this help and exit
--version output version information and exit
Running without arguments will suffice in most cases."
prefix=v
fallback=
while test $# -gt 0; do
case $1 in
--help) echo "$usage"; exit 0;;
--version) echo "$version"; exit 0;;
--prefix) shift; prefix=${1?};;
--fallback) shift; fallback=${1?};;
-*)
echo "$0: Unknown option '$1'." >&2
echo "$0: Try '--help' for more information." >&2
exit 1;;
*)
if test "x$tarball_version_file" = x; then
tarball_version_file="$1"
elif test "x$tag_sed_script" = x; then
tag_sed_script="$1"
else
echo "$0: extra non-option argument '$1'." >&2
exit 1
fi;;
esac
shift
done
if test "x$tarball_version_file" = x; then
echo "$usage"
exit 1
fi
tag_sed_script="${tag_sed_script:-s/x/x/}"
nl='
'
# Avoid meddling by environment variable of the same name.
v=
v_from_git=
# First see if there is a tarball-only version file.
# then try "git describe", then default.
if test -f $tarball_version_file
then
v=`cat $tarball_version_file` || v=
case $v in
*$nl*) v= ;; # reject multi-line output
[0-9]*) ;;
*) v= ;;
esac
test "x$v" = x \
&& echo "$0: WARNING: $tarball_version_file is missing or damaged" 1>&2
fi
if test "x$v" != x
then
: # use $v
# Otherwise, if there is at least one git commit involving the working
# directory, and "git describe" output looks sensible, use that to
# derive a version string.
elif test "`git log -1 --pretty=format:x . 2>&1`" = x \
&& v=`git describe --abbrev=4 --match="$prefix*" HEAD 2>/dev/null \
|| git describe --abbrev=4 HEAD 2>/dev/null` \
&& v=`printf '%s\n' "$v" | sed "$tag_sed_script"` \
&& case $v in
$prefix[0-9]*) ;;
*) (exit 1) ;;
esac
then
# Is this a new git that lists number of commits since the last
# tag or the previous older version that did not?
# Newer: v6.10-77-g0f8faeb
# Older: v6.10-g0f8faeb
case $v in
*-*-*) : git describe is okay three part flavor ;;
*-*)
: git describe is older two part flavor
# Recreate the number of commits and rewrite such that the
# result is the same as if we were using the newer version
# of git describe.
vtag=`echo "$v" | sed 's/-.*//'`
commit_list=`git rev-list "$vtag"..HEAD 2>/dev/null` \
|| { commit_list=failed;
echo "$0: WARNING: git rev-list failed" 1>&2; }
numcommits=`echo "$commit_list" | wc -l`
v=`echo "$v" | sed "s/\(.*\)-\(.*\)/\1-$numcommits-\2/"`;
test "$commit_list" = failed && v=UNKNOWN
;;
esac
# Change the first '-' to a '.', so version-comparing tools work properly.
# Remove the "g" in git describe's output string, to save a byte.
v=`echo "$v" | sed 's/-/./;s/\(.*\)-g/\1-/'`;
v_from_git=1
elif test "x$fallback" = x || git --version >/dev/null 2>&1; then
v=UNKNOWN
else
v=$fallback
fi
v=`echo "$v" |sed "s/^$prefix//"`
# Test whether to append the "-dirty" suffix only if the version
# string we're using came from git. I.e., skip the test if it's "UNKNOWN"
# or if it came from .tarball-version.
if test "x$v_from_git" != x; then
# Don't declare a version "dirty" merely because a timestamp has changed.
git update-index --refresh > /dev/null 2>&1
dirty=`exec 2>/dev/null;git diff-index --name-only HEAD` || dirty=
case "$dirty" in
'') ;;
*) # Append the suffix only if there isn't one already.
case $v in
*-dirty) ;;
*) v="$v-dirty" ;;
esac ;;
esac
fi
# Omit the trailing newline, so that m4_esyscmd can use the result directly.
printf %s "$v"
# Local variables:
# eval: (add-hook 'write-file-hooks 'time-stamp)
# time-stamp-start: "scriptversion="
# time-stamp-format: "%:y-%02m-%02d.%02H"
# time-stamp-time-zone: "UTC0"
# time-stamp-end: "; # UTC"
# End:
-84
View File
@@ -1,84 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015 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/>.
;;;
;;; This file defines an operating system configuration for the demo virtual
;;; machine images that we build.
;;;
(use-modules (gnu))
(use-service-modules desktop xorg networking avahi dbus)
(use-package-modules linux xorg tor avahi)
(operating-system
(host-name "gnu")
(timezone "Europe/Paris")
(locale "en_US.utf8")
(bootloader (grub-configuration
(device "/dev/sda")))
(file-systems
;; We provide a dummy file system for /, but that's OK because the VM build
;; code will automatically declare the / file system for us.
(cons* (file-system
(mount-point "/")
(device "dummy")
(type "dummy"))
;; %fuse-control-file-system ; needs fuse.ko
;; %binary-format-file-system ; needs binfmt.ko
%base-file-systems))
(users (list (user-account
(name "guest")
(group "users")
(supplementary-groups '("wheel")) ; allow use of sudo
(password "")
(comment "Guest of GNU")
(home-directory "/home/guest"))))
(issue "
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
the GNU Shepherd (http://www.gnu.org/software/shepherd/).
You can log in as 'guest' or 'root' with no password.
")
(services (cons* (slim-service #:auto-login? #t
#:default-user "guest")
;; QEMU networking settings.
(static-networking-service "eth0" "10.0.2.10"
#:name-servers '("10.0.2.3")
#:gateway "10.0.2.2")
(avahi-service)
(dbus-service)
(tor-service)
%base-services))
(pam-services
;; Explicitly allow for empty passwords.
(base-pam-services #:allow-empty-passwords? #t))
(packages (cons* strace
tor torsocks
xterm avahi %base-packages)))
+8 -1
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -32,6 +32,13 @@
(beautify-user-module! m)
m))
(cond-expand
(guile-2.2
;; Guile 2.2.2 has a bug whereby 'time-monotonic' objects have seconds and
;; nanoseconds swapped (fixed in Guile commit 886ac3e). Work around it.
(define time-monotonic time-tai))
(else #t))
(define (call-with-time thunk kont)
"Call THUNK and pass KONT the elapsed time followed by THUNK's return
values."
+28 -24
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -39,12 +39,15 @@
(use-modules (guix config)
(guix store)
(guix grafts)
(guix profiles)
(guix packages)
(guix derivations)
(guix monads)
((guix licenses) #:select (gpl3+))
((guix utils) #:select (%current-system))
((guix scripts system) #:select (read-operating-system))
((guix scripts pack)
#:select (lookup-compressor self-contained-tarball))
(gnu packages)
(gnu packages gcc)
(gnu packages base)
@@ -108,7 +111,7 @@ SYSTEM."
;; chain.)
(list gcc-4.8 gcc-4.9 gcc-5 glibc binutils
gmp mpfr mpc coreutils findutils diffutils patch sed grep
gawk gnu-gettext hello guile-2.0 zlib gzip xz
gawk gnu-gettext hello guile-2.0 guile-2.2 zlib gzip xz
%bootstrap-binaries-tarball
%binutils-bootstrap-tarball
(%glibc-bootstrap-tarball)
@@ -123,14 +126,11 @@ SYSTEM."
'("mips64el-linux-gnu"
"mips64el-linux-gnuabi64"
"arm-linux-gnueabihf"
"aarch64-linux-gnu"
"powerpc-linux-gnu"
"i586-pc-gnu" ;aka. GNU/Hurd
"i686-w64-mingw32"))
(define (demo-os)
"Return the \"demo\" 'operating-system' structure."
(let* ((dir (dirname (assoc-ref (current-source-location) 'filename)))
(file (string-append dir "/demo-os.scm")))
(read-operating-system file)))
(define %guixsd-supported-systems
'("x86_64-linux" "i686-linux"))
@@ -156,14 +156,7 @@ system.")
(expt 2 20))
(if (member system %guixsd-supported-systems)
(list (->job 'qemu-image
(run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(system-qemu-image (demo-os)
#:disk-image-size
(* 1400 MiB))))) ; 1.4 GiB
(->job 'usb-image
(list (->job 'usb-image
(run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
@@ -225,7 +218,12 @@ all its dependencies, and ready to be installed on non-GuixSD distributions.")
(run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(self-contained-tarball))
(>>= (profile-derivation (packages->manifest (list guix)))
(lambda (profile)
(self-contained-tarball "guix-binary" profile
#:localstatedir? #t
#:compressor
(lookup-compressor "xz")))))
#:system system))))
(define job-name
@@ -269,14 +267,17 @@ valid."
;; prevents known-to-fail cross-builds from i686-linux or armhf-linux to
;; mips64el-linux-gnuabi64.
(and (or (string-prefix? "i686-" system)
(string-prefix? "i586-" system)
(string-prefix? "armhf-" system))
(string-suffix? "64" target)))
(string-contains target "64"))) ;x86_64, mips64el, aarch64, etc.
(define (same? target)
;; Return true if SYSTEM and TARGET are the same thing. This is so we
;; don't try to cross-compile to 'mips64el-linux-gnu' from
;; 'mips64el-linux'.
(string-contains target system))
(or (string-contains target system)
(and (string-prefix? "armhf" system) ;armhf-linux
(string-prefix? "arm" target)))) ;arm-linux-gnueabihf
(define (pointless? target)
;; Return #t if it makes no sense to cross-build to TARGET from SYSTEM.
@@ -304,11 +305,14 @@ valid."
;; Build everything, including replacements.
(let ((all (fold-packages
(lambda (package result)
(if (package-replacement package)
(cons* package
(package-replacement package)
result)
(cons package result)))
(cond ((package-replacement package)
(cons* package
(package-replacement package)
result))
((package-superseded package)
result) ;don't build it
(else
(cons package result))))
'()))
(job (lambda (package)
(package->job store package
-47
View File
@@ -1,47 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 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/>.
;;;
;;; Build a self-contained tarball containing binaries for Guix and its
;;; dependencies.
;;;
(use-modules (guix)
(guix ui)
(gnu system install)
(ice-9 match))
(define copy-file*
(lift2 copy-file %store-monad))
(define rename-file*
(lift2 rename-file %store-monad))
(match (command-line)
((_ system file)
(with-store store
(run-with-store store
(mlet %store-monad ((tarball (self-contained-tarball)))
(mbegin %store-monad
(show-what-to-build* (list tarball))
(built-derivations (list tarball))
(copy-file* (derivation->output-path tarball)
(string-append file ".part"))
(rename-file* (string-append file ".part") file)))
#:system system))))
+11 -4
View File
@@ -1,7 +1,7 @@
#!/bin/sh
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#
@@ -45,11 +45,18 @@ export PATH
NIX_ROOT_FINDER="$abs_top_builddir/nix/scripts/list-runtime-roots"
NIX_SUBSTITUTERS="$abs_top_builddir/nix/scripts/substitute"
NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
NIX_LIBEXEC_DIR="@abs_top_builddir@/nix/scripts" # for 'guix-authenticate'
export NIX_ROOT_FINDER NIX_SUBSTITUTERS \
NIX_BUILD_HOOK NIX_LIBEXEC_DIR
export NIX_ROOT_FINDER NIX_SUBSTITUTERS NIX_LIBEXEC_DIR
NIX_BUILD_HOOK="$abs_top_builddir/nix/scripts/offload"
if [ -x "$NIX_BUILD_HOOK" ]
then
export NIX_BUILD_HOOK
else
# No offloading support.
unset NIX_BUILD_HOOK
fi
# The 'guix-register' program.
GUIX_REGISTER="$abs_top_builddir/guix-register"
+23 -28
View File
@@ -1,6 +1,6 @@
;;;; test-driver.scm - Guile test driver for Automake testsuite harness
(define script-version "2016-04-03.12") ;UTC
(define script-version "2017-03-22.13") ;UTC
;;; Copyright © 2015, 2016 Mathieu Lirzin <mthl@gnu.org>
;;;
@@ -59,7 +59,7 @@ The '--test-name', '--log-file' and '--trs-file' options are mandatory.\n"))
(begin
(format port "~A:~%" field)
(pretty-print value port #:per-line-prefix "+ "))
(format port "~A: ~A~%" field value)))
(format port "~A: ~S~%" field value)))
(define* (result->string symbol #:key colorize?)
"Return SYMBOL as an upper case string. Use colors when COLORIZE is #t."
@@ -85,10 +85,10 @@ current output port is supposed to be redirected to a '.log' file."
;; Procedure called at the start of an individual test case, before the
;; test expression (and expected value) are evaluated.
(let ((result (cute assq-ref (test-result-alist runner) <>)))
(test-display "test-name" (result 'test-name))
(test-display "location"
(string-append (result 'source-file) ":"
(number->string (result 'source-line))))
(format #t "test-name: ~A~%" (result 'test-name))
(format #t "location: ~A~%"
(string-append (result 'source-file) ":"
(number->string (result 'source-line))))
(test-display "source" (result 'source-form) #:pretty? #t)))
(define (test-on-test-end-gnu runner)
@@ -99,10 +99,9 @@ current output port is supposed to be redirected to a '.log' file."
(result (cut assq-ref results <>)))
(unless brief?
;; Display the result of each test case on the console.
(test-display
(result->string (test-result-kind runner) #:colorize? color?)
(string-append test-name " - " (test-runner-test-name runner))
out-port))
(format out-port "~A: ~A - ~A~%"
(result->string (test-result-kind runner) #:colorize? color?)
test-name (test-runner-test-name runner)))
(when (result? 'expected-value)
(test-display "expected-value" (result 'expected-value)))
(when (result? 'expected-error)
@@ -111,12 +110,11 @@ current output port is supposed to be redirected to a '.log' file."
(test-display "actual-value" (result 'actual-value)))
(when (result? 'actual-error)
(test-display "actual-error" (result 'actual-error) #:pretty? #t))
(test-display "result" (result->string (result 'result-kind)))
(format #t "result: ~a~%" (result->string (result 'result-kind)))
(newline)
(test-display ":test-result"
(string-append (result->string (test-result-kind runner))
" " (test-runner-test-name runner))
trs-port)))
(format trs-port ":test-result: ~A ~A~%"
(result->string (test-result-kind runner))
(test-runner-test-name runner))))
(define (test-on-group-end-gnu runner)
;; Procedure called by a 'test-end', including at the end of a test-group.
@@ -125,21 +123,18 @@ current output port is supposed to be redirected to a '.log' file."
(skip (or (positive? (test-runner-skip-count runner))
(positive? (test-runner-xfail-count runner)))))
;; XXX: The global results need some refinements for XPASS.
(test-display ":global-test-result"
(if fail "FAIL" (if skip "SKIP" "PASS"))
trs-port)
(test-display ":recheck"
(if fail "yes" "no")
trs-port)
(test-display ":copy-in-global-log"
(if (or fail skip) "yes" "no")
trs-port)
(format trs-port ":global-test-result: ~A~%"
(if fail "FAIL" (if skip "SKIP" "PASS")))
(format trs-port ":recheck: ~A~%"
(if fail "yes" "no"))
(format trs-port ":copy-in-global-log: ~A~%"
(if (or fail skip) "yes" "no"))
(when brief?
;; Display the global test group result on the console.
(test-display (result->string (if fail 'fail (if skip 'skip 'pass))
#:colorize? color?)
test-name
out-port))
(format out-port "~A: ~A~%"
(result->string (if fail 'fail (if skip 'skip 'pass))
#:colorize? color?)
test-name))
#f))
(let ((runner (test-runner-null)))
+161
View File
@@ -0,0 +1,161 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 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/>.
;;; Commentary:
;;;
;;; This script updates the list of new and updated packages in 'NEWS'.
;;;
;;; Code:
(use-modules (gnu) (guix)
(guix build utils)
((guix ui) #:select (fill-paragraph))
(srfi srfi-1)
(srfi srfi-11)
(ice-9 match)
(ice-9 rdelim)
(ice-9 regex)
(ice-9 pretty-print))
(define %header-rx
(make-regexp "^\\* Changes in (version )?([0-9.]+) \\(since ([0-9.]+)\\)"))
(define (NEWS->versions port)
"Return two values: the previous version and the current version as read
from PORT, which is an input port on the 'NEWS' file."
(let loop ()
(let ((line (read-line port)))
(cond ((eof-object? line)
(error "failed to determine previous and current version"
port))
((regexp-exec %header-rx line)
=>
(lambda (match)
(values (match:substring match 3)
(match:substring match 2))))
(else
(loop))))))
(define (skip-to-org-heading port)
"Read from PORT until an Org heading is found."
(let loop ()
(let ((next (peek-char port)))
(cond ((eqv? next #\*)
#t)
((eof-object? next)
(error "next heading could not be found"))
(else
(read-line port)
(loop))))))
(define (rewrite-org-section input output heading-rx proc)
"Write to OUTPUT the text read from INPUT, but with the first Org section
matching HEADING-RX replaced by NEW-HEADING and CONTENTS."
(let loop ()
(let ((line (read-line input)))
(cond ((eof-object? line)
(error "failed to match heading regexp" heading-rx))
((regexp-exec heading-rx line)
=>
(lambda (match)
(proc match output)
(skip-to-org-heading input)
(dump-port input output)
#t))
(else
(display line output)
(newline output)
(loop))))))
(define (enumeration->paragraph lst)
"Turn LST, a list of strings, into a single string that is a ready-to-print
paragraph."
(fill-paragraph (string-join (sort lst string<?) ", ")
75))
(define (write-packages-added news-file old new)
"Write to NEWS-FILE the list of packages added between OLD and NEW."
(let ((added (lset-difference string=? (map car new) (map car old))))
(with-atomic-file-replacement news-file
(lambda (input output)
(rewrite-org-section input output
(make-regexp "^(\\*+) (.*) new packages")
(lambda (match port)
(let ((stars (match:substring match 1)))
(format port
"~a ~a new packages~%~%~a~%~%"
stars (length added)
(enumeration->paragraph added)))))))))
(define (write-packages-updates news-file old new)
"Write to NEWS-FILE the list of packages upgraded between OLD and NEW."
(let ((upgraded (filter-map (match-lambda
((package . new-version)
(match (assoc package old)
((_ . old-version)
(and (version>? new-version old-version)
(string-append package "@"
new-version)))
(_ #f))))
new)))
(with-atomic-file-replacement news-file
(lambda (input output)
(rewrite-org-section input output
(make-regexp "^(\\*+) (.*) package updates")
(lambda (match port)
(let ((stars (match:substring match 1)))
(format port
"~a ~a package updates~%~%~a~%~%"
stars (length upgraded)
(enumeration->paragraph upgraded)))))))))
(define (main . args)
(match args
((news-file data-directory)
;; Don't browse things listed in the user's $GUIX_PACKAGE_PATH. Here we
;; assume that the last item in (%package-module-path) is the distro
;; directory.
(parameterize ((%package-module-path
(list (last (%package-module-path)))))
(define (package-file version)
(string-append data-directory "/packages-"
version ".txt"))
(let-values (((previous-version new-version)
(call-with-input-file news-file NEWS->versions)))
(let* ((old (call-with-input-file (package-file previous-version)
read))
(new (fold-packages (lambda (p r)
(alist-cons (package-name p) (package-version p)
r))
'())))
(call-with-output-file (package-file new-version)
(lambda (port)
(pretty-print new port)))
(write-packages-added news-file old new)
(write-packages-updates news-file old new)))))
(x
(format (current-error-port) "Usage: update-NEWS NEWS-FILE DATA-DIRECTORY
Update the list of new and updated packages in NEWS-FILE using the
previous-version package list from DATA-DIRECTORY.\n")
(exit 1))))
(apply main (cdr (command-line)))
+144
View File
@@ -0,0 +1,144 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 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/>.
;;; Commentary:
;;;
;;; This scripts updates the definition of the 'guix' package in Guix for the
;;; current commit. It requires Git to be installed.
;;;
;;; Code:
(use-modules (guix)
(guix git-download)
(guix upstream)
(guix utils)
(guix base32)
(guix build utils)
(gnu packages package-management)
(ice-9 match))
(define %top-srcdir
(string-append (current-source-directory) "/.."))
(define version-controlled?
(git-predicate %top-srcdir))
(define (package-definition-location)
"Return the source properties of the definition of the 'guix' package."
(call-with-input-file (location-file (package-location guix))
(lambda (port)
(let loop ()
(match (read port)
((? eof-object?)
(error "definition of 'guix' package could not be found"
(port-filename port)))
(('define-public 'guix value)
(source-properties value))
(_
(loop)))))))
(define* (update-definition commit hash
#:key version old-hash)
"Return a one-argument procedure that takes a string, the definition of the
'guix' package, and returns a string, the update definition for VERSION,
COMMIT."
(define (linear-offset str line column)
;; Return the offset in characters to reach LINE and COLUMN (both
;; zero-indexed) in STR.
(call-with-input-string str
(lambda (port)
(let loop ((offset 0))
(cond ((and (= (port-column port) column)
(= (port-line port) line))
offset)
((eof-object? (read-char port))
(error "line and column not reached!"
str))
(else
(loop (+ 1 offset))))))))
(define (update-hash str)
;; Replace OLD-HASH with HASH in STR.
(string-replace-substring str
(bytevector->nix-base32-string old-hash)
(bytevector->nix-base32-string hash)))
(lambda (str)
(match (call-with-input-string str read)
(('let (('version old-version)
('commit old-commit)
('revision old-revision))
defn)
(let* ((location (source-properties defn))
(line (assq-ref location 'line))
(column 0)
(offset (linear-offset str line column)))
(string-append (format #f "(let ((version \"~a\")
(commit \"~a\")
(revision ~a))\n"
(or version old-version)
commit
(if (and version
(not (string=? version old-version)))
0
(+ 1 old-revision)))
(string-drop (update-hash str) offset))))
(exp
(error "'guix' package definition is not as expected" exp)))))
(define (main . args)
(match args
((commit version)
(with-store store
(let* ((source (add-to-store store
"guix-checkout" ;dummy name
#t "sha256" %top-srcdir
#:select? version-controlled?))
(hash (query-path-hash store source))
(location (package-definition-location))
(old-hash (origin-sha256 (package-source guix))))
(edit-expression location
(update-definition commit hash
#:old-hash old-hash
#:version version))
;; Re-add SOURCE to the store, but this time under the real name used
;; in the 'origin'. This allows us to build the package without
;; having to make a real checkout; thus, it also works when working
;; on a private branch.
(reload-module
(resolve-module '(gnu packages package-management)))
(let* ((source (add-to-store store
(origin-file-name (package-source guix))
#t "sha256" source))
(root (store-path-package-name source)))
;; Add an indirect GC root for SOURCE in the current directory.
(false-if-exception (delete-file root))
(symlink source root)
(add-indirect-root store root)
(format #t "source code for commit ~a: ~a (GC root: ~a)~%"
commit source root)))))
((commit)
;; Automatically deduce the version and revision numbers.
(main commit #f))))
(apply main (cdr (command-line)))
+1
View File
@@ -5,6 +5,7 @@ AC_MSG_RESULT([$guix_build_daemon])
dnl C++ environment. This macro must be used unconditionnaly.
AC_PROG_CXX
AM_PROG_AR
AC_LANG([C++])
if test "x$guix_build_daemon" = "xyes"; then
+38 -20
View File
@@ -2,8 +2,10 @@
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.68)
AC_INIT([GNU Guix], [0.12.0], [bug-guix@gnu.org], [guix],
[http://www.gnu.org/software/guix/])
AC_INIT([GNU Guix],
[m4_esyscmd([build-aux/git-version-gen .tarball-version])],
[bug-guix@gnu.org], [guix],
[https://www.gnu.org/software/guix/])
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([1.12 gnu silent-rules subdir-objects \
@@ -73,25 +75,32 @@ m4_pattern_forbid([PKG_CHECK_MODULES])
m4_pattern_forbid([GUILE_MODULE_AVAILABLE])
m4_pattern_forbid([^GUILE_P$])
dnl Search for 'guile' and 'guild'. Prefer 2.0 until the 2.2 upgrade is
dnl complete. This macro defines 'GUILE_EFFECTIVE_VERSION'.
GUILE_PKG([2.0 2.2])
dnl Search for 'guile' and 'guild'. This macro defines
dnl 'GUILE_EFFECTIVE_VERSION'.
GUILE_PKG([2.2 2.0])
GUILE_PROGS
if test "x$GUILD" = "x"; then
AC_MSG_ERROR(['guild' binary not found; please check your guile-2.x installation.])
fi
if test "x$GUILE_EFFECTIVE_VERSION" = "x2.0"; then
PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.7])
else
AC_MSG_WARN([Guile $GUILE_EFFECTIVE_VERSION is not fully supported!])
PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.9])
fi
dnl Installation directory for .scm and .go files.
dnl Installation directories for .scm and .go files.
guilemoduledir="${datarootdir}/guile/site/$GUILE_EFFECTIVE_VERSION"
guileobjectdir="${libdir}/guile/$GUILE_EFFECTIVE_VERSION/site-ccache"
AC_SUBST([guilemoduledir])
AC_SUBST([guileobjectdir])
dnl guile-json is used for the PyPI package importer
dnl The GnuTLS bindings are necessary for substitutes over HTTPS and for 'guix
dnl pull', among other things.
GUILE_MODULE_AVAILABLE([have_gnutls], [(gnutls)])
if test "x$have_gnutls" != "xyes"; then
AC_MSG_ERROR([The Guile bindings of GnuTLS are missing; please install them.])
fi
dnl Guile-JSON is used in various places.
GUILE_MODULE_AVAILABLE([have_guile_json], [(json)])
AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"])
@@ -216,6 +225,11 @@ AC_MSG_CHECKING([for zlib's shared library name])
AC_MSG_RESULT([$LIBZ])
AC_SUBST([LIBZ])
dnl Check for Guile-SSH, for the (guix ssh) module.
GUIX_CHECK_GUILE_SSH
AM_CONDITIONAL([HAVE_GUILE_SSH],
[test "x$guix_cv_have_recent_guile_ssh" = "xyes"])
AC_CACHE_SAVE
m4_include([config-daemon.ac])
@@ -227,6 +241,19 @@ AM_MISSING_PROG([DOT], [dot])
dnl Manual pages.
AM_MISSING_PROG([HELP2MAN], [help2man])
dnl Emacs (optional), for 'etc/indent-package.el'.
AC_PATH_PROG([EMACS], [emacs], [/usr/bin/emacs])
AC_SUBST([EMACS])
case "$storedir" in
/gnu/store)
;;
*)
AC_MSG_WARN([Using a store directory other than '/gnu/store' will prevent you])
AC_MSG_WARN([from downloading substitutes from gnu.org.])
;;
esac
AC_CONFIG_FILES([Makefile
po/guix/Makefile.in
po/packages/Makefile.in
@@ -236,15 +263,6 @@ AC_CONFIG_FILES([scripts/guix], [chmod +x scripts/guix])
AC_CONFIG_FILES([test-env:build-aux/test-env.in], [chmod +x test-env])
AC_CONFIG_FILES([pre-inst-env:build-aux/pre-inst-env.in],
[chmod +x pre-inst-env])
dnl Emacs interface.
AC_PATH_PROG([DOT_USER_PROGRAM], [dot], [dot])
AM_PATH_LISPDIR
AM_CONDITIONAL([HAVE_EMACS], [test "x$EMACS" != "xno"])
emacsuidir="${guilemoduledir}/guix/emacs"
AC_SUBST([emacsuidir])
AC_CONFIG_FILES([emacs/guix-config.el
emacs/guix-helper.scm])
AC_CONFIG_FILES([etc/indent-code.el], [chmod +x etc/indent-code.el])
AC_OUTPUT
+66 -9
View File
@@ -187,9 +187,6 @@ facilities to directly operate on the syntax tree, such as raising an
s-expression or wrapping it, swallowing or rejecting the following
s-expression, etc.
GNU Guix also comes with a minor mode that provides some additional
functionality for Scheme buffers (@pxref{Emacs Development}).
@node Coding Style
@section Coding Style
@@ -240,6 +237,8 @@ especially when matching lists.
@node Formatting Code
@subsection Formatting Code
@cindex formatting code
@cindex coding style
When writing Scheme code, we follow common wisdom among Scheme
programmers. In general, we follow the
@url{http://mumble.net/~campbell/scheme/style.txt, Riastradh's Lisp
@@ -249,8 +248,28 @@ please do read it.
Some special forms introduced in Guix, such as the @code{substitute*}
macro, have special indentation rules. These are defined in the
@file{.dir-locals.el} file, which Emacs automatically uses. If you do
not use Emacs, please make sure to let your editor know the rules.
@file{.dir-locals.el} file, which Emacs automatically uses. Also note
that Emacs-Guix provides @code{guix-devel-mode} mode that indents and
highlights Guix code properly (@pxref{Development,,, emacs-guix, The
Emacs-Guix Reference Manual}).
@cindex indentation, of code
@cindex formatting, of code
If you do not use Emacs, please make sure to let your editor knows these
rules. To automatically indent a package definition, you can also run:
@example
./etc/indent-code.el gnu/packages/@var{file}.scm @var{package}
@end example
@noindent
This automatically indents the definition of @var{package} in
@file{gnu/packages/@var{file}.scm} by running Emacs in batch mode. To
indent a whole file, omit the second argument:
@example
./etc/indent-code.el gnu/services/@var{file}.scm
@end example
We require all top-level procedures to carry a docstring. This
requirement can be relaxed for simple private procedures in the
@@ -266,7 +285,19 @@ keyword parameters for procedures that take more than four parameters.
Development is done using the Git distributed version control system.
Thus, access to the repository is not strictly necessary. We welcome
contributions in the form of patches as produced by @code{git
format-patch} sent to the @email{guix-devel@@gnu.org, mailing list}.
format-patch} sent to the @email{guix-patches@@gnu.org} mailing list.
This mailing list is backed by a Debbugs instance accessible at
@uref{https://bugs.gnu.org/guix-patches}, which allows us to keep track
of submissions. Each message sent to that mailing list gets a new
tracking number assigned; people can then follow up on the submission by
sending email to @code{@var{NNN}@@debbugs.gnu.org}, where @var{NNN} is
the tracking number. When sending a patch series, please first send one
message to @email{guix-patches@@gnu.org}, and then send subsequent
patches to @email{@var{NNN}@@debbugs.gnu.org} to make sure they are kept
together. See @uref{https://debbugs.gnu.org/Advanced.html, the Debbugs
documentation}, for more information.
Please write commit logs in the ChangeLog format (@pxref{Change Logs,,,
standards, GNU Coding Standards}); you can check the commit history for
examples.
@@ -314,9 +345,30 @@ For important changes, check that dependent package (if applicable) are
not affected by the change; @code{guix refresh --list-dependent
@var{package}} will help you do that (@pxref{Invoking guix refresh}).
Packages with roughly 100 dependents or more usually have to be
committed to a separate branch. That branch can then be built
separately by our build farm, and later merged into @code{master} once
@c See <https://lists.gnu.org/archive/html/guix-devel/2016-10/msg00933.html>.
@cindex branching strategy
@cindex rebuild scheduling strategy
Depending on the number of dependent packages and thus the amount of
rebuilding induced, commits go to different branches, along these lines:
@table @asis
@item 300 dependent packages or less
@code{master} branch (non-disruptive changes).
@item between 300 and 1,200 dependent packages
@code{staging} branch (non-disruptive changes). This branch is intended
to be merged in @code{master} every 3 weeks or so. Topical changes
(e.g., an update of the GNOME stack) can instead go to a specific branch
(say, @code{gnome-updates}).
@item more than 1,200 dependent packages
@code{core-updates} branch (may include major and potentially disruptive
changes). This branch is intended to be merged in @code{master} every
2.5 months or so.
@end table
All these branches are tracked by our build farm
and merged into @code{master} once
everything has been successfully built. This allows us to fix issues
before they hit users, and to reduce the window during which pre-built
binaries are not available.
@@ -361,6 +413,11 @@ Bundling unrelated changes together makes reviewing harder and slower.
Examples of unrelated changes include the addition of several packages,
or a package update along with fixes to that package.
@item
Please follow our code formatting rules, possibly running the
@command{etc/indent-code.el} script to do that automatically for you
(@pxref{Formatting Code}).
@end enumerate
When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as
-881
View File
@@ -1,881 +0,0 @@
@node Emacs Interface
@chapter Emacs Interface
@cindex Emacs
GNU Guix comes with several useful modules (known as ``guix.el'') for
GNU@tie{}Emacs which are intended to make an Emacs user interaction with
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.
* Package Source Locations: Emacs Package Locations. Interface for package location files.
* 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
@node Emacs Initial Setup
@section Initial Setup
On the Guix System Distribution (@pxref{GNU Distribution}), ``guix.el''
is ready to use, provided Guix is installed system-wide, which is the
case by default. So if that is what you're using, you can happily skip
this section and read about the fun stuff.
If you're not yet a happy user of GuixSD, a little bit of setup is needed.
To be able to use ``guix.el'', you need to install the following
packages:
@itemize
@item
@uref{http://www.gnu.org/software/emacs/, GNU Emacs}, version 24.3 or
later;
@item
@uref{http://nongnu.org/geiser/, Geiser}, version 0.3 or later: it is
used for interacting with the Guile process.
@item
@uref{https://github.com/magit/magit/, magit-popup library}. You
already have this library if you use Magit 2.1.0 or later. This library
is an optional dependency---it is required only for @kbd{M-x@tie{}guix}
command (@pxref{Emacs Popup Interface}).
@end itemize
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-autoloads nil t)
@end example
So the only thing you need to figure out is where the directory with
elisp files for Guix is placed. It depends on how you installed Guix:
@itemize
@item
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. 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, 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
(@pxref{Running Guix Before It Is Installed}), along with augmenting
@code{load-path} you need to set @code{guix-load-path} variable to the
same directory, so your final configuration will look like this:
@example
(let ((dir "/path/to/your-guix-git-tree/emacs"))
(add-to-list 'load-path dir)
(setq guix-load-path dir))
(require 'guix-autoloads nil t)
@end example
@end itemize
@node Emacs Package Management
@section Package Management
Once ``guix.el'' has been successfully configured, you should be able to
use a visual interface for routine package management tasks, pretty much
like the @command{guix package} command (@pxref{Invoking guix package}).
Specifically, it makes it easy to:
@itemize
@item browse and display packages and generations;
@item search, install, upgrade and remove packages;
@item display packages from previous generations;
@item do some other useful things.
@end itemize
@menu
* Commands: Emacs Commands. @kbd{M-x guix-@dots{}}
* General information: Emacs General info. Common for both interfaces.
* ``List'' buffer: Emacs List buffer. List-like interface.
* ``Info'' buffer: Emacs Info buffer. Help-like interface.
* Configuration: Emacs Configuration. Configuring the interface.
@end menu
@node Emacs Commands
@subsection Commands
All commands for displaying packages and generations use the current
profile, which can be changed with
@kbd{M-x@tie{}guix-set-current-profile}. Alternatively, if you call any
of these commands with prefix argument (@kbd{C-u}), you will be prompted
for a profile just for that command.
Commands for displaying packages:
@table @kbd
@item M-x guix-all-available-packages
@itemx M-x guix-newest-available-packages
Display all/newest available packages.
@item M-x guix-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-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-packages-by-location
Display package(s) located in the specified file. These files usually
have the following form: @file{gnu/packages/emacs.scm}, but don't type
them manually! Press @key{TAB} to complete the file name.
@item M-x guix-package-from-file
Display package that the code within the specified file evaluates to.
@xref{Invoking guix package, @code{--install-from-file}}, for an example
of what such a file may look like.
@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-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
By default, these commands display each output on a separate line. If
you prefer to see a list of packages---i.e., a list with a package per
line, use the following setting:
@example
(setq guix-package-list-type 'package)
@end example
Commands for displaying generations:
@table @kbd
@item M-x guix-generations
List all the generations.
@item M-x guix-last-generations
List the @var{N} last generations. You will be prompted for the number
of generations.
@item M-x guix-generations-by-time
List generations matching time period. You will be prompted for the
period using Org mode time prompt based on Emacs calendar (@pxref{The
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:
@table @kbd
@item M-x guix-pull
With @kbd{C-u}, make it verbose.
@end table
Once @command{guix pull} has succeeded, the Guix REPL is restarted. This
allows you to keep using the Emacs interface with the updated Guix.
@node Emacs General info
@subsection General information
The following keys are available for both ``list'' and ``info'' types of
buffers:
@table @kbd
@item l
@itemx r
Go backward/forward by the history of the displayed results (this
history is similar to the history of the Emacs @code{help-mode} or
@code{Info-mode}).
@item g
Revert current buffer: update information about the displayed
packages/generations and redisplay it.
@item R
Redisplay current buffer (without updating information).
@item M
Apply manifest to the current profile or to a specified profile, if
prefix argument is used. This has the same meaning as @code{--manifest}
option (@pxref{Invoking guix package}).
@item C-c C-z
@cindex REPL
@cindex read-eval-print loop
Go to the Guix REPL (@pxref{The REPL,,, geiser, Geiser User Manual}).
@item h
@itemx ?
Describe current mode to see all available bindings.
@end table
@emph{Hint:} If you need several ``list'' or ``info'' buffers, you can
simply @kbd{M-x clone-buffer} them, and each buffer will have its own
history.
@emph{Warning:} Name/version pairs cannot be used to identify packages
(because a name is not necessarily unique), so ``guix.el'' uses special
identifiers that live only during a guile session, so if the Guix REPL
was restarted, you may want to revert ``list'' buffer (by pressing
@kbd{g}).
@node Emacs List buffer
@subsection ``List'' buffer
An interface of a ``list'' buffer is similar to the interface provided
by ``package.el'' (@pxref{Package Menu,,, emacs, The GNU Emacs Manual}).
Default key bindings available for both ``package-list'' and
``generation-list'' buffers:
@table @kbd
@item m
Mark the current entry (with prefix, mark all entries).
@item u
Unmark the current entry (with prefix, unmark all entries).
@item @key{DEL}
Unmark backward.
@item S
Sort entries by a specified column.
@end table
A ``package-list'' buffer additionally provides the following bindings:
@table @kbd
@item @key{RET}
Describe marked packages (display available information in a
``package-info'' buffer).
@item i
Mark the current package for installation.
@item d
Mark the current package for deletion.
@item U
Mark the current package for upgrading.
@item ^
Mark all obsolete packages for upgrading.
@item e
Edit the definition of the current package (go to its location). This is
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
bindings:
@table @kbd
@item @key{RET}
List packages installed in the current generation.
@item i
Describe marked generations (display available information in a
``generation-info'' buffer).
@item s
Switch profile to the current generation.
@item d
Mark the current generation for deletion (with prefix, mark all
generations).
@item x
Execute actions on the marked generations---i.e., delete generations.
@item e
Run Ediff (@pxref{Top,,, ediff, The Ediff Manual}) on package outputs
installed in the 2 marked generations. With prefix argument, run Ediff
on manifests of the marked generations.
@item D
@itemx =
Run Diff (@pxref{Diff Mode,,, emacs, The GNU Emacs Manual}) on package
outputs installed in the 2 marked generations. With prefix argument,
run Diff on manifests of the marked generations.
@item +
List package outputs added to the latest marked generation comparing
with another marked generation.
@item -
List package outputs removed from the latest marked generation comparing
with another marked generation.
@end table
@node Emacs Info buffer
@subsection ``Info'' buffer
The interface of an ``info'' buffer is similar to the interface of
@code{help-mode} (@pxref{Help Mode,,, emacs, The GNU Emacs Manual}).
``Info'' buffer contains some buttons (as usual you may use @key{TAB} /
@kbd{S-@key{TAB}} to move between buttons---@pxref{Mouse References,,,
emacs, The GNU Emacs Manual}) which can be used to:
@itemize @bullet
@item (in a ``package-info'' buffer)
@itemize @minus
@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
@item (in a ``generation-info'' buffer)
@itemize @minus
@item remove a generation;
@item switch to a generation;
@item list packages installed in a generation;
@item jump to a generation directory.
@end itemize
@end itemize
It is also possible to copy a button label (a link to an URL or a file)
by pressing @kbd{c} on a button.
@node Emacs Configuration
@subsection Configuration
There are many variables you can modify to change the appearance or
behavior of Emacs user interface. Some of these variables are described
in this section. Also you can use Custom Interface (@pxref{Easy
Customization,,, emacs, The GNU Emacs Manual}) to explore/set variables
(not all) and faces.
@menu
* Guile and Build Options: Emacs Build Options. Specifying how packages are built.
* Buffer Names: Emacs Buffer Names. Names of Guix buffers.
* Keymaps: Emacs Keymaps. Configuring key bindings.
* Appearance: Emacs Appearance. Settings for visual appearance.
@end menu
@node Emacs Build Options
@subsubsection Guile and Build Options
@table @code
@item guix-guile-program
If you have some special needs for starting a Guile process, you may set
this variable, for example:
@example
(setq guix-guile-program '("/bin/guile" "--no-auto-compile"))
@end example
@item guix-use-substitutes
If nil, has the same meaning as @code{--no-substitutes} option
(@pxref{Invoking guix build}).
@item guix-dry-run
If non-nil, has the same meaning as @code{--dry-run} option
(@pxref{Invoking guix build}).
@end table
@node Emacs Buffer Names
@subsubsection Buffer Names
Default names of ``guix.el'' buffers (``*Guix@tie{}@dots{}*'') may be
changed with the following variables:
@table @code
@item guix-package-list-buffer-name
@item guix-output-list-buffer-name
@item guix-generation-list-buffer-name
@item guix-package-info-buffer-name
@item guix-output-info-buffer-name
@item guix-generation-info-buffer-name
@item guix-repl-buffer-name
@item guix-internal-repl-buffer-name
@end table
By default, the name of a profile is also displayed in a ``list'' or
``info'' buffer name. To change this behavior, use
@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})
extensively), you may do it like this:
@example
(let ((name "Guix Universal"))
(setq
guix-package-list-buffer-name name
guix-output-list-buffer-name name
guix-generation-list-buffer-name name
guix-package-info-buffer-name name
guix-output-info-buffer-name name
guix-generation-info-buffer-name name))
@end example
@node Emacs Keymaps
@subsubsection Keymaps
If you want to change default key bindings, use the following keymaps
(@pxref{Init Rebinding,,, emacs, The GNU Emacs Manual}):
@table @code
@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.
@item guix-package-list-mode-map
Keymap with specific keys for ``package-list'' buffers.
@item guix-output-list-mode-map
Keymap with specific keys for ``output-list'' buffers.
@item guix-generation-list-mode-map
Keymap with specific keys for ``generation-list'' buffers.
@item guix-info-mode-map
Parent keymap with general keys for ``info'' buffers.
@item guix-package-info-mode-map
Keymap with specific keys for ``package-info'' buffers.
@item guix-output-info-mode-map
Keymap with specific keys for ``output-info'' buffers.
@item guix-generation-info-mode-map
Keymap with specific keys for ``generation-info'' buffers.
@item guix-info-button-map
Keymap with keys available when a point is placed on a button.
@end table
@node Emacs Appearance
@subsubsection Appearance
You can change almost any aspect of ``list'' / ``info'' buffers using
the following variables (@dfn{ENTRY-TYPE} means @code{package},
@code{output} or @code{generation}):
@table @code
@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-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
@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}).
@item M-x guix-find-license-definition
Open @file{@dots{}/guix/licenses.scm} and move to the specified license.
@end table
@node Emacs Package Locations
@section Package Source Locations
As you know, package definitions are placed in Guile files, also known
as @dfn{package locations}. The following commands should help you not
get lost in these locations:
@table @kbd
@item M-x guix-locations
Display a list of package locations. You can press @key{RET} there to
display packages placed in the current location in the same way as
@kbd{M-x guix-packages-by-location} would do (@pxref{Emacs Commands}).
Note that when the point is on a location button, @key{RET} will open
this location file.
@item M-x guix-find-location
Open the given package definition source file (press @key{TAB} to choose
a location from a completion list).
@item M-x guix-edit
Find location of a specified package. This is an Emacs analog of
@command{guix edit} command (@pxref{Invoking 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-find-location} and @kbd{M-x guix-edit} to open locations from your
Git checkout. 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-find-location} or @kbd{M-x guix-edit}
command.
@node Emacs Popup Interface
@section Popup Interface
If you ever used Magit, you know what ``popup interface'' is
(@pxref{Top,,, magit-popup, Magit-Popup User Manual}). Even if you are
not acquainted with Magit, there should be no worries as it is very
intuitive.
So @kbd{M-x@tie{}guix} command provides a top-level popup interface for
all available guix commands. When you select an option, you'll be
prompted for a value in the minibuffer. Many values have completions,
so don't hesitate to press @key{TAB} key. Multiple values (for example,
packages or lint checkers) should be separated by commas.
After specifying all options and switches for a command, you may choose
one of the available actions. The following default actions are
available for all commands:
@itemize
@item
Run the command in the Guix REPL. It is faster than running
@code{guix@tie{}@dots{}} command directly in shell, as there is no
need to run another guile process and to load required modules there.
@item
Run the command in a shell buffer. You can set
@code{guix-run-in-shell-function} variable to fine tune the shell buffer
you want to use.
@item
Add the command line to the kill ring (@pxref{Kill Ring,,, emacs, The
GNU Emacs Manual}).
@end itemize
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
PNG file will be saved in @file{/tmp} directory and will be opened
directly in Emacs. This behavior may be changed with the following
variables:
@table @code
@item guix-find-file-function
Function used to open a generated graph. If you want to open a graph in
an external program, you can do it by modifying this variable---for
example, you can use a functionality provided by the Org Mode
(@pxref{Top,,, org, The Org Manual}):
@example
(setq guix-find-file-function 'org-open-file)
(add-to-list 'org-file-apps '("\\.png\\'" . "sxiv %s"))
@end example
@item guix-dot-default-arguments
Command line arguments to run @command{dot} command. If you change an
output format (for example, into @code{-Tpdf}), you also need to change
the next variable.
@item guix-dot-file-name-function
Function used to define a name of the generated graph file. Default
name is @file{/tmp/guix-emacs-graph-XXXXXX.png}.
@end table
So, for example, if you want to generate and open a PDF file in your
Emacs, you may change the settings like this:
@example
(defun my-guix-pdf-graph ()
"/tmp/my-current-guix-graph.pdf")
(setq guix-dot-default-arguments '("-Tpdf")
guix-dot-file-name-function 'my-guix-pdf-graph)
@end example
@node Emacs Prettify
@section Guix Prettify Mode
GNU@tie{}Guix also comes with ``guix-prettify.el''. It provides a minor
mode for abbreviating store file names by replacing hash sequences of
symbols with ``@dots{}'':
@example
/gnu/store/72f54nfp6g1hz873w8z3gfcah0h4nl9p-foo-0.1
@result{} /gnu/store/…-foo-0.1
@end example
Once you set up ``guix.el'' (@pxref{Emacs Initial Setup}), the following
commands become available:
@table @kbd
@item M-x guix-prettify-mode
Enable/disable prettifying for the current buffer.
@item M-x global-guix-prettify-mode
Enable/disable prettifying globally.
@end table
To automatically enable @code{guix-prettify-mode} globally on Emacs
start, add the following line to your init file:
@example
(global-guix-prettify-mode)
@end example
If you want to enable it only for specific major modes, add it to the
mode hooks (@pxref{Hooks,,, emacs, The GNU Emacs Manual}), for example:
@example
(add-hook 'shell-mode-hook 'guix-prettify-mode)
(add-hook 'dired-mode-hook 'guix-prettify-mode)
@end example
@node Emacs Build Log
@section Build Log Mode
GNU@tie{}Guix provides major and minor modes for highlighting build
logs. So when you have a file with a package build output---for
example, a file returned by @command{guix build --log-file @dots{}}
command (@pxref{Invoking guix build}), you may call @kbd{M-x
guix-build-log-mode} command in the buffer with this file. This major
mode highlights some lines specific to build output and provides the
following key bindings:
@table @kbd
@item M-n
Move to the next build phase.
@item M-p
Move to the previous build phase.
@item @key{TAB}
Toggle (show/hide) the body of the current build phase.
@item S-@key{TAB}
Toggle (show/hide) the bodies of all build phases.
@end table
There is also @kbd{M-x guix-build-log-minor-mode} which also provides
the same highlighting and the same key bindings as the major mode, but
prefixed with @kbd{C-c}. By default, this minor mode is enabled in
shell buffers (@pxref{Interactive Shell,,, emacs, The GNU Emacs
Manual}). If you don't like it, set
@code{guix-build-log-minor-mode-activate} to nil.
@node Emacs Completions
@section Shell Completions
Another feature that becomes available after configuring Emacs interface
(@pxref{Emacs Initial Setup}) is completing of @command{guix}
subcommands, options, packages and other things in @code{shell}
(@pxref{Interactive Shell,,, emacs, The GNU Emacs Manual}) and
@code{eshell} (@pxref{Top,,, eshell, Eshell: The Emacs Shell}).
It works the same way as other completions do. Just press @key{TAB}
when your intuition tells you.
And here are some examples, where pressing @key{TAB} may complete
something:
@itemize @w{}
@item @code{guix pa}@key{TAB}
@item @code{guix package -}@key{TAB}
@item @code{guix package --}@key{TAB}
@item @code{guix package -i gei}@key{TAB}
@item @code{guix build -L/tm}@key{TAB}
@item @code{guix build --sy}@key{TAB}
@item @code{guix build --system=i}@key{TAB}
@item @code{guix system rec}@key{TAB}
@item @code{guix lint --checkers=sy}@key{TAB}
@item @code{guix lint --checkers=synopsis,des}@key{TAB}
@end itemize
@node Emacs Development
@section Development
By default, when you open a Scheme file, @code{guix-devel-mode} will be
activated (if you don't want it, set @code{guix-devel-activate-mode} to
nil). This minor mode provides the following key bindings:
@table @kbd
@item C-c . k
Copy the name of the current Guile module into kill ring
(@code{guix-devel-copy-module-as-kill}).
@item C-c . u
Use the current Guile module. Often after opening a Scheme file, you
want to use a module it defines, so you switch to the Geiser REPL and
write @code{,use (some module)} there. You may just use this command
instead (@code{guix-devel-use-module}).
@item C-c . b
Build a package defined by the current variable definition. The
building process is run in the current Geiser REPL. If you modified the
current package definition, don't forget to reevaluate it before calling
this command---for example, with @kbd{C-M-x} (@pxref{To eval or not to
eval,,, geiser, Geiser User Manual})
(@code{guix-devel-build-package-definition}).
@item C-c . s
Build a source derivation of the package defined by the current variable
definition. This command has the same meaning as @code{guix build -S}
shell command (@pxref{Invoking guix build})
(@code{guix-devel-build-package-source}).
@item C-c . l
Lint (check) a package defined by the current variable definition
(@pxref{Invoking guix lint}) (@code{guix-devel-lint-package}).
@end table
Unluckily, there is a limitation related to long-running REPL commands.
When there is a running process in a Geiser REPL, you are not supposed
to evaluate anything in a scheme buffer, because this will ``freeze''
the REPL: it will stop producing any output (however, the evaluating
process will continue---you will just not see any progress anymore). Be
aware: even moving the point in a scheme buffer may ``break'' the REPL
if Autodoc (@pxref{Autodoc and friends,,, geiser, Geiser User Manual})
is enabled (which is the default).
So you have to postpone editing your scheme buffers until the running
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}).
+3116 -252
View File
File diff suppressed because it is too large Load Diff
+4
View File
@@ -219,6 +219,10 @@ emacs node ${EMACS}/html_node/emacs/
easejs mono ${GS}/easejs/manual/easejs.html
easejs node ${GS}/easejs/manual/
EMACS_GUIX = https://alezost.github.io/guix.el/manual/latest
emacs-guix mono ${EMACS_GUIX}/emacs-guix.html
emacs-guix node ${EMACS_GUIX}/html_node/index.html
emacs-muse node ${GS}/emacs-muse/manual/muse.html
emacs-muse node ${GS}/emacs-muse/manual/html_node/
+1 -2
View File
@@ -1,6 +1,6 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017 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>
@@ -37,7 +37,6 @@ DOT_VECTOR_GRAPHICS = \
EXTRA_DIST += \
%D%/htmlxref.cnf \
%D%/contributing.texi \
%D%/emacs.texi \
%D%/fdl-1.3.texi \
$(DOT_FILES) \
$(DOT_VECTOR_GRAPHICS) \
-37
View File
@@ -1,37 +0,0 @@
;;; guix-about.el --- Various info about Guix
;; 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 Location as published by
;; the Free Software Foundation, either version 3 of the Location, 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 Location for more details.
;; You should have received a copy of the GNU General Public Location
;; along with this program. If not, see <http://www.gnu.org/locations/>.
;;; Commentary:
;; This file provides the code to display various info about Guix (e.g., its
;; version).
;;; Code:
(require 'guix-config)
;;;###autoload
(defun guix-version ()
"Display Guix version in the echo area."
(interactive)
(message "%s %s" guix-config-name guix-config-version))
(provide 'guix-about)
;;; guix-about.el ends here
-393
View File
@@ -1,393 +0,0 @@
;;; guix-backend.el --- Making and using Guix REPL
;; 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 the code for interacting with Guile using Guix REPL
;; (Geiser REPL with some guix-specific additions).
;; By default (if `guix-use-guile-server' is non-nil) 2 Guix REPLs are
;; started. The main one (with "guile --listen" process) is used for
;; "interacting" with a user - for showing a progress of
;; installing/deleting Guix packages. The second (internal) REPL is
;; used for synchronous evaluating, e.g. when information about
;; packages/generations should be received for a list/info buffer.
;;
;; This "2 REPLs concept" makes it possible to have a running process of
;; installing/deleting packages and to continue to search/list/get info
;; about other packages at the same time. If you prefer to use a single
;; Guix REPL, do not try to receive any information while there is a
;; running code in the REPL (see
;; <https://github.com/jaor/geiser/issues/28>).
;;
;; 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
;; `geiser-connect-local' command with `guix-repl-current-socket' to
;; have a usual Geiser REPL with all stuff defined by "guix.el" package.
;;; Code:
(require 'geiser-mode)
(require 'geiser-guile)
(require 'guix-geiser)
(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.")
(defvar guix-helper-file
(expand-file-name "guix-helper.scm" guix-load-path)
"Auxiliary scheme file for loading.")
;;; REPL
(defgroup guix-repl nil
"Settings for Guix REPLs."
:prefix "guix-repl-"
:group 'guix)
(defcustom guix-repl-startup-time 30000
"Time, in milliseconds, to wait for Guix REPL to startup.
Same as `geiser-repl-startup-time' but is used for Guix REPL.
If you have a slow system, try to increase this time."
:type 'integer
:group 'guix-repl)
(defcustom guix-repl-buffer-name "*Guix REPL*"
"Default name of a Geiser REPL buffer used for Guix."
:type 'string
:group 'guix-repl)
(defcustom guix-after-start-repl-hook '(guix-set-directory)
"Hook called after Guix REPL is started."
:type 'hook
:group 'guix-repl)
(defcustom guix-use-guile-server t
"If non-nil, start guile with '--listen' argument.
This allows to receive information about packages using an additional
REPL while some packages are being installed/removed in the main REPL."
:type 'boolean
:group 'guix-repl)
(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
receiving information if `guix-use-guile-server' is nil.")
(defvar guix-internal-repl-buffer nil
"Additional Geiser REPL buffer used for communicating with Guix.
This REPL is used for receiving information only if
`guix-use-guile-server' is non-nil.")
(defvar guix-internal-repl-buffer-name "*Guix Internal REPL*"
"Default name of an internal Guix REPL buffer.")
(defvar guix-before-repl-operation-hook nil
"Hook run before executing an operation in Guix REPL.")
(defvar guix-after-repl-operation-hook
'(guix-repl-autoload-emacs-packages-maybe
guix-repl-operation-success-message)
"Hook run after executing successful operation in Guix REPL.")
(defvar guix-repl-operation-p nil
"Non-nil, if current operation is performed by `guix-eval-in-repl'.
This internal variable is used to distinguish Guix operations
from operations performed in Guix REPL by a user.")
(defvar guix-repl-operation-type nil
"Type of the current operation performed by `guix-eval-in-repl'.
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 socket)
"Return a value suitable for `geiser-guile-binary'."
(if (null socket)
guix-guile-program
(append (if (listp guix-guile-program)
guix-guile-program
(list guix-guile-program))
(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.
START-MSG and END-MSG are strings displayed in the minibuffer in
the beginning and in the end of the starting process. If nil,
display default messages."
(guix-start-repl-maybe nil
(or start-msg "Starting Guix REPL ...")
(or end-msg "Guix REPL has been started."))
(if guix-use-guile-server
(guix-start-repl-maybe 'internal)
(setq guix-internal-repl-buffer guix-repl-buffer)))
(defun guix-start-repl-maybe (&optional internal start-msg end-msg)
"Start Guix REPL if needed.
If INTERNAL is non-nil, start an internal REPL.
START-MSG and END-MSG are strings displayed in the minibuffer in
the beginning and in the end of the process. If nil, do not
display messages."
(let* ((repl-var (guix-get-repl-buffer-variable internal))
(repl (symbol-value repl-var)))
(unless (and (buffer-live-p repl)
(get-buffer-process repl))
(and start-msg (message start-msg))
(setq guix-repl-operation-p nil)
(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))))
(guix-start-repl repl (and internal guix-repl-current-socket))
(set repl-var repl)
(and end-msg (message end-msg))
(unless internal
(run-hooks 'guix-after-start-repl-hook))))))
(defun guix-start-repl (buffer &optional address)
"Start Guix REPL in BUFFER.
If ADDRESS is non-nil, connect to a remote guile process using
this address (it should be defined by
`geiser-repl--read-address')."
;; A mix of the code from `geiser-repl--start-repl' and
;; `geiser-repl--to-repl-buffer'.
(let ((impl 'guile)
(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
(geiser-repl-mode)
(geiser-impl--set-buffer-implementation impl)
(geiser-repl--autodoc-mode -1)
(goto-char (point-max))
(let ((prompt (geiser-con--combined-prompt
geiser-guile--prompt-regexp
geiser-guile--debugger-prompt-regexp)))
(geiser-repl--save-remote-data address)
(geiser-repl--start-scheme impl address prompt)
(geiser-repl--quit-setup)
(geiser-repl--history-setup)
(setq-local geiser-repl--repls (list buffer))
(geiser-repl--set-this-buffer-repl buffer)
(setq geiser-repl--connection
(geiser-con--make-connection
(get-buffer-process (current-buffer))
geiser-guile--prompt-regexp
geiser-guile--debugger-prompt-regexp))
(geiser-repl--startup impl address)
(geiser-repl--autodoc-mode 1)
(geiser-company--setup geiser-repl-company-p)
(add-hook 'comint-output-filter-functions
'guix-repl-output-filter
nil t)
(set-process-query-on-exit-flag
(get-buffer-process (current-buffer))
geiser-repl-query-on-kill-p)))))
(defun guix-repl-output-filter (str)
"Filter function suitable for `comint-output-filter-functions'.
This is a replacement for `geiser-repl--output-filter'."
(cond
((string-match-p geiser-guile--prompt-regexp str)
(geiser-autodoc--disinhibit-autodoc)
(when guix-repl-operation-p
(setq guix-repl-operation-p nil)
(run-hooks 'guix-after-repl-operation-hook)
;; Run hooks specific to the current operation type.
(when guix-repl-operation-type
(let ((type-hook (intern
(concat "guix-after-"
(symbol-name guix-repl-operation-type)
"-hook"))))
(setq guix-repl-operation-type nil)
(and (boundp type-hook)
(run-hooks type-hook))))))
((string-match geiser-guile--debugger-prompt-regexp str)
(setq guix-repl-operation-p nil)
(geiser-con--connection-set-debugging geiser-repl--connection
(match-beginning 0))
(geiser-autodoc--disinhibit-autodoc))))
(defun guix-repl-exit (&optional internal no-wait)
"Exit the current Guix REPL.
If INTERNAL is non-nil, exit the internal REPL.
If NO-WAIT is non-nil, do not wait for the REPL process to exit:
send a kill signal to it and return immediately."
(let ((repl (symbol-value (guix-get-repl-buffer-variable internal))))
(when (get-buffer-process repl)
(with-current-buffer repl
(geiser-con--connection-deactivate geiser-repl--connection t)
(comint-kill-subjob)
(unless no-wait
(while (get-buffer-process repl)
(sleep-for 0.1)))))))
(defun guix-get-repl-buffer (&optional internal)
"Return Guix REPL buffer; start REPL if needed.
If INTERNAL is non-nil, return an additional internal REPL."
(guix-start-process-maybe)
(let ((repl (symbol-value (guix-get-repl-buffer-variable internal))))
;; If a new Geiser REPL is started, `geiser-repl--repl' variable may
;; be set to the new value in a Guix REPL, so set it back to a
;; proper value here.
(with-current-buffer repl
(geiser-repl--set-this-buffer-repl repl))
repl))
(defun guix-get-repl-buffer-variable (&optional internal)
"Return the name of a variable with a REPL buffer."
(if internal
'guix-internal-repl-buffer
'guix-repl-buffer))
(defun guix-get-repl-buffer-name (&optional internal)
"Return the name of a REPL buffer."
(if internal
guix-internal-repl-buffer-name
guix-repl-buffer-name))
(defun guix-switch-to-repl (&optional internal)
"Switch to Guix REPL.
If INTERNAL is non-nil (interactively with prefix), switch to the
additional internal REPL if it exists."
(interactive "P")
(geiser-repl--switch-to-buffer (guix-get-repl-buffer internal)))
;;; Guix directory
(defvar guix-directory nil
"Default directory with Guix source.
If it is not set by a user, it is set after starting Guile REPL.
This directory is used to define package locations.")
(defun guix-read-directory ()
"Return `guix-directory' or prompt for it.
This function is intended for using in `interactive' forms."
(if current-prefix-arg
(read-directory-name "Directory with Guix modules: "
guix-directory)
guix-directory))
(defun guix-set-directory ()
"Set `guix-directory' if needed."
(or guix-directory
(setq guix-directory
(guix-eval-read "%guix-dir"))))
;;; Evaluating expressions
(defvar guix-operation-buffer nil
"Buffer from which the latest Guix operation was performed.")
(defun guix-eval (str)
"Evaluate STR with guile expression using Guix REPL.
See `guix-geiser-eval' for details."
(guix-geiser-eval str (guix-get-repl-buffer 'internal)))
(defun guix-eval-read (str)
"Evaluate STR with guile expression using Guix REPL.
See `guix-geiser-eval-read' for details."
(guix-geiser-eval-read str (guix-get-repl-buffer 'internal)))
(defun guix-eval-in-repl (str &optional operation-buffer operation-type)
"Switch to Guix REPL and evaluate STR with guile expression there.
If OPERATION-BUFFER is non-nil, it should be a buffer from which
the current operation was performed.
If OPERATION-TYPE is non-nil, it should be a symbol. After
successful executing of the current operation,
`guix-after-OPERATION-TYPE-hook' is called."
(run-hooks 'guix-before-repl-operation-hook)
(setq guix-repl-operation-p t
guix-repl-operation-type operation-type
guix-operation-buffer operation-buffer)
(guix-geiser-eval-in-repl str (guix-get-repl-buffer)))
(provide 'guix-backend)
;;; guix-backend.el ends here
-377
View File
@@ -1,377 +0,0 @@
;;; guix-base.el --- Common definitions -*- 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 some base and common definitions for guix.el
;; package.
;;; Code:
(require 'cl-lib)
(require 'guix-backend)
(require 'guix-guile)
(require 'guix-read)
(require 'guix-utils)
(require 'guix-ui)
(require 'guix-profiles)
(defgroup guix nil
"Settings for Guix package manager and friends."
:prefix "guix-"
:group 'external)
(defgroup guix-faces nil
"Guix faces."
:group 'guix
:group 'faces)
(defun guix-package-name-specification (name version &optional output)
"Return Guix package specification by its NAME, VERSION and OUTPUT."
(concat name "@" version
(when output (concat ":" output))))
;;; Location of profiles and manifests
(defun guix-generation-file (profile generation)
"Return the file name of a PROFILE's GENERATION."
(format "%s-%s-link" profile generation))
(defun guix-packages-profile (profile &optional generation system?)
"Return a directory where packages are installed for the
PROFILE's GENERATION.
If SYSTEM? is non-nil, then PROFILE is considered to be a system
profile. Unlike usual profiles, for a system profile, packages
are placed in 'profile' subdirectory."
(let ((profile (if generation
(guix-generation-file profile generation)
profile)))
(if system?
(expand-file-name "profile" profile)
profile)))
(defun guix-manifest-file (profile &optional generation system?)
"Return the file name of a PROFILE's manifest.
See `guix-packages-profile'."
(expand-file-name "manifest"
(guix-packages-profile profile generation system?)))
;;; Actions on packages and generations
(defface guix-operation-option-key
'((t :inherit font-lock-warning-face))
"Face used for the keys of operation options."
:group 'guix-faces)
(defcustom guix-operation-confirm t
"If nil, do not prompt to confirm an operation."
:type 'boolean
:group 'guix)
(defcustom guix-use-substitutes t
"If non-nil, use substitutes for the Guix packages."
:type 'boolean
:group 'guix)
(defvar guix-dry-run nil
"If non-nil, do not perform the real actions, just simulate.")
(defvar guix-temp-buffer-name " *Guix temp*"
"Name of a buffer used for displaying info before executing operation.")
(defvar guix-operation-option-true-string "yes"
"String displayed in the mode-line when operation option is t.")
(defvar guix-operation-option-false-string "no "
"String displayed in the mode-line when operation option is nil.")
(defvar guix-operation-option-separator " | "
"String used in the mode-line to separate operation options.")
(defvar guix-operation-options
'((?s "substitutes" guix-use-substitutes)
(?d "dry-run" guix-dry-run))
"List of available operation options.
Each element of the list has a form:
(KEY NAME VARIABLE)
KEY is a character that may be pressed during confirmation to
toggle the option.
NAME is a string displayed in the mode-line.
VARIABLE is a name of an option variable.")
(defun guix-operation-option-by-key (key)
"Return operation option by KEY (character)."
(assq key guix-operation-options))
(defun guix-operation-option-key (option)
"Return key (character) of the operation OPTION."
(car option))
(defun guix-operation-option-name (option)
"Return name of the operation OPTION."
(nth 1 option))
(defun guix-operation-option-variable (option)
"Return name of the variable of the operation OPTION."
(nth 2 option))
(defun guix-operation-option-value (option)
"Return boolean value of the operation OPTION."
(symbol-value (guix-operation-option-variable option)))
(defun guix-operation-option-string-value (option)
"Convert boolean value of the operation OPTION to string and return it."
(if (guix-operation-option-value option)
guix-operation-option-true-string
guix-operation-option-false-string))
(defun guix-operation-prompt (&optional prompt)
"Prompt a user for continuing the current operation.
Return non-nil, if the operation should be continued; nil otherwise.
Ask a user with PROMPT for continuing an operation."
(let* ((option-keys (mapcar #'guix-operation-option-key
guix-operation-options))
(keys (append '(?y ?n) option-keys))
(prompt (concat (propertize (or prompt "Continue operation?")
'face 'minibuffer-prompt)
" ("
(mapconcat
(lambda (key)
(propertize (string key)
'face 'guix-operation-option-key))
keys
", ")
") ")))
(let ((mode-line mode-line-format))
(prog1 (guix-operation-prompt-1 prompt keys)
(setq mode-line-format mode-line)
;; Clear the minibuffer after prompting.
(message "")))))
(defun guix-operation-prompt-1 (prompt keys)
"This function is internal for `guix-operation-prompt'."
(guix-operation-set-mode-line)
(let ((key (read-char-choice prompt (cons ?\C-g keys) t)))
(cl-case key
(?y t)
((?n ?\C-g) nil)
(t (let* ((option (guix-operation-option-by-key key))
(var (guix-operation-option-variable option)))
(set var (not (symbol-value var)))
(guix-operation-prompt-1 prompt keys))))))
(defun guix-operation-set-mode-line ()
"Display operation options in the mode-line of the current buffer."
(setq mode-line-format
(concat (propertize " Options: "
'face 'mode-line-buffer-id)
(mapconcat
(lambda (option)
(let ((key (guix-operation-option-key option))
(name (guix-operation-option-name option))
(val (guix-operation-option-string-value option)))
(concat name
" ("
(propertize (string key)
'face 'guix-operation-option-key)
"): " val)))
guix-operation-options
guix-operation-option-separator)))
(force-mode-line-update))
(defun guix-package-source-path (package-id)
"Return a store file path to a source of a package PACKAGE-ID."
(message "Calculating the source derivation ...")
(guix-eval-read
(guix-make-guile-expression
'package-source-path package-id)))
(defun guix-package-store-path (package-id)
"Return a list of store directories of outputs of package PACKAGE-ID."
(message "Calculating the package derivation ...")
(guix-eval-read
(guix-make-guile-expression
'package-store-path package-id)))
(defvar guix-after-source-download-hook nil
"Hook run after successful performing a 'source-download' operation.")
(defun guix-package-source-build-derivation (package-id &optional prompt)
"Build source derivation of a package PACKAGE-ID.
Ask a user with PROMPT for continuing an operation."
(when (or (not guix-operation-confirm)
(guix-operation-prompt (or prompt
"Build the source derivation?")))
(guix-eval-in-repl
(guix-make-guile-expression
'package-source-build-derivation
package-id
:use-substitutes? (or guix-use-substitutes 'f)
:dry-run? (or guix-dry-run 'f))
nil 'source-download)))
(defun guix-build-package (package-id &optional prompt)
"Build package with PACKAGE-ID.
Ask a user with PROMPT for continuing the build operation."
(when (or (not guix-operation-confirm)
(guix-operation-prompt (or prompt "Build package?")))
(guix-eval-in-repl
(format (concat ",run-in-store "
"(build-package (package-by-id %d)"
" #:use-substitutes? %s"
" #:dry-run? %s)")
package-id
(guix-guile-boolean guix-use-substitutes)
(guix-guile-boolean guix-dry-run)))))
;;;###autoload
(defun guix-apply-manifest (profile file &optional operation-buffer)
"Apply manifest from FILE to PROFILE.
This function has the same meaning as 'guix package --manifest' command.
See Info node `(guix) Invoking guix package' for details.
Interactively, use the current profile and prompt for manifest
FILE. With a prefix argument, also prompt for PROFILE."
(interactive
(let* ((current-profile (guix-ui-current-profile))
(profile (if current-prefix-arg
(guix-profile-prompt)
(or current-profile guix-current-profile)))
(file (read-file-name "File with manifest: "))
(buffer (and current-profile (current-buffer))))
(list profile file buffer)))
(when (or (not guix-operation-confirm)
(y-or-n-p (format "Apply manifest from '%s' to profile '%s'? "
file profile)))
(guix-eval-in-repl
(guix-make-guile-expression
'guix-command
"package"
(concat "--profile=" (expand-file-name profile))
(concat "--manifest=" (expand-file-name file)))
operation-buffer)))
;;; Executing guix commands
(defcustom guix-run-in-shell-function #'guix-run-in-shell
"Function used to run guix command.
The function is called with a single argument - a command line string."
:type '(choice (function-item guix-run-in-shell)
(function-item guix-run-in-eshell)
(function :tag "Other function"))
:group 'guix)
(defcustom guix-shell-buffer-name "*shell*"
"Default name of a shell buffer used for running guix commands."
:type 'string
:group 'guix)
(declare-function comint-send-input "comint" t)
(defun guix-run-in-shell (string)
"Run command line STRING in `guix-shell-buffer-name' buffer."
(shell guix-shell-buffer-name)
(goto-char (point-max))
(insert string)
(comint-send-input))
(declare-function eshell-send-input "esh-mode" t)
(defun guix-run-in-eshell (string)
"Run command line STRING in eshell buffer."
(eshell)
(goto-char (point-max))
(insert string)
(eshell-send-input))
(defun guix-run-command-in-shell (args)
"Execute 'guix ARGS ...' command in a shell buffer."
(funcall guix-run-in-shell-function
(guix-command-string args)))
(defun guix-run-command-in-repl (args)
"Execute 'guix ARGS ...' command in Guix REPL."
(guix-eval-in-repl
(apply #'guix-make-guile-expression
'guix-command args)))
(defun guix-command-output (args)
"Return string with 'guix ARGS ...' output."
(cl-multiple-value-bind (output error)
(guix-eval (apply #'guix-make-guile-expression
'guix-command-output args))
;; Remove trailing new space from the error string.
(message (replace-regexp-in-string "\n\\'" "" (read error)))
(read output)))
(defun guix-help-string (&optional commands)
"Return string with 'guix COMMANDS ... --help' output."
(guix-eval-read
(apply #'guix-make-guile-expression
'help-string commands)))
;;; Pull
(defcustom guix-update-after-pull t
"If non-nil, update Guix buffers after performing \\[guix-pull]."
:type 'boolean
:group 'guix)
(defvar guix-after-pull-hook
'(guix-restart-repl-after-pull guix-update-buffers-maybe-after-pull)
"Hook run after successful performing `guix-pull' operation.")
(defun guix-restart-repl-after-pull ()
"Restart Guix REPL after `guix-pull' operation."
(guix-repl-exit)
(guix-start-process-maybe
"Restarting Guix REPL after pull operation ..."))
(defun guix-update-buffers-maybe-after-pull ()
"Update buffers depending on `guix-update-after-pull'."
(when guix-update-after-pull
(mapc #'guix-ui-update-buffer
;; No need to update "generation" buffers.
(guix-ui-buffers '(guix-package-list-mode
guix-package-info-mode
guix-output-list-mode
guix-output-info-mode)))
(message "Guix buffers have been updated.")))
;;;###autoload
(defun guix-pull (&optional verbose)
"Run Guix pull operation.
If VERBOSE is non-nil (with prefix argument), produce verbose output."
(interactive "P")
(let ((args (and verbose '("--verbose"))))
(guix-eval-in-repl
(apply #'guix-make-guile-expression
'guix-command "pull" args)
nil 'pull)))
(provide 'guix-base)
;;; guix-base.el ends here
-624
View File
@@ -1,624 +0,0 @@
;;; 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
-381
View File
@@ -1,381 +0,0 @@
;;; guix-build-log.el --- Major and minor modes for build logs -*- 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 a major mode (`guix-build-log-mode') and a minor mode
;; (`guix-build-log-minor-mode') for highlighting Guix build logs.
;;; Code:
(require 'guix-utils)
(defgroup guix-build-log nil
"Settings for `guix-build-log-mode'."
:group 'guix)
(defgroup guix-build-log-faces nil
"Faces for `guix-build-log-mode'."
:group 'guix-build-log
:group 'guix-faces)
(defface guix-build-log-title-head
'((t :inherit font-lock-keyword-face))
"Face for '@' symbol of a log title."
:group 'guix-build-log-faces)
(defface guix-build-log-title-start
'((t :inherit guix-build-log-title-head))
"Face for a log title denoting a start of a process."
:group 'guix-build-log-faces)
(defface guix-build-log-title-success
'((t :inherit guix-build-log-title-head))
"Face for a log title denoting a successful end of a process."
:group 'guix-build-log-faces)
(defface guix-build-log-title-fail
'((t :inherit error))
"Face for a log title denoting a failed end of a process."
:group 'guix-build-log-faces)
(defface guix-build-log-title-end
'((t :inherit guix-build-log-title-head))
"Face for a log title denoting an undefined end of a process."
:group 'guix-build-log-faces)
(defface guix-build-log-phase-name
'((t :inherit font-lock-function-name-face))
"Face for a phase name."
:group 'guix-build-log-faces)
(defface guix-build-log-phase-start
'((default :weight bold)
(((class grayscale) (background light)) :foreground "Gray90")
(((class grayscale) (background dark)) :foreground "DimGray")
(((class color) (min-colors 16) (background light))
:foreground "DarkGreen")
(((class color) (min-colors 16) (background dark))
:foreground "LimeGreen")
(((class color) (min-colors 8)) :foreground "green"))
"Face for the start line of a phase."
:group 'guix-build-log-faces)
(defface guix-build-log-phase-end
'((((class grayscale) (background light)) :foreground "Gray90")
(((class grayscale) (background dark)) :foreground "DimGray")
(((class color) (min-colors 16) (background light))
:foreground "ForestGreen")
(((class color) (min-colors 16) (background dark))
:foreground "LightGreen")
(((class color) (min-colors 8)) :foreground "green")
(t :weight bold))
"Face for the end line of a phase."
:group 'guix-build-log-faces)
(defface guix-build-log-phase-success
'((t))
"Face for the 'succeeded' word of a phase line."
:group 'guix-build-log-faces)
(defface guix-build-log-phase-fail
'((t :inherit error))
"Face for the 'failed' word of a phase line."
:group 'guix-build-log-faces)
(defface guix-build-log-phase-seconds
'((t :inherit font-lock-constant-face))
"Face for the number of seconds for a phase."
:group 'guix-build-log-faces)
(defcustom guix-build-log-minor-mode-activate t
"If non-nil, then `guix-build-log-minor-mode' is automatically
activated in `shell-mode' buffers."
:type 'boolean
:group 'guix-build-log)
(defcustom guix-build-log-mode-hook '()
"Hook run after `guix-build-log-mode' is entered."
:type 'hook
:group 'guix-build-log)
(defvar guix-build-log-phase-name-regexp "`\\([^']+\\)'"
"Regexp for a phase name.")
(defvar guix-build-log-phase-start-regexp
(concat "^starting phase " guix-build-log-phase-name-regexp)
"Regexp for the start line of a 'build' phase.")
(defun guix-build-log-title-regexp (&optional state)
"Return regexp for the log title.
STATE is a symbol denoting a state of the title. It should be
`start', `fail', `success' or `nil' (for a regexp matching any
state)."
(let* ((word-rx (rx (1+ (any word "-"))))
(state-rx (cond ((eq state 'start) (concat word-rx "started"))
((eq state 'success) (concat word-rx "succeeded"))
((eq state 'fail) (concat word-rx "failed"))
(t word-rx))))
(rx-to-string
`(and bol (group "@") " " (group (regexp ,state-rx)))
t)))
(defun guix-build-log-phase-end-regexp (&optional state)
"Return regexp for the end line of a 'build' phase.
STATE is a symbol denoting how a build phase was ended. It should be
`fail', `success' or `nil' (for a regexp matching any state)."
(let ((state-rx (cond ((eq state 'success) "succeeded")
((eq state 'fail) "failed")
(t (regexp-opt '("succeeded" "failed"))))))
(rx-to-string
`(and bol "phase " (regexp ,guix-build-log-phase-name-regexp)
" " (group (regexp ,state-rx)) " after "
(group (1+ (or digit "."))) " seconds")
t)))
(defvar guix-build-log-phase-end-regexp
;; For efficiency, it is better to have a regexp for the general line
;; of the phase end, then to call the function all the time.
(guix-build-log-phase-end-regexp)
"Regexp for the end line of a 'build' phase.")
(defvar guix-build-log-font-lock-keywords
`((,(guix-build-log-title-regexp 'start)
(1 'guix-build-log-title-head)
(2 'guix-build-log-title-start))
(,(guix-build-log-title-regexp 'success)
(1 'guix-build-log-title-head)
(2 'guix-build-log-title-success))
(,(guix-build-log-title-regexp 'fail)
(1 'guix-build-log-title-head)
(2 'guix-build-log-title-fail))
(,(guix-build-log-title-regexp)
(1 'guix-build-log-title-head)
(2 'guix-build-log-title-end))
(,guix-build-log-phase-start-regexp
(0 'guix-build-log-phase-start)
(1 'guix-build-log-phase-name prepend))
(,(guix-build-log-phase-end-regexp 'success)
(0 'guix-build-log-phase-end)
(1 'guix-build-log-phase-name prepend)
(2 'guix-build-log-phase-success prepend)
(3 'guix-build-log-phase-seconds prepend))
(,(guix-build-log-phase-end-regexp 'fail)
(0 'guix-build-log-phase-end)
(1 'guix-build-log-phase-name prepend)
(2 'guix-build-log-phase-fail prepend)
(3 'guix-build-log-phase-seconds prepend)))
"A list of `font-lock-keywords' for `guix-build-log-mode'.")
(defvar guix-build-log-common-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "M-n") 'guix-build-log-next-phase)
(define-key map (kbd "M-p") 'guix-build-log-previous-phase)
(define-key map (kbd "TAB") 'guix-build-log-phase-toggle)
(define-key map (kbd "<tab>") 'guix-build-log-phase-toggle)
(define-key map (kbd "<backtab>") 'guix-build-log-phase-toggle-all)
(define-key map [(shift tab)] 'guix-build-log-phase-toggle-all)
map)
"Parent keymap for 'build-log' buffers.
For `guix-build-log-mode' this map is used as is.
For `guix-build-log-minor-mode' this map is prefixed with 'C-c'.")
(defvar guix-build-log-mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent
map (make-composed-keymap (list guix-build-log-common-map)
special-mode-map))
(define-key map (kbd "c") 'compilation-shell-minor-mode)
(define-key map (kbd "v") 'view-mode)
map)
"Keymap for `guix-build-log-mode' buffers.")
(defvar guix-build-log-minor-mode-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "C-c") guix-build-log-common-map)
map)
"Keymap for `guix-build-log-minor-mode' buffers.")
(defun guix-build-log-phase-start (&optional with-header?)
"Return the start point of the current build phase.
If WITH-HEADER? is non-nil, do not skip 'starting phase ...' header.
Return nil, if there is no phase start before the current point."
(save-excursion
(end-of-line)
(when (re-search-backward guix-build-log-phase-start-regexp nil t)
(unless with-header? (end-of-line))
(point))))
(defun guix-build-log-phase-end ()
"Return the end point of the current build phase."
(save-excursion
(beginning-of-line)
(when (re-search-forward guix-build-log-phase-end-regexp nil t)
(point))))
(defun guix-build-log-phase-hide ()
"Hide the body of the current build phase."
(interactive)
(let ((beg (guix-build-log-phase-start))
(end (guix-build-log-phase-end)))
(when (and beg end)
;; If not on the header line, move to it.
(when (and (> (point) beg)
(< (point) end))
(goto-char (guix-build-log-phase-start t)))
(remove-overlays beg end 'invisible t)
(let ((o (make-overlay beg end)))
(overlay-put o 'evaporate t)
(overlay-put o 'invisible t)))))
(defun guix-build-log-phase-show ()
"Show the body of the current build phase."
(interactive)
(let ((beg (guix-build-log-phase-start))
(end (guix-build-log-phase-end)))
(when (and beg end)
(remove-overlays beg end 'invisible t))))
(defun guix-build-log-phase-hidden-p ()
"Return non-nil, if the body of the current build phase is hidden."
(let ((beg (guix-build-log-phase-start)))
(and beg
(cl-some (lambda (o)
(overlay-get o 'invisible))
(overlays-at beg)))))
(defun guix-build-log-phase-toggle-function ()
"Return a function to toggle the body of the current build phase."
(if (guix-build-log-phase-hidden-p)
#'guix-build-log-phase-show
#'guix-build-log-phase-hide))
(defun guix-build-log-phase-toggle ()
"Show/hide the body of the current build phase."
(interactive)
(funcall (guix-build-log-phase-toggle-function)))
(defun guix-build-log-phase-toggle-all ()
"Show/hide the bodies of all build phases."
(interactive)
(save-excursion
;; Some phases may be hidden, and some shown. Whether to hide or to
;; show them, it is determined by the state of the first phase here.
(goto-char (point-min))
(let ((fun (save-excursion
(re-search-forward guix-build-log-phase-start-regexp nil t)
(guix-build-log-phase-toggle-function))))
(while (re-search-forward guix-build-log-phase-start-regexp nil t)
(funcall fun)))))
(defun guix-build-log-next-phase (&optional arg)
"Move to the next build phase.
With ARG, do it that many times. Negative ARG means move
backward."
(interactive "^p")
(if arg
(when (zerop arg) (user-error "Try again"))
(setq arg 1))
(let ((search-fun (if (> arg 0)
#'re-search-forward
#'re-search-backward))
(n (abs arg))
found last-found)
(save-excursion
(end-of-line (if (> arg 0) 1 0)) ; skip the current line
(while (and (not (zerop n))
(setq found
(funcall search-fun
guix-build-log-phase-start-regexp
nil t)))
(setq n (1- n)
last-found found)))
(when last-found
(goto-char last-found)
(forward-line 0))
(or found
(user-error (if (> arg 0)
"No next build phase"
"No previous build phase")))))
(defun guix-build-log-previous-phase (&optional arg)
"Move to the previous build phase.
With ARG, do it that many times. Negative ARG means move
forward."
(interactive "^p")
(guix-build-log-next-phase (- (or arg 1))))
;;;###autoload
(define-derived-mode guix-build-log-mode special-mode
"Guix-Build-Log"
"Major mode for viewing Guix build logs.
\\{guix-build-log-mode-map}"
(setq font-lock-defaults '(guix-build-log-font-lock-keywords t)))
;;;###autoload
(define-minor-mode guix-build-log-minor-mode
"Toggle Guix Build Log minor mode.
With a prefix argument ARG, enable Guix Build Log minor mode if
ARG is positive, and disable it otherwise. If called from Lisp,
enable the mode if ARG is omitted or nil.
When Guix Build Log minor mode is enabled, it highlights build
log in the current buffer. This mode can be enabled
programmatically using hooks:
(add-hook 'shell-mode-hook 'guix-build-log-minor-mode)
\\{guix-build-log-minor-mode-map}"
:init-value nil
:lighter " Guix-Build-Log"
:keymap guix-build-log-minor-mode-map
:group 'guix-build-log
(if guix-build-log-minor-mode
(font-lock-add-keywords nil guix-build-log-font-lock-keywords)
(font-lock-remove-keywords nil guix-build-log-font-lock-keywords))
(when font-lock-mode
(font-lock-fontify-buffer)))
;;;###autoload
(defun guix-build-log-minor-mode-activate-maybe ()
"Activate `guix-build-log-minor-mode' depending on
`guix-build-log-minor-mode-activate' variable."
(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/...)
(cons (rx "/guix/drvs/" (= 2 alnum) "/" (= 30 alnum)
"-" (+ (any alnum "-+.")) ".drv" string-end)
'guix-build-log-mode))
(provide 'guix-build-log)
;;; guix-build-log.el ends here
-830
View File
@@ -1,830 +0,0 @@
;;; guix-command.el --- Popup interface for guix commands -*- lexical-binding: t -*-
;; Copyright © 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 a magit-like popup interface for running guix
;; commands in Guix REPL. The entry point is "M-x guix". When it is
;; called the first time, "guix --help" output is parsed and
;; `guix-COMMAND-action' functions are generated for each available guix
;; COMMAND. Then a window with these commands is popped up. When a
;; particular COMMAND is called, "guix COMMAND --help" output is parsed,
;; and a user get a new popup window with available options for this
;; command and so on.
;; To avoid hard-coding all guix options, actions, etc., as much data is
;; taken from "guix ... --help" outputs as possible. But this data is
;; still incomplete: not all long options have short analogs, also
;; special readers should be used for some options (for example, to
;; complete package names while prompting for a package). So after
;; parsing --help output, the arguments are "improved". All arguments
;; (switches, options and actions) are `guix-command-argument'
;; structures.
;; Only "M-x guix" command is available after this file is loaded. The
;; rest commands/actions/popups are generated on the fly only when they
;; are needed (that's why there is a couple of `eval'-s in this file).
;; COMMANDS argument is used by many functions in this file. It means a
;; list of guix commands without "guix" itself, e.g.: ("build"),
;; ("import" "gnu"). The empty list stands for the plain "guix" without
;; subcommands.
;; All actions in popup windows are divided into 2 groups:
;;
;; - 'Popup' actions - used to pop up another window. For example, every
;; action in the 'guix' or 'guix import' window is a popup action. They
;; are defined by `guix-command-define-popup-action' macro.
;;
;; - 'Execute' actions - used to do something with the command line (to
;; run a command in Guix REPL or to copy it into kill-ring) constructed
;; with the current popup. They are defined by
;; `guix-command-define-execute-action' macro.
;;; Code:
(require 'cl-lib)
(require 'guix-popup)
(require 'guix-utils)
(require 'guix-help-vars)
(require 'guix-read)
(require 'guix-base)
(require 'guix-build-log)
(require 'guix-guile)
(require 'guix-external)
(defgroup guix-commands nil
"Settings for guix popup windows."
:group 'guix)
(defvar guix-command-complex-with-shared-arguments
'("system")
"List of guix commands which have subcommands with shared options.
I.e., 'guix foo --help' is the same as 'guix foo bar --help'.")
(defun guix-command-action-name (&optional commands &rest name-parts)
"Return name of action function for guix COMMANDS."
(guix-command-symbol (append commands name-parts (list "action"))))
;;; Command arguments
(cl-defstruct (guix-command-argument
(:constructor guix-command-make-argument)
(:copier guix-command-copy-argument))
name char doc fun switch? option? action?)
(cl-defun guix-command-modify-argument
(argument &key
(name nil name-bound?)
(char nil char-bound?)
(doc nil doc-bound?)
(fun nil fun-bound?)
(switch? nil switch?-bound?)
(option? nil option?-bound?)
(action? nil action?-bound?))
"Return a modified version of ARGUMENT."
(declare (indent 1))
(let ((copy (guix-command-copy-argument argument)))
(and name-bound? (setf (guix-command-argument-name copy) name))
(and char-bound? (setf (guix-command-argument-char copy) char))
(and doc-bound? (setf (guix-command-argument-doc copy) doc))
(and fun-bound? (setf (guix-command-argument-fun copy) fun))
(and switch?-bound? (setf (guix-command-argument-switch? copy) switch?))
(and option?-bound? (setf (guix-command-argument-option? copy) option?))
(and action?-bound? (setf (guix-command-argument-action? copy) action?))
copy))
(defun guix-command-modify-argument-from-alist (argument alist)
"Return a modified version of ARGUMENT or nil if it wasn't modified.
Each assoc from ALIST have a form (NAME . PLIST). NAME is an
argument name. PLIST is a property list of argument parameters
to be modified."
(let* ((name (guix-command-argument-name argument))
(plist (guix-assoc-value alist name)))
(when plist
(apply #'guix-command-modify-argument
argument plist))))
(defmacro guix-command-define-argument-improver (name alist)
"Define NAME variable and function to modify an argument from ALIST."
(declare (indent 1))
`(progn
(defvar ,name ,alist)
(defun ,name (argument)
(guix-command-modify-argument-from-alist argument ,name))))
(guix-command-define-argument-improver
guix-command-improve-action-argument
'(("container" :char ?C)
("graph" :char ?G)
("environment" :char ?E)
("publish" :char ?u)
("pull" :char ?P)
("size" :char ?z)))
(guix-command-define-argument-improver
guix-command-improve-common-argument
'(("--help" :switch? nil)
("--version" :switch? nil)))
(guix-command-define-argument-improver
guix-command-improve-target-argument
'(("--target" :char ?T)))
(guix-command-define-argument-improver
guix-command-improve-system-type-argument
'(("--system" :fun guix-read-system-type)))
(guix-command-define-argument-improver
guix-command-improve-load-path-argument
'(("--load-path" :fun read-directory-name)))
(guix-command-define-argument-improver
guix-command-improve-search-paths-argument
'(("--search-paths" :char ?P)))
(guix-command-define-argument-improver
guix-command-improve-substitute-urls-argument
'(("--substitute-urls" :char ?U)))
(guix-command-define-argument-improver
guix-command-improve-hash-argument
'(("--format" :fun guix-read-hash-format)))
(guix-command-define-argument-improver
guix-command-improve-key-policy-argument
'(("--key-download" :fun guix-read-key-policy)))
(defvar guix-command-improve-common-build-argument
'(("--no-substitutes" :char ?s)
("--no-build-hook" :char ?h)
("--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
argument
(append guix-command-improve-load-path-argument
guix-command-improve-substitute-urls-argument
guix-command-improve-common-build-argument)))
(guix-command-define-argument-improver
guix-command-improve-archive-argument
'(("--generate-key" :char ?k)))
(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
'(("--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
guix-command-improve-gc-argument
'(("--list-dead" :char ?D)
("--list-live" :char ?L)
("--referrers" :char ?f)
("--verify" :fun guix-read-verify-options-string)))
(guix-command-define-argument-improver
guix-command-improve-graph-argument
'(("--type" :fun guix-read-graph-type)))
(guix-command-define-argument-improver
guix-command-improve-import-argument
'(("cran" :char ?r)))
(guix-command-define-argument-improver
guix-command-improve-import-elpa-argument
'(("--archive" :fun guix-read-elpa-archive)))
(guix-command-define-argument-improver
guix-command-improve-lint-argument
'(("--checkers" :fun guix-read-lint-checker-names-string)))
(guix-command-define-argument-improver
guix-command-improve-package-argument
;; Unlike all other options, --install/--remove do not have a form
;; '--install=foo,bar' but '--install foo bar' instead, so we need
;; some tweaks.
'(("--install"
:name "--install " :fun guix-read-package-names-string
:switch? nil :option? t)
("--remove"
:name "--remove " :fun guix-read-package-names-string
: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)))
(guix-command-define-argument-improver
guix-command-improve-refresh-argument
'(("--select" :fun guix-read-refresh-subset)
("--type" :fun guix-read-refresh-updater-names-string)
("--key-server" :char ?S)))
(guix-command-define-argument-improver
guix-command-improve-size-argument
'(("--map-file" :fun guix-read-file-name)))
(guix-command-define-argument-improver
guix-command-improve-system-argument
'(("disk-image" :char ?D)
("vm-image" :char ?V)
("--on-error" :char ?E)
("--no-grub" :char ?g)
("--full-boot" :char ?b)))
(defvar guix-command-argument-improvers
'((()
guix-command-improve-action-argument)
(("archive")
guix-command-improve-common-build-argument
guix-command-improve-target-argument
guix-command-improve-system-type-argument
guix-command-improve-archive-argument)
(("build")
guix-command-improve-common-build-argument
guix-command-improve-target-argument
guix-command-improve-system-type-argument
guix-command-improve-build-argument)
(("download")
guix-command-improve-hash-argument)
(("hash")
guix-command-improve-hash-argument)
(("environment")
guix-command-improve-common-build-argument
guix-command-improve-search-paths-argument
guix-command-improve-system-type-argument
guix-command-improve-environment-argument)
(("gc")
guix-command-improve-gc-argument)
(("graph")
guix-command-improve-graph-argument)
(("import")
guix-command-improve-import-argument)
(("import" "gnu")
guix-command-improve-key-policy-argument)
(("import" "elpa")
guix-command-improve-import-elpa-argument)
(("lint")
guix-command-improve-lint-argument)
(("package")
guix-command-improve-common-build-argument
guix-command-improve-search-paths-argument
guix-command-improve-package-argument)
(("refresh")
guix-command-improve-key-policy-argument
guix-command-improve-refresh-argument)
(("size")
guix-command-improve-system-type-argument
guix-command-improve-substitute-urls-argument
guix-command-improve-size-argument)
(("system")
guix-command-improve-common-build-argument
guix-command-improve-system-argument))
"Alist of guix commands and argument improvers for them.")
(defun guix-command-improve-argument (argument improvers)
"Return ARGUMENT modified with IMPROVERS."
(or (cl-some (lambda (improver)
(funcall improver argument))
improvers)
argument))
(defun guix-command-improve-arguments (arguments commands)
"Return ARGUMENTS for 'guix COMMANDS ...' modified for popup interface."
(let ((improvers (cons 'guix-command-improve-common-argument
(guix-assoc-value guix-command-argument-improvers
commands))))
(mapcar (lambda (argument)
(guix-command-improve-argument argument improvers))
arguments)))
(defun guix-command-parse-arguments (&optional commands)
"Return a list of parsed 'guix COMMANDS ...' arguments."
(with-temp-buffer
(insert (guix-help-string commands))
(let (args)
(guix-while-search guix-help-parse-option-regexp
(let* ((short (match-string-no-properties 1))
(name (match-string-no-properties 2))
(arg (match-string-no-properties 3))
(doc (match-string-no-properties 4))
(char (if short
(elt short 1) ; short option letter
(elt name 2))) ; first letter of the long option
;; If "--foo=bar" or "--foo[=bar]" then it is 'option'.
(option? (not (string= "" arg)))
;; If "--foo" or "--foo[=bar]" then it is 'switch'.
(switch? (or (string= "" arg)
(eq ?\[ (elt arg 0)))))
(push (guix-command-make-argument
:name name
:char char
:doc doc
:switch? switch?
:option? option?)
args)))
(guix-while-search guix-help-parse-command-regexp
(let* ((name (match-string-no-properties 1))
(char (elt name 0)))
(push (guix-command-make-argument
:name name
:char char
:fun (guix-command-action-name commands name)
:action? t)
args)))
args)))
(defun guix-command-rest-argument (&optional commands)
"Return '--' argument for COMMANDS."
(cl-flet ((argument (&rest args)
(apply #'guix-command-make-argument
:name "-- " :char ?= :option? t args)))
(let ((command (car commands)))
(cond
((member command
'("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"))
(argument :doc "File" :fun 'guix-read-file-name))
((string= command "size")
(argument :doc "Package" :fun 'guix-read-package-name))
((equal commands '("import" "nix"))
(argument :doc "Nixpkgs Attribute"))
;; Other 'guix import' subcommands, but not 'import' itself.
((and (cdr commands)
(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)))
(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
;; special case for `guix-command-complex-with-shared-arguments' commands.
(defun guix-command-all-arguments (&optional commands)
"Return list of all arguments for 'guix COMMANDS ...'."
(let ((parsed (guix-command-parse-arguments commands)))
(append (guix-command-improve-arguments parsed commands)
(guix-command-additional-arguments commands))))
(guix-memoized-defalias guix-command-all-arguments-memoize
guix-command-all-arguments)
(defun guix-command-arguments (&optional commands)
"Return list of arguments for 'guix COMMANDS ...'."
(let ((command (car commands)))
(if (member command
guix-command-complex-with-shared-arguments)
;; Take actions only for 'guix system', and switches+options for
;; 'guix system foo'.
(funcall (if (null (cdr commands))
#'cl-remove-if-not
#'cl-remove-if)
#'guix-command-argument-action?
(guix-command-all-arguments-memoize (list command)))
(guix-command-all-arguments commands))))
(defun guix-command-switch->popup-switch (switch)
"Return popup switch from command SWITCH argument."
(list (guix-command-argument-char switch)
(or (guix-command-argument-doc switch)
"Unknown")
(guix-command-argument-name switch)))
(defun guix-command-option->popup-option (option)
"Return popup option from command OPTION argument."
(list (guix-command-argument-char option)
(or (guix-command-argument-doc option)
"Unknown")
(let ((name (guix-command-argument-name option)))
(if (string-match-p " \\'" name) ; ends with space
name
(concat name "=")))
(or (guix-command-argument-fun option)
'read-from-minibuffer)))
(defun guix-command-action->popup-action (action)
"Return popup action from command ACTION argument."
(list (guix-command-argument-char action)
(or (guix-command-argument-doc action)
(guix-command-argument-name action)
"Unknown")
(guix-command-argument-fun action)))
(defun guix-command-sort-arguments (arguments)
"Sort ARGUMENTS by name in alphabetical order."
(sort arguments
(lambda (a1 a2)
(let ((name1 (guix-command-argument-name a1))
(name2 (guix-command-argument-name a2)))
(cond ((null name1) nil)
((null name2) t)
(t (string< name1 name2)))))))
(defun guix-command-switches (arguments)
"Return switches from ARGUMENTS."
(cl-remove-if-not #'guix-command-argument-switch? arguments))
(defun guix-command-options (arguments)
"Return options from ARGUMENTS."
(cl-remove-if-not #'guix-command-argument-option? arguments))
(defun guix-command-actions (arguments)
"Return actions from ARGUMENTS."
(cl-remove-if-not #'guix-command-argument-action? arguments))
;;; 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 (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
(defvar guix-command-default-execute-arguments
(list
(guix-command-make-argument
:name "repl" :char ?r :doc "Run in Guix REPL")
(guix-command-make-argument
:name "shell" :char ?s :doc "Run in shell")
(guix-command-make-argument
:name "copy" :char ?c :doc "Copy command line"))
"List of default 'execute' action arguments.")
(defvar guix-command-additional-execute-arguments
(let ((graph-arg (guix-command-make-argument
:name "view" :char ?v :doc "View graph")))
`((("build")
,(guix-command-make-argument
:name "log" :char ?l :doc "View build log"))
(("graph") ,graph-arg)
(("size")
,(guix-command-make-argument
:name "view" :char ?v :doc "View map"))
(("system" "shepherd-graph") ,graph-arg)
(("system" "extension-graph") ,graph-arg)))
"Alist of guix commands and additional 'execute' action arguments.")
(defun guix-command-execute-arguments (commands)
"Return a list of 'execute' action arguments for COMMANDS."
(mapcar (lambda (arg)
(guix-command-modify-argument arg
:action? t
:fun (guix-command-action-name
commands (guix-command-argument-name arg))))
(append guix-command-default-execute-arguments
(guix-assoc-value
guix-command-additional-execute-arguments commands))))
(defvar guix-command-special-executors
'((("environment")
("repl" . guix-run-environment-command-in-repl))
(("pull")
("repl" . guix-run-pull-command-in-repl))
(("build")
("log" . guix-run-view-build-log))
(("graph")
("view" . guix-run-view-graph))
(("size")
("view" . guix-run-view-size-map))
(("system" "shepherd-graph")
("view" . guix-run-view-graph))
(("system" "extension-graph")
("view" . guix-run-view-graph)))
"Alist of guix commands and alists of special executers for them.
See also `guix-command-default-executors'.")
(defvar guix-command-default-executors
'(("repl" . guix-run-command-in-repl)
("shell" . guix-run-command-in-shell)
("copy" . guix-copy-command-as-kill))
"Alist of default executers for action names.")
(defun guix-command-executor (commands name)
"Return function to run command line arguments for guix COMMANDS."
(or (guix-assoc-value guix-command-special-executors commands name)
(guix-assoc-value guix-command-default-executors name)))
(defun guix-run-environment-command-in-repl (args)
"Run 'guix ARGS ...' environment command in Guix REPL."
;; As 'guix environment' usually tries to run another process, it may
;; be fun but not wise to run this command in Geiser REPL.
(when (or (member "--dry-run" args)
(member "--search-paths" args)
(when (y-or-n-p
(format "'%s' command will spawn an external process.
Do you really want to execute this command in Geiser REPL? "
(guix-command-string args)))
(message "May \"M-x shell-mode\" be with you!")
t))
(guix-run-command-in-repl args)))
(defun guix-run-pull-command-in-repl (args)
"Run 'guix ARGS ...' pull command in Guix REPL.
Perform pull-specific actions after operation, see
`guix-after-pull-hook' and `guix-update-after-pull'."
(guix-eval-in-repl
(apply #'guix-make-guile-expression 'guix-command args)
nil 'pull))
(defun guix-run-view-build-log (args)
"Add --log-file to ARGS, run 'guix ARGS ...' build command, and
open the log file(s)."
(let* ((args (if (member "--log-file" args)
args
(cl-list* (car args) "--log-file" (cdr args))))
(output (guix-command-output args))
(files (split-string output "\n" t)))
(dolist (file files)
(guix-build-log-find-file file))))
(defun guix-run-view-graph (args)
"Run 'guix ARGS ...' graph command, make the image and open it."
(let* ((graph-file (guix-dot-file-name))
(dot-args (guix-dot-arguments graph-file)))
(if (guix-eval-read (guix-make-guile-expression
'pipe-guix-output args dot-args))
(guix-find-file graph-file)
(error "Couldn't create a graph"))))
(defun guix-run-view-size-map (args)
"Run 'guix ARGS ...' size command, and open the map file."
(let* ((wished-map-file
(cl-some (lambda (arg)
(and (string-match "--map-file=\\(.+\\)" arg)
(match-string 1 arg)))
args))
(map-file (or wished-map-file (guix-png-file-name)))
(args (if wished-map-file
args
(cl-list* (car args)
(concat "--map-file=" map-file)
(cdr args)))))
(guix-command-output args)
(guix-find-file map-file)))
;;; Generating popups, actions, etc.
(defmacro guix-command-define-popup-action (name &optional commands)
"Define NAME function to generate (if needed) and run popup for COMMANDS."
(declare (indent 1) (debug t))
(let* ((popup-fun (guix-command-symbol `(,@commands "popup")))
(doc (format "Call `%s' (generate it if needed)."
popup-fun)))
`(defun ,name (&optional arg)
,doc
(interactive "P")
(unless (fboundp ',popup-fun)
(guix-command-generate-popup ',popup-fun ',commands))
(,popup-fun arg))))
(defmacro guix-command-define-execute-action (name executor
&optional commands)
"Define NAME function to execute the current action for guix COMMANDS.
EXECUTOR function is called with the current command line arguments."
(declare (indent 1) (debug t))
(let* ((arguments-fun (guix-command-symbol `(,@commands "arguments")))
(doc (format "Call `%s' with the current popup arguments."
executor)))
`(defun ,name (&rest args)
,doc
(interactive (,arguments-fun))
(,executor (append ',commands
(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."
(dolist (action actions)
(let ((fun (guix-command-argument-fun action)))
(unless (fboundp fun)
(eval `(guix-command-define-popup-action ,fun
,(append commands
(list (guix-command-argument-name action)))))))))
(defun guix-command-generate-execute-actions (actions &optional commands)
"Generate 'execute' commands from ACTIONS arguments for guix COMMANDS."
(dolist (action actions)
(let ((fun (guix-command-argument-fun action)))
(unless (fboundp fun)
(eval `(guix-command-define-execute-action ,fun
,(guix-command-executor
commands (guix-command-argument-name action))
,commands))))))
(defun guix-command-generate-popup (name &optional commands)
"Define NAME popup with 'guix COMMANDS ...' interface."
(let* ((command (car commands))
(man-page (concat "guix" (and command (concat "-" command))))
(doc (format "Popup window for '%s' command."
(guix-concat-strings (cons "guix" commands)
" ")))
(args (guix-command-arguments commands))
(switches (guix-command-sort-arguments
(guix-command-switches args)))
(options (guix-command-sort-arguments
(guix-command-options args)))
(popup-actions (guix-command-sort-arguments
(guix-command-actions args)))
(execute-actions (unless popup-actions
(guix-command-execute-arguments commands)))
(actions (or popup-actions execute-actions)))
(if popup-actions
(guix-command-generate-popup-actions popup-actions commands)
(guix-command-generate-execute-actions execute-actions commands))
(eval
`(guix-define-popup ,name
,doc
'guix-commands
:man-page ,man-page
:switches ',(mapcar #'guix-command-switch->popup-switch switches)
:options ',(mapcar #'guix-command-option->popup-option options)
:actions ',(mapcar #'guix-command-action->popup-action actions)
:max-action-columns 4))))
;;;###autoload (autoload 'guix "guix-command" "Popup window for 'guix'." t)
(guix-command-define-popup-action guix)
(defalias 'guix-edit-action #'guix-edit)
(defvar guix-command-font-lock-keywords
(eval-when-compile
`((,(rx "("
(group "guix-command-define-"
(or "popup-action"
"execute-action"
"argument-improver"))
symbol-end
(zero-or-more blank)
(zero-or-one
(group (one-or-more (or (syntax word) (syntax symbol))))))
(1 font-lock-keyword-face)
(2 font-lock-function-name-face nil t)))))
(font-lock-add-keywords 'emacs-lisp-mode guix-command-font-lock-keywords)
(provide 'guix-command)
;;; guix-command.el ends here
-44
View File
@@ -1,44 +0,0 @@
;;; guix-config.el --- Compile-time configuration of Guix.
;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;; Copyright © 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/>.
;;; Code:
(defconst guix-config-name "@PACKAGE_NAME@"
"Guix full name.")
(defconst guix-config-version "@PACKAGE_VERSION@"
"Guix version.")
(defconst guix-config-emacs-interface-directory
(replace-regexp-in-string "${prefix}" "@prefix@" "@emacsuidir@"))
(defconst guix-config-state-directory
;; This must match `NIX_STATE_DIR' as defined in `nix/local.mk'.
(or (getenv "NIX_STATE_DIR") "@guix_localstatedir@/guix"))
(defconst guix-config-guile-program "@GUILE@"
"Name of the 'guile' executable defined at configure time.")
(defconst guix-config-dot-program "@DOT_USER_PROGRAM@"
"Name of the 'dot' executable defined at configure time.")
(provide 'guix-config)
;;; guix-config.el ends here
-382
View File
@@ -1,382 +0,0 @@
;;; guix-devel.el --- Development tools -*- 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 commands useful for developing Guix (or even
;; arbitrary Guile code) with Geiser.
;;; Code:
(require 'lisp-mode)
(require 'guix-guile)
(require 'guix-geiser)
(require 'guix-utils)
(require 'guix-base)
(defgroup guix-devel nil
"Settings for Guix development utils."
:group 'guix)
(defgroup guix-devel-faces nil
"Faces for `guix-devel-mode'."
:group 'guix-devel
:group 'guix-faces)
(defface guix-devel-modify-phases-keyword
'((t :inherit font-lock-preprocessor-face))
"Face for a `modify-phases' keyword ('delete', 'replace', etc.)."
:group 'guix-devel-faces)
(defface guix-devel-gexp-symbol
'((t :inherit font-lock-keyword-face))
"Face for gexp symbols ('#~', '#$', etc.).
See Info node `(guix) G-Expressions'."
:group 'guix-devel-faces)
(defcustom guix-devel-activate-mode t
"If non-nil, then `guix-devel-mode' is automatically activated
in Scheme buffers."
:type 'boolean
:group 'guix-devel)
(defun guix-devel-use-modules (&rest modules)
"Use guile MODULES."
(apply #'guix-geiser-call "use-modules" modules))
(defun guix-devel-use-module (&optional module)
"Use guile MODULE in the current Geiser REPL.
MODULE is a string with the module name - e.g., \"(ice-9 match)\".
Interactively, use the module defined by the current scheme file."
(interactive (list (guix-guile-current-module)))
(guix-devel-use-modules module)
(message "Using %s module." module))
(defun guix-devel-copy-module-as-kill ()
"Put the name of the current guile module into `kill-ring'."
(interactive)
(guix-copy-as-kill (guix-guile-current-module)))
(defun guix-devel-setup-repl (&optional repl)
"Setup REPL for using `guix-devel-...' commands."
(guix-devel-use-modules "(guix monad-repl)"
"(guix scripts)"
"(guix store)"
"(guix ui)")
;; Without this workaround, the warning/build output disappears. See
;; <https://github.com/jaor/geiser/issues/83> for details.
(guix-geiser-eval-in-repl-synchronously
"(begin
(guix-warning-port (current-warning-port))
(current-build-output-port (current-error-port)))"
repl 'no-history 'no-display))
(defvar guix-devel-repl-processes nil
"List of REPL processes configured by `guix-devel-setup-repl'.")
(defun guix-devel-setup-repl-maybe (&optional repl)
"Setup (if needed) REPL for using `guix-devel-...' commands."
(let ((process (get-buffer-process (or repl (guix-geiser-repl)))))
(when (and process
(not (memq process guix-devel-repl-processes)))
(guix-devel-setup-repl repl)
(push process guix-devel-repl-processes))))
(defmacro guix-devel-with-definition (def-var &rest body)
"Run BODY with the current guile definition bound to DEF-VAR.
Bind DEF-VAR variable to the name of the current top-level
definition, setup the current REPL, use the current module, and
run BODY."
(declare (indent 1) (debug (symbolp body)))
`(let ((,def-var (guix-guile-current-definition)))
(guix-devel-setup-repl-maybe)
(guix-devel-use-modules (guix-guile-current-module))
,@body))
(defun guix-devel-build-package-definition ()
"Build a package defined by the current top-level variable definition."
(interactive)
(guix-devel-with-definition def
(when (or (not guix-operation-confirm)
(guix-operation-prompt (format "Build '%s'?" def)))
(guix-geiser-eval-in-repl
(concat ",run-in-store "
(guix-guile-make-call-expression
"build-package" def
"#:use-substitutes?" (guix-guile-boolean
guix-use-substitutes)
"#:dry-run?" (guix-guile-boolean guix-dry-run)))))))
(defun guix-devel-build-package-source ()
"Build the source of the current package definition."
(interactive)
(guix-devel-with-definition def
(when (or (not guix-operation-confirm)
(guix-operation-prompt
(format "Build '%s' package source?" def)))
(guix-geiser-eval-in-repl
(concat ",run-in-store "
(guix-guile-make-call-expression
"build-package-source" def
"#:use-substitutes?" (guix-guile-boolean
guix-use-substitutes)
"#:dry-run?" (guix-guile-boolean guix-dry-run)))))))
(defun guix-devel-lint-package ()
"Check the current package.
See Info node `(guix) Invoking guix lint' for details."
(interactive)
(guix-devel-with-definition def
(guix-devel-use-modules "(guix scripts lint)")
(when (or (not guix-operation-confirm)
(y-or-n-p (format "Lint '%s' package?" def)))
(guix-geiser-eval-in-repl
(format "(run-checkers %s)" def)))))
;;; Font-lock
(defvar guix-devel-modify-phases-keyword-regexp
(rx (+ word))
"Regexp for a 'modify-phases' keyword ('delete', 'replace', etc.).")
(defun guix-devel-modify-phases-font-lock-matcher (limit)
"Find a 'modify-phases' keyword.
This function is used as a MATCHER for `font-lock-keywords'."
(ignore-errors
(down-list)
(or (re-search-forward guix-devel-modify-phases-keyword-regexp
limit t)
(set-match-data nil))
(up-list)
t))
(defun guix-devel-modify-phases-font-lock-pre ()
"Skip the next sexp, and return the end point of the current list.
This function is used as a PRE-MATCH-FORM for `font-lock-keywords'
to find 'modify-phases' keywords."
(let ((in-comment? (nth 4 (syntax-ppss))))
;; If 'modify-phases' is commented, do not try to search for its
;; keywords.
(unless in-comment?
(ignore-errors (forward-sexp))
(save-excursion (up-list) (point)))))
(defconst guix-devel-keywords
'("call-with-compressed-output-port"
"call-with-container"
"call-with-decompressed-port"
"call-with-derivation-narinfo"
"call-with-derivation-substitute"
"call-with-error-handling"
"call-with-temporary-directory"
"call-with-temporary-output-file"
"define-enumerate-type"
"define-gexp-compiler"
"define-lift"
"define-monad"
"define-operation"
"define-record-type*"
"emacs-substitute-sexps"
"emacs-substitute-variables"
"mbegin"
"mlet"
"mlet*"
"modify-services"
"munless"
"mwhen"
"run-with-state"
"run-with-store"
"signature-case"
"substitute*"
"substitute-keyword-arguments"
"test-assertm"
"use-package-modules"
"use-service-modules"
"use-system-modules"
"with-atomic-file-output"
"with-atomic-file-replacement"
"with-derivation-narinfo"
"with-derivation-substitute"
"with-directory-excursion"
"with-error-handling"
"with-imported-modules"
"with-monad"
"with-mutex"
"with-store"))
(defvar guix-devel-font-lock-keywords
`((,(rx (or "#~" "#$" "#$@" "#+" "#+@")) .
'guix-devel-gexp-symbol)
(,(guix-guile-keyword-regexp (regexp-opt guix-devel-keywords))
(1 'font-lock-keyword-face))
(,(guix-guile-keyword-regexp "modify-phases")
(1 'font-lock-keyword-face)
(guix-devel-modify-phases-font-lock-matcher
(guix-devel-modify-phases-font-lock-pre)
nil
(0 'guix-devel-modify-phases-keyword nil t))))
"A list of `font-lock-keywords' for `guix-devel-mode'.")
;;; Indentation
(defmacro guix-devel-scheme-indent (&rest rules)
"Set `scheme-indent-function' according to RULES.
Each rule should have a form (SYMBOL VALUE). See `put' for details."
(declare (indent 0))
`(progn
,@(mapcar (lambda (rule)
`(put ',(car rule) 'scheme-indent-function ,(cadr rule)))
rules)))
(defun guix-devel-indent-package (state indent-point normal-indent)
"Indentation rule for 'package' form."
(let* ((package-eol (line-end-position))
(count (if (and (ignore-errors (down-list) t)
(< (point) package-eol)
(looking-at "inherit\\>"))
1
0)))
(lisp-indent-specform count state indent-point normal-indent)))
(defun guix-devel-indent-modify-phases-keyword (count)
"Return indentation function for 'modify-phases' keywords."
(lambda (state indent-point normal-indent)
(when (ignore-errors
(goto-char (nth 1 state)) ; start of keyword sexp
(backward-up-list)
(looking-at "(modify-phases\\>"))
(lisp-indent-specform count state indent-point normal-indent))))
(defalias 'guix-devel-indent-modify-phases-keyword-1
(guix-devel-indent-modify-phases-keyword 1))
(defalias 'guix-devel-indent-modify-phases-keyword-2
(guix-devel-indent-modify-phases-keyword 2))
(guix-devel-scheme-indent
(bag 0)
(build-system 0)
(call-with-compressed-output-port 2)
(call-with-container 1)
(call-with-decompressed-port 2)
(call-with-error-handling 0)
(container-excursion 1)
(emacs-batch-edit-file 1)
(emacs-batch-eval 0)
(emacs-substitute-sexps 1)
(emacs-substitute-variables 1)
(file-system 0)
(graft 0)
(manifest-entry 0)
(manifest-pattern 0)
(mbegin 1)
(mlet 2)
(mlet* 2)
(modify-phases 1)
(modify-services 1)
(munless 1)
(mwhen 1)
(operating-system 0)
(origin 0)
(package 'guix-devel-indent-package)
(run-with-state 1)
(run-with-store 1)
(signature-case 1)
(substitute* 1)
(substitute-keyword-arguments 1)
(test-assertm 1)
(with-atomic-file-output 1)
(with-derivation-narinfo 1)
(with-derivation-substitute 2)
(with-directory-excursion 1)
(with-error-handling 0)
(with-imported-modules 1)
(with-monad 1)
(with-mutex 1)
(with-store 1)
(wrap-program 1)
;; 'modify-phases' keywords:
(replace 'guix-devel-indent-modify-phases-keyword-1)
(add-after 'guix-devel-indent-modify-phases-keyword-2)
(add-before 'guix-devel-indent-modify-phases-keyword-2))
(defvar guix-devel-keys-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "b") 'guix-devel-build-package-definition)
(define-key map (kbd "s") 'guix-devel-build-package-source)
(define-key map (kbd "l") 'guix-devel-lint-package)
(define-key map (kbd "k") 'guix-devel-copy-module-as-kill)
(define-key map (kbd "u") 'guix-devel-use-module)
map)
"Keymap with subkeys for `guix-devel-mode-map'.")
(defvar guix-devel-mode-map
(let ((map (make-sparse-keymap)))
(define-key map (kbd "C-c .") guix-devel-keys-map)
map)
"Keymap for `guix-devel-mode'.")
;;;###autoload
(define-minor-mode guix-devel-mode
"Minor mode for `scheme-mode' buffers.
With a prefix argument ARG, enable the mode if ARG is positive,
and disable it otherwise. If called from Lisp, enable the mode
if ARG is omitted or nil.
When Guix Devel mode is enabled, it provides the following key
bindings:
\\{guix-devel-mode-map}"
:init-value nil
:lighter " Guix"
:keymap guix-devel-mode-map
(if guix-devel-mode
(progn
(setq-local font-lock-multiline t)
(font-lock-add-keywords nil guix-devel-font-lock-keywords))
(setq-local font-lock-multiline nil)
(font-lock-remove-keywords nil guix-devel-font-lock-keywords))
(when font-lock-mode
(font-lock-fontify-buffer)))
;;;###autoload
(defun guix-devel-activate-mode-maybe ()
"Activate `guix-devel-mode' depending on
`guix-devel-activate-mode' variable."
(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
`((,(rx "(" (group "guix-devel-with-definition") symbol-end) . 1))))
(font-lock-add-keywords 'emacs-lisp-mode
guix-devel-emacs-font-lock-keywords)
(provide 'guix-devel)
;;; guix-devel.el ends here
-59
View File
@@ -1,59 +0,0 @@
;;; 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
-88
View File
@@ -1,88 +0,0 @@
;;; guix-external.el --- External programs -*- 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 auxiliary code for running external programs.
;;; Code:
(require 'cl-lib)
(require 'guix-config)
(defgroup guix-external nil
"Settings for external programs."
:group 'guix)
(defcustom guix-guile-program guix-config-guile-program
"Name of the 'guile' executable used for Guix REPL.
May be either a string (the name of the executable) or a list of
strings of the form:
(NAME . ARGS)
Where ARGS is a list of arguments to the guile program."
:type 'string
:group 'guix-external)
(defcustom guix-dot-program
(if (file-name-absolute-p guix-config-dot-program)
guix-config-dot-program
(executable-find "dot"))
"Name of the 'dot' executable."
:type 'string
:group 'guix-external)
(defcustom guix-dot-default-arguments
'("-Tpng")
"Default arguments for 'dot' program."
:type '(repeat string)
:group 'guix-external)
(defcustom guix-dot-file-name-function #'guix-png-file-name
"Function used to define a file name of a temporary 'dot' file.
The function is called without arguments."
:type '(choice (function-item guix-png-file-name)
(function :tag "Other function"))
:group 'guix-external)
(defun guix-dot-arguments (output-file &rest args)
"Return a list of dot arguments for writing a graph into OUTPUT-FILE.
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")))
(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'."
(funcall guix-dot-file-name-function))
(defun guix-png-file-name ()
"Return '.png' file name in the `temporary-file-directory'."
(concat (make-temp-name
(concat (file-name-as-directory temporary-file-directory)
"guix-emacs-graph-"))
".png"))
(provide 'guix-external)
;;; guix-external.el ends here
-126
View File
@@ -1,126 +0,0 @@
;;; guix-geiser.el --- Interacting with Geiser -*- 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 functions to evaluate guile code using Geiser.
;;; Code:
(require 'geiser-mode)
(require 'guix-guile)
(defun guix-geiser-repl ()
"Return the current Geiser REPL."
(or geiser-repl--repl
(geiser-repl--repl/impl 'guile)
(error "Geiser REPL not found")))
(defun guix-geiser-eval (str &optional repl)
"Evaluate STR with guile expression using Geiser REPL.
If REPL is nil, use the current Geiser REPL.
Return a list of strings with result values of evaluation."
(with-current-buffer (or repl (guix-geiser-repl))
(let ((res (geiser-eval--send/wait `(:eval (:scm ,str)))))
(if (geiser-eval--retort-error res)
(error "Error in evaluating guile expression: %s"
(geiser-eval--retort-output res))
(cdr (assq 'result res))))))
(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."
;; 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.
This is the same as `geiser-repl--send', but with SAVE-HISTORY
argument. If SAVE-HISTORY is non-nil, save CMD in the REPL
history."
(when (and cmd (eq major-mode 'geiser-repl-mode))
(geiser-repl--prepare-send)
(goto-char (point-max))
(comint-kill-input)
(insert cmd)
(let ((comint-input-filter (if save-history
comint-input-filter
'ignore)))
(comint-send-input nil t))))
(defun guix-geiser-eval-in-repl (str &optional repl no-history no-display)
"Switch to Geiser REPL and evaluate STR with guile expression there.
If NO-HISTORY is non-nil, do not save STR in the REPL history.
If NO-DISPLAY is non-nil, do not switch to the REPL buffer."
(let ((repl (or repl (guix-geiser-repl))))
(with-current-buffer repl
;; XXX Since Geiser 0.8, `geiser-repl--send' has SAVE-HISTORY
;; argument, so use this function eventually and remove
;; `guix-repl-send'.
(guix-repl-send str (not no-history)))
(unless no-display
(geiser-repl--switch-to-buffer repl))))
(defun guix-geiser-eval-in-repl-synchronously (str &optional repl
no-history no-display)
"Evaluate STR in Geiser REPL synchronously, i.e. wait until the
REPL operation will be finished.
See `guix-geiser-eval-in-repl' for the meaning of arguments."
(let* ((repl (if repl (get-buffer repl) (guix-geiser-repl)))
(running? nil)
(filter (lambda (output)
(setq running?
(and (get-buffer-process repl)
(not (guix-guile-prompt? output))))))
(comint-output-filter-functions
(cons filter comint-output-filter-functions)))
(guix-geiser-eval-in-repl str repl no-history no-display)
(while running?
(sleep-for 0.1))))
(defun guix-geiser-call (proc &rest args)
"Call (PROC ARGS ...) synchronously using the current Geiser REPL.
PROC and ARGS should be strings."
(guix-geiser-eval
(apply #'guix-guile-make-call-expression proc args)))
(defun guix-geiser-call-in-repl (proc &rest args)
"Call (PROC ARGS ...) in the current Geiser REPL.
PROC and ARGS should be strings."
(guix-geiser-eval-in-repl
(apply #'guix-guile-make-call-expression proc args)))
(provide 'guix-geiser)
;;; guix-geiser.el ends here
-98
View File
@@ -1,98 +0,0 @@
;;; guix-guile.el --- Auxiliary tools for working with guile code -*- 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 functions for parsing guile code, making guile
;; expressions, etc.
;;; Code:
(require 'geiser-guile)
(defvar guix-guile-definition-regexp
(rx bol "(define"
(zero-or-one "*")
(zero-or-one "-public")
(one-or-more space)
(zero-or-one "(")
(group (one-or-more (or word (syntax symbol)))))
"Regexp used to find the guile definition.")
(defun guix-guile-current-definition ()
"Return string with name of the current top-level guile definition."
(save-excursion
(beginning-of-defun)
(if (looking-at guix-guile-definition-regexp)
(match-string-no-properties 1)
(error "Couldn't find the current definition"))))
(defun guix-guile-current-module ()
"Return a string with the current guile module.
Return nil, if current buffer does not define a module."
;; Modified version of `geiser-guile--get-module'.
(save-excursion
(geiser-syntax--pop-to-top)
(when (or (re-search-backward geiser-guile--module-re nil t)
(looking-at geiser-guile--library-re)
(re-search-forward geiser-guile--module-re nil t))
(match-string-no-properties 1))))
(defun guix-guile-boolean (arg)
"Return a string with guile boolean value.
Transform elisp ARG (nil or non-nil) to the guile boolean (#f or #t)."
(if arg "#t" "#f"))
(defun guix-guile-keyword-regexp (keyword)
"Return regexp to find guile KEYWORD."
(format "(\\(%s\\)\\_>" keyword))
(defun guix-guile-make-call-expression (proc &rest args)
"Return \"(PROC ARGS ...)\" string.
PROC and ARGS should be strings."
(format "(%s %s)"
proc
(mapconcat #'identity args " ")))
(defun guix-make-guile-expression (fun &rest args)
"Return string containing a guile expression for calling FUN with ARGS."
(format "(%S %s)" fun
(mapconcat
(lambda (arg)
(cond
((null arg) "'()")
((or (eq arg t)
;; An ugly hack to separate 'false' from nil.
(equal arg 'f)
(keywordp arg))
(concat "#" (prin1-to-string arg t)))
((or (symbolp arg) (listp arg))
(concat "'" (prin1-to-string arg)))
(t (prin1-to-string arg))))
args
" ")))
(defun guix-guile-prompt? (string)
"Return non-nil, if STRING contains a Guile prompt."
(or (string-match-p geiser-guile--prompt-regexp string)
(string-match-p geiser-guile--debugger-prompt-regexp string)))
(provide 'guix-guile)
;;; guix-guile.el ends here
-108
View File
@@ -1,108 +0,0 @@
;;; guix-help-vars.el --- Variables related to --help output
;; 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 regular expressions to parse various "guix
;; ... --help" outputs and lists of non-receivable items (system types,
;; hash formats, etc.).
;;; Code:
;;; Regexps for parsing "guix ..." outputs
(defvar guix-help-parse-option-regexp
(rx bol " "
(zero-or-one (group "-" (not (any "- ")))
",")
(one-or-more " ")
(group "--" (one-or-more (or wordchar "-")))
(group (zero-or-one "[")
(zero-or-one "="))
(zero-or-more (not space))
(one-or-more space)
(group (one-or-more any)))
"Common regexp used to find command options.")
(defvar guix-help-parse-command-regexp
(rx bol " "
(group wordchar (one-or-more (or wordchar "-"))))
"Regexp used to find guix commands.
'Command' means any option not prefixed with '-'. For example,
guix subcommand, system action, importer, etc.")
(defvar guix-help-parse-long-option-regexp
(rx (or " " ", ")
(group "--" (one-or-more (or wordchar "-"))
(zero-or-one "=")))
"Regexp used to find long options.")
(defvar guix-help-parse-short-option-regexp
(rx bol (one-or-more blank)
"-" (group (not (any "- "))))
"Regexp used to find short options.")
(defvar guix-help-parse-package-regexp
(rx bol (group (one-or-more (not blank))))
"Regexp used to find names of the packages.")
(defvar guix-help-parse-list-regexp
(rx bol (zero-or-more blank) "- "
(group (one-or-more (or wordchar "-"))))
"Regexp used to find various lists (lint checkers, graph types).")
(defvar guix-help-parse-regexp-group 1
"Parenthesized expression of regexps used to find commands and
options.")
;;; Non-receivable lists of system types, hash formats, etc.
(defvar guix-help-system-types
'("x86_64-linux" "i686-linux" "armhf-linux" "mips64el-linux")
"List of supported systems.")
(defvar guix-help-source-types
'("package" "all" "transitive")
"List of supported sources types.")
(defvar guix-help-hash-formats
'("nix-base32" "base32" "base16" "hex" "hexadecimal")
"List of supported hash formats.")
(defvar guix-help-refresh-subsets
'("core" "non-core")
"List of supported 'refresh' subsets.")
(defvar guix-help-key-policies
'("interactive" "always" "never")
"List of supported key download policies.")
(defvar guix-help-verify-options
'("repair" "contents")
"List of supported 'verify' options")
(defvar guix-help-elpa-archives
'("gnu" "melpa" "melpa-stable")
"List of supported ELPA archives.")
(provide 'guix-help-vars)
;;; guix-help-vars.el ends here
-65
View File
@@ -1,65 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 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 GNU Guix. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This is an auxiliary file for the Emacs UI. It is used to add Guix
;; directories to path variables and to load the main code.
;;; Code:
(use-modules (ice-9 regex)
(srfi srfi-26))
(define %guix-dir)
;; The code is taken from guix executable script
(define (set-paths!)
(define-syntax-rule (push! elt v) (set! v (cons elt v)))
(define config-lookup
(let ((config '(("prefix" . "@prefix@")
("guilemoduledir" . "@guilemoduledir@")))
(var-ref-regexp (make-regexp "\\$\\{([a-z]+)\\}")))
(define (expand-var-ref match)
(lookup (match:substring match 1)))
(define (expand str)
(regexp-substitute/global #f var-ref-regexp str
'pre expand-var-ref 'post))
(define (lookup name)
(expand (assoc-ref config name)))
lookup))
(let ((module-dir (config-lookup "guilemoduledir"))
(updates-dir (and=> (or (getenv "XDG_CONFIG_HOME")
(and=> (getenv "HOME")
(cut string-append <> "/.config")))
(cut string-append <> "/guix/latest"))))
(push! module-dir %load-path)
(push! module-dir %load-compiled-path)
(if (and updates-dir (file-exists? updates-dir))
(begin
(set! %guix-dir updates-dir)
(push! updates-dir %load-path)
(push! updates-dir %load-compiled-path))
(set! %guix-dir module-dir))))
(set-paths!)
(load-from-path "guix-main")
-92
View File
@@ -1,92 +0,0 @@
;;; guix-history.el --- History of buffer information
;; Copyright © 2014 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 support for history of buffers similar to the
;; history of a `help-mode' buffer.
;;; Code:
(require 'cl-macs)
(defvar-local guix-history-stack-item nil
"Current item of the history.
A list of the form (FUNCTION [ARGS ...]).
The item is used by calling (apply FUNCTION ARGS).")
(put 'guix-history-stack-item 'permanent-local t)
(defvar-local guix-history-back-stack nil
"Stack (list) of visited items.
Each element of the list has a form of `guix-history-stack-item'.")
(put 'guix-history-back-stack 'permanent-local t)
(defvar-local guix-history-forward-stack nil
"Stack (list) of items visited with `guix-history-back'.
Each element of the list has a form of `guix-history-stack-item'.")
(put 'guix-history-forward-stack 'permanent-local t)
(defvar guix-history-size 0
"Maximum number of items saved in history.
If 0, the history is disabled.")
(defun guix-history-add (item)
"Add ITEM to history."
(and guix-history-stack-item
(push guix-history-stack-item guix-history-back-stack))
(setq guix-history-forward-stack nil
guix-history-stack-item item)
(when (>= (length guix-history-back-stack)
guix-history-size)
(setq guix-history-back-stack
(cl-loop for elt in guix-history-back-stack
for i from 1 to guix-history-size
collect elt))))
(defun guix-history-replace (item)
"Replace current item in history with ITEM."
(setq guix-history-stack-item item))
(defun guix-history-goto (item)
"Go to the ITEM of history.
ITEM should have the form of `guix-history-stack-item'."
(or (listp item)
(error "Wrong value of history element"))
(setq guix-history-stack-item item)
(apply (car item) (cdr item)))
(defun guix-history-back ()
"Go back to the previous element of history in the current buffer."
(interactive)
(or guix-history-back-stack
(user-error "No previous element in history"))
(push guix-history-stack-item guix-history-forward-stack)
(guix-history-goto (pop guix-history-back-stack)))
(defun guix-history-forward ()
"Go forward to the next element of history in the current buffer."
(interactive)
(or guix-history-forward-stack
(user-error "No next element in history"))
(push guix-history-stack-item guix-history-back-stack)
(guix-history-goto (pop guix-history-forward-stack)))
(provide 'guix-history)
;;; guix-history.el ends here
-362
View File
@@ -1,362 +0,0 @@
;;; 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
@@ -1,162 +0,0 @@
;;; 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
@@ -1,367 +0,0 @@
;;; 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
-482
View File
@@ -1,482 +0,0 @@
;;; guix-info.el --- 'Info' buffer interface for displaying data -*- lexical-binding: t -*-
;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com>
;; Copyright © 2015 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 this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This file provides 'info' (help-like) buffer interface for displaying
;; an arbitrary data.
;;; Code:
(require 'guix-buffer)
(require 'guix-entry)
(require 'guix-utils)
(guix-define-buffer-type info)
(defface guix-info-heading
'((((type tty pc) (class color)) :weight bold)
(t :height 1.6 :weight bold :inherit variable-pitch))
"Face for headings."
:group 'guix-info-faces)
(defface guix-info-param-title
'((t :inherit font-lock-type-face))
"Face used for titles of parameters."
:group 'guix-info-faces)
(defface guix-info-file-name
'((t :inherit link))
"Face used for file names."
:group 'guix-info-faces)
(defface guix-info-url
'((t :inherit link))
"Face used for URLs."
:group 'guix-info-faces)
(defface guix-info-time
'((t :inherit font-lock-constant-face))
"Face used for timestamps."
:group 'guix-info-faces)
(defface guix-info-action-button
'((((type x w32 ns) (class color))
:box (:line-width 2 :style released-button)
:background "lightgrey" :foreground "black")
(t :inherit button))
"Face used for action buttons."
:group 'guix-info-faces)
(defface guix-info-action-button-mouse
'((((type x w32 ns) (class color))
:box (:line-width 2 :style released-button)
:background "grey90" :foreground "black")
(t :inherit highlight))
"Mouse face used for action buttons."
:group 'guix-info-faces)
(defcustom guix-info-ignore-empty-values nil
"If non-nil, do not display parameters with nil values."
:type 'boolean
:group 'guix-info)
(defcustom guix-info-fill t
"If non-nil, fill string parameters to fit the window.
If nil, insert text parameters (like synopsis or description) in
a raw form."
:type 'boolean
:group 'guix-info)
(defvar guix-info-param-title-format "%-18s: "
"String used to format a title of a parameter.
It should be a '%s'-sequence. After inserting a title formatted
with this string, a value of the parameter is inserted.
This string is used by `guix-info-insert-title-format'.")
(defvar guix-info-multiline-prefix
(make-string (length (format guix-info-param-title-format " "))
?\s)
"String used to format multi-line parameter values.
If a value occupies more than one line, this string is inserted
in the beginning of each line after the first one.
This string is used by `guix-info-insert-value-format'.")
(defvar guix-info-indent 2
"Number of spaces used to indent various parts of inserted text.")
(defvar guix-info-delimiter "\n\f\n"
"String used to separate entries.")
;;; Wrappers for 'info' variables
(defvar guix-info-data nil
"Alist with 'info' data.
This alist is filled by `guix-info-define-interface' macro.")
(defun guix-info-value (entry-type symbol)
"Return SYMBOL's value for ENTRY-TYPE from `guix-info-data'."
(symbol-value (guix-assq-value guix-info-data entry-type symbol)))
(defun guix-info-param-title (entry-type param)
"Return a title of an ENTRY-TYPE parameter PARAM."
(guix-buffer-param-title 'info entry-type param))
(defun guix-info-format (entry-type)
"Return 'info' format for ENTRY-TYPE."
(guix-info-value entry-type 'format))
(defun guix-info-displayed-params (entry-type)
"Return a list of ENTRY-TYPE parameters that should be displayed."
(delq nil
(mapcar (lambda (spec)
(pcase spec
(`(,param . ,_) param)))
(guix-info-format entry-type))))
;;; Inserting entries
(defvar guix-info-title-aliases
'((format . guix-info-insert-title-format)
(simple . guix-info-insert-title-simple))
"Alist of aliases and functions to insert titles.")
(defvar guix-info-value-aliases
'((format . guix-info-insert-value-format)
(indent . guix-info-insert-value-indent)
(simple . guix-info-insert-value-simple)
(time . guix-info-insert-time))
"Alist of aliases and functions to insert values.")
(defun guix-info-title-function (fun-or-alias)
"Convert FUN-OR-ALIAS into a function to insert a title."
(or (guix-assq-value guix-info-title-aliases fun-or-alias)
fun-or-alias))
(defun guix-info-value-function (fun-or-alias)
"Convert FUN-OR-ALIAS into a function to insert a value."
(or (guix-assq-value guix-info-value-aliases fun-or-alias)
fun-or-alias))
(defun guix-info-title-method->function (method)
"Convert title METHOD into a function to insert a title."
(pcase method
((pred null) #'ignore)
((pred symbolp) (guix-info-title-function method))
(`(,fun-or-alias . ,rest-args)
(lambda (title)
(apply (guix-info-title-function fun-or-alias)
title rest-args)))
(_ (error "Unknown title method '%S'" method))))
(defun guix-info-value-method->function (method)
"Convert value METHOD into a function to insert a value."
(pcase method
((pred null) #'ignore)
((pred functionp) method)
(`(,fun-or-alias . ,rest-args)
(lambda (value _)
(apply (guix-info-value-function fun-or-alias)
value rest-args)))
(_ (error "Unknown value method '%S'" method))))
(defun guix-info-fill-column ()
"Return fill column for the current window."
(min (window-width) fill-column))
(defun guix-info-get-indent (&optional level)
"Return `guix-info-indent' \"multiplied\" by LEVEL spaces.
LEVEL is 1 by default."
(make-string (* guix-info-indent (or level 1)) ?\s))
(defun guix-info-insert-indent (&optional level)
"Insert `guix-info-indent' spaces LEVEL times (1 by default)."
(insert (guix-info-get-indent level)))
(defun guix-info-insert-entries (entries entry-type)
"Display ENTRY-TYPE ENTRIES in the current info buffer."
(guix-mapinsert (lambda (entry)
(guix-info-insert-entry entry entry-type))
entries
guix-info-delimiter))
(defun guix-info-insert-entry (entry entry-type &optional indent-level)
"Insert ENTRY of ENTRY-TYPE into the current info buffer.
If INDENT-LEVEL is non-nil, indent displayed data by this number
of `guix-info-indent' spaces."
(guix-with-indent (* (or indent-level 0)
guix-info-indent)
(dolist (spec (guix-info-format entry-type))
(guix-info-insert-entry-unit spec entry entry-type))))
(defun guix-info-insert-entry-unit (format-spec entry entry-type)
"Insert title and value of a PARAM at point.
ENTRY is alist with parameters and their values.
ENTRY-TYPE is a type of ENTRY."
(pcase format-spec
((pred functionp)
(funcall format-spec entry)
(insert "\n"))
(`(,param ,title-method ,value-method)
(let ((value (guix-entry-value entry param)))
(unless (and guix-info-ignore-empty-values (null value))
(let ((title (guix-info-param-title entry-type param))
(insert-title (guix-info-title-method->function title-method))
(insert-value (guix-info-value-method->function value-method)))
(funcall insert-title title)
(funcall insert-value value entry)
(insert "\n")))))
(_ (error "Unknown format specification '%S'" format-spec))))
(defun guix-info-insert-title-simple (title &optional face)
"Insert \"TITLE: \" string at point.
If FACE is nil, use `guix-info-param-title'."
(guix-format-insert title
(or face 'guix-info-param-title)
"%s: "))
(defun guix-info-insert-title-format (title &optional face)
"Insert TITLE using `guix-info-param-title-format' at point.
If FACE is nil, use `guix-info-param-title'."
(guix-format-insert title
(or face 'guix-info-param-title)
guix-info-param-title-format))
(defun guix-info-insert-value-simple (value &optional button-or-face indent)
"Format and insert parameter VALUE at point.
VALUE may be split into several short lines to fit the current
window, depending on `guix-info-fill', and each line is indented
with INDENT number of spaces.
If BUTTON-OR-FACE is a button type symbol, transform VALUE into
this (these) button(s) and insert each one on a new line. If it
is a face symbol, propertize inserted line(s) with this face."
(or indent (setq indent 0))
(guix-with-indent indent
(let* ((button? (guix-button-type? button-or-face))
(face (unless button? button-or-face))
(fill-col (unless (or button?
(and (stringp value)
(not guix-info-fill)))
(- (guix-info-fill-column) indent)))
(value (if (and value button?)
(guix-buttonize value button-or-face "\n")
value)))
(guix-split-insert value face fill-col "\n"))))
(defun guix-info-insert-value-indent (value &optional button-or-face)
"Format and insert parameter VALUE at point.
This function is intended to be called after inserting a title
with `guix-info-insert-title-simple'.
VALUE may be split into several short lines to fit the current
window, depending on `guix-info-fill', and each line is indented
with `guix-info-indent'.
For the meaning of BUTTON-OR-FACE, see `guix-info-insert-value-simple'."
(when value (insert "\n"))
(guix-info-insert-value-simple value button-or-face guix-info-indent))
(defun guix-info-insert-value-format (value &optional button-or-face
&rest button-properties)
"Format and insert parameter VALUE at point.
This function is intended to be called after inserting a title
with `guix-info-insert-title-format'.
VALUE may be split into several short lines to fit the current
window, depending on `guix-info-fill' and
`guix-info-multiline-prefix'. If VALUE is a list, its elements
will be separated with `guix-list-separator'.
If BUTTON-OR-FACE is a button type symbol, transform VALUE into
this (these) button(s). If it is a face symbol, propertize
inserted line(s) with this face.
BUTTON-PROPERTIES are passed to `guix-buttonize' (only if
BUTTON-OR-FACE is a button type)."
(let* ((button? (guix-button-type? button-or-face))
(face (unless button? button-or-face))
(fill-col (when (or button?
guix-info-fill
(not (stringp value)))
(- (guix-info-fill-column)
(length guix-info-multiline-prefix))))
(value (if (and value button?)
(apply #'guix-buttonize
value button-or-face guix-list-separator
button-properties)
value)))
(guix-split-insert value face fill-col
(concat "\n" guix-info-multiline-prefix))))
(defun guix-info-insert-time (seconds &optional face)
"Insert formatted time string using SECONDS at point."
(guix-format-insert (guix-get-time-string seconds)
(or face 'guix-info-time)))
;;; Buttons
(defvar guix-info-button-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent map button-map)
(define-key map (kbd "c") 'guix-info-button-copy-label)
map)
"Keymap for buttons in info buffers.")
(define-button-type 'guix
'keymap guix-info-button-map
'follow-link t)
(define-button-type 'guix-action
:supertype 'guix
'face 'guix-info-action-button
'mouse-face 'guix-info-action-button-mouse)
(define-button-type 'guix-file
:supertype 'guix
'face 'guix-info-file-name
'help-echo "Find file"
'action (lambda (btn)
(guix-find-file (button-label btn))))
(define-button-type 'guix-url
:supertype 'guix
'face 'guix-info-url
'help-echo "Browse URL"
'action (lambda (btn)
(browse-url (button-label btn))))
(defun guix-info-button-copy-label (&optional pos)
"Copy a label of the button at POS into kill ring.
If POS is nil, use the current point position."
(interactive)
(let ((button (button-at (or pos (point)))))
(when button
(guix-copy-as-kill (button-label button)))))
(defun guix-info-insert-action-button (label action &optional message
&rest properties)
"Make action button with LABEL and insert it at point.
ACTION is a function called when the button is pressed. It
should accept button as the argument.
MESSAGE is a button message.
See `insert-text-button' for the meaning of PROPERTIES."
(apply #'guix-insert-button
label 'guix-action
'action action
'help-echo message
properties))
;;; Major mode and interface definer
(defvar guix-info-mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent
map (make-composed-keymap (list guix-buffer-map button-buffer-map)
special-mode-map))
map)
"Keymap for `guix-info-mode' buffers.")
(define-derived-mode guix-info-mode special-mode "Guix-Info"
"Parent mode for displaying data in 'info' form."
(setq-local revert-buffer-function 'guix-buffer-revert))
(defun guix-info-mode-initialize ()
"Set up the current 'info' buffer."
;; Without this, syntactic fontification is performed, and it may
;; break our highlighting. For example, description of "emacs-typo"
;; package contains a single " (double-quote) character, so the
;; default syntactic fontification highlights the rest text after it
;; as a string. See (info "(elisp) Font Lock Basics") for details.
(setq font-lock-defaults '(nil t)))
(defmacro guix-info-define-interface (entry-type &rest args)
"Define 'info' interface for displaying ENTRY-TYPE entries.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
Required keywords:
- `:format' - default value of the generated
`guix-ENTRY-TYPE-info-format' variable.
The rest keyword arguments are passed to
`guix-buffer-define-interface' macro."
(declare (indent 1))
(let* ((entry-type-str (symbol-name entry-type))
(prefix (concat "guix-" entry-type-str "-info"))
(group (intern prefix))
(format-var (intern (concat prefix "-format"))))
(guix-keyword-args-let args
((show-entries-val :show-entries-function)
(format-val :format))
`(progn
(defcustom ,format-var ,format-val
,(format "\
List of methods for inserting '%s' entry.
Each METHOD should be either a function or should have the
following form:
(PARAM INSERT-TITLE INSERT-VALUE)
If METHOD is a function, it is called with an entry as argument.
PARAM is a name of '%s' entry parameter.
INSERT-TITLE may be either a symbol or a list. If it is a
symbol, it should be a function or an alias from
`guix-info-title-aliases', in which case it is called with title
as argument. If it is a list, it should have a
form (FUN-OR-ALIAS [ARGS ...]), in which case FUN-OR-ALIAS is
called with title and ARGS as arguments.
INSERT-VALUE may be either a symbol or a list. If it is a
symbol, it should be a function or an alias from
`guix-info-value-aliases', in which case it is called with value
and entry as arguments. If it is a list, it should have a
form (FUN-OR-ALIAS [ARGS ...]), in which case FUN-OR-ALIAS is
called with value and ARGS as arguments.
Parameters are inserted in the same order as defined by this list.
After calling each METHOD, a new line is inserted."
entry-type-str entry-type-str)
:type 'sexp
:group ',group)
(guix-alist-put!
'((format . ,format-var))
'guix-info-data ',entry-type)
,(if show-entries-val
`(guix-buffer-define-interface info ,entry-type
:show-entries-function ,show-entries-val
,@%foreign-args)
(let ((insert-fun (intern (concat prefix "-insert-entries"))))
`(progn
(defun ,insert-fun (entries)
,(format "\
Print '%s' ENTRIES in the current 'info' buffer."
entry-type-str)
(guix-info-insert-entries entries ',entry-type))
(guix-buffer-define-interface info ,entry-type
:insert-entries-function ',insert-fun
:mode-init-function 'guix-info-mode-initialize
,@%foreign-args))))))))
(defvar guix-info-font-lock-keywords
(eval-when-compile
`((,(rx "(" (group "guix-info-define-interface")
symbol-end)
. 1))))
(font-lock-add-keywords 'emacs-lisp-mode guix-info-font-lock-keywords)
(provide 'guix-info)
;;; guix-info.el ends here
-3
View File
@@ -1,3 +0,0 @@
(require 'guix-autoloads)
(message "(require 'guix-init) is obsolete, use (require 'guix-autoloads) instead.")
(provide 'guix-init)
-65
View File
@@ -1,65 +0,0 @@
;;; 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-read)
(require 'guix-backend)
(require 'guix-guile)
(defun guix-license-file (&optional directory)
"Return name of the file with license definitions.
DIRECTORY is a directory with Guix source (`guix-directory' by default)."
(expand-file-name "guix/licenses.scm"
(or directory guix-directory)))
(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)))
;;;###autoload
(defun guix-find-license-definition (license &optional directory)
"Open licenses file from DIRECTORY and move to the LICENSE definition.
See `guix-license-file' for the meaning of DIRECTORY.
Interactively, with prefix argument, prompt for DIRECTORY."
(interactive
(list (guix-read-license-name)
(guix-read-directory)))
(find-file (guix-license-file directory))
(goto-char (point-min))
(when (re-search-forward (concat "\"" (regexp-quote license) "\"")
nil t)
(beginning-of-defun)
(recenter 1)))
;;;###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)))
(provide 'guix-license)
;;; guix-license.el ends here
-585
View File
@@ -1,585 +0,0 @@
;;; guix-list.el --- 'List' 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 'list' buffer interface for displaying an arbitrary
;; data.
;;; Code:
(require 'cl-lib)
(require 'tabulated-list)
(require 'guix-buffer)
(require 'guix-info)
(require 'guix-entry)
(require 'guix-utils)
(guix-define-buffer-type list)
(defface guix-list-file-name
'((t :inherit guix-info-file-name))
"Face used for file names."
:group 'guix-list-faces)
(defface guix-list-url
'((t :inherit guix-info-url))
"Face used for URLs."
:group 'guix-list-faces)
(defface guix-list-time
'((t :inherit guix-info-time))
"Face used for time stamps."
:group 'guix-list-faces)
(defun guix-list-describe (&optional mark-names)
"Describe entries marked with a general mark.
'Describe' means display entries in 'info' buffer.
If no entries are marked, describe the current entry.
With prefix argument, describe entries marked with any mark."
(interactive (list (unless current-prefix-arg '(general))))
(let* ((ids (or (apply #'guix-list-get-marked-id-list mark-names)
(list (guix-list-current-id))))
(count (length ids))
(entry-type (guix-buffer-current-entry-type)))
(when (or (<= count (guix-list-describe-warning-count entry-type))
(y-or-n-p (format "Do you really want to describe %d entries? "
count)))
(guix-list-describe-entries entry-type ids))))
;;; Wrappers for 'list' variables
(defvar guix-list-data nil
"Alist with 'list' data.
This alist is filled by `guix-list-define-interface' macro.")
(defun guix-list-value (entry-type symbol)
"Return SYMBOL's value for ENTRY-TYPE from `guix-list-data'."
(symbol-value (guix-assq-value guix-list-data entry-type symbol)))
(defun guix-list-param-title (entry-type param)
"Return column title of an ENTRY-TYPE parameter PARAM."
(guix-buffer-param-title 'list entry-type param))
(defun guix-list-format (entry-type)
"Return column format for ENTRY-TYPE."
(guix-list-value entry-type 'format))
(defun guix-list-displayed-params (entry-type)
"Return a list of ENTRY-TYPE parameters that should be displayed."
(mapcar #'car (guix-list-format entry-type)))
(defun guix-list-sort-key (entry-type)
"Return sort key for ENTRY-TYPE."
(guix-list-value entry-type 'sort-key))
(defun guix-list-additional-marks (entry-type)
"Return alist of additional marks for ENTRY-TYPE."
(guix-list-value entry-type 'marks))
(defun guix-list-single-entry? (entry-type)
"Return non-nil, if a single entry of ENTRY-TYPE should be listed."
(guix-list-value entry-type 'list-single))
(defun guix-list-describe-warning-count (entry-type)
"Return the maximum number of ENTRY-TYPE entries to describe."
(guix-list-value entry-type 'describe-count))
(defun guix-list-describe-entries (entry-type ids)
"Describe ENTRY-TYPE entries with IDS in 'info' buffer"
(funcall (guix-list-value entry-type 'describe)
ids))
;;; Tabulated list internals
(defun guix-list-sort-numerically (column a b)
"Compare COLUMN of tabulated entries A and B numerically.
This function is used for sort predicates for `tabulated-list-format'.
Return non-nil, if B is bigger than A."
(cl-flet ((num (entry)
(string-to-number (aref (cadr entry) column))))
(> (num b) (num a))))
(defmacro guix-list-define-numerical-sorter (column)
"Define numerical sort predicate for COLUMN.
See `guix-list-sort-numerically' for details."
(let ((name (intern (format "guix-list-sort-numerically-%d" column)))
(doc (format "\
Predicate to sort tabulated list by column %d numerically.
See `guix-list-sort-numerically' for details."
column)))
`(defun ,name (a b)
,doc
(guix-list-sort-numerically ,column a b))))
(defmacro guix-list-define-numerical-sorters (n)
"Define numerical sort predicates for columns from 0 to N.
See `guix-list-define-numerical-sorter' for details."
`(progn
,@(mapcar (lambda (i)
`(guix-list-define-numerical-sorter ,i))
(number-sequence 0 n))))
(guix-list-define-numerical-sorters 9)
(defun guix-list-tabulated-sort-key (entry-type)
"Return ENTRY-TYPE sort key for `tabulated-list-sort-key'."
(let ((sort-key (guix-list-sort-key entry-type)))
(and sort-key
(cons (guix-list-param-title entry-type (car sort-key))
(cdr sort-key)))))
(defun guix-list-tabulated-vector (entry-type fun)
"Call FUN on each column specification for ENTRY-TYPE.
FUN is applied to column specification as arguments (see
`guix-list-format').
Return a vector made of values of FUN calls."
(apply #'vector
(mapcar (lambda (col-spec)
(apply fun col-spec))
(guix-list-format entry-type))))
(defun guix-list-tabulated-format (entry-type)
"Return ENTRY-TYPE list specification for `tabulated-list-format'."
(guix-list-tabulated-vector
entry-type
(lambda (param _ &rest rest-spec)
(cons (guix-list-param-title entry-type param)
rest-spec))))
(defun guix-list-tabulated-entries (entries entry-type)
"Return a list of ENTRY-TYPE values for `tabulated-list-entries'."
(mapcar (lambda (entry)
(list (guix-entry-id entry)
(guix-list-tabulated-entry entry entry-type)))
entries))
(defun guix-list-tabulated-entry (entry entry-type)
"Return array of values for `tabulated-list-entries'.
Parameters are taken from ENTRY-TYPE ENTRY."
(guix-list-tabulated-vector
entry-type
(lambda (param fun &rest _)
(let ((val (guix-entry-value entry param)))
(if fun
(funcall fun val entry)
(guix-get-string val))))))
;;; Displaying entries
(defun guix-list-get-display-entries (entry-type &rest args)
"Search for entries and show them in a 'list' buffer preferably."
(let ((entries (guix-buffer-get-entries 'list entry-type args)))
(if (or (null entries) ; = 0
(cdr entries) ; > 1
(guix-list-single-entry? entry-type)
(null (guix-buffer-value 'info entry-type 'show-entries)))
(guix-buffer-display-entries entries 'list entry-type args 'add)
(if (equal (guix-buffer-value 'info entry-type 'get-entries)
(guix-buffer-value 'list entry-type 'get-entries))
(guix-buffer-display-entries entries 'info entry-type args 'add)
(guix-buffer-get-display-entries 'info entry-type args 'add)))))
(defun guix-list-insert-entries (entries entry-type)
"Print ENTRY-TYPE ENTRIES in the current buffer."
(setq tabulated-list-entries
(guix-list-tabulated-entries entries entry-type))
(tabulated-list-print))
(defun guix-list-get-one-line (val &optional _)
"Return one-line string from a multi-line string VAL.
VAL may be nil."
(if val
(guix-get-one-line val)
(guix-get-string nil)))
(defun guix-list-get-time (seconds &optional _)
"Return formatted time string from SECONDS."
(guix-get-string (guix-get-time-string seconds)
'guix-list-time))
(defun guix-list-get-file-name (file-name &optional _)
"Return FILE-NAME button specification for `tabulated-list-entries'."
(list file-name
'face 'guix-list-file-name
'action (lambda (btn) (find-file (button-label btn)))
'follow-link t
'help-echo "Find file"))
(defun guix-list-get-url (url &optional _)
"Return URL button specification for `tabulated-list-entries'."
(list url
'face 'guix-list-url
'action (lambda (btn) (browse-url (button-label btn)))
'follow-link t
'help-echo "Browse URL"))
;;; 'List' lines
(defun guix-list-current-id ()
"Return ID of the entry at point."
(or (tabulated-list-get-id)
(user-error "No entry here")))
(defun guix-list-current-entry ()
"Return entry at point."
(guix-entry-by-id (guix-list-current-id)
(guix-buffer-current-entries)))
(defun guix-list-for-each-line (fun &rest args)
"Call FUN with ARGS for each entry line."
(or (derived-mode-p 'guix-list-mode)
(error "The current buffer is not in Guix List mode"))
(save-excursion
(goto-char (point-min))
(while (not (eobp))
(apply fun args)
(forward-line))))
(defun guix-list-fold-lines (fun init)
"Fold over entry lines in the current list buffer.
Call FUN with RESULT as argument for each line, using INIT as
the initial value of RESULT. Return the final result."
(let ((res init))
(guix-list-for-each-line
(lambda () (setq res (funcall fun res))))
res))
;;; Marking and sorting
(defvar-local guix-list-marked nil
"List of the marked entries.
Each element of the list has a form:
(ID MARK-NAME . ARGS)
ID is an entry ID.
MARK-NAME is a symbol from `guix-list-marks'.
ARGS is a list of additional values.")
(defvar-local guix-list-marks nil
"Alist of available mark names and mark characters.")
(defvar guix-list-default-marks
'((empty . ?\s)
(general . ?*))
"Alist of default mark names and mark characters.")
(defun guix-list-marks (entry-type)
"Return alist of available marks for ENTRY-TYPE."
(append guix-list-default-marks
(guix-list-additional-marks entry-type)))
(defun guix-list-get-mark (name)
"Return mark character by its NAME."
(or (guix-assq-value guix-list-marks name)
(error "Mark '%S' not found" name)))
(defun guix-list-get-mark-string (name)
"Return mark string by its NAME."
(string (guix-list-get-mark name)))
(defun guix-list-current-mark ()
"Return mark character of the current line."
(char-after (line-beginning-position)))
(defun guix-list-get-marked (&rest mark-names)
"Return list of specs of entries marked with any mark from MARK-NAMES.
Entry specs are elements from `guix-list-marked' list.
If MARK-NAMES are not specified, use all marks from
`guix-list-marks' except the `empty' one."
(or mark-names
(setq mark-names
(delq 'empty
(mapcar #'car guix-list-marks))))
(cl-remove-if-not (lambda (assoc)
(memq (cadr assoc) mark-names))
guix-list-marked))
(defun guix-list-get-marked-args (mark-name)
"Return list of (ID . ARGS) elements from lines marked with MARK-NAME.
See `guix-list-marked' for the meaning of ARGS."
(mapcar (lambda (spec)
(let ((id (car spec))
(args (cddr spec)))
(cons id args)))
(guix-list-get-marked mark-name)))
(defun guix-list-get-marked-id-list (&rest mark-names)
"Return list of IDs of entries marked with any mark from MARK-NAMES.
See `guix-list-get-marked' for details."
(mapcar #'car (apply #'guix-list-get-marked mark-names)))
(defun guix-list--mark (mark-name &optional advance &rest args)
"Put a mark on the current line.
Also add the current entry to `guix-list-marked' using its ID and ARGS.
MARK-NAME is a symbol from `guix-list-marks'.
If ADVANCE is non-nil, move forward by one line after marking."
(let ((id (guix-list-current-id)))
(if (eq mark-name 'empty)
(setq guix-list-marked (assq-delete-all id guix-list-marked))
(let ((assoc (assq id guix-list-marked))
(val (cons mark-name args)))
(if assoc
(setcdr assoc val)
(push (cons id val) guix-list-marked)))))
(tabulated-list-put-tag (guix-list-get-mark-string mark-name)
advance))
(defun guix-list-mark (&optional arg)
"Mark the current line and move to the next line.
With ARG, mark all lines."
(interactive "P")
(if arg
(guix-list-mark-all)
(guix-list--mark 'general t)))
(defun guix-list-mark-all (&optional mark-name)
"Mark all lines with MARK-NAME mark.
MARK-NAME is a symbol from `guix-list-marks'.
Interactively, put a general mark on all lines."
(interactive)
(or mark-name (setq mark-name 'general))
(guix-list-for-each-line #'guix-list--mark mark-name))
(defun guix-list-unmark (&optional arg)
"Unmark the current line and move to the next line.
With ARG, unmark all lines."
(interactive "P")
(if arg
(guix-list-unmark-all)
(guix-list--mark 'empty t)))
(defun guix-list-unmark-backward ()
"Move up one line and unmark it."
(interactive)
(forward-line -1)
(guix-list--mark 'empty))
(defun guix-list-unmark-all ()
"Unmark all lines."
(interactive)
(guix-list-mark-all 'empty))
(defun guix-list-restore-marks ()
"Put marks according to `guix-list-marked'."
(guix-list-for-each-line
(lambda ()
(let ((mark-name (car (guix-assq-value guix-list-marked
(guix-list-current-id)))))
(tabulated-list-put-tag
(guix-list-get-mark-string (or mark-name 'empty)))))))
(defun guix-list-sort (&optional n)
"Sort guix list entries by the column at point.
With a numeric prefix argument N, sort the Nth column.
Same as `tabulated-list-sort', but also restore marks after sorting."
(interactive "P")
(tabulated-list-sort n)
(guix-list-restore-marks))
;;; Major mode and interface definer
(defvar guix-list-mode-map
(let ((map (make-sparse-keymap)))
(set-keymap-parent
map (make-composed-keymap guix-buffer-map
tabulated-list-mode-map))
(define-key map (kbd "RET") 'guix-list-describe)
(define-key map (kbd "i") 'guix-list-describe)
(define-key map (kbd "m") 'guix-list-mark)
(define-key map (kbd "*") 'guix-list-mark)
(define-key map (kbd "u") 'guix-list-unmark)
(define-key map (kbd "DEL") 'guix-list-unmark-backward)
(define-key map [remap tabulated-list-sort] 'guix-list-sort)
map)
"Keymap for `guix-list-mode' buffers.")
(define-derived-mode guix-list-mode tabulated-list-mode "Guix-List"
"Parent mode for displaying data in 'list' form.")
(defun guix-list-mode-initialize (entry-type)
"Set up the current 'list' buffer for displaying ENTRY-TYPE entries."
(setq tabulated-list-padding 2
tabulated-list-format (guix-list-tabulated-format entry-type)
tabulated-list-sort-key (guix-list-tabulated-sort-key entry-type))
(setq-local guix-list-marks (guix-list-marks entry-type))
(tabulated-list-init-header))
(defmacro guix-list-define-interface (entry-type &rest args)
"Define 'list' interface for displaying ENTRY-TYPE entries.
Remaining arguments (ARGS) should have a form [KEYWORD VALUE] ...
Required keywords:
- `:format' - default value of the generated
`guix-ENTRY-TYPE-list-format' variable.
Optional keywords:
- `:sort-key' - default value of the generated
`guix-ENTRY-TYPE-list-sort-key' variable.
- `:describe-function' - default value of the generated
`guix-ENTRY-TYPE-describe-function' variable.
- `:list-single?' - default value of the generated
`guix-ENTRY-TYPE-list-single' variable.
- `:marks' - default value of the generated
`guix-ENTRY-TYPE-list-marks' variable.
The rest keyword arguments are passed to
`guix-buffer-define-interface' macro."
(declare (indent 1))
(let* ((entry-type-str (symbol-name entry-type))
(prefix (concat "guix-" entry-type-str "-list"))
(group (intern prefix))
(describe-var (intern (concat prefix "-describe-function")))
(describe-count-var (intern (concat prefix
"-describe-warning-count")))
(format-var (intern (concat prefix "-format")))
(sort-key-var (intern (concat prefix "-sort-key")))
(list-single-var (intern (concat prefix "-single")))
(marks-var (intern (concat prefix "-marks"))))
(guix-keyword-args-let args
((show-entries-val :show-entries-function)
(describe-val :describe-function)
(describe-count-val :describe-count 10)
(format-val :format)
(sort-key-val :sort-key)
(list-single-val :list-single?)
(marks-val :marks))
`(progn
(defcustom ,format-var ,format-val
,(format "\
List of format values of the displayed columns.
Each element of the list has a form:
(PARAM VALUE-FUN WIDTH SORT . PROPS)
PARAM is a name of '%s' entry parameter.
VALUE-FUN may be either nil or a function returning a value that
will be inserted. The function is called with 2 arguments: the
first one is the value of the parameter; the second one is an
entry (alist of parameter names and values).
For the meaning of WIDTH, SORT and PROPS, see
`tabulated-list-format'."
entry-type-str)
:type 'sexp
:group ',group)
(defcustom ,sort-key-var ,sort-key-val
,(format "\
Default sort key for 'list' buffer with '%s' entries.
Should be nil (no sort) or have a form:
(PARAM . FLIP)
PARAM is the name of '%s' entry parameter. For the meaning of
FLIP, see `tabulated-list-sort-key'."
entry-type-str entry-type-str)
:type '(choice (const :tag "No sort" nil)
(cons symbol boolean))
:group ',group)
(defvar ,marks-var ,marks-val
,(format "\
Alist of additional marks for 'list' buffer with '%s' entries.
Marks from this list are used along with `guix-list-default-marks'."
entry-type-str))
(defcustom ,list-single-var ,list-single-val
,(format "\
If non-nil, list '%s' entry even if it is the only matching result.
If nil, show a single '%s' entry in the 'info' buffer."
entry-type-str entry-type-str)
:type 'boolean
:group ',group)
(defcustom ,describe-count-var ,describe-count-val
,(format "\
The maximum number of '%s' entries to describe without a warning.
If a user wants to describe more than this number of marked
entries, he will be prompted for confirmation.
See also `guix-list-describe'."
entry-type-str)
:type 'integer
:group ',group)
(defvar ,describe-var ,describe-val
,(format "Function used to describe '%s' entries."
entry-type-str))
(guix-alist-put!
'((describe . ,describe-var)
(describe-count . ,describe-count-var)
(format . ,format-var)
(sort-key . ,sort-key-var)
(list-single . ,list-single-var)
(marks . ,marks-var))
'guix-list-data ',entry-type)
,(if show-entries-val
`(guix-buffer-define-interface list ,entry-type
:show-entries-function ,show-entries-val
,@%foreign-args)
(let ((insert-fun (intern (concat prefix "-insert-entries")))
(mode-init-fun (intern (concat prefix "-mode-initialize"))))
`(progn
(defun ,insert-fun (entries)
,(format "\
Print '%s' ENTRIES in the current 'list' buffer."
entry-type-str)
(guix-list-insert-entries entries ',entry-type))
(defun ,mode-init-fun ()
,(format "\
Set up the current 'list' buffer for displaying '%s' entries."
entry-type-str)
(guix-list-mode-initialize ',entry-type))
(guix-buffer-define-interface list ,entry-type
:insert-entries-function ',insert-fun
:mode-init-function ',mode-init-fun
,@%foreign-args))))))))
(defvar guix-list-font-lock-keywords
(eval-when-compile
`((,(rx "(" (group "guix-list-define-interface")
symbol-end)
. 1))))
(font-lock-add-keywords 'emacs-lisp-mode guix-list-font-lock-keywords)
(provide 'guix-list)
;;; guix-list.el ends here
-79
View File
@@ -1,79 +0,0 @@
;;; guix-location.el --- Package locations
;; 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 Location as published by
;; the Free Software Foundation, either version 3 of the Location, 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 Location for more details.
;; You should have received a copy of the GNU General Public Location
;; along with this program. If not, see <http://www.gnu.org/locations/>.
;;; Commentary:
;; This file provides the code to work with locations of Guix packages.
;;; Code:
(require 'cl-lib)
(require 'guix-backend)
(require 'guix-read)
(require 'guix-guile)
(defun guix-package-location (id-or-name)
"Return location of a package with ID-OR-NAME.
For the meaning of location, see `guix-find-location'."
(guix-eval-read (guix-make-guile-expression
'package-location-string id-or-name)))
;;;###autoload
(defun guix-find-location (location &optional directory)
"Go to LOCATION of a package.
LOCATION is a string of the form:
\"FILE:LINE:COLUMN\"
If FILE is relative, it is considered to be relative to
DIRECTORY (`guix-directory' by default).
Interactively, prompt for LOCATION. With prefix argument, prompt
for DIRECTORY as well."
(interactive
(list (guix-read-package-location)
(guix-read-directory)))
(cl-multiple-value-bind (file line column)
(split-string location ":")
(find-file (expand-file-name file (or directory guix-directory)))
(when (and line column)
(let ((line (string-to-number line))
(column (string-to-number column)))
(goto-char (point-min))
(forward-line (- line 1))
(move-to-column column)
(recenter 1)))))
;;;###autoload
(defun guix-edit (id-or-name &optional directory)
"Edit (go to location of) package with ID-OR-NAME.
See `guix-find-location' for the meaning of package location and
DIRECTORY.
Interactively, with prefix argument, prompt for DIRECTORY."
(interactive
(list (guix-read-package-name)
(guix-read-directory)))
(let ((loc (guix-package-location id-or-name)))
(if loc
(guix-find-location loc directory)
(message "Couldn't find package location."))))
(provide 'guix-location)
;;; guix-location.el ends here
-1163
View File
File diff suppressed because it is too large Load Diff
-247
View File
@@ -1,247 +0,0 @@
;;; guix-messages.el --- Minibuffer messages
;; 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 `guix-result-message' function used to show a
;; minibuffer message after displaying packages/generations in a
;; list/info buffer.
;;; Code:
(require 'cl-lib)
(require 'guix-utils)
(defvar guix-messages
`((package
(id
,(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)))
(location
,(lambda (_ entries locations)
(apply #'guix-message-packages-by-location
entries 'package locations)))
(from-file
(0 "No package in file '%s'." val)
(1 "Package from file '%s'." val))
(regexp
(0 "No packages matching '%s'." val)
(1 "A single package matching '%s'." val)
(many "%d packages matching '%s'." count val))
(all-available
(0 "No packages are available for some reason.")
(1 "A single available package (that's strange).")
(many "%d available packages." count))
(newest-available
(0 "No packages are available for some reason.")
(1 "A single newest available package (that's strange).")
(many "%d newest available packages." count))
(installed
(0 "No packages installed in profile '%s'." profile)
(1 "A single package installed in profile '%s'." profile)
(many "%d packages installed in profile '%s'." count profile))
(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)))
(output
(id
,(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)))
(location
,(lambda (_ entries locations)
(apply #'guix-message-packages-by-location
entries 'output locations)))
(from-file
(0 "No package in file '%s'." val)
(1 "Package from file '%s'." val)
(many "Package outputs from file '%s'." val))
(regexp
(0 "No package outputs matching '%s'." val)
(1 "A single package output matching '%s'." val)
(many "%d package outputs matching '%s'." count val))
(all-available
(0 "No package outputs are available for some reason.")
(1 "A single available package output (that's strange).")
(many "%d available package outputs." count))
(newest-available
(0 "No package outputs are available for some reason.")
(1 "A single newest available package output (that's strange).")
(many "%d newest available package outputs." count))
(installed
(0 "No package outputs installed in profile '%s'." profile)
(1 "A single package output installed in profile '%s'." profile)
(many "%d package outputs installed in profile '%s'." count profile))
(obsolete
(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))
(profile-diff
guix-message-outputs-by-diff))
(generation
(id
(0 "Generations not found.")
(1 "")
(many "%d generations." count))
(last
(0 "No generations in profile '%s'." profile)
(1 "The last generation of profile '%s'." profile)
(many "%d last generations of profile '%s'." count profile))
(all
(0 "No generations in profile '%s'." profile)
(1 "A single generation available in profile '%s'." profile)
(many "%d generations available in profile '%s'." count profile))
(time
guix-message-generations-by-time))))
(defun guix-message-string-name (name)
"Return a quoted name string."
(concat "'" name "'"))
(defun guix-message-string-entry-type (entry-type &optional plural)
"Return a string denoting an ENTRY-TYPE."
(cl-ecase entry-type
(package
(if plural "packages" "package"))
(output
(if plural "package outputs" "package output"))
(generation
(if plural "generations" "generation"))))
(defun guix-message-string-entries (count entry-type)
"Return a string denoting the COUNT of ENTRY-TYPE entries."
(cl-case count
(0 (concat "No "
(guix-message-string-entry-type
entry-type 'plural)))
(1 (concat "A single "
(guix-message-string-entry-type
entry-type)))
(t (format "%d %s"
count
(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))
(str-beg (guix-message-string-entries count entry-type))
(str-end (if (cdr names)
(concat "matching the following names: "
(mapconcat #'guix-message-string-name
names ", "))
(concat "with name "
(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-packages-by-location (entries entry-type location)
"Display a message for packages or outputs searched by LOCATION."
(let* ((count (length entries))
(str-beg (guix-message-string-entries count entry-type))
(str-end (format "placed in '%s'" location)))
(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))
(str-beg (guix-message-string-entries count 'generation))
(time-beg (guix-get-time-string (car times)))
(time-end (guix-get-time-string (cadr times))))
(message (concat "%s of profile '%s'\n"
"matching time period '%s' - '%s'.")
str-beg profile time-beg time-end)))
(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))
(profile1 (car profiles))
(profile2 (cadr profiles)))
(cl-multiple-value-bind (new old str-action)
(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
(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)
(let* ((count (length entries))
(count-key (if (> count 1) 'many count))
(msg-spec (guix-assq-value type-spec count-key))
(msg (car msg-spec))
(args (cdr msg-spec)))
(mapc (lambda (subst)
(setq args (cl-substitute (cdr subst) (car subst) args)))
`((count . ,count)
(val . ,(car search-vals))
(profile . ,profile)))
(apply #'message msg args)))))
(provide 'guix-messages)
;;; guix-messages.el ends here
-370
View File
@@ -1,370 +0,0 @@
;;; guix-pcomplete.el --- Functions for completing guix commands -*- 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 completions for "guix" command that may be used in
;; `shell', `eshell' and wherever `pcomplete' works.
;;; Code:
(require 'pcomplete)
(require 'pcmpl-unix)
(require 'cl-lib)
(require 'guix-utils)
(require 'guix-help-vars)
;;; Interacting with guix
(defcustom guix-pcomplete-guix-program (executable-find "guix")
"Name of the 'guix' program.
It is used to find guix commands, options, packages, etc."
:type 'file
:group 'pcomplete
:group 'guix)
(defun guix-pcomplete-run-guix (&rest args)
"Run `guix-pcomplete-guix-program' with ARGS.
Insert the output to the current buffer."
(apply #'call-process
guix-pcomplete-guix-program nil t nil args))
(defun guix-pcomplete-run-guix-and-search (regexp &optional group
&rest args)
"Run `guix-pcomplete-guix-program' with ARGS and search for matches.
Return a list of strings matching REGEXP.
GROUP specifies a parenthesized expression used in REGEXP."
(with-temp-buffer
(apply #'guix-pcomplete-run-guix args)
(let (result)
(guix-while-search regexp
(push (match-string-no-properties group) result))
(nreverse result))))
(defmacro guix-pcomplete-define-options-finder (name docstring regexp
&optional filter)
"Define function NAME to receive guix options and commands.
The defined function takes an optional COMMAND argument. This
function will run 'guix COMMAND --help' (or 'guix --help' if
COMMAND is nil) using `guix-pcomplete-run-guix-and-search' and
return its result.
If FILTER is specified, it should be a function. The result is
passed to this FILTER as argument and the result value of this
function call is returned."
(declare (doc-string 2) (indent 1))
`(guix-memoized-defun ,name (&optional command)
,docstring
(let* ((args '("--help"))
(args (if command (cons command args) args))
(res (apply #'guix-pcomplete-run-guix-and-search
,regexp guix-help-parse-regexp-group args)))
,(if filter
`(funcall ,filter res)
'res))))
(guix-pcomplete-define-options-finder guix-pcomplete-commands
"If COMMAND is nil, return a list of available guix commands.
If COMMAND is non-nil (it should be a string), return available
subcommands, actions, etc. for this guix COMMAND."
guix-help-parse-command-regexp)
(guix-pcomplete-define-options-finder guix-pcomplete-long-options
"Return a list of available long options for guix COMMAND."
guix-help-parse-long-option-regexp)
(guix-pcomplete-define-options-finder guix-pcomplete-short-options
"Return a string with available short options for guix COMMAND."
guix-help-parse-short-option-regexp
(lambda (list)
(guix-concat-strings list "")))
(guix-memoized-defun guix-pcomplete-all-packages ()
"Return a list of all available Guix packages."
(guix-pcomplete-run-guix-and-search
guix-help-parse-package-regexp
guix-help-parse-regexp-group
"package" "--list-available"))
(guix-memoized-defun guix-pcomplete-installed-packages (&optional profile)
"Return a list of Guix packages installed in PROFILE."
(let* ((args (and profile
(list (concat "--profile=" profile))))
(args (append '("package" "--list-installed") args)))
(apply #'guix-pcomplete-run-guix-and-search
guix-help-parse-package-regexp
guix-help-parse-regexp-group
args)))
(guix-memoized-defun guix-pcomplete-lint-checkers ()
"Return a list of all available lint checkers."
(guix-pcomplete-run-guix-and-search
guix-help-parse-list-regexp
guix-help-parse-regexp-group
"lint" "--list-checkers"))
(guix-memoized-defun guix-pcomplete-graph-types ()
"Return a list of all available graph types."
(guix-pcomplete-run-guix-and-search
guix-help-parse-list-regexp
guix-help-parse-regexp-group
"graph" "--list-types"))
(guix-memoized-defun guix-pcomplete-refresh-updaters ()
"Return a list of all available refresh updater types."
(guix-pcomplete-run-guix-and-search
guix-help-parse-list-regexp
guix-help-parse-regexp-group
"refresh" "--list-updaters"))
;;; Completing
(defvar guix-pcomplete-option-regexp (rx string-start "-")
"Regexp to match an option.")
(defvar guix-pcomplete-long-option-regexp (rx string-start "--")
"Regexp to match a long option.")
(defvar guix-pcomplete-long-option-with-arg-regexp
(rx string-start
(group "--" (one-or-more any)) "="
(group (zero-or-more any)))
"Regexp to match a long option with its argument.
The first parenthesized group defines the option and the second
group - the argument.")
(defvar guix-pcomplete-short-option-with-arg-regexp
(rx string-start
(group "-" (not (any "-")))
(group (zero-or-more any)))
"Regexp to match a short option with its argument.
The first parenthesized group defines the option and the second
group - the argument.")
(defun guix-pcomplete-match-option ()
"Return non-nil, if the current argument is an option."
(pcomplete-match guix-pcomplete-option-regexp 0))
(defun guix-pcomplete-match-long-option ()
"Return non-nil, if the current argument is a long option."
(pcomplete-match guix-pcomplete-long-option-regexp 0))
(defun guix-pcomplete-match-long-option-with-arg ()
"Return non-nil, if the current argument is a long option with value."
(pcomplete-match guix-pcomplete-long-option-with-arg-regexp 0))
(defun guix-pcomplete-match-short-option-with-arg ()
"Return non-nil, if the current argument is a short option with value."
(pcomplete-match guix-pcomplete-short-option-with-arg-regexp 0))
(defun guix-pcomplete-long-option-arg (option args)
"Return a long OPTION's argument from a list of arguments ARGS."
(let* ((re (concat "\\`" option "=\\(.*\\)"))
(args (cl-member-if (lambda (arg)
(string-match re arg))
args))
(cur (car args)))
(when cur
(match-string-no-properties 1 cur))))
(defun guix-pcomplete-short-option-arg (option args)
"Return a short OPTION's argument from a list of arguments ARGS."
(let* ((re (concat "\\`" option "\\(.*\\)"))
(args (cl-member-if (lambda (arg)
(string-match re arg))
args))
(cur (car args)))
(when cur
(let ((arg (match-string-no-properties 1 cur)))
(if (string= "" arg)
(cadr args) ; take the next arg
arg)))))
(defun guix-pcomplete-complete-comma-args (entries)
"Complete comma separated arguments using ENTRIES."
(let ((index pcomplete-index))
(while (= index pcomplete-index)
(let* ((args (if (or (guix-pcomplete-match-long-option-with-arg)
(guix-pcomplete-match-short-option-with-arg))
(pcomplete-match-string 2 0)
(pcomplete-arg 0)))
(input (if (string-match ".*,\\(.*\\)" args)
(match-string-no-properties 1 args)
args)))
(pcomplete-here* entries input)))))
(defun guix-pcomplete-complete-command-arg (command)
"Complete argument for guix COMMAND."
(cond
((member command
'("archive" "build" "challenge" "edit" "environment"
"graph" "lint" "refresh" "size"))
(while t
(pcomplete-here (guix-pcomplete-all-packages))))
(t (pcomplete-here* (pcomplete-entries)))))
(defun guix-pcomplete-complete-option-arg (command option &optional input)
"Complete argument for COMMAND's OPTION.
INPUT is the current partially completed string."
(cl-flet ((option? (short long)
(or (string= option short)
(string= option long)))
(command? (&rest commands)
(member command commands))
(complete (entries)
(pcomplete-here entries input nil t))
(complete* (entries)
(pcomplete-here* entries input t)))
(cond
((option? "-L" "--load-path")
(complete* (pcomplete-dirs)))
((string= "--key-download" option)
(complete* guix-help-key-policies))
((command? "package")
(cond
;; For '--install[=]' and '--remove[=]', try to complete a package
;; name (INPUT) after the "=" sign, and then the rest packages
;; separated with spaces.
((option? "-i" "--install")
(complete (guix-pcomplete-all-packages))
(while (not (guix-pcomplete-match-option))
(pcomplete-here (guix-pcomplete-all-packages))))
((option? "-r" "--remove")
(let* ((profile (or (guix-pcomplete-short-option-arg
"-p" pcomplete-args)
(guix-pcomplete-long-option-arg
"--profile" pcomplete-args)))
(profile (and profile (expand-file-name profile))))
(complete (guix-pcomplete-installed-packages profile))
(while (not (guix-pcomplete-match-option))
(pcomplete-here (guix-pcomplete-installed-packages profile)))))
((string= "--show" option)
(complete (guix-pcomplete-all-packages)))
((option? "-p" "--profile")
(complete* (pcomplete-dirs)))
((or (option? "-f" "--install-from-file")
(option? "-m" "--manifest"))
(complete* (pcomplete-entries)))))
((and (command? "archive" "build" "size")
(option? "-s" "--system"))
(complete* guix-help-system-types))
((and (command? "build")
(or (option? "-f" "--file")
(option? "-r" "--root")
(string= "--with-source" option)))
(complete* (pcomplete-entries)))
((and (command? "graph")
(option? "-t" "--type"))
(complete* (guix-pcomplete-graph-types)))
((and (command? "environment")
(option? "-l" "--load"))
(complete* (pcomplete-entries)))
((and (command? "hash" "download")
(option? "-f" "--format"))
(complete* guix-help-hash-formats))
((and (command? "lint")
(option? "-c" "--checkers"))
(guix-pcomplete-complete-comma-args
(guix-pcomplete-lint-checkers)))
((and (command? "publish")
(option? "-u" "--user"))
(complete* (pcmpl-unix-user-names)))
((command? "refresh")
(cond
((option? "-s" "--select")
(complete* guix-help-refresh-subsets))
((option? "-t" "--type")
(guix-pcomplete-complete-comma-args
(guix-pcomplete-refresh-updaters)))))
((and (command? "size")
(option? "-m" "--map-file"))
(complete* (pcomplete-entries))))))
(defun guix-pcomplete-complete-options (command)
"Complete options (with their arguments) for guix COMMAND."
(while (guix-pcomplete-match-option)
(let ((index pcomplete-index))
(if (guix-pcomplete-match-long-option)
;; Long options.
(if (guix-pcomplete-match-long-option-with-arg)
(let ((option (pcomplete-match-string 1 0))
(arg (pcomplete-match-string 2 0)))
(guix-pcomplete-complete-option-arg
command option arg))
(pcomplete-here* (guix-pcomplete-long-options command))
;; We support '--opt arg' style (along with '--opt=arg'),
;; because 'guix package --install/--remove' may be used this
;; way. So try to complete an argument after the option has
;; been completed.
(unless (guix-pcomplete-match-option)
(guix-pcomplete-complete-option-arg
command (pcomplete-arg 0 -1))))
;; Short options.
(let ((arg (pcomplete-arg 0)))
(if (> (length arg) 2)
;; Support specifying an argument after a short option without
;; spaces (for example, '-L/tmp/foo').
(guix-pcomplete-complete-option-arg
command
(substring-no-properties arg 0 2)
(substring-no-properties arg 2))
(pcomplete-opt (guix-pcomplete-short-options command))
(guix-pcomplete-complete-option-arg
command (pcomplete-arg 0 -1)))))
;; If there were no completions, move to the next argument and get
;; out if the last argument is achieved.
(when (= index pcomplete-index)
(if (= pcomplete-index pcomplete-last)
(throw 'pcompleted nil)
(pcomplete-next-arg))))))
;;;###autoload
(defun pcomplete/guix ()
"Completion for `guix'."
(let ((commands (guix-pcomplete-commands)))
(pcomplete-here* (cons "--help" commands))
(let ((command (pcomplete-arg 'first 1)))
(when (member command commands)
(guix-pcomplete-complete-options command)
(let ((subcommands (guix-pcomplete-commands command)))
(when subcommands
(pcomplete-here* subcommands)))
(guix-pcomplete-complete-options command)
(guix-pcomplete-complete-command-arg command)))))
(provide 'guix-pcomplete)
;;; guix-pcomplete.el ends here
-48
View File
@@ -1,48 +0,0 @@
;;; guix-popup.el --- Popup windows library
;; 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 `guix-define-popup' macro which is just an alias
;; to `magit-define-popup'. According to the manual (info
;; "(magit-popup) Defining prefix and suffix commands") `magit-popup'
;; library will eventually be superseded by a more general library.
;;; Code:
(require 'magit-popup)
(defalias 'guix-define-popup 'magit-define-popup)
(defvar guix-popup-font-lock-keywords
(eval-when-compile
`((,(rx "("
(group "guix-define-popup")
symbol-end
(zero-or-more blank)
(zero-or-one
(group (one-or-more (or (syntax word) (syntax symbol))))))
(1 font-lock-keyword-face)
(2 font-lock-function-name-face nil t)))))
(font-lock-add-keywords 'emacs-lisp-mode guix-popup-font-lock-keywords)
(provide 'guix-popup)
;;; guix-popup.el ends here
-210
View File
@@ -1,210 +0,0 @@
;;; guix-prettify.el --- Prettify Guix store file names
;; 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 package provides minor-mode for prettifying Guix store file
;; names — i.e., after enabling `guix-prettify-mode',
;; '/gnu/store/72f54nfp6g1hz873w8z3gfcah0h4nl9p-foo-0.1' names will be
;; replaced with '/gnu/store/…-foo-0.1' in the current buffer. There is
;; also `global-guix-prettify-mode' for global prettifying.
;; To install, add the following to your emacs init file:
;;
;; (add-to-list 'load-path "/path/to/dir-with-guix-prettify")
;; (autoload 'guix-prettify-mode "guix-prettify" nil t)
;; (autoload 'global-guix-prettify-mode "guix-prettify" nil t)
;; If you want to enable/disable composition after "M-x font-lock-mode",
;; use the following setting:
;;
;; (setq font-lock-extra-managed-props
;; (cons 'composition font-lock-extra-managed-props))
;; Credits:
;;
;; Thanks to Ludovic Courtès for the idea of this package.
;;
;; Thanks to the authors of `prettify-symbols-mode' (part of Emacs 24.4)
;; and "pretty-symbols.el" <http://github.com/drothlis/pretty-symbols>
;; for the code. It helped to write this package.
;;; Code:
(require 'guix-utils)
(defgroup guix-prettify nil
"Prettify Guix store file names."
:prefix "guix-prettify-"
:group 'guix
:group 'font-lock
:group 'convenience)
(defcustom guix-prettify-char ?…
"Character used for prettifying."
:type 'character
:group 'guix-prettify)
(defcustom guix-prettify-decompose-force nil
"If non-nil, remove any composition.
By default, after disabling `guix-prettify-mode',
compositions (prettifying names with `guix-prettify-char') are
removed only from strings matching `guix-prettify-regexp', so
that compositions created by other modes are left untouched.
Set this variable to non-nil, if you want to remove any
composition unconditionally (like `prettify-symbols-mode' does).
Most likely it will do no harm and will make the process of
disabling `guix-prettify-mode' a little faster."
:type 'boolean
:group 'guix-prettify)
(defcustom guix-prettify-regexp
;; The following file names / URLs should be abbreviated:
;; /gnu/store/…-foo-0.1
;; /nix/store/…-foo-0.1
;; http://hydra.gnu.org/nar/…-foo-0.1
;; http://hydra.gnu.org/log/…-foo-0.1
(rx "/" (or "store" "nar" "log") "/"
;; Hash-parts do not include "e", "o", "u" and "t". See base32Chars
;; at <https://github.com/NixOS/nix/blob/master/src/libutil/hash.cc>
(group (= 32 (any "0-9" "a-d" "f-n" "p-s" "v-z"))))
"Regexp matching file names for prettifying.
Disable `guix-prettify-mode' before modifying this variable and
make sure to modify `guix-prettify-regexp-group' if needed.
Example of a \"deeper\" prettifying:
(setq guix-prettify-regexp \"store/[[:alnum:]]\\\\\\={32\\\\}\"
guix-prettify-regexp-group 0)
This will transform
'/gnu/store/72f54nfp6g1hz873w8z3gfcah0h4nl9p-foo-0.1' into
'/gnu/…-foo-0.1'"
:type 'regexp
:group 'guix-prettify)
(defcustom guix-prettify-regexp-group 1
"Regexp group in `guix-prettify-regexp' for prettifying."
:type 'integer
:group 'guix-prettify)
(defvar guix-prettify-special-modes
'(guix-info-mode ibuffer-mode)
"List of special modes that support font-locking.
By default, \\[global-guix-prettify-mode] enables prettifying in
all buffers except the ones where `font-lock-defaults' is
nil (see Info node `(elisp) Font Lock Basics'), because it may
break the existing highlighting.
Modes from this list and all derived modes are exceptions
\(`global-guix-prettify-mode' enables prettifying there).")
(defvar guix-prettify-flush-function
(cond ((fboundp 'font-lock-flush) #'font-lock-flush)
((fboundp 'jit-lock-refontify) #'jit-lock-refontify))
"Function used to refontify buffer.
This function is called without arguments after
enabling/disabling `guix-prettify-mode'. If nil, do nothing.")
(defun guix-prettify-compose ()
"Compose matching region in the current buffer."
(let ((beg (match-beginning guix-prettify-regexp-group))
(end (match-end guix-prettify-regexp-group)))
(compose-region beg end guix-prettify-char 'decompose-region))
;; Return nil because we're not adding any face property.
nil)
(defun guix-prettify-decompose-buffer ()
"Remove file names compositions from the current buffer."
(with-silent-modifications
(let ((inhibit-read-only t))
(if guix-prettify-decompose-force
(remove-text-properties (point-min)
(point-max)
'(composition nil))
(guix-while-search guix-prettify-regexp
(remove-text-properties
(match-beginning guix-prettify-regexp-group)
(match-end guix-prettify-regexp-group)
'(composition nil)))))))
;;;###autoload
(define-minor-mode guix-prettify-mode
"Toggle Guix Prettify mode.
With a prefix argument ARG, enable Guix Prettify mode if ARG is
positive, and disable it otherwise. If called from Lisp, enable
the mode if ARG is omitted or nil.
When Guix Prettify mode is enabled, hash-parts of the Guix store
file names (see `guix-prettify-regexp') are prettified,
i.e. displayed as `guix-prettify-char' character. This mode can
be enabled programmatically using hooks:
(add-hook 'shell-mode-hook 'guix-prettify-mode)
It is possible to enable the mode in any buffer, however not any
buffer's highlighting may survive after adding new elements to
`font-lock-keywords' (see `guix-prettify-special-modes' for
details).
Also you can use `global-guix-prettify-mode' to enable Guix
Prettify mode for all modes that support font-locking."
:init-value nil
:lighter ""
(let ((keywords `((,guix-prettify-regexp
(,guix-prettify-regexp-group
(guix-prettify-compose))))))
(if guix-prettify-mode
;; Turn on.
(font-lock-add-keywords nil keywords)
;; Turn off.
(font-lock-remove-keywords nil keywords)
(guix-prettify-decompose-buffer))
(and guix-prettify-flush-function
(funcall guix-prettify-flush-function))))
(defun guix-prettify-supported-p ()
"Return non-nil, if the mode can be harmlessly enabled in current buffer."
(or font-lock-defaults
(apply #'derived-mode-p guix-prettify-special-modes)))
(defun guix-prettify-turn-on ()
"Enable `guix-prettify-mode' in the current buffer if needed.
See `guix-prettify-special-modes' for details."
(and (not guix-prettify-mode)
(guix-prettify-supported-p)
(guix-prettify-mode)))
;;;###autoload
(define-globalized-minor-mode global-guix-prettify-mode
guix-prettify-mode guix-prettify-turn-on)
;;;###autoload
(defalias 'guix-prettify-global-mode 'global-guix-prettify-mode)
(provide 'guix-prettify)
;;; guix-prettify.el ends here
-77
View File
@@ -1,77 +0,0 @@
;;; guix-profiles.el --- Guix profiles
;; Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.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 this program. If not, see <http://www.gnu.org/licenses/>.
;;; Code:
(require 'guix-config)
(defvar guix-user-profile
(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/"
(getenv "USER")
"/guix-profile")
"Default Guix profile.")
(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
`guix-current-profile'."
(let* ((path (read-file-name "Profile: "
(file-name-directory
(or default guix-current-profile))))
(path (directory-file-name (expand-file-name path))))
(if (string= path guix-user-profile)
guix-default-profile
path)))
(defun guix-set-current-profile (path)
"Set `guix-current-profile' to PATH.
Interactively, prompt for PATH. With prefix, use
`guix-default-profile'."
(interactive
(list (if current-prefix-arg
guix-default-profile
(guix-profile-prompt))))
(setq guix-current-profile path)
(message "Current profile has been set to '%s'."
guix-current-profile))
(provide 'guix-profiles)
;;; guix-profiles.el ends here
-147
View File
@@ -1,147 +0,0 @@
;;; guix-read.el --- Minibuffer readers
;; Copyright © 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 functions to prompt a user for packages, system
;; types, hash formats and other guix related stuff.
;;; Code:
(require 'guix-help-vars)
(require 'guix-utils)
(require 'guix-backend)
(require 'guix-guile)
;;; Receivable lists of packages, lint checkers, etc.
(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)))
(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)))
(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)))
(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'.
;; (guix-eval-read (guix-make-guile-expression 'package-names))
(mapcar #'car
(guix-eval-read (guix-make-guile-expression
'package-names-lists)))
#'string<))
(guix-memoized-defun guix-license-names ()
"Return a list of names of available licenses."
(guix-eval-read (guix-make-guile-expression 'license-names)))
(guix-memoized-defun guix-package-locations ()
"Return a list of available package locations."
(sort (guix-eval-read (guix-make-guile-expression
'package-location-files))
#'string<))
;;; Readers
(guix-define-readers
:completions-var guix-help-system-types
:single-reader guix-read-system-type
:single-prompt "System type: ")
(guix-define-readers
:completions-var guix-help-source-types
:single-reader guix-read-source-type
:single-prompt "Source type: ")
(guix-define-readers
:completions-var guix-help-hash-formats
:single-reader guix-read-hash-format
:single-prompt "Hash format: ")
(guix-define-readers
:completions-var guix-help-refresh-subsets
:single-reader guix-read-refresh-subset
:single-prompt "Refresh subset: ")
(guix-define-readers
:completions-getter guix-refresh-updater-names
:multiple-reader guix-read-refresh-updater-names
:multiple-prompt "Refresh updater,s: "
:multiple-separator ",")
(guix-define-readers
:completions-var guix-help-key-policies
:single-reader guix-read-key-policy
:single-prompt "Key policy: ")
(guix-define-readers
:completions-var guix-help-elpa-archives
:single-reader guix-read-elpa-archive
:single-prompt "ELPA archive: ")
(guix-define-readers
:completions-var guix-help-verify-options
:multiple-reader guix-read-verify-options
:multiple-prompt "Verify option,s: "
:multiple-separator ",")
(guix-define-readers
:completions-getter guix-graph-type-names
:single-reader guix-read-graph-type
:single-prompt "Graph node type: ")
(guix-define-readers
:completions-getter guix-lint-checker-names
:multiple-reader guix-read-lint-checker-names
:multiple-prompt "Linter,s: "
:multiple-separator ",")
(guix-define-readers
:completions-getter guix-package-names
:single-reader guix-read-package-name
:single-prompt "Package: "
:multiple-reader guix-read-package-names
:multiple-prompt "Package,s: "
:multiple-separator " ")
(guix-define-readers
:completions-getter guix-license-names
:single-reader guix-read-license-name
:single-prompt "License: ")
(guix-define-readers
:completions-getter guix-package-locations
:single-reader guix-read-package-location
:single-prompt "Location: ")
(provide 'guix-read)
;;; guix-read.el ends here
-456
View File
@@ -1,456 +0,0 @@
;;; 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
-150
View File
@@ -1,150 +0,0 @@
;;; guix-ui-license.el --- Interface for displaying 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 'list'/'info' interface for displaying licenses of
;; Guix packages.
;;; Code:
(require 'guix-buffer)
(require 'guix-list)
(require 'guix-info)
(require 'guix-backend)
(require 'guix-guile)
(require 'guix-license)
(guix-define-entry-type 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))
(defun guix-license-message (entries search-type &rest args)
"Display a message after showing license ENTRIES."
;; Some objects in (guix licenses) module are procedures (e.g.,
;; 'non-copyleft' or 'x11-style'). Such licenses cannot be "described".
(when (null entries)
(if (cdr args)
(message "Unknown licenses.")
(message "Unknown license."))))
;;; License 'info'
(guix-info-define-interface license
:buffer-name "*Guix License Info*"
:get-entries-function 'guix-license-get-entries
:message-function 'guix-license-message
:format '((name ignore (simple guix-info-heading))
ignore
guix-license-insert-packages-button
(url ignore (simple guix-url))
guix-license-insert-comment
ignore
guix-license-insert-file)
: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."
(let ((license (guix-entry-value entry 'name)))
(guix-info-insert-action-button
"Packages"
(lambda (btn)
(guix-packages-by-license (button-get btn 'license)))
(format "Display packages with license '%s'" license)
'license license)))
(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))))
(defun guix-license-insert-file (entry)
"Insert button to open license definition."
(let ((license (guix-entry-value entry 'name)))
(guix-insert-button
(guix-license-file) 'guix-file
'help-echo (format "Open definition of license '%s'" license)
'action (lambda (btn)
(guix-find-license-definition (button-get btn 'license)))
'license license)))
;;; License 'list'
(guix-list-define-interface license
:buffer-name "*Guix Licenses*"
:get-entries-function 'guix-license-get-entries
:describe-function 'guix-license-list-describe
:message-function 'guix-license-message
: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 "e") 'guix-license-list-edit)
(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)))
(defun guix-license-list-edit (&optional directory)
"Go to the location of the current license definition.
See `guix-license-file' for the meaning of DIRECTORY."
(interactive (list (guix-read-directory)))
(guix-find-license-definition (guix-list-current-id) directory))
;;; Interactive commands
;;;###autoload
(defun guix-licenses ()
"Display licenses of the Guix packages."
(interactive)
(guix-license-get-display 'all))
(provide 'guix-ui-license)
;;; guix-ui-license.el ends here
-83
View File
@@ -1,83 +0,0 @@
;;; guix-ui-location.el --- Interface for displaying package locations
;; 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 Location as published by
;; the Free Software Foundation, either version 3 of the Location, 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 Location for more details.
;; You should have received a copy of the GNU General Public Location
;; along with this program. If not, see <http://www.gnu.org/locations/>.
;;; Commentary:
;; This file provides a 'list' interface for displaying locations of Guix
;; packages.
;;; Code:
(require 'guix-buffer)
(require 'guix-list)
(require 'guix-location)
(require 'guix-backend)
(guix-define-entry-type location)
(defun guix-location-get-entries ()
"Receive 'package location' entries."
(guix-eval-read "(package-location-entries)"))
;;; Location 'list'
(guix-list-define-interface location
:buffer-name "*Guix Package Locations*"
:get-entries-function 'guix-location-get-entries
:format '((location guix-location-list-file-name-specification 50 t)
(number-of-packages nil 10 guix-list-sort-numerically-1
:right-align t))
:sort-key '(location))
(let ((map guix-location-list-mode-map))
(define-key map (kbd "RET") 'guix-location-list-show-packages)
;; "Location Info" buffer is not defined (it would be useless), so
;; unbind "i" key (by default, it is used to display Info buffer).
(define-key map (kbd "i") nil))
(defun guix-location-list-file-name-specification (location &optional _)
"Return LOCATION button specification for `tabulated-list-entries'."
(list location
'face 'guix-list-file-name
'action (lambda (btn)
(guix-find-location (button-get btn 'location)))
'follow-link t
'help-echo (concat "Find location: " location)
'location location))
(declare-function guix-packages-by-location "guix-ui-package")
(defun guix-location-list-show-packages ()
"Display packages placed in the location at point."
(interactive)
(guix-packages-by-location (guix-list-current-id)))
;;; Interactive commands
;;;###autoload
(defun guix-locations ()
"Display locations of the Guix packages."
(interactive)
(guix-list-get-display-entries 'location))
(provide 'guix-ui-location)
;;; guix-ui-location.el ends here
File diff suppressed because it is too large Load Diff
-105
View File
@@ -1,105 +0,0 @@
;;; 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
-323
View File
@@ -1,323 +0,0 @@
;;; guix-ui.el --- Common code for Guix package management interface -*- 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 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-full
"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-full)
(function-item guix-ui-buffer-name-short)
(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)
(defun guix-ui-buffer-name-short (base-name profile)
"Return buffer name by appending BASE-NAME and PROFILE's base file name."
(guix-compose-buffer-name base-name
(file-name-base (directory-file-name profile))))
(defun guix-ui-buffer-name-full (base-name profile)
"Return buffer name by appending BASE-NAME and PROFILE's full name."
(guix-compose-buffer-name base-name profile))
(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
-609
View File
@@ -1,609 +0,0 @@
;;; guix-utils.el --- General utility functions -*- 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 auxiliary general functions for guix.el package.
;;; Code:
(require 'cl-lib)
(defvar guix-true-string "Yes")
(defvar guix-false-string "")
(defvar guix-list-separator ", ")
(defvar guix-time-format "%F %T"
"String used to format time values.
For possible formats, see `format-time-string'.")
(defun guix-get-string (val &optional face)
"Convert VAL into a string and return it.
VAL can be an expression of any type.
If VAL is t/nil, it is replaced with
`guix-true-string'/`guix-false-string'.
If VAL is list, its elements are concatenated using
`guix-list-separator'.
If FACE is non-nil, propertize returned string with this FACE."
(let ((str (cond
((stringp val) val)
((null val) guix-false-string)
((eq t val) guix-true-string)
((numberp val) (number-to-string val))
((listp val) (mapconcat #'guix-get-string
val guix-list-separator))
(t (prin1-to-string val)))))
(if (and val face)
(propertize str 'font-lock-face face)
str)))
(defun guix-get-time-string (seconds)
"Return formatted time string from SECONDS.
Use `guix-time-format'."
(format-time-string guix-time-format (seconds-to-time seconds)))
(defun guix-get-one-line (str)
"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.
If FORMAT is non-nil, format VAL with FORMAT."
(let ((str (guix-get-string val face)))
(insert (if format
(format format str)
str))))
(cl-defun guix-mapinsert (function sequence separator &key indent column)
"Like `mapconcat' but for inserting text.
Apply FUNCTION to each element of SEQUENCE, and insert SEPARATOR
at point between each FUNCTION call.
If INDENT is non-nil, it should be a number of spaces used to
indent each line of the inserted text.
If COLUMN is non-nil, it should be a column number which
shouldn't be exceeded by the inserted text."
(pcase sequence
(`(,first . ,rest)
(let* ((indent (or indent 0))
(max-column (and column (- column indent))))
(guix-with-indent indent
(funcall function first)
(dolist (element rest)
(let ((before-sep-pos (and column (point))))
(insert separator)
(let ((after-sep-pos (and column (point))))
(funcall function element)
(when (and column
(> (current-column) max-column))
(save-excursion
(delete-region before-sep-pos after-sep-pos)
(goto-char before-sep-pos)
(insert "\n")))))))))))
(defun guix-insert-button (label &optional type &rest properties)
"Make button of TYPE with LABEL and insert it at point.
See `insert-text-button' for the meaning of PROPERTIES."
(if (null label)
(guix-format-insert nil)
(apply #'insert-text-button label
: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.
If FACE is non-nil, propertize returned string with this FACE.
If COL is non-nil and result string is a one-line string longer
than COL, split it into several short lines.
Separate inserted lines with SEPARATOR."
(if (null val)
(guix-format-insert nil)
(let ((strings (guix-split-string (guix-get-string val) col)))
(guix-mapinsert (lambda (str) (guix-format-insert str face))
strings
(or separator "")))))
(defun guix-split-string (str &optional col)
"Split string STR by lines and return list of result 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."
(with-temp-buffer
(insert str)
(let ((fill-column col))
(fill-region (point-min) (point-max)))
(buffer-string)))
(defun guix-concat-strings (strings separator &optional location)
"Return new string by concatenating STRINGS with SEPARATOR.
If LOCATION is a symbol `head', add another SEPARATOR to the
beginning of the returned string; if `tail' - add SEPARATOR to
the end of the string; if nil, do not add SEPARATOR; otherwise
add both to the end and to the beginning."
(let ((str (mapconcat #'identity strings separator)))
(cond ((null location)
str)
((eq location 'head)
(concat separator str))
((eq location 'tail)
(concat str separator))
(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."
(if (equal argument "")
"''"
(replace-regexp-in-string
"\n" "'\n'"
(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) "-")))
(defun guix-command-string (&optional args)
"Return 'guix ARGS ...' string with quoted shell arguments."
(let ((args (mapcar #'guix-shell-quote-argument args)))
(guix-concat-strings (cons "guix" args) " ")))
(defun guix-copy-as-kill (string &optional no-message?)
"Put STRING into `kill-ring'.
If NO-MESSAGE? is non-nil, do not display a message about it."
(kill-new string)
(unless no-message?
(message "'%s' has been added to kill ring." string)))
(defun guix-copy-command-as-kill (args &optional no-message?)
"Put 'guix ARGS ...' string into `kill-ring'.
See also `guix-copy-as-kill'."
(guix-copy-as-kill (guix-command-string args) no-message?))
(defun guix-compose-buffer-name (base-name postfix)
"Return buffer name by appending BASE-NAME and POSTFIX.
In a simple case the result is:
BASE-NAME: POSTFIX
If BASE-NAME is wrapped by '*', then the result is:
*BASE-NAME: POSTFIX*"
(let ((re (rx string-start
(group (? "*"))
(group (*? any))
(group (? "*"))
string-end)))
(or (string-match re base-name)
(error "Unexpected error in defining 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 ": " postfix "*")
(concat base-name ": " postfix)))))
(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)
"Same as `completing-read-multiple' but remove duplicates in result."
(cl-remove-duplicates
(completing-read-multiple prompt table predicate
require-match initial-input
hist def inherit-input-method)
:test #'string=))
(declare-function org-read-date "org" t)
(defun guix-read-date (prompt)
"Prompt for a date or time using `org-read-date'.
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
single argument."
:type '(choice (function-item find-file)
(function-item org-open-file)
(function :tag "Other function"))
:group 'guix)
(defun guix-find-file (file)
"Find FILE if it exists."
(if (file-exists-p file)
(funcall guix-find-file-function file)
(message "File '%s' does not exist." file)))
(defvar url-handler-regexp)
(defun guix-find-file-or-url (file-or-url)
"Find FILE-OR-URL."
(require 'url-handlers)
(let ((file-name-handler-alist
(cons (cons url-handler-regexp 'url-file-handler)
file-name-handler-alist)))
(find-file file-or-url)))
(defmacro guix-while-search (regexp &rest body)
"Evaluate BODY after each search for REGEXP in the current buffer."
(declare (indent 1) (debug t))
`(save-excursion
(goto-char (point-min))
(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 procedures
(defmacro guix-define-alist-accessor (name assoc-fun)
"Define NAME function to access alist values using ASSOC-FUN."
`(defun ,name (alist &rest keys)
,(format "Return value from ALIST by KEYS using `%s'.
ALIST is alist of alists of alists ... which can be consecutively
accessed with KEYS."
assoc-fun)
(if (or (null alist) (null keys))
alist
(apply #',name
(cdr (,assoc-fun (car keys) alist))
(cdr 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
(defvar guix-diff-switches "-u"
"A string or list of strings specifying switches to be passed to diff.")
(defun guix-diff (old new &optional switches no-async)
"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
(defun guix-memoize (function)
"Return a memoized version of FUNCTION."
(let ((cache (make-hash-table :test 'equal)))
(lambda (&rest args)
(let ((result (gethash args cache 'not-found)))
(if (eq result 'not-found)
(let ((result (apply function args)))
(puthash args result cache)
result)
result)))))
(defmacro guix-memoized-defun (name arglist docstring &rest body)
"Define a memoized function NAME.
See `defun' for the meaning of arguments."
(declare (doc-string 3) (indent 2))
`(defalias ',name
(guix-memoize (lambda ,arglist ,@body))
;; Add '(name args ...)' string with real arglist to the docstring,
;; because *Help* will display '(name &rest ARGS)' for a defined
;; function (since `guix-memoize' returns a lambda with '(&rest
;; args)').
,(format "(%S %s)\n\n%s"
name
(mapconcat #'symbol-name arglist " ")
docstring)))
(defmacro guix-memoized-defalias (symbol definition &optional docstring)
"Set SYMBOL's function definition to memoized version of DEFINITION."
(declare (doc-string 3) (indent 1))
`(defalias ',symbol
(guix-memoize #',definition)
,(or docstring
(format "Memoized version of `%S'." definition))))
(defvar guix-utils-font-lock-keywords
(eval-when-compile
`((,(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)
(zero-or-one
(group (one-or-more (or (syntax word) (syntax symbol))))))
(1 font-lock-keyword-face)
(2 font-lock-function-name-face nil t)))))
(font-lock-add-keywords 'emacs-lisp-mode guix-utils-font-lock-keywords)
(provide 'guix-utils)
;;; guix-utils.el ends here
-77
View File
@@ -1,77 +0,0 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2014, 2015, 2016 Alex Kost <alezost@gmail.com>
# Copyright © 2016 Mathieu Lirzin <mthl@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/>.
AUTOLOADS = %D%/guix-autoloads.el
ELFILES = \
%D%/guix-about.el \
%D%/guix-backend.el \
%D%/guix-base.el \
%D%/guix-build-log.el \
%D%/guix-buffer.el \
%D%/guix-command.el \
%D%/guix-devel.el \
%D%/guix-emacs.el \
%D%/guix-entry.el \
%D%/guix-external.el \
%D%/guix-geiser.el \
%D%/guix-guile.el \
%D%/guix-help-vars.el \
%D%/guix-history.el \
%D%/guix-hydra.el \
%D%/guix-hydra-build.el \
%D%/guix-hydra-jobset.el \
%D%/guix-info.el \
%D%/guix-init.el \
%D%/guix-license.el \
%D%/guix-list.el \
%D%/guix-location.el \
%D%/guix-messages.el \
%D%/guix-pcomplete.el \
%D%/guix-popup.el \
%D%/guix-prettify.el \
%D%/guix-profiles.el \
%D%/guix-read.el \
%D%/guix-ui.el \
%D%/guix-ui-license.el \
%D%/guix-ui-location.el \
%D%/guix-ui-package.el \
%D%/guix-ui-generation.el \
%D%/guix-ui-system-generation.el \
%D%/guix-utils.el
if HAVE_EMACS
dist_lisp_DATA = $(ELFILES)
nodist_lisp_DATA = \
%D%/guix-config.el \
$(AUTOLOADS)
$(AUTOLOADS): $(ELFILES)
$(AM_V_EMACS)$(EMACS) --batch --eval \
"(let ((backup-inhibited t) \
(generated-autoload-file \
(expand-file-name \"$(AUTOLOADS)\" \"$(builddir)\"))) \
(update-directory-autoloads \
(expand-file-name \"emacs\" \"$(srcdir)\")))"
CLEANFILES += $(AUTOLOADS)
endif HAVE_EMACS
+20 -4
View File
@@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
#
# This file is part of GNU Guix.
#
@@ -26,7 +26,7 @@ _guix_complete_subcommand ()
local subcommands="$(${COMP_WORDS[0]} $command --help 2> /dev/null \
| grep '^ [a-z]' \
| sed -e's/^ \+\([a-z-]\+\).*$/\1/g')"
COMPREPLY=($(compgen -W "$subcommands" -- "${COMP_WORDS[${#COMP_WORDS[*]} - 1]}"))
COMPREPLY=($(compgen -W "$subcommands" -- "${COMP_WORDS[$COMP_CWORD]}"))
}
_guix_complete_available_package ()
@@ -113,6 +113,12 @@ _guix_complete_file ()
COMPREPLY=()
}
_guix_complete_pid ()
{
local pids="$(cd /proc; echo [0-9]*)"
COMPREPLY=($(compgen -W "$pids" -- "$1"))
}
declare _guix_subcommands
_guix_complete ()
@@ -154,11 +160,21 @@ _guix_complete ()
fi
elif _guix_is_command "system"
then
_guix_complete_subcommand
case $COMP_CWORD in
2) _guix_complete_subcommand;;
*) _guix_complete_file;; # TODO: restrict to *.scm
esac
elif _guix_is_command "container"
then
case $COMP_CWORD in
2) _guix_complete_subcommand;;
3) _guix_complete_pid "$word_at_point";;
*) _guix_complete_file;;
esac
elif _guix_is_command "import"
then
_guix_complete_subcommand
elif _guix_is_command "hash"
elif _guix_is_command "hash" || _guix_is_command "gc"
then
_guix_complete_file
else
+69
View File
@@ -0,0 +1,69 @@
#!/bin/sh
# This hook script prevents the user from pushing to Savannah if any of the new
# commits' OpenPGP signatures cannot be verified.
# Called by "git push" after it has checked the remote status, but before
# anything has been pushed. If this script exits with a non-zero status nothing
# will be pushed.
#
# This hook is called with the following parameters:
#
# $1 -- Name of the remote to which the push is being done
# $2 -- URL to which the push is being done
#
# If pushing without using a named remote those arguments will be equal.
#
# Information about the commits which are being pushed is supplied as lines to
# the standard input in the form:
#
# <local ref> <local sha1> <remote ref> <remote sha1>
z40=0000000000000000000000000000000000000000
# Only use the hook when pushing to Savannah.
case "$2" in
*git.sv.gnu.org*)
break
;;
*)
exit 0
;;
esac
while read local_ref local_sha remote_ref remote_sha
do
if [ "$local_sha" = $z40 ]
then
# Handle delete
:
else
if [ "$remote_sha" = $z40 ]
then
# We are pushing a new branch. To prevent wasting too
# much time for this relatively rare case, we examine
# all commits since the first signed commit, rather than
# the full history. This check *will* fail, and the user
# will need to temporarily disable the hook to push the
# new branch.
range="e3d0fcbf7e55e8cbe8d0a1c5a24d73f341d7243b..$local_sha"
else
# Update to existing branch, examine new commits
range="$remote_sha..$local_sha"
fi
# Verify the signatures of all commits being pushed.
ret=0
for commit in $(git rev-list $range)
do
if ! git verify-commit $commit >/dev/null 2>&1
then
printf "%s failed signature check\n" $commit
ret=1
fi
done
exit $ret
fi
done
exit 0
+1 -1
View File
@@ -9,4 +9,4 @@ stop on runlevel [016]
task
exec @bindir@/guix-daemon --build-users-group=guixbuild
exec @localstatedir@/guix/profiles/per-user/root/guix-profile/bin/guix-daemon --build-users-group=guixbuild
+4 -2
View File
@@ -6,14 +6,16 @@
Description=Build daemon for GNU Guix
[Service]
ExecStart=@bindir@/guix-daemon --build-users-group=guixbuild
ExecStart=@localstatedir@/guix/profiles/per-user/root/guix-profile/bin/guix-daemon --build-users-group=guixbuild
Environment=GUIX_LOCPATH=/root/.guix-profile/lib/locale
RemainAfterExit=yes
StandardOutput=syslog
StandardError=syslog
# See <https://lists.gnu.org/archive/html/guix-devel/2016-04/msg00608.html>.
TasksMax=1024
# Some package builds (for example, go@1.8.1) may require even more than
# 1024 tasks.
TasksMax=8192
[Install]
WantedBy=multi-user.target
+1 -1
View File
@@ -9,4 +9,4 @@ stop on runlevel [016]
task
exec @bindir@/guix publish --user=nobody --port=8181
exec @localstatedir@/guix/profiles/per-user/root/guix-profile/bin/guix publish --user=nobody --port=8181
+1 -1
View File
@@ -6,7 +6,7 @@
Description=Publish the GNU Guix store
[Service]
ExecStart=@bindir@/guix publish --user=nobody --port=8181
ExecStart=@localstatedir@/guix/profiles/per-user/root/guix-profile/bin/guix publish --user=nobody --port=8181
Environment=GUIX_LOCPATH=/root/.guix-profile/lib/locale
RemainAfterExit=yes
StandardOutput=syslog
+114
View File
@@ -0,0 +1,114 @@
#!@EMACS@ --script
;;; indent-code.el --- Run Emacs to indent a package definition.
;; Copyright © 2017 Alex Kost <alezost@gmail.com>
;; Copyright © 2017 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 this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This scripts indents the given file or package definition in the specified
;; file using Emacs.
;;; Code:
;; Load Scheme indentation rules from ".dir-locals.el".
(with-temp-buffer
(scheme-mode)
(let ((default-directory (file-name-as-directory load-file-name))
(enable-local-variables :all))
(hack-dir-local-variables)
(hack-local-variables-apply)))
;; Add indentation info for Scheme constructs that are not Guix-specific.
;; This is normally provided by Geiser but this file is for people who may not
;; be running Geiser, so we just copy it here (from 'geiser-syntax.el').
(defmacro guix-syntax--scheme-indent (&rest pairs)
`(progn ,@(mapcar (lambda (p)
`(put ',(car p) 'scheme-indent-function ',(cadr p)))
pairs)))
(guix-syntax--scheme-indent
(and-let* 1)
(case-lambda 0)
(catch defun)
(class defun)
(dynamic-wind 0)
(guard 1)
(let*-values 1)
(let-values 1)
(let/ec 1)
(letrec* 1)
(match 1)
(match-lambda 0)
(match-lambda* 0)
(match-let scheme-let-indent)
(match-let* 1)
(match-letrec 1)
(opt-lambda 1)
(parameterize 1)
(parameterize* 1)
(receive 2)
(require-extension 0)
(syntax-case 2)
(test-approximate 1)
(test-assert 1)
(test-eq 1)
(test-equal 1)
(test-eqv 1)
(test-group-with-cleanup 1)
(test-runner-on-bad-count! 1)
(test-runner-on-bad-end-name! 1)
(test-runner-on-final! 1)
(test-runner-on-group-begin! 1)
(test-runner-on-group-end! 1)
(test-runner-on-test-begin! 1)
(test-runner-on-test-end! 1)
(test-with-runner 1)
(unless 1)
(when 1)
(while 1)
(with-exception-handler 1)
(with-syntax 1))
(pcase command-line-args-left
(`(,file-name ,package-name)
;; Indent the definition of PACKAGE-NAME in FILE-NAME.
(find-file file-name)
(goto-char (point-min))
(if (re-search-forward (concat "^(define\\(-public\\) +"
package-name)
nil t)
(let ((indent-tabs-mode nil))
(beginning-of-defun)
(indent-sexp)
(save-buffer)
(message "Done!"))
(error "Package '%s' not found in '%s'"
package-name file-name)))
(`(,file-name)
;; Indent all of FILE-NAME.
(find-file file-name)
(let ((indent-tabs-mode nil))
(indent-region (point-min) (point-max))
(save-buffer)
(message "Done!")))
(x
(error "Usage: indent-code.el FILE [PACKAGE]")))
;;; indent-code.el ends here
+60 -14
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -25,9 +25,10 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:export (activate-users+groups
activate-user-home
activate-etc
activate-setuid-programs
activate-/bin/sh
activate-special-files
activate-modprobe
activate-firmware
activate-ptrace-attach
@@ -78,22 +79,28 @@
(define (dot-or-dot-dot? file)
(member file '("." "..")))
(define (make-file-writable file)
"Make FILE writable for its owner.."
(let ((stat (lstat file))) ;XXX: symlinks
(chmod file (logior #o600 (stat:perms stat)))))
(define* (copy-account-skeletons home
#:optional (directory %skeleton-directory))
"Copy the account skeletons from DIRECTORY to HOME."
#:key
(directory %skeleton-directory)
uid gid)
"Copy the account skeletons from DIRECTORY to HOME. When UID is an integer,
make it the owner of all the files created; likewise for GID."
(define (set-owner file)
(when (or uid gid)
(chown file (or uid -1) (or gid -1))))
(let ((files (scandir directory (negate dot-or-dot-dot?)
string<?)))
(mkdir-p home)
(set-owner home)
(for-each (lambda (file)
(let ((target (string-append home "/" file)))
(copy-recursively (string-append directory "/" file)
target
#:log (%make-void-port "w"))
(for-each set-owner
(find-files target (const #t)
#:directories? #t))
(make-file-writable target)))
files)))
@@ -220,7 +227,11 @@ numeric gid or #f."
#:supplementary-groups supplementary-groups
#:comment comment
#:home home
#:create-home? create-home?
;; Home directories of non-system accounts are created by
;; 'activate-user-home'.
#:create-home? (and create-home? system?)
#:shell shell
#:password password)
@@ -268,6 +279,28 @@ numeric gid or #f."
(((names . _) ...)
names)))))
(define (activate-user-home users)
"Create and populate the home directory of USERS, a list of tuples, unless
they already exist."
(define ensure-user-home
(match-lambda
((name uid group supplementary-groups comment home create-home?
shell password system?)
;; The home directories of system accounts are created during
;; activation, not here.
(unless (or (not home) (not create-home?) system?
(directory-exists? home))
(let* ((pw (getpwnam name))
(uid (passwd:uid pw))
(gid (passwd:gid pw)))
(mkdir-p home)
(chown home uid gid)
(unless system?
(copy-account-skeletons home
#:uid uid #:gid gid)))))))
(for-each ensure-user-home users))
(define (activate-etc etc)
"Install ETC, a directory in the store, as the source of static files for
/etc."
@@ -352,10 +385,23 @@ copy SOURCE to TARGET."
(for-each make-setuid-program programs))
(define (activate-/bin/sh shell)
"Change /bin/sh to point to SHELL."
(symlink shell "/bin/sh.new")
(rename-file "/bin/sh.new" "/bin/sh"))
(define (activate-special-files special-files)
"Install the files listed in SPECIAL-FILES. Each element of SPECIAL-FILES
is a pair where the first element is the name of the special file and the
second element is the name it should appear at, such as:
((\"/bin/sh\" \"/gnu/store/…-bash/bin/sh\")
(\"/usr/bin/env\" \"/gnu/store/…-coreutils/bin/env\"))
"
(define install-special-file
(match-lambda
((target file)
(let ((pivot (string-append target ".new")))
(mkdir-p (dirname target))
(symlink file pivot)
(rename-file pivot target)))))
(for-each install-special-file special-files))
(define (activate-modprobe modprobe)
"Tell the kernel to use MODPROBE to load modules."
+316 -145
View File
@@ -1,5 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -46,12 +48,7 @@
mount-flags->bit-mask
check-file-system
mount-file-system)
#:re-export (mount
umount
MS_BIND
MS_MOVE
MS_RDONLY))
mount-file-system))
;;; Commentary:
;;;
@@ -60,78 +57,233 @@
;;;
;;; Code:
;; 'mount' is already defined in the statically linked Guile used for initial
;; RAM disks, in which case the bindings in (guix build syscalls) do not work
;; (the FFI bindings do not work there). Override them in that case.
(when (module-defined? the-scm-module 'mount)
(set! mount (@ (guile) mount))
(set! umount (@ (guile) umount)))
(define (bind-mount source target)
"Bind-mount SOURCE at TARGET."
(mount source target "" MS_BIND))
(define (seek* fd/port offset whence)
"Like 'seek' but return -1 instead of throwing to 'system-error' upon
EINVAL. This makes it easier to catch cases like OFFSET being too large for
FD/PORT."
(catch 'system-error
(lambda ()
(seek fd/port offset whence))
(lambda args
(if (= EINVAL (system-error-errno args))
-1
(apply throw args)))))
(define (read-superblock device offset size magic?)
"Read a superblock of SIZE from OFFSET and DEVICE. Return the raw
superblock on success, and #f if no valid superblock was found. MAGIC?
takes a bytevector and returns #t when it's a valid superblock."
(call-with-input-file device
(lambda (port)
(and (= offset (seek* port offset SEEK_SET))
(let ((block (make-bytevector size)))
(match (get-bytevector-n! port block 0 (bytevector-length block))
((? eof-object?)
#f)
((? number? len)
(and (= len (bytevector-length block))
(and (magic? block)
block)))))))))
(define (sub-bytevector bv start size)
"Return a copy of the SIZE bytes of BV starting from offset START."
(let ((result (make-bytevector size)))
(bytevector-copy! bv start result 0 size)
result))
(define (latin1->string bv terminator)
"Return a string of BV, a latin1 bytevector, or #f. TERMINATOR is a predicate
that takes a number and returns #t when a termination character is found."
(let ((bytes (take-while (negate terminator) (bytevector->u8-list bv))))
(if (null? bytes)
#f
(list->string (map integer->char bytes)))))
(define null-terminated-latin1->string
(cut latin1->string <> zero?))
;;;
;;; Ext2 file systems.
;;;
;; <http://www.nongnu.org/ext2-doc/ext2.html#DEF-SUPERBLOCK>.
;; TODO: Use "packed structs" from Guile-OpenGL or similar.
(define-syntax %ext2-endianness
;; Endianness of ext2 file systems.
(identifier-syntax (endianness little)))
;; Offset in bytes of interesting parts of an ext2 superblock. See
;; <http://www.nongnu.org/ext2-doc/ext2.html#DEF-SUPERBLOCK>.
;; TODO: Use "packed structs" from Guile-OpenGL or similar.
(define-syntax %ext2-sblock-magic (identifier-syntax 56))
(define-syntax %ext2-sblock-creator-os (identifier-syntax 72))
(define-syntax %ext2-sblock-uuid (identifier-syntax 104))
(define-syntax %ext2-sblock-volume-name (identifier-syntax 120))
(define (ext2-superblock? sblock)
"Return #t when SBLOCK is an ext2 superblock."
(let ((magic (bytevector-u16-ref sblock 56 %ext2-endianness)))
(= magic #xef53)))
(define (read-ext2-superblock device)
"Return the raw contents of DEVICE's ext2 superblock as a bytevector, or #f
if DEVICE does not contain an ext2 file system."
(define %ext2-magic
;; The magic bytes that identify an ext2 file system.
#xef53)
(define superblock-size
;; Size of the interesting part of an ext2 superblock.
264)
(define block
;; The superblock contents.
(make-bytevector superblock-size))
(call-with-input-file device
(lambda (port)
(seek port 1024 SEEK_SET)
;; Note: work around <http://bugs.gnu.org/17466>.
(and (eqv? superblock-size (get-bytevector-n! port block 0
superblock-size))
(let ((magic (bytevector-u16-ref block %ext2-sblock-magic
%ext2-endianness)))
(and (= magic %ext2-magic)
block))))))
(read-superblock device 1024 264 ext2-superblock?))
(define (ext2-superblock-uuid sblock)
"Return the UUID of ext2 superblock SBLOCK as a 16-byte bytevector."
(let ((uuid (make-bytevector 16)))
(bytevector-copy! sblock %ext2-sblock-uuid uuid 0 16)
uuid))
(sub-bytevector sblock 104 16))
(define (ext2-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string of at most 16 characters, or
#f if SBLOCK has no volume name."
(let ((bv (make-bytevector 16)))
(bytevector-copy! sblock %ext2-sblock-volume-name bv 0 16)
(null-terminated-latin1->string (sub-bytevector sblock 120 16)))
;; This is a Latin-1, nul-terminated string.
(let ((bytes (take-while (negate zero?) (bytevector->u8-list bv))))
(if (null? bytes)
#f
(list->string (map integer->char bytes))))))
(define (check-ext2-file-system device)
"Return the health of an ext2 file system on DEVICE."
(match (status:exit-val
(system* "e2fsck" "-v" "-p" "-C" "0" device))
(0 'pass)
(1 'errors-corrected)
(2 'reboot-required)
(_ 'fatal-error)))
;;;
;;; Btrfs file systems.
;;;
;; <https://btrfs.wiki.kernel.org/index.php/On-disk_Format#Superblock>.
(define-syntax %btrfs-endianness
;; Endianness of btrfs file systems.
(identifier-syntax (endianness little)))
(define (btrfs-superblock? sblock)
"Return #t when SBLOCK is a btrfs superblock."
(bytevector=? (sub-bytevector sblock 64 8)
(string->utf8 "_BHRfS_M")))
(define (read-btrfs-superblock device)
"Return the raw contents of DEVICE's btrfs superblock as a bytevector, or #f
if DEVICE does not contain a btrfs file system."
(read-superblock device 65536 4096 btrfs-superblock?))
(define (btrfs-superblock-uuid sblock)
"Return the UUID of a btrfs superblock SBLOCK as a 16-byte bytevector."
(sub-bytevector sblock 32 16))
(define (btrfs-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string of at most 256 characters, or
#f if SBLOCK has no volume name."
(null-terminated-latin1->string (sub-bytevector sblock 299 256)))
(define (check-btrfs-file-system device)
"Return the health of a btrfs file system on DEVICE."
(match (status:exit-val
(system* "btrfs" "device" "scan"))
(0 'pass)
(_ 'fatal-error)))
;;;
;;; FAT32 file systems.
;;;
;; <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-107.pdf>.
(define-syntax %fat32-endianness
;; Endianness of fat file systems.
(identifier-syntax (endianness little)))
(define (fat32-superblock? sblock)
"Return #t when SBLOCK is a fat32 superblock."
(bytevector=? (sub-bytevector sblock 82 8)
(string->utf8 "FAT32 ")))
(define (read-fat32-superblock device)
"Return the raw contents of DEVICE's fat32 superblock as a bytevector, or
#f if DEVICE does not contain a fat32 file system."
(read-superblock device 0 90 fat32-superblock?))
(define (fat32-superblock-uuid sblock)
"Return the Volume ID of a fat superblock SBLOCK as a 4-byte bytevector."
(sub-bytevector sblock 67 4))
(define (fat32-uuid->string uuid)
"Convert fat32 UUID, a 4-byte bytevector, to its string representation."
(let ((high (bytevector-uint-ref uuid 0 %fat32-endianness 2))
(low (bytevector-uint-ref uuid 2 %fat32-endianness 2)))
(format #f "~:@(~x-~x~)" low high)))
(define (fat32-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string of at most 11 characters, or
#f if SBLOCK has no volume name. The volume name is a latin1 string.
Trailing spaces are trimmed."
(string-trim-right (latin1->string (sub-bytevector sblock 71 11) (lambda (c) #f)) #\space))
(define (check-fat32-file-system device)
"Return the health of a fat file system on DEVICE."
(match (status:exit-val
(system* "fsck.vfat" "-v" "-a" device))
(0 'pass)
(1 'errors-corrected)
(_ 'fatal-error)))
;;;
;;; ISO9660 file systems.
;;;
;; <http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-119.pdf>.
(define (iso9660-superblock? sblock)
"Return #t when SBLOCK is a iso9660 superblock."
(bytevector=? (sub-bytevector sblock 1 6)
;; Note: "\x01" is the volume descriptor format version
(string->utf8 "CD001\x01")))
(define (read-iso9660-primary-volume-descriptor device offset)
"Find and read the first primary volume descriptor, starting at OFFSET.
Return #f if not found."
(let* ((sblock (read-superblock device offset 2048 iso9660-superblock?))
(type-code (if sblock (array-ref sblock 0) 255)))
(match type-code
(255 #f) ; Volume Descriptor Set Terminator.
(1 sblock) ; Primary Volume Descriptor
(_ (read-iso9660-primary-volume-descriptor device (+ offset 2048))))))
(define (read-iso9660-superblock device)
"Return the raw contents of DEVICE's iso9660 superblock as a bytevector, or
#f if DEVICE does not contain a iso9660 file system."
;; Start reading at sector 16.
(read-iso9660-primary-volume-descriptor device (* 2048 16)))
(define (iso9660-superblock-uuid sblock)
"Return the modification time of a iso9660 superblock SBLOCK as a bytevector."
;; Drops GMT offset for compatibility with Grub, blkid and /dev/disk/by-uuid.
;; Compare Grub: "2014-12-02-19-30-23-00".
;; Compare blkid result: "2014-12-02-19-30-23-00".
;; Compare /dev/disk/by-uuid entry: "2014-12-02-19-30-23-00".
(sub-bytevector sblock 830 16))
(define (iso9660-uuid->string uuid)
"Given an UUID bytevector, return its timestamp string."
(define (digits->string bytes)
(latin1->string bytes (lambda (c) #f)))
(let* ((year (sub-bytevector uuid 0 4))
(month (sub-bytevector uuid 4 2))
(day (sub-bytevector uuid 6 2))
(hour (sub-bytevector uuid 8 2))
(minute (sub-bytevector uuid 10 2))
(second (sub-bytevector uuid 12 2))
(hundredths (sub-bytevector uuid 14 2))
(parts (list year month day hour minute second hundredths)))
(string-append (string-join (map digits->string parts)))))
(define (iso9660-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string. The volume name is an ASCII
string. Trailing spaces are trimmed."
(string-trim-right (latin1->string (sub-bytevector sblock 40 32)
(lambda (c) #f)) #\space))
;;;
@@ -146,37 +298,22 @@ if DEVICE does not contain an ext2 file system."
;; Endianness of LUKS headers.
(identifier-syntax (endianness big)))
(define-syntax %luks-header-size
;; Size in bytes of the LUKS header, including key slots.
(identifier-syntax 592))
(define %luks-magic
;; The 'LUKS_MAGIC' constant.
(u8-list->bytevector (append (map char->integer (string->list "LUKS"))
(list #xba #xbe))))
(define (sub-bytevector bv start size)
"Return a copy of the SIZE bytes of BV starting from offset START."
(let ((result (make-bytevector size)))
(bytevector-copy! bv start result 0 size)
result))
(define (luks-superblock? sblock)
"Return #t when SBLOCK is a luks superblock."
(define %luks-magic
;; The 'LUKS_MAGIC' constant.
(u8-list->bytevector (append (map char->integer (string->list "LUKS"))
(list #xba #xbe))))
(let ((magic (sub-bytevector sblock 0 6))
(version (bytevector-u16-ref sblock 6 %luks-endianness)))
(and (bytevector=? magic %luks-magic)
(= version 1))))
(define (read-luks-header file)
"Read a LUKS header from FILE. Return the raw header on success, and #f if
not valid header was found."
(call-with-input-file file
(lambda (port)
(let ((header (make-bytevector %luks-header-size)))
(match (get-bytevector-n! port header 0 (bytevector-length header))
((? eof-object?)
#f)
((? number? len)
(and (= len (bytevector-length header))
(let ((magic (sub-bytevector header 0 6)) ;XXX: inefficient
(version (bytevector-u16-ref header 6 %luks-endianness)))
(and (bytevector=? magic %luks-magic)
(= version 1)
header)))))))))
;; Size in bytes of the LUKS header, including key slots.
(read-superblock file 0 592 luks-superblock?))
(define (luks-header-uuid header)
"Return the LUKS UUID from HEADER, as a 16-byte bytevector."
@@ -242,56 +379,85 @@ warning and #f as the result."
(else
(apply throw args))))))))
(define (partition-predicate read field =)
(define (partition-field-reader read field)
"Return a procedure that takes a device and returns the value of a FIELD in
the partition superblock or #f."
(let ((read (ENOENT-safe read)))
(lambda (device)
(let ((sblock (read device)))
(and sblock
(field sblock))))))
(define (read-partition-field device partition-field-readers)
"Returns the value of a FIELD in the partition superblock of DEVICE or #f. It
takes a list of PARTITION-FIELD-READERS and returns the result of the first
partition field reader that returned a value."
(match (filter-map (cut apply <> (list device)) partition-field-readers)
((field . _) field)
(_ #f)))
(define %partition-label-readers
(list (partition-field-reader read-iso9660-superblock
iso9660-superblock-volume-name)
(partition-field-reader read-ext2-superblock
ext2-superblock-volume-name)
(partition-field-reader read-btrfs-superblock
btrfs-superblock-volume-name)
(partition-field-reader read-fat32-superblock
fat32-superblock-volume-name)))
(define %partition-uuid-readers
(list (partition-field-reader read-iso9660-superblock
iso9660-superblock-uuid)
(partition-field-reader read-ext2-superblock
ext2-superblock-uuid)
(partition-field-reader read-btrfs-superblock
btrfs-superblock-uuid)
(partition-field-reader read-fat32-superblock
fat32-superblock-uuid)))
(define read-partition-label
(cut read-partition-field <> %partition-label-readers))
(define read-partition-uuid
(cut read-partition-field <> %partition-uuid-readers))
(define (partition-predicate reader =)
"Return a predicate that returns true if the FIELD of partition header that
was READ is = to the given value."
(let ((read (ENOENT-safe read)))
(lambda (expected)
"Return a procedure that, when applied to a partition name such as \"sda1\",
returns #t if that partition's volume name is LABEL."
(lambda (part)
(let* ((device (string-append "/dev/" part))
(sblock (read device)))
(and sblock
(let ((actual (field sblock)))
(and actual
(= actual expected)))))))))
(lambda (expected)
(lambda (device)
(let ((actual (reader device)))
(and actual
(= actual expected))))))
(define partition-label-predicate
(partition-predicate read-ext2-superblock
ext2-superblock-volume-name
string=?))
(partition-predicate read-partition-label string=?))
(define partition-uuid-predicate
(partition-predicate read-ext2-superblock
ext2-superblock-uuid
bytevector=?))
(partition-predicate read-partition-uuid bytevector=?))
(define partition-luks-uuid-predicate
(partition-predicate read-luks-header
luks-header-uuid
bytevector=?))
(define luks-partition-uuid-predicate
(partition-predicate
(partition-field-reader read-luks-header luks-header-uuid)
bytevector=?))
(define (find-partition-by-label label)
"Return the first partition found whose volume name is LABEL, or #f if none
(define (find-partition predicate)
"Return the first partition found that matches PREDICATE, or #f if none
were found."
(and=> (find (partition-label-predicate label)
(disk-partitions))
(cut string-append "/dev/" <>)))
(lambda (expected)
(find (predicate expected)
(map (cut string-append "/dev/" <>)
(disk-partitions)))))
(define (find-partition-by-uuid uuid)
"Return the first partition whose unique identifier is UUID (a bytevector),
or #f if none was found."
(and=> (find (partition-uuid-predicate uuid)
(disk-partitions))
(cut string-append "/dev/" <>)))
(define find-partition-by-label
(find-partition partition-label-predicate))
(define (find-partition-by-luks-uuid uuid)
"Return the first LUKS partition whose unique identifier is UUID (a bytevector),
or #f if none was found."
(and=> (find (partition-luks-uuid-predicate uuid)
(disk-partitions))
(cut string-append "/dev/" <>)))
(define find-partition-by-uuid
(find-partition partition-uuid-predicate))
(define find-partition-by-luks-uuid
(find-partition luks-partition-uuid-predicate))
;;;
@@ -412,26 +578,35 @@ the following:
(define (check-file-system device type)
"Run a file system check of TYPE on DEVICE."
(define fsck
(string-append "fsck." type))
(define check-procedure
(cond
((string-prefix? "ext" type) check-ext2-file-system)
((string-prefix? "btrfs" type) check-btrfs-file-system)
((string-suffix? "fat" type) check-fat32-file-system)
(else #f)))
(let ((status (system* fsck "-v" "-p" "-C" "0" device)))
(match (status:exit-val status)
(0
#t)
(1
(format (current-error-port) "'~a' corrected errors on ~a; continuing~%"
fsck device))
(2
(format (current-error-port) "'~a' corrected errors on ~a; rebooting~%"
fsck device)
(sleep 3)
(reboot))
(code
(format (current-error-port) "'~a' exited with code ~a on ~a; \
spawning Bourne-like REPL~%"
fsck code device)
(start-repl %bournish-language)))))
(if check-procedure
(match (check-procedure device)
('pass
#t)
('errors-corrected
(format (current-error-port)
"File system check corrected errors on ~a; continuing~%"
device))
('reboot-required
(format (current-error-port)
"File system check corrected errors on ~a; rebooting~%"
device)
(sleep 3)
(reboot))
('fatal-error
(format (current-error-port)
"File system check on ~a failed; spawning Bourne-like REPL~%"
device)
(start-repl %bournish-language)))
(format (current-error-port)
"No file system check procedure for ~a; skipping~%"
device)))
(define (mount-flags->bit-mask flags)
"Return the number suitable for the 'flags' argument of 'mount' that
@@ -451,10 +626,6 @@ corresponds to the symbols listed in FLAGS."
(()
0))))
(define (regular-file? file-name)
"Return #t if FILE-NAME is a regular file."
(eq? (stat:type (stat file-name)) 'regular))
(define* (mount-file-system spec #:key (root "/root"))
"Mount the file system described by SPEC under ROOT. SPEC must have the
form:
@@ -494,9 +665,9 @@ run a file system check."
(check-file-system source type))
;; Create the mount point. Most of the time this is a directory, but
;; in the case of a bind mount, a regular file may be needed.
;; in the case of a bind mount, a regular file or socket may be needed.
(if (and (= MS_BIND (logand flags MS_BIND))
(regular-file? source))
(not (file-is-directory? source)))
(unless (file-exists? mount-point)
(mkdir-p (dirname mount-point))
(call-with-output-file mount-point (const #t)))
+17 -11
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -24,6 +24,7 @@
#:use-module (ice-9 match)
#:export (install-grub
install-grub-config
evaluate-populate-directive
populate-root-file-system
reset-timestamps
register-closure
@@ -192,13 +193,16 @@ rest of STORE."
(define* (populate-single-profile-directory directory
#:key profile closure
deduplicate?)
deduplicate?
register?)
"Populate DIRECTORY with a store containing PROFILE, whose closure is given
in the file called CLOSURE (as generated by #:references-graphs.) DIRECTORY
is initialized to contain a single profile under /root pointing to PROFILE.
DEDUPLICATE? determines whether to deduplicate files in the store.
When REGISTER? is true, initialize DIRECTORY/var/guix/db to reflect the
contents of the store; DEDUPLICATE? determines whether to deduplicate files in
the store.
This is used to create the self-contained Guix tarball."
This is used to create the self-contained tarballs with 'guix pack'."
(define (scope file)
(string-append directory "/" file))
@@ -213,14 +217,16 @@ This is used to create the self-contained Guix tarball."
;; Populate the store.
(populate-store (list closure) directory)
(register-closure (canonicalize-path directory) closure
#:deduplicate? deduplicate?)
;; XXX: 'guix-register' registers profiles as GC roots but the symlink
;; target uses $TMPDIR. Fix that.
(delete-file (scope "/var/guix/gcroots/profiles"))
(symlink* "/var/guix/profiles"
"/var/guix/gcroots/profiles")
(when register?
(register-closure (canonicalize-path directory) closure
#:deduplicate? deduplicate?)
;; XXX: 'guix-register' registers profiles as GC roots but the symlink
;; target uses $TMPDIR. Fix that.
(delete-file (scope "/var/guix/gcroots/profiles"))
(symlink* "/var/guix/profiles"
"/var/guix/gcroots/profiles"))
;; Make root's profile, which makes it a GC root.
(mkdir-p* %root-profile)
+2
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,6 +27,7 @@
#:use-module (ice-9 match)
#:use-module (ice-9 ftw)
#:use-module (guix build utils)
#:use-module (guix build syscalls)
#:use-module (gnu build linux-modules)
#:use-module (gnu build file-systems)
#:export (mount-essential-file-systems
+34 -6
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -32,7 +33,8 @@
%namespaces
run-container
call-with-container
container-excursion))
container-excursion
container-excursion*))
(define (user-namespace-supported?)
"Return #t if user namespaces are supported on this system."
@@ -128,13 +130,19 @@ for the process."
"/dev/fuse"))
;; Setup the container's /dev/console by bind mounting the pseudo-terminal
;; associated with standard input.
(let ((in (current-input-port))
(console (scope "/dev/console")))
(when (isatty? in)
;; associated with standard input when there is one.
(let* ((in (current-input-port))
(tty (catch 'system-error
(lambda ()
;; This call throws if IN does not correspond to a tty.
;; This is more reliable than 'isatty?'.
(ttyname in))
(const #f)))
(console (scope "/dev/console")))
(when tty
(touch console)
(chmod console #o600)
(bind-mount (ttyname in) console)))
(bind-mount tty console)))
;; Setup standard input/output/error.
(symlink "/proc/self/fd" (scope "/dev/fd"))
@@ -229,6 +237,8 @@ host user identifiers to map into the user namespace."
namespaces)))
(lambda args
;; Forward the exception to the parent process.
;; FIXME: SRFI-35 conditions and non-trivial objects
;; cannot be 'read' so they shouldn't be written as is.
(write args child)
(primitive-exit 3))))
;; TODO: Manage capabilities.
@@ -318,3 +328,21 @@ return the exit status."
(match (waitpid pid)
((_ . status)
(status:exit-val status))))))
(define (container-excursion* pid thunk)
"Like 'container-excursion', but return the return value of THUNK."
(match (pipe)
((in . out)
(match (container-excursion pid
(lambda ()
(close-port in)
(write (thunk) out)))
(0
(close-port out)
(let ((result (read in)))
(close-port in)
result))
(_ ;maybe PID died already
(close-port out)
(close-port in)
#f)))))
+2
View File
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -18,6 +19,7 @@
(define-module (gnu build linux-modules)
#:use-module (guix elf)
#:use-module (guix build syscalls)
#:use-module (rnrs io ports)
#:use-module (rnrs bytevectors)
#:use-module (srfi srfi-1)
+177
View File
@@ -0,0 +1,177 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 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/>.
(define-module (gnu build shepherd)
#:use-module (gnu system file-systems)
#:use-module (gnu build linux-container)
#:use-module (guix build utils)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
#:export (make-forkexec-constructor/container))
;;; Commentary:
;;;
;;; This module provides extensions to the GNU Shepherd. In particular, it
;;; provides a helper to start services in a container.
;;;
;;; Code:
(define (clean-up file)
(when file
(catch 'system-error
(lambda ()
(delete-file file))
(lambda args
(unless (= ENOENT (system-error-errno args))
(apply throw args))))))
(define-syntax-rule (catch-system-error exp)
(catch 'system-error
(lambda ()
exp)
(const #f)))
(define (default-namespaces args)
;; Most daemons are here to talk to the network, and most of them expect to
;; run under a non-zero UID.
(fold delq %namespaces '(net user)))
(define* (default-mounts #:key (namespaces (default-namespaces '())))
(define (tmpfs directory)
(file-system
(device "none")
(title 'device)
(mount-point directory)
(type "tmpfs")
(check? #f)))
(define passwd
;; This is for processes in the default user namespace but living in a
;; different mount namespace, so that they can lookup users.
(file-system-mapping
(source "/etc/passwd") (target source)))
(define nscd-socket
(file-system-mapping
(source "/var/run/nscd") (target source)
(writable? #t)))
(append (cons (tmpfs "/tmp") %container-file-systems)
(let ((mappings `(,@(if (memq 'net namespaces)
'()
(cons nscd-socket
%network-file-mappings))
,@(if (and (memq 'mnt namespaces)
(not (memq 'user namespaces)))
(list passwd)
'())
,%store-mapping))) ;XXX: coarse-grain
(map file-system-mapping->bind-mount
(filter (lambda (mapping)
(file-exists? (file-system-mapping-source mapping)))
mappings)))))
;; XXX: Lazy-bind the Shepherd to avoid a compile-time dependency.
(module-autoload! (current-module)
'(shepherd service) '(read-pid-file exec-command))
(define* (read-pid-file/container pid pid-file #:key (max-delay 5))
"Read PID-FILE in the container namespaces of PID, which exists in a
separate mount and PID name space. Return the \"outer\" PID. "
(match (container-excursion* pid
(lambda ()
(read-pid-file pid-file
#:max-delay max-delay)))
(#f
(catch-system-error (kill pid SIGTERM))
#f)
((? integer? container-pid)
;; XXX: When COMMAND is started in a separate PID namespace, its
;; PID is always 1, but that's not what Shepherd needs to know.
pid)))
(define* (make-forkexec-constructor/container command
#:key
(namespaces
(default-namespaces args))
(mappings '())
(user #f)
(group #f)
(log-file #f)
pid-file
(pid-file-timeout 5)
(directory "/")
(environment-variables
(environ))
#:rest args)
"This is a variant of 'make-forkexec-constructor' that starts COMMAND in
NAMESPACES, a list of Linux namespaces such as '(mnt ipc). MAPPINGS is the
list of <file-system-mapping> to make in the case of a separate mount
namespace, in addition to essential bind-mounts such /proc."
(define container-directory
(match command
((program _ ...)
(string-append "/var/run/containers/" (basename program)))))
(define auto-mappings
`(,@(if log-file
(list (file-system-mapping
(source log-file)
(target source)
(writable? #t)))
'())))
(define mounts
(append (map file-system-mapping->bind-mount
(append auto-mappings mappings))
(default-mounts #:namespaces namespaces)))
(lambda args
(mkdir-p container-directory)
(when log-file
;; Create LOG-FILE so we can map it in the container.
(unless (file-exists? log-file)
(call-with-output-file log-file (const #t))))
(let ((pid (run-container container-directory
mounts namespaces 1
(lambda ()
(mkdir-p "/var/run")
(clean-up pid-file)
(clean-up log-file)
(exec-command command
#:user user
#:group group
#:log-file log-file
#:directory directory
#:environment-variables
environment-variables)))))
(if pid-file
(if (or (memq 'mnt namespaces) (memq 'pid namespaces))
(read-pid-file/container pid pid-file
#:max-delay pid-file-timeout)
(read-pid-file pid-file #:max-delay pid-file-timeout))
pid))))
;; Local Variables:
;; eval: (put 'container-excursion* 'scheme-indent-function 1)
;; End:
;;; shepherd.scm ends here
+104 -13
View File
@@ -2,6 +2,8 @@
;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -21,9 +23,11 @@
(define-module (gnu build vm)
#:use-module (guix build utils)
#:use-module (guix build store-copy)
#:use-module (guix build syscalls)
#:use-module (gnu build linux-boot)
#:use-module (gnu build install)
#:use-module (guix records)
#:use-module (ice-9 format)
#:use-module (ice-9 match)
#:use-module (ice-9 regex)
#:use-module (srfi srfi-1)
@@ -39,7 +43,7 @@
partition-size
partition-file-system
partition-label
partition-bootable?
partition-flags
partition-initializer
root-partition-initializer
@@ -139,7 +143,7 @@ the #:references-graphs parameter of 'derivation'."
(size partition-size)
(file-system partition-file-system (default "ext4"))
(label partition-label (default #f))
(bootable? partition-bootable? (default #f))
(flags partition-flags (default '()))
(initializer partition-initializer (default (const #t))))
(define (fold2 proc seed1 seed2 lst) ;TODO: factorize
@@ -166,9 +170,10 @@ actual /dev name based on DEVICE."
(cons* "mkpart" "primary" "ext2"
(format #f "~aB" offset)
(format #f "~aB" (+ offset (partition-size part)))
(if (partition-bootable? part)
`("set" ,(number->string index) "boot" "on")
'())))
(append-map (lambda (flag)
(list "set" (number->string index)
(symbol->string flag) "on"))
(partition-flags part))))
(define (options partitions offset)
(let loop ((partitions partitions)
@@ -209,10 +214,10 @@ actual /dev name based on DEVICE."
(define MS_BIND 4096) ; <sys/mounts.h> again!
(define* (format-partition partition type
#:key label)
"Create a file system TYPE on PARTITION. If LABEL is true, use that as the
volume name."
(define* (create-ext-file-system partition type
#:key label)
"Create an ext-family filesystem of TYPE on PARTITION. If LABEL is true,
use that as the volume name."
(format #t "creating ~a partition...\n" type)
(unless (zero? (apply system* (string-append "mkfs." type)
"-F" partition
@@ -221,6 +226,28 @@ volume name."
'())))
(error "failed to create partition")))
(define* (create-fat-file-system partition
#:key label)
"Create a FAT filesystem on PARTITION. The number of File Allocation Tables
will be determined based on filesystem size. If LABEL is true, use that as the
volume name."
(format #t "creating FAT partition...\n")
(unless (zero? (apply system* "mkfs.fat" partition
(if label
`("-n" ,label)
'())))
(error "failed to create FAT partition")))
(define* (format-partition partition type
#:key label)
"Create a file system TYPE on PARTITION. If LABEL is true, use that as the
volume name."
(cond ((string-prefix? "ext" type)
(create-ext-file-system partition type #:label label))
((or (string-prefix? "fat" type) (string= "vfat" type))
(create-fat-file-system partition #:label label))
(else (error "Unsupported file system."))))
(define (initialize-partition partition)
"Format PARTITION, a <partition> object with a non-#f 'device' field, mount
it, run its initializer, and unmount it."
@@ -283,23 +310,62 @@ SYSTEM-DIRECTORY is the name of the directory of the 'system' derivation."
(unless register-closures?
(reset-timestamps target))))
(define (register-grub.cfg-root target grub.cfg)
"On file system TARGET, register GRUB.CFG as a GC root."
(define (register-grub.cfg-root target bootcfg)
"On file system TARGET, register BOOTCFG as a GC root."
(let ((directory (string-append target "/var/guix/gcroots")))
(mkdir-p directory)
(symlink grub.cfg (string-append directory "/grub.cfg"))))
(symlink bootcfg (string-append directory "/grub.cfg"))))
(define (install-efi grub esp config-file)
"Write a self-contained GRUB EFI loader to the mounted ESP using CONFIG-FILE."
(let* ((system %host-type)
;; Hard code the output location to a well-known path recognized by
;; compliant firmware. See "3.5.1.1 Removable Media Boot Behaviour":
;; http://www.uefi.org/sites/default/files/resources/UEFI%20Spec%202_6.pdf
(grub-mkstandalone (string-append grub "/bin/grub-mkstandalone"))
(efi-directory (string-append esp "/EFI/BOOT"))
;; Map grub target names to boot file names.
(efi-targets (cond ((string-prefix? "x86_64" system)
'("x86_64-efi" . "BOOTX64.EFI"))
((string-prefix? "i686" system)
'("i386-efi" . "BOOTIA32.EFI"))
((string-prefix? "armhf" system)
'("arm-efi" . "BOOTARM.EFI"))
((string-prefix? "aarch64" system)
'("arm64-efi" . "BOOTAA64.EFI")))))
;; grub-mkstandalone requires a TMPDIR to prepare the firmware image.
(setenv "TMPDIR" esp)
(mkdir-p efi-directory)
(unless (zero? (system* grub-mkstandalone "-O" (car efi-targets)
"-o" (string-append efi-directory "/"
(cdr efi-targets))
;; Graft the configuration file onto the image.
(string-append "boot/grub/grub.cfg=" config-file)))
(error "failed to create GRUB EFI image"))))
(define* (initialize-hard-disk device
#:key
grub.cfg
(grub-efi #f)
(partitions '()))
"Initialize DEVICE as a disk containing all the <partition> objects listed
in PARTITIONS, and using GRUB.CFG as its bootloader configuration file.
in PARTITIONS, and using BOOTCFG as its bootloader configuration file.
Each partition is initialized by calling its 'initializer' procedure,
passing it a directory name where it is mounted."
(define (partition-bootable? partition)
"Return the first partition found with the boot flag set."
(member 'boot (partition-flags partition)))
(define (partition-esp? partition)
"Return the first EFI System Partition."
(member 'esp (partition-flags partition)))
(let* ((partitions (initialize-partition-table device partitions))
(root (find partition-bootable? partitions))
(esp (find partition-esp? partitions))
(target "/fs"))
(unless root
(error "no bootable partition specified" partitions))
@@ -311,6 +377,31 @@ passing it a directory name where it is mounted."
(mount (partition-device root) target (partition-file-system root))
(install-grub grub.cfg device target)
(when esp
;; Mount the ESP somewhere and install GRUB UEFI image.
(let ((mount-point (string-append target "/boot/efi"))
(grub-config (string-append target "/tmp/grub-standalone.cfg")))
(display "mounting EFI system partition...\n")
(mkdir-p mount-point)
(mount (partition-device esp) mount-point
(partition-file-system esp))
;; Create a tiny configuration file telling the embedded grub
;; where to load the real thing.
(call-with-output-file grub-config
(lambda (port)
(format port
"insmod part_msdos~@
search --set=root --label gnu-disk-image~@
configfile /boot/grub/grub.cfg~%")))
(display "creating EFI firmware image...")
(install-efi grub-efi mount-point grub-config)
(display "done.\n")
(delete-file grub-config)
(umount mount-point)))
;; Register GRUB.CFG as a GC root.
(register-grub.cfg-root target grub.cfg)
+231 -79
View File
@@ -1,14 +1,19 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2013, 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
# Copyright © 2016 Kei Kebreau <kei@openmailbox.org>
# Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
# Copyright © 2016, 2017 Kei Kebreau <kei@openmailbox.org>
# Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
# Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
# Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
# Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com>
# Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
#
# This file is part of GNU Guix.
#
@@ -40,6 +45,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/adns.scm \
%D%/packages/algebra.scm \
%D%/packages/aidc.scm \
%D%/packages/android.scm \
%D%/packages/animation.scm \
%D%/packages/anthy.scm \
%D%/packages/apl.scm \
@@ -48,7 +54,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/assembly.scm \
%D%/packages/astronomy.scm \
%D%/packages/attr.scm \
%D%/packages/audacity.scm \
%D%/packages/audio.scm \
%D%/packages/augeas.scm \
%D%/packages/autogen.scm \
@@ -64,7 +69,9 @@ GNU_SYSTEM_MODULES = \
%D%/packages/bittorrent.scm \
%D%/packages/bison.scm \
%D%/packages/boost.scm \
%D%/packages/bootloaders.scm \
%D%/packages/bootstrap.scm \
%D%/packages/build-tools.scm \
%D%/packages/busybox.scm \
%D%/packages/c.scm \
%D%/packages/calcurse.scm \
@@ -78,6 +85,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/code.scm \
%D%/packages/commencement.scm \
%D%/packages/compression.scm \
%D%/packages/compton.scm \
%D%/packages/conkeror.scm \
%D%/packages/conky.scm \
%D%/packages/connman.scm \
@@ -99,7 +107,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/dejagnu.scm \
%D%/packages/dico.scm \
%D%/packages/dictionaries.scm \
%D%/packages/dillo.scm \
%D%/packages/direct-connect.scm \
%D%/packages/disk.scm \
%D%/packages/display-managers.scm \
%D%/packages/django.scm \
@@ -125,6 +133,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/fcitx.scm \
%D%/packages/figlet.scm \
%D%/packages/file.scm \
%D%/packages/file-systems.scm \
%D%/packages/finance.scm \
%D%/packages/firmware.scm \
%D%/packages/flashing-tools.scm \
@@ -169,7 +178,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/graphics.scm \
%D%/packages/graphviz.scm \
%D%/packages/groff.scm \
%D%/packages/grub.scm \
%D%/packages/gsasl.scm \
%D%/packages/gstreamer.scm \
%D%/packages/gtk.scm \
@@ -183,8 +191,10 @@ GNU_SYSTEM_MODULES = \
%D%/packages/hurd.scm \
%D%/packages/ibus.scm \
%D%/packages/icu4c.scm \
%D%/packages/idris.scm \
%D%/packages/idutils.scm \
%D%/packages/image.scm \
%D%/packages/image-processing.scm \
%D%/packages/image-viewers.scm \
%D%/packages/imagemagick.scm \
%D%/packages/indent.scm \
@@ -198,6 +208,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/julia.scm \
%D%/packages/kde.scm \
%D%/packages/kde-frameworks.scm \
%D%/packages/kerberos.scm \
%D%/packages/key-mon.scm \
%D%/packages/kodi.scm \
%D%/packages/language.scm \
@@ -223,7 +234,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/libunwind.scm \
%D%/packages/libupnp.scm \
%D%/packages/lighting.scm \
%D%/packages/links.scm \
%D%/packages/linux.scm \
%D%/packages/lirc.scm \
%D%/packages/lisp.scm \
@@ -235,7 +245,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/lua.scm \
%D%/packages/lxde.scm \
%D%/packages/lxqt.scm \
%D%/packages/lynx.scm \
%D%/packages/m4.scm \
%D%/packages/machine-learning.scm \
%D%/packages/man.scm \
@@ -247,11 +256,11 @@ GNU_SYSTEM_MODULES = \
%D%/packages/maths.scm \
%D%/packages/mc.scm \
%D%/packages/mcrypt.scm \
%D%/packages/mes.scm \
%D%/packages/messaging.scm \
%D%/packages/mingw.scm \
%D%/packages/mg.scm \
%D%/packages/microcom.scm \
%D%/packages/mit-krb5.scm \
%D%/packages/moe.scm \
%D%/packages/monitoring.scm \
%D%/packages/mono.scm \
@@ -271,6 +280,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/networking.scm \
%D%/packages/nfs.scm \
%D%/packages/nickle.scm \
%D%/packages/nim.scm \
%D%/packages/ninja.scm \
%D%/packages/node.scm \
%D%/packages/noweb.scm \
@@ -315,6 +325,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/ratpoison.scm \
%D%/packages/rdesktop.scm \
%D%/packages/rdf.scm \
%D%/packages/re2c.scm \
%D%/packages/readline.scm \
%D%/packages/regex.scm \
%D%/packages/rrdtool.scm \
@@ -333,11 +344,12 @@ GNU_SYSTEM_MODULES = \
%D%/packages/sdl.scm \
%D%/packages/search.scm \
%D%/packages/security-token.scm \
%D%/packages/selinux.scm \
%D%/packages/serialization.scm \
%D%/packages/serveez.scm \
%D%/packages/shells.scm \
%D%/packages/shellutils.scm \
%D%/packages/shishi.scm \
%D%/packages/simh.scm \
%D%/packages/skarnet.scm \
%D%/packages/skribilo.scm \
%D%/packages/slang.scm \
@@ -345,8 +357,10 @@ GNU_SYSTEM_MODULES = \
%D%/packages/speech.scm \
%D%/packages/spice.scm \
%D%/packages/ssh.scm \
%D%/packages/sssd.scm \
%D%/packages/stalonetray.scm \
%D%/packages/statistics.scm \
%D%/packages/storage.scm \
%D%/packages/suckless.scm \
%D%/packages/swig.scm \
%D%/packages/sync.scm \
@@ -370,7 +384,6 @@ GNU_SYSTEM_MODULES = \
%D%/packages/unrtf.scm \
%D%/packages/upnp.scm \
%D%/packages/uucp.scm \
%D%/packages/u-boot.scm \
%D%/packages/valgrind.scm \
%D%/packages/version-control.scm \
%D%/packages/video.scm \
@@ -380,6 +393,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/w3m.scm \
%D%/packages/wdiff.scm \
%D%/packages/web.scm \
%D%/packages/web-browsers.scm \
%D%/packages/webkit.scm \
%D%/packages/wget.scm \
%D%/packages/wicd.scm \
@@ -413,14 +427,17 @@ GNU_SYSTEM_MODULES = \
%D%/services/lirc.scm \
%D%/services/mail.scm \
%D%/services/mcron.scm \
%D%/services/messaging.scm \
%D%/services/networking.scm \
%D%/services/nfs.scm \
%D%/services/shepherd.scm \
%D%/services/herd.scm \
%D%/services/pm.scm \
%D%/services/sddm.scm \
%D%/services/spice.scm \
%D%/services/ssh.scm \
%D%/services/version-control.scm \
%D%/services/vpn.scm \
%D%/services/web.scm \
%D%/services/xorg.scm \
\
@@ -446,16 +463,23 @@ GNU_SYSTEM_MODULES = \
%D%/build/linux-initrd.scm \
%D%/build/linux-modules.scm \
%D%/build/marionette.scm \
%D%/build/svg.scm \
%D%/build/shepherd.scm \
%D%/build/vm.scm \
\
%D%/tests.scm \
%D%/tests/base.scm \
%D%/tests/dict.scm \
%D%/tests/nfs.scm \
%D%/tests/install.scm \
%D%/tests/mail.scm \
%D%/tests/ssh.scm
%D%/tests/messaging.scm \
%D%/tests/networking.scm \
%D%/tests/ssh.scm \
%D%/tests/web.scm
# Modules that do not need to be compiled.
MODULES_NOT_COMPILED += \
%D%/build/svg.scm
patchdir = $(guilemoduledir)/%D%/packages/patches
dist_patch_DATA = \
@@ -464,6 +488,7 @@ dist_patch_DATA = \
%D%/packages/patches/a2ps-CVE-2014-0466.patch \
%D%/packages/patches/abiword-explictly-cast-bools.patch \
%D%/packages/patches/abiword-wmf-version-lookup-fix.patch \
%D%/packages/patches/abiword-black-drawing-with-gtk322.patch \
%D%/packages/patches/acl-hurd-path-max.patch \
%D%/packages/patches/aegis-constness-error.patch \
%D%/packages/patches/aegis-perl-tempdir1.patch \
@@ -471,15 +496,13 @@ dist_patch_DATA = \
%D%/packages/patches/aegis-test-fixup-1.patch \
%D%/packages/patches/aegis-test-fixup-2.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/alsa-lib-mips-atomic-fix.patch \
%D%/packages/patches/antiword-CVE-2014-8123.patch \
%D%/packages/patches/apr-skip-getservbyname-test.patch \
%D%/packages/patches/arb-ldconfig.patch \
%D%/packages/patches/artanis-fix-Makefile.in.patch \
%D%/packages/patches/aspell-default-dict-dir.patch \
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \
%D%/packages/patches/ath9k-htc-firmware-objcopy.patch \
%D%/packages/patches/audacity-fix-ffmpeg-binding.patch \
%D%/packages/patches/automake-skip-amhello-tests.patch \
%D%/packages/patches/automake-regexp-syntax.patch \
%D%/packages/patches/automake-test-gzip-warning.patch \
@@ -497,6 +520,12 @@ dist_patch_DATA = \
%D%/packages/patches/calibre-drop-unrar.patch \
%D%/packages/patches/calibre-no-updates-dialog.patch \
%D%/packages/patches/cdparanoia-fpic.patch \
%D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \
%D%/packages/patches/ceph-disable-cpu-optimizations.patch \
%D%/packages/patches/ceph-disable-unittest-throttle.patch \
%D%/packages/patches/ceph-skip-collect-sys-info-test.patch \
%D%/packages/patches/ceph-skip-unittest_blockdev.patch \
%D%/packages/patches/chicken-CVE-2017-6949.patch \
%D%/packages/patches/chmlib-inttypes.patch \
%D%/packages/patches/clang-libc-search-path.patch \
%D%/packages/patches/clang-3.8-libc-search-path.patch \
@@ -504,9 +533,16 @@ dist_patch_DATA = \
%D%/packages/patches/clx-remove-demo.patch \
%D%/packages/patches/cmake-fix-tests.patch \
%D%/packages/patches/coda-use-system-libs.patch \
%D%/packages/patches/cool-retro-term-dont-check-uninit-member.patch \
%D%/packages/patches/cool-retro-term-fix-array-size.patch \
%D%/packages/patches/cool-retro-term-memory-leak-1.patch \
%D%/packages/patches/cool-retro-term-remove-non-free-fonts.patch \
%D%/packages/patches/coreutils-cut-huge-range-test.patch \
%D%/packages/patches/coreutils-fix-cross-compilation.patch \
%D%/packages/patches/cpio-CVE-2016-2037.patch \
%D%/packages/patches/cpufrequtils-fix-aclocal.patch \
%D%/packages/patches/cracklib-CVE-2016-6318.patch \
%D%/packages/patches/cracklib-fix-buffer-overflow.patch \
%D%/packages/patches/crda-optional-gcrypt.patch \
%D%/packages/patches/crossmap-allow-system-pysam.patch \
%D%/packages/patches/csound-header-ordering.patch \
@@ -514,15 +550,12 @@ dist_patch_DATA = \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \
%D%/packages/patches/dbus-helper-search-path.patch \
%D%/packages/patches/devil-CVE-2009-3994.patch \
%D%/packages/patches/devil-fix-libpng.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
%D%/packages/patches/diffutils-gets-undeclared.patch \
%D%/packages/patches/doc++-include-directives.patch \
%D%/packages/patches/doc++-segfault-fix.patch \
%D%/packages/patches/doxygen-test.patch \
%D%/packages/patches/duplicity-piped-password.patch \
%D%/packages/patches/duplicity-test_selection-tmp.patch \
%D%/packages/patches/dvd+rw-tools-add-include.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
%D%/packages/patches/elixir-disable-failing-tests.patch \
%D%/packages/patches/einstein-build.patch \
@@ -531,8 +564,10 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
%D%/packages/patches/emacs-source-date-epoch.patch \
%D%/packages/patches/eudev-rules-directory.patch \
%D%/packages/patches/eudev-conflicting-declaration.patch \
%D%/packages/patches/evilwm-lost-focus-bug.patch \
%D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \
%D%/packages/patches/fabric-tests.patch \
%D%/packages/patches/fastcap-mulGlobal.patch \
%D%/packages/patches/fastcap-mulSetup.patch \
%D%/packages/patches/fasthenry-spAllocate.patch \
@@ -544,13 +579,18 @@ dist_patch_DATA = \
%D%/packages/patches/fcgi-2.4.0-poll.patch \
%D%/packages/patches/findutils-localstatedir.patch \
%D%/packages/patches/findutils-test-xargs.patch \
%D%/packages/patches/flex-CVE-2016-6354.patch \
%D%/packages/patches/flint-ldconfig.patch \
%D%/packages/patches/fltk-shared-lib-defines.patch \
%D%/packages/patches/fltk-xfont-on-demand.patch \
%D%/packages/patches/fontconfig-charwidth-symbol-conflict.patch \
%D%/packages/patches/fontconfig-path-max.patch \
%D%/packages/patches/fontforge-svg-modtime.patch \
%D%/packages/patches/freeimage-CVE-2015-0852.patch \
%D%/packages/patches/freeimage-CVE-2016-5684.patch \
%D%/packages/patches/freeimage-fix-build-with-gcc-5.patch \
%D%/packages/patches/freetype-CVE-2017-8105.patch \
%D%/packages/patches/freetype-CVE-2017-8287.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
@@ -559,51 +599,59 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-strmov-store-file-names.patch \
%D%/packages/patches/gcc-4.9.3-mingw-gthr-default.patch \
%D%/packages/patches/gcc-5.0-libvtv-runpath.patch \
%D%/packages/patches/gcc-5-source-date-epoch-1.patch \
%D%/packages/patches/gcc-5-source-date-epoch-2.patch \
%D%/packages/patches/gcc-6-arm-none-eabi-multilib.patch \
%D%/packages/patches/gcc-6-cross-environment-variables.patch \
%D%/packages/patches/gcj-arm-mode.patch \
%D%/packages/patches/gd-CVE-2016-7568.patch \
%D%/packages/patches/gd-CVE-2016-8670.patch \
%D%/packages/patches/gd-fix-chunk-size-on-boundaries.patch \
%D%/packages/patches/gdk-pixbuf-list-dir.patch \
%D%/packages/patches/gd-fix-gd2-read-test.patch \
%D%/packages/patches/gd-fix-tests-on-i686.patch \
%D%/packages/patches/gd-fix-truecolor-format-correction.patch \
%D%/packages/patches/gd-freetype-test-failure.patch \
%D%/packages/patches/gd-php-73968-Fix-109-XBM-reading.patch \
%D%/packages/patches/gegl-CVE-2012-4433.patch \
%D%/packages/patches/geoclue-config.patch \
%D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \
%D%/packages/patches/ghostscript-CVE-2013-5653.patch \
%D%/packages/patches/ghostscript-CVE-2015-3228.patch \
%D%/packages/patches/ghostscript-CVE-2016-7976.patch \
%D%/packages/patches/ghostscript-CVE-2016-7978.patch \
%D%/packages/patches/ghostscript-CVE-2016-7979.patch \
%D%/packages/patches/ghostscript-CVE-2016-8602.patch \
%D%/packages/patches/ghostscript-CVE-2017-8291.patch \
%D%/packages/patches/ghostscript-runpath.patch \
%D%/packages/patches/glib-networking-ssl-cert-file.patch \
%D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glibc-bootstrap-system.patch \
%D%/packages/patches/glibc-ldd-x86_64.patch \
%D%/packages/patches/glibc-locales.patch \
%D%/packages/patches/glibc-memchr-overflow-i686.patch \
%D%/packages/patches/glibc-o-largefile.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnome-shell-CVE-2017-8288.patch \
%D%/packages/patches/gnome-tweak-tool-search-paths.patch \
%D%/packages/patches/gnucash-price-quotes-perl.patch \
%D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \
%D%/packages/patches/gobject-introspection-cc.patch \
%D%/packages/patches/gobject-introspection-girepository.patch \
%D%/packages/patches/graphite2-CVE-2017-5436.patch \
%D%/packages/patches/graphite2-check-code-point-limit.patch \
%D%/packages/patches/graphite2-ffloat-store.patch \
%D%/packages/patches/graphite2-fix-32-bit-wrap-arounds.patch \
%D%/packages/patches/graphite2-non-linear-classes-even-number.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \
%D%/packages/patches/grub-CVE-2015-8370.patch \
%D%/packages/patches/grub-gets-undeclared.patch \
%D%/packages/patches/grub-freetype.patch \
%D%/packages/patches/gsl-test-i686.patch \
%D%/packages/patches/guile-1.8-cpp-4.5.patch \
%D%/packages/patches/guile-arm-fixes.patch \
%D%/packages/patches/guile-default-utf8.patch \
%D%/packages/patches/guile-linux-syscalls.patch \
%D%/packages/patches/guile-present-coding.patch \
%D%/packages/patches/guile-relocatable.patch \
%D%/packages/patches/guile-repl-server-test.patch \
%D%/packages/patches/guile-rsvg-pkgconfig.patch \
%D%/packages/patches/guile-ssh-rexec-bug.patch \
%D%/packages/patches/guile-ssh-double-free.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
%D%/packages/patches/gtk2-theme-paths.patch \
@@ -624,23 +672,25 @@ dist_patch_DATA = \
%D%/packages/patches/hdf-eos5-fortrantests.patch \
%D%/packages/patches/higan-remove-march-native-flag.patch \
%D%/packages/patches/hop-linker-flags.patch \
%D%/packages/patches/httpd-CVE-2016-8740.patch \
%D%/packages/patches/hubbub-sort-entities.patch \
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
%D%/packages/patches/hydra-disable-darcs-test.patch \
%D%/packages/patches/hypre-doc-tables.patch \
%D%/packages/patches/hypre-ldflags.patch \
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
%D%/packages/patches/icecat-binutils.patch \
%D%/packages/patches/icu4c-CVE-2014-6585.patch \
%D%/packages/patches/icu4c-CVE-2015-1270.patch \
%D%/packages/patches/icu4c-CVE-2015-4760.patch \
%D%/packages/patches/icu4c-CVE-2017-7867-CVE-2017-7868.patch \
%D%/packages/patches/icu4c-reset-keyword-list-iterator.patch \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
%D%/packages/patches/inkscape-drop-wait-for-targets.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/jasper-CVE-2017-6850.patch \
%D%/packages/patches/jbig2dec-ignore-testtest.patch \
%D%/packages/patches/jbig2dec-CVE-2016-9601.patch \
%D%/packages/patches/jq-CVE-2015-8863.patch \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
%D%/packages/patches/khmer-use-libraries.patch \
%D%/packages/patches/kiki-level-selection-crash.patch \
%D%/packages/patches/kiki-makefile.patch \
%D%/packages/patches/kiki-missing-includes.patch \
%D%/packages/patches/kiki-portability-64bit.patch \
%D%/packages/patches/kmod-module-directory.patch \
%D%/packages/patches/kobodeluxe-paths.patch \
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
@@ -649,22 +699,31 @@ dist_patch_DATA = \
%D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \
%D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \
%D%/packages/patches/laby-make-install.patch \
%D%/packages/patches/lcms-CVE-2016-10165.patch \
%D%/packages/patches/ldc-disable-tests.patch \
%D%/packages/patches/ldc-1.1.0-disable-dmd-tests.patch \
%D%/packages/patches/ldc-1.1.0-disable-phobos-tests.patch \
%D%/packages/patches/liba52-enable-pic.patch \
%D%/packages/patches/liba52-link-with-libm.patch \
%D%/packages/patches/liba52-set-soname.patch \
%D%/packages/patches/liba52-use-mtune-not-mcpu.patch \
%D%/packages/patches/libarchive-7zip-heap-overflow.patch \
%D%/packages/patches/libarchive-fix-symlink-check.patch \
%D%/packages/patches/libarchive-fix-filesystem-attacks.patch \
%D%/packages/patches/libarchive-safe_fprintf-buffer-overflow.patch \
%D%/packages/patches/libbase-fix-includes.patch \
%D%/packages/patches/libbase-use-own-logging.patch \
%D%/packages/patches/libbonobo-activation-test-race.patch \
%D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \
%D%/packages/patches/libcmis-fix-test-onedrive.patch \
%D%/packages/patches/libcroco-CVE-2017-7960.patch \
%D%/packages/patches/libcroco-CVE-2017-7961.patch \
%D%/packages/patches/libdrm-symbol-check.patch \
%D%/packages/patches/libepoxy-gl-null-checks.patch \
%D%/packages/patches/libetonyek-build-with-mdds-1.2.patch \
%D%/packages/patches/libevent-dns-tests.patch \
%D%/packages/patches/libevent-2.0-CVE-2016-10195.patch \
%D%/packages/patches/libevent-2.0-CVE-2016-10196.patch \
%D%/packages/patches/libevent-2.0-CVE-2016-10197.patch \
%D%/packages/patches/libevent-2.0-evbuffer-add-use-last-with-datap.patch \
%D%/packages/patches/libevent-2.1-dns-tests.patch \
%D%/packages/patches/libevent-2.1-skip-failing-test.patch \
%D%/packages/patches/libextractor-ffmpeg-3.patch \
%D%/packages/patches/libgit2-use-after-free.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \
%D%/packages/patches/liboop-mips64-deplibs-fix.patch \
@@ -674,15 +733,36 @@ dist_patch_DATA = \
%D%/packages/patches/libmad-armv7-thumb-pt2.patch \
%D%/packages/patches/libmad-frame-length.patch \
%D%/packages/patches/libmad-mips-newgcc.patch \
%D%/packages/patches/libssh-0.6.5-CVE-2016-0739.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
%D%/packages/patches/libssh2-fix-build-failure-with-gcrypt.patch \
%D%/packages/patches/libtar-CVE-2013-4420.patch \
%D%/packages/patches/libtheora-config-guess.patch \
%D%/packages/patches/libtiff-CVE-2016-10092.patch \
%D%/packages/patches/libtiff-CVE-2016-10093.patch \
%D%/packages/patches/libtiff-CVE-2016-10094.patch \
%D%/packages/patches/libtiff-CVE-2017-5225.patch \
%D%/packages/patches/libtiff-CVE-2017-7593.patch \
%D%/packages/patches/libtiff-CVE-2017-7594.patch \
%D%/packages/patches/libtiff-multiple-UBSAN-crashes.patch \
%D%/packages/patches/libtiff-assertion-failure.patch \
%D%/packages/patches/libtiff-divide-by-zero-ojpeg.patch \
%D%/packages/patches/libtiff-divide-by-zero-tiffcp.patch \
%D%/packages/patches/libtiff-divide-by-zero-tiffcrop.patch \
%D%/packages/patches/libtiff-divide-by-zero.patch \
%D%/packages/patches/libtiff-heap-overflow-pixarlog-luv.patch \
%D%/packages/patches/libtiff-heap-overflow-tif-dirread.patch \
%D%/packages/patches/libtiff-heap-overflow-tiffcp.patch \
%D%/packages/patches/libtiff-heap-overflow-tiffcrop.patch \
%D%/packages/patches/libtiff-invalid-read.patch \
%D%/packages/patches/libtiff-null-dereference.patch \
%D%/packages/patches/libtiff-tiffcp-underflow.patch \
%D%/packages/patches/libtirpc-CVE-2017-8779.patch \
%D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \
%D%/packages/patches/libtool-skip-tests2.patch \
%D%/packages/patches/libunwind-CVE-2015-3239.patch \
%D%/packages/patches/libupnp-CVE-2016-6255.patch \
%D%/packages/patches/libupnp-CVE-2016-8863.patch \
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
%D%/packages/patches/libwebp-CVE-2016-9085.patch \
%D%/packages/patches/libwmf-CAN-2004-0941.patch \
%D%/packages/patches/libwmf-CVE-2006-3376.patch \
%D%/packages/patches/libwmf-CVE-2007-0455.patch \
@@ -695,10 +775,20 @@ dist_patch_DATA = \
%D%/packages/patches/libwmf-CVE-2015-0848+CVE-2015-4588.patch \
%D%/packages/patches/libwmf-CVE-2015-4695.patch \
%D%/packages/patches/libwmf-CVE-2015-4696.patch \
%D%/packages/patches/libxcb-python-3.5-compat.patch \
%D%/packages/patches/libxml2-CVE-2016-4658.patch \
%D%/packages/patches/libxml2-CVE-2016-5131.patch \
%D%/packages/patches/libxslt-generated-ids.patch \
%D%/packages/patches/libxslt-CVE-2016-4738.patch \
%D%/packages/patches/libxt-guix-search-paths.patch \
%D%/packages/patches/lierolibre-check-unaligned-access.patch \
%D%/packages/patches/lierolibre-is-free-software.patch \
%D%/packages/patches/lierolibre-newer-libconfig.patch \
%D%/packages/patches/lierolibre-remove-arch-warning.patch \
%D%/packages/patches/lierolibre-try-building-other-arch.patch \
%D%/packages/patches/linux-pam-no-setfsuid.patch \
%D%/packages/patches/lirc-localstatedir.patch \
%D%/packages/patches/llvm-3.5-fix-clang-build-with-gcc5.patch \
%D%/packages/patches/llvm-for-extempore.patch \
%D%/packages/patches/lm-sensors-hwmon-attrs.patch \
%D%/packages/patches/lua-CVE-2014-5461.patch \
@@ -709,23 +799,35 @@ dist_patch_DATA = \
%D%/packages/patches/luajit-no_ldconfig.patch \
%D%/packages/patches/luajit-symlinks.patch \
%D%/packages/patches/luit-posix.patch \
%D%/packages/patches/luminance-hdr-qt-printer.patch \
%D%/packages/patches/lvm2-static-link.patch \
%D%/packages/patches/lxsession-use-gapplication.patch \
%D%/packages/patches/lxterminal-CVE-2016-10369.patch \
%D%/packages/patches/lz4-fix-test-failures.patch \
%D%/packages/patches/make-impure-dirs.patch \
%D%/packages/patches/mars-install.patch \
%D%/packages/patches/mars-sfml-2.3.patch \
%D%/packages/patches/matplotlib-setupext-tk.patch \
%D%/packages/patches/maxima-defsystem-mkdir.patch \
%D%/packages/patches/mcron-install.patch \
%D%/packages/patches/mcrypt-CVE-2012-4409.patch \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \
%D%/packages/patches/mesa-fix-32bit-test-failures.patch \
%D%/packages/patches/mesa-skip-disk-cache-test.patch \
%D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \
%D%/packages/patches/metabat-remove-compilation-date.patch \
%D%/packages/patches/mhash-keygen-test-segfault.patch \
%D%/packages/patches/miniupnpc-CVE-2017-8798.patch \
%D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch \
%D%/packages/patches/mpc123-initialize-ao.patch \
%D%/packages/patches/mplayer2-theora-fix.patch \
%D%/packages/patches/module-init-tools-moduledir.patch \
%D%/packages/patches/mozjs17-aarch64-support.patch \
%D%/packages/patches/mozjs24-aarch64-support.patch \
%D%/packages/patches/mozjs38-pkg-config-version.patch \
%D%/packages/patches/mozjs38-shell-version.patch \
%D%/packages/patches/mozjs38-tracelogger.patch \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/multiqc-fix-git-subprocess-error.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupdf-build-with-openjpeg-2.1.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
@@ -734,37 +836,44 @@ dist_patch_DATA = \
%D%/packages/patches/net-tools-bitrot.patch \
%D%/packages/patches/netcdf-date-time.patch \
%D%/packages/patches/netcdf-tst_h_par.patch \
%D%/packages/patches/netsurf-about.patch \
%D%/packages/patches/netsurf-system-utf8proc.patch \
%D%/packages/patches/netsurf-y2038-tests.patch \
%D%/packages/patches/netsurf-longer-test-timeout.patch \
%D%/packages/patches/ngircd-handle-zombies.patch \
%D%/packages/patches/ngircd-no-dns-in-tests.patch \
%D%/packages/patches/ninja-tests.patch \
%D%/packages/patches/ninja-zero-mtime.patch \
%D%/packages/patches/node-9077.patch \
%D%/packages/patches/nss-disable-long-b64-tests.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \
%D%/packages/patches/nss-pkgconfig.patch \
%D%/packages/patches/ntfs-3g-CVE-2017-0358.patch \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch \
%D%/packages/patches/ocaml-bitstring-fix-configure.patch \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-findlib-make-install.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openexr-missing-samples.patch \
%D%/packages/patches/openjpeg-CVE-2016-5157.patch \
%D%/packages/patches/openjpeg-CVE-2016-7163.patch \
%D%/packages/patches/openjpeg-CVE-2016-9850-CVE-2016-9851.patch \
%D%/packages/patches/openjpeg-use-after-free-fix.patch \
%D%/packages/patches/openjpeg-CVE-2016-9572-CVE-2016-9573.patch \
%D%/packages/patches/openocd-nrf52.patch \
%D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \
%D%/packages/patches/orpheus-cast-errors-and-includes.patch \
%D%/packages/patches/ots-no-include-missing-file.patch \
%D%/packages/patches/p7zip-CVE-2016-9296.patch \
%D%/packages/patches/p7zip-remove-unused-code.patch \
%D%/packages/patches/patchelf-page-size.patch \
%D%/packages/patches/patchelf-rework-for-arm.patch \
%D%/packages/patches/patchutils-xfail-gendiff-tests.patch \
%D%/packages/patches/patch-hurd-path-max.patch \
%D%/packages/patches/pcre-CVE-2016-3191.patch \
%D%/packages/patches/pcre2-CVE-2016-3191.patch \
%D%/packages/patches/pcre-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-7186.patch \
%D%/packages/patches/pcre2-CVE-2017-8786.patch \
%D%/packages/patches/perl-autosplit-default-time.patch \
%D%/packages/patches/perl-deterministic-ordering.patch \
%D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
@@ -772,7 +881,7 @@ dist_patch_DATA = \
%D%/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \
%D%/packages/patches/perl-net-amazon-s3-moose-warning.patch \
%D%/packages/patches/perl-net-ssleay-disable-ede-test.patch \
%D%/packages/patches/perl-net-dns-resolver-programmable-Fix-broken-interface.patch \
%D%/packages/patches/perl-net-dns-resolver-programmable-fix.patch \
%D%/packages/patches/perl-no-sys-dirs.patch \
%D%/packages/patches/perl-module-pluggable-search.patch \
%D%/packages/patches/perl-reproducible-build-date.patch \
@@ -789,10 +898,12 @@ dist_patch_DATA = \
%D%/packages/patches/plink-endian-detection.patch \
%D%/packages/patches/plotutils-libpng-jmpbuf.patch \
%D%/packages/patches/polkit-drop-test.patch \
%D%/packages/patches/policycoreutils-make-sepolicy-use-python3.patch \
%D%/packages/patches/portaudio-audacity-compat.patch \
%D%/packages/patches/portmidi-modular-build.patch \
%D%/packages/patches/procmail-ambiguous-getline-debian.patch \
%D%/packages/patches/procmail-CVE-2014-3618.patch \
%D%/packages/patches/proot-test-fhs.patch \
%D%/packages/patches/pt-scotch-build-parallelism.patch \
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
@@ -802,56 +913,69 @@ dist_patch_DATA = \
%D%/packages/patches/pygpgme-disable-problematic-tests.patch \
%D%/packages/patches/pyqt-configure.patch \
%D%/packages/patches/python-2-deterministic-build-info.patch \
%D%/packages/patches/python-2.7-getentropy-on-old-kernels.patch \
%D%/packages/patches/python-2.7-search-paths.patch \
%D%/packages/patches/python-2.7-site-prefixes.patch \
%D%/packages/patches/python-2.7-source-date-epoch.patch \
%D%/packages/patches/python-3-deterministic-build-info.patch \
%D%/packages/patches/python-3-search-paths.patch \
%D%/packages/patches/python-3.4-fix-tests.patch \
%D%/packages/patches/python-3.5-fix-tests.patch \
%D%/packages/patches/python-dendropy-exclude-failing-tests.patch \
%D%/packages/patches/python-3.5-getentropy-on-old-kernels.patch \
%D%/packages/patches/python-dendropy-fix-tests.patch \
%D%/packages/patches/python-file-double-encoding-bug.patch \
%D%/packages/patches/python-fix-tests.patch \
%D%/packages/patches/python-parse-too-many-fields.patch \
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
%D%/packages/patches/python-statsmodels-fix-tests.patch \
%D%/packages/patches/python-configobj-setuptools.patch \
%D%/packages/patches/python-cython-fix-tests-32bit.patch \
%D%/packages/patches/python-fake-factory-fix-build-32bit.patch \
%D%/packages/patches/python-faker-fix-build-32bit.patch \
%D%/packages/patches/python-pandas-skip-failing-tests.patch \
%D%/packages/patches/python-paste-remove-website-test.patch \
%D%/packages/patches/python-paste-remove-timing-test.patch \
%D%/packages/patches/python-pillow-freetype-2.7-test-failure.patch \
%D%/packages/patches/python-pygit2-disable-network-tests.patch \
%D%/packages/patches/python-pyopenssl-skip-network-test.patch \
%D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \
%D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
%D%/packages/patches/qemu-CVE-2016-8576.patch \
%D%/packages/patches/qemu-CVE-2016-8577.patch \
%D%/packages/patches/qemu-CVE-2016-8578.patch \
%D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \
%D%/packages/patches/python2-subprocess32-disable-input-test.patch \
%D%/packages/patches/qemu-CVE-2017-7493.patch \
%D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
%D%/packages/patches/rapicorn-isnan.patch \
%D%/packages/patches/ratpoison-shell.patch \
%D%/packages/patches/rcs-5.9.4-noreturn.patch \
%D%/packages/patches/readline-link-ncurses.patch \
%D%/packages/patches/readline-6.2-CVE-2014-2524.patch \
%D%/packages/patches/readline-7.0-mingw.patch \
%D%/packages/patches/reptyr-fix-gcc-7.patch \
%D%/packages/patches/ripperx-missing-file.patch \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rpm-CVE-2014-8118.patch \
%D%/packages/patches/rsem-makefile.patch \
%D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \
%D%/packages/patches/ruby-concurrent-test-arm.patch \
%D%/packages/patches/ruby-puma-ignore-broken-test.patch \
%D%/packages/patches/ruby-rack-ignore-failing-test.patch \
%D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\
%D%/packages/patches/ruby-yard-fix-skip-of-markdown-tests.patch \
%D%/packages/patches/sed-hurd-path-max.patch \
%D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scotch-test-threading.patch \
%D%/packages/patches/screen-fix-info-syntax-error.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/serf-comment-style-fix.patch \
%D%/packages/patches/serf-deflate-buckets-test-fix.patch \
%D%/packages/patches/shadow-4.4-su-snprintf-fix.patch \
%D%/packages/patches/shadow-CVE-2017-2616.patch \
%D%/packages/patches/slim-session.patch \
%D%/packages/patches/slim-config.patch \
%D%/packages/patches/slim-sigusr1.patch \
%D%/packages/patches/slim-reset.patch \
%D%/packages/patches/slim-login.patch \
%D%/packages/patches/slock-CVE-2016-6866.patch \
%D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
%D%/packages/patches/soprano-find-clucene.patch \
%D%/packages/patches/spice-CVE-2016-9577.patch \
%D%/packages/patches/spice-CVE-2016-9578-1.patch \
%D%/packages/patches/spice-CVE-2016-9578-2.patch \
%D%/packages/patches/steghide-fixes.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/swish-e-search.patch \
@@ -860,23 +984,28 @@ dist_patch_DATA = \
%D%/packages/patches/t1lib-CVE-2010-2642.patch \
%D%/packages/patches/t1lib-CVE-2011-0764.patch \
%D%/packages/patches/t1lib-CVE-2011-1552+CVE-2011-1553+CVE-2011-1554.patch \
%D%/packages/patches/tar-CVE-2016-6321.patch \
%D%/packages/patches/tar-skip-unreliable-tests.patch \
%D%/packages/patches/tcl-mkindex-deterministic.patch \
%D%/packages/patches/tclxml-3.2-install.patch \
%D%/packages/patches/tcsh-do-not-define-BSDWAIT.patch \
%D%/packages/patches/tcsh-fix-autotest.patch \
%D%/packages/patches/tcsh-fix-out-of-bounds-read.patch \
%D%/packages/patches/teensy-loader-cli-help.patch \
%D%/packages/patches/teeworlds-use-latest-wavpack.patch \
%D%/packages/patches/texlive-texmf-CVE-2016-10243.patch \
%D%/packages/patches/texi2html-document-encoding.patch \
%D%/packages/patches/texi2html-i18n.patch \
%D%/packages/patches/thefuck-test-environ.patch \
%D%/packages/patches/tidy-CVE-2015-5522+5523.patch \
%D%/packages/patches/tinyxml-use-stl.patch \
%D%/packages/patches/tipp10-fix-compiling.patch \
%D%/packages/patches/tipp10-remove-license-code.patch \
%D%/packages/patches/tk-find-library.patch \
%D%/packages/patches/ttf2eot-cstddef.patch \
%D%/packages/patches/ttfautohint-source-date-epoch.patch \
%D%/packages/patches/tophat-build-with-later-seqan.patch \
%D%/packages/patches/totem-debug-format-fix.patch \
%D%/packages/patches/tuxpaint-stamps-path.patch \
%D%/packages/patches/unrtf-CVE-2016-10091.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \
%D%/packages/patches/unzip-CVE-2014-8140.patch \
%D%/packages/patches/unzip-CVE-2014-8141.patch \
@@ -890,9 +1019,11 @@ dist_patch_DATA = \
%D%/packages/patches/unzip-initialize-symlink-flag.patch \
%D%/packages/patches/unzip-overflow-long-fsize.patch \
%D%/packages/patches/unzip-remove-build-date.patch \
%D%/packages/patches/ustr-fix-build-with-gcc-5.patch \
%D%/packages/patches/util-linux-tests.patch \
%D%/packages/patches/upower-builddir.patch \
%D%/packages/patches/valgrind-enable-arm.patch \
%D%/packages/patches/virglrenderer-CVE-2017-6386.patch \
%D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch \
%D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \
%D%/packages/patches/vorbis-tools-CVE-2015-6749.patch \
@@ -900,29 +1031,34 @@ dist_patch_DATA = \
%D%/packages/patches/vte-CVE-2012-2738-pt1.patch \
%D%/packages/patches/vte-CVE-2012-2738-pt2.patch \
%D%/packages/patches/weechat-python.patch \
%D%/packages/patches/wget-CVE-2017-6508.patch \
%D%/packages/patches/wget-fix-504-test-timeout.patch \
%D%/packages/patches/wicd-bitrate-none-fix.patch \
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
%D%/packages/patches/wicd-urwid-1.3.patch \
%D%/packages/patches/wicd-wpa2-ttls.patch \
%D%/packages/patches/wmctrl-64-fix.patch \
%D%/packages/patches/wmfire-update-for-new-gdk-versions.patch \
%D%/packages/patches/woff2-libbrotli.patch \
%D%/packages/patches/wordnet-CVE-2008-2149.patch \
%D%/packages/patches/wordnet-CVE-2008-3908-pt1.patch \
%D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch \
%D%/packages/patches/xcb-proto-python3-print.patch \
%D%/packages/patches/xcb-proto-python3-whitespace.patch \
%D%/packages/patches/wxwidgets-fix-windowGTK.patch \
%D%/packages/patches/xdotool-fix-makefile.patch \
%D%/packages/patches/xf86-input-wacom-xorg-abi-25.patch \
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
%D%/packages/patches/xf86-video-ast-remove-mibstore.patch \
%D%/packages/patches/xf86-video-geode-glibc-2.20.patch \
%D%/packages/patches/xf86-video-glint-remove-mibstore.patch \
%D%/packages/patches/xf86-video-i128-remove-mibstore.patch \
%D%/packages/patches/xf86-video-intel-compat-api.patch \
%D%/packages/patches/xf86-video-intel-glibc-2.20.patch \
%D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \
%D%/packages/patches/xf86-video-nv-remove-mibstore.patch \
%D%/packages/patches/xf86-video-tga-remove-mibstore.patch \
%D%/packages/patches/xfce4-panel-plugins.patch \
%D%/packages/patches/xfce4-session-fix-xflock4.patch \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xinetd-fix-fd-leak.patch \
%D%/packages/patches/xinetd-CVE-2013-4342.patch \
%D%/packages/patches/xmodmap-asprintf.patch \
%D%/packages/patches/libyaml-CVE-2014-9130.patch \
%D%/packages/patches/zathura-plugindir-environment-variable.patch
@@ -934,6 +1070,7 @@ bootstrapdir = $(guilemoduledir)/%D%/packages/bootstrap
bootstrap_x86_64_linuxdir = $(bootstrapdir)/x86_64-linux
bootstrap_i686_linuxdir = $(bootstrapdir)/i686-linux
bootstrap_armhf_linuxdir = $(bootstrapdir)/armhf-linux
bootstrap_aarch64_linuxdir = $(bootstrapdir)/aarch64-linux
bootstrap_mips64el_linuxdir = $(bootstrapdir)/mips64el-linux
dist_bootstrap_x86_64_linux_DATA = \
@@ -954,6 +1091,12 @@ dist_bootstrap_armhf_linux_DATA = \
%D%/packages/bootstrap/armhf-linux/tar \
%D%/packages/bootstrap/armhf-linux/xz
dist_bootstrap_aarch64_linux_DATA = \
%D%/packages/bootstrap/aarch64-linux/bash \
%D%/packages/bootstrap/aarch64-linux/mkdir \
%D%/packages/bootstrap/aarch64-linux/tar \
%D%/packages/bootstrap/aarch64-linux/xz
dist_bootstrap_mips64el_linux_DATA = \
%D%/packages/bootstrap/mips64el-linux/bash \
%D%/packages/bootstrap/mips64el-linux/mkdir \
@@ -968,6 +1111,8 @@ nodist_bootstrap_i686_linux_DATA = \
%D%/packages/bootstrap/i686-linux/guile-2.0.9.tar.xz
nodist_bootstrap_armhf_linux_DATA = \
%D%/packages/bootstrap/armhf-linux/guile-2.0.11.tar.xz
nodist_bootstrap_aarch64_linux_DATA = \
%D%/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz
nodist_bootstrap_mips64el_linux_DATA = \
%D%/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz
@@ -976,12 +1121,15 @@ nodist_bootstrap_mips64el_linux_DATA = \
set-bootstrap-executable-permissions:
chmod +x $(DESTDIR)$(bootstrapdir)/*/{bash,mkdir,tar,xz}
DISTCLEANFILES = \
BOOTSTRAP_GUILE_TARBALLS = \
$(nodist_bootstrap_x86_64_linux_DATA) \
$(nodist_bootstrap_i686_linux_DATA) \
$(nodist_bootstrap_armhf_linux_DATA) \
$(nodist_bootstrap_aarch64_linux_DATA) \
$(nodist_bootstrap_mips64el_linux_DATA)
DISTCLEANFILES = $(BOOTSTRAP_GUILE_TARBALLS)
# Method to download a file from an external source.
DOWNLOAD_FILE = \
GUILE_LOAD_COMPILED_PATH="$(top_builddir):$$GUILE_LOAD_COMPILED_PATH" \
@@ -1000,6 +1148,10 @@ DOWNLOAD_FILE = \
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
"e551d05d4d385d6706ab8d574856a087758294dc90ab4c06e70a157a685e23d6"
%D%/packages/bootstrap/aarch64-linux/guile-2.0.14.tar.xz:
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
"3939909f24dcb955621aa7f81ecde6844bea8a083969c2d275c55699af123ebe"
%D%/packages/bootstrap/mips64el-linux/guile-2.0.9.tar.xz:
$(AM_V_DL)$(MKDIR_P) `dirname "$@"`; \
$(DOWNLOAD_FILE) "$@" \
+53 -131
View File
@@ -1,8 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 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, 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
;;;
;;; This file is part of GNU Guix.
@@ -24,11 +24,11 @@
#:use-module (guix packages)
#:use-module (guix ui)
#:use-module (guix utils)
#:use-module (guix combinators)
#:use-module (guix discovery)
#:use-module (guix memoization)
#: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)
#:use-module (srfi srfi-1)
@@ -39,13 +39,14 @@
#:use-module (srfi srfi-39)
#:export (search-patch
search-patches
search-auxiliary-file
search-bootstrap-binary
%patch-path
%auxiliary-files-path
%bootstrap-binaries-path
%package-module-path
fold-packages
scheme-modules ;XXX: for lack of a better place
find-packages-by-name
find-best-packages-by-name
@@ -61,22 +62,32 @@
;;;
;;; Code:
;; By default, we store patches and bootstrap binaries alongside Guile
;; modules. This is so that these extra files can be found without
;; requiring a special setup, such as a specific installation directory
;; and an extra environment variable. One advantage of this setup is
;; that everything just works in an auto-compilation setting.
;; By default, we store patches, auxiliary files and bootstrap binaries
;; alongside Guile modules. This is so that these extra files can be
;; found without requiring a special setup, such as a specific
;; installation directory and an extra environment variable. One
;; advantage of this setup is that everything just works in an
;; auto-compilation setting.
(define %bootstrap-binaries-path
(make-parameter
(map (cut string-append <> "/gnu/packages/bootstrap")
%load-path)))
(define %auxiliary-files-path
(make-parameter
(map (cut string-append <> "/gnu/packages/aux-files")
%load-path)))
(define (search-auxiliary-file file-name)
"Search the auxiliary FILE-NAME. Return #f if not found."
(search-path (%auxiliary-files-path) file-name))
(define (search-patch file-name)
"Search the patch FILE-NAME. Raise an error if not found."
(or (search-path (%patch-path) file-name)
(raise (condition
(&message (message (format #f (_ "~a: patch not found")
(&message (message (format #f (G_ "~a: patch not found")
file-name)))))))
(define-syntax-rule (search-patches file-name ...)
@@ -92,7 +103,7 @@ found."
(raise (condition
(&message
(message
(format #f (_ "could not find bootstrap binary '~a' \
(format #f (G_ "could not find bootstrap binary '~a' \
for system '~a'")
file-name system)))))))
@@ -127,92 +138,17 @@ for system '~a'")
directory))
%load-path)))
(define* (scheme-files directory)
"Return the list of Scheme files found under DIRECTORY, recursively. The
returned list is sorted in alphabetical order."
;; Sort entries so that 'fold-packages' works in a deterministic fashion
;; regardless of details of the underlying file system.
(sort (file-system-fold (const #t) ; enter?
(lambda (path stat result) ; leaf
(if (string-suffix? ".scm" path)
(cons path result)
result))
(lambda (path stat result) ; down
result)
(lambda (path stat result) ; up
result)
(const #f) ; skip
(lambda (path stat errno result)
(warning (_ "cannot access `~a': ~a~%")
path (strerror errno))
result)
'()
directory
stat)
string<?))
(define file-name->module-name
(let ((not-slash (char-set-complement (char-set #\/))))
(lambda (file)
"Return the module name (a list of symbols) corresponding to FILE."
(map string->symbol
(string-tokenize (string-drop-right file 4) not-slash)))))
(define* (scheme-modules directory #:optional sub-directory)
"Return the list of Scheme modules available under DIRECTORY.
Optionally, narrow the search to SUB-DIRECTORY."
(define prefix-len
(string-length directory))
(filter-map (lambda (file)
(let* ((file (substring file prefix-len))
(module (file-name->module-name file)))
(catch #t
(lambda ()
(resolve-interface module))
(lambda args
;; Report the error, but keep going.
(warn-about-load-error module args)
#f))))
(scheme-files (if sub-directory
(string-append directory "/" sub-directory)
directory))))
(define* (all-package-modules #:optional (path (%package-module-path)))
"Return the list of package modules found in PATH, a list of directories to
search."
(fold-right (lambda (spec result)
(match spec
((? string? directory)
(append (scheme-modules directory) result))
((directory . sub-directory)
(append (scheme-modules directory sub-directory)
result))))
'()
path))
(define (fold-packages proc init)
"Call (PROC PACKAGE RESULT) for each available package, using INIT as
the initial value of RESULT. It is guaranteed to never traverse the
same package twice."
(identity ; discard second return value
(fold2 (lambda (module result seen)
(fold2 (lambda (var result seen)
(if (and (package? var)
(not (vhash-assq var seen))
(not (hidden-package? var)))
(values (proc var result)
(vhash-consq var #t seen))
(values result seen)))
result
seen
(module-map (lambda (sym var)
(false-if-exception (variable-ref var)))
module)))
init
vlist-null
(all-package-modules))))
(fold-module-public-variables (lambda (object result)
(if (and (package? object)
(not (hidden-package? object)))
(proc object result)
result))
init
(all-modules (%package-module-path))))
(define find-packages-by-name
(let ((packages (delay
@@ -234,28 +170,27 @@ decreasing version order."
matching)))))
(define find-newest-available-packages
(memoize
(lambda ()
"Return a vhash keyed by package names, and with
(mlambda ()
"Return a vhash keyed by package names, and with
associated values of the form
(newest-version newest-package ...)
where the preferred package is listed first."
;; FIXME: Currently, the preferred package is whichever one
;; was found last by 'fold-packages'. Find a better solution.
(fold-packages (lambda (p r)
(let ((name (package-name p))
(version (package-version p)))
(match (vhash-assoc name r)
((_ newest-so-far . pkgs)
(case (version-compare version newest-so-far)
((>) (vhash-cons name `(,version ,p) r))
((=) (vhash-cons name `(,version ,p ,@pkgs) r))
((<) r)))
(#f (vhash-cons name `(,version ,p) r)))))
vlist-null))))
;; FIXME: Currently, the preferred package is whichever one
;; was found last by 'fold-packages'. Find a better solution.
(fold-packages (lambda (p r)
(let ((name (package-name p))
(version (package-version p)))
(match (vhash-assoc name r)
((_ newest-so-far . pkgs)
(case (version-compare version newest-so-far)
((>) (vhash-cons name `(,version ,p) r))
((=) (vhash-cons name `(,version ,p ,@pkgs) r))
((<) r)))
(#f (vhash-cons name `(,version ,p) r)))))
vlist-null)))
(define (find-best-packages-by-name name version)
"If version is #f, return the list of packages named NAME with the highest
@@ -294,38 +229,25 @@ return its return value."
;;; Package specification.
;;;
(define* (%find-package spec name version #:key fallback?)
(define* (%find-package spec name version)
(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)
(warning (G_ "ambiguous package specification `~a'~%") spec)
(warning (G_ "choosing ~a@~a from ~a~%")
(package-name pkg) (package-version pkg)
(location->string (package-location pkg))))
(when fallback?
(warning (_ "deprecated NAME-VERSION syntax; \
use NAME@VERSION instead~%")))
(match (package-superseded pkg)
((? package? new)
(info (_ "package '~a' has been superseded by '~a'~%")
(info (G_ "package '~a' has been superseded by '~a'~%")
(package-name pkg) (package-name new))
new)
(#f
pkg)))
(x
(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))
;; The fallback case didn't find anything either, so bail out.
(leave (_ "~A: unknown package~%") name))))))
(leave (G_ "~A: package not found for version ~a~%") name version)
(leave (G_ "~A: unknown package~%") name)))))
(define (specification->package spec)
"Return a package matching SPEC. SPEC may be a package name, or a package
@@ -353,6 +275,6 @@ version; if SPEC does not specify an output, return OUTPUT."
(package
(if (member sub-drv (package-outputs package))
(values package sub-drv)
(leave (_ "package `~a' lacks output `~a'~%")
(leave (G_ "package `~a' lacks output `~a'~%")
(package-full-name package)
sub-drv))))))
+10 -5
View File
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -22,6 +23,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
@@ -43,7 +45,7 @@
(define-public abiword
(package
(name "abiword")
(version "3.0.1")
(version "3.0.2")
(source
(origin
(method url-fetch)
@@ -51,12 +53,13 @@
(string-append "http://abisource.org/downloads/" name "/" version
"/source/" name "-" version ".tar.gz"))
(sha256
(base32 "1ik591rx15nn3n1297cwykl8wvrlgj78i528id9wbidgy3xzd570"))
(base32 "08imry821g81apdwym3gcs4nss0l9j5blqk31j5rv602zmcd9gxg"))
(patches
(search-patches "abiword-wmf-version-lookup-fix.patch"
"abiword-explictly-cast-bools.patch"))))
"abiword-explictly-cast-bools.patch"
"abiword-black-drawing-with-gtk322.patch"))))
(build-system gnu-build-system)
(build-system glib-or-gtk-build-system)
(arguments ;; NOTE: rsvg is disabled, since Abiword
`(#:configure-flags ;; supports it directly, and its BS is broken.
(list
@@ -77,7 +80,9 @@
;; assertion 'G_IS_OBJECT (object)' failed
;; Manually starting the X server before the test phase did not help
;; the tests to pass.
#:tests? #f))
#:tests? #f
#:make-flags
(list "CXXFLAGS=-std=c++11")))
(inputs
`(("boost" ,boost)
("enchant" ,enchant)
+2 -2
View File
@@ -25,7 +25,7 @@
(define-public acct
(package
(name "acct")
(version "6.6.2")
(version "6.6.3")
(source
(origin
(method url-fetch)
@@ -33,7 +33,7 @@
version ".tar.gz"))
(sha256
(base32
"0081hzkcxw9aslpsakridj15m0wbnkdhm210fzbg021vi4pppm4f"))))
"14x0zklwlg7cc7amlyzffqr8az3fqj1h9dyj0hvl1kpi7cr7kbjy"))))
(build-system gnu-build-system)
(home-page "https://gnu.org/software/acct/")
(synopsis "Standard login and process accounting utilities")
+394 -78
View File
@@ -1,20 +1,23 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015, 2016 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>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Coypright © 2016 ng0 <ng0@we.make.ritual.n0.is>
;;; Coypright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Coypright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017 ng0 <contact.ng0@cryptolab.net>
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au>
;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -67,28 +70,31 @@
#:use-module (gnu packages texinfo)
#:use-module (gnu packages groff)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages libusb)
#:use-module (gnu packages libftdi)
#:use-module (gnu packages image)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages python)
#:use-module (gnu packages man)
#:use-module (gnu packages autotools)
#:use-module (gnu packages gnome)
#:use-module (gnu packages mit-krb5)
#:use-module (gnu packages gtk))
#:use-module (gnu packages kerberos)
#:use-module (gnu packages gtk)
#:use-module (gnu packages xml))
(define-public aide
(package
(name "aide")
(version "0.15.1")
(version "0.16")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/aide/aide/"
version "/aide-" version ".tar.gz"))
(sha256
(base32
"1vsrc0s62kv1i84skm6k6zy868gayjck268qwj38rpspc8c5qgih"))))
"0ibkv4z2gk14fn014kq13rp2ysiq6nn2cflv2q5i7zf466hm6758"))))
(build-system gnu-build-system)
(native-inputs
`(("bison" ,bison)
@@ -97,6 +103,7 @@
`(("libgcrypt" ,libgcrypt)
("libgpg-error" ,libgpg-error)
("libmhash" ,libmhash)
("pcre" ,pcre)
("zlib" ,zlib)))
(synopsis "File and directory integrity checker")
(description
@@ -112,20 +119,23 @@ usual file attributes can be checked for inconsistencies.")
(define-public progress
(package
(name "progress")
(version "0.13")
(version "0.13.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/Xfennec/"
name "/archive/v" version ".tar.gz"))
(sha256
(base32 "133iar4vq5vlklydb4cyazjy6slmpbndrws474mg738bd8avc30n"))
(base32 "199rk6608q9m6l0fbjm0xl2w1c5krf8245dqnksdp4rqp7l9ak06"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("which" ,which)))
(inputs
`(("ncurses" ,ncurses)))
(arguments
`(#:tests? #f ; There is no test suite.
#:make-flags (list "CC=gcc" "LDFLAGS+=-lncurses"
#:make-flags (list "CC=gcc"
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
@@ -232,7 +242,7 @@ application (for console or X terminals) and requires ncurses.")
(("\"/bin/sh\"")
(string-append "\"" bash "/bin/sh\"")))
#t))))))
(home-page "http://www.gnu.org/software/pies/")
(home-page "https://www.gnu.org/software/pies/")
(synopsis "Program invocation and execution supervisor")
(description
"GNU pies is a program that supervises the invocation and execution of
@@ -253,14 +263,15 @@ re-executing them as necessary.")
(base32
"05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy"))))
(build-system gnu-build-system)
(arguments `(#:configure-flags '("--localstatedir=/var")
;; FIXME: `tftp.sh' relies on `netstat' from utils-linux,
;; which is currently missing.
#:tests? #f))
(arguments
'(#:configure-flags '("--localstatedir=/var")
;; On some systems, 'libls.sh' may fail with an error such as:
;; "Failed to tell switch -a apart from -A".
#:parallel-tests? #f))
(inputs `(("ncurses" ,ncurses)
("readline" ,readline))) ; for 'ftp'
(home-page "http://www.gnu.org/software/inetutils/")
("readline" ,readline))) ;for 'ftp'
(native-inputs `(("netstat" ,net-tools))) ;for tests
(home-page "https://www.gnu.org/software/inetutils/")
(synopsis "Basic networking utilities")
(description
"Inetutils is a collection of common network programs, such as an ftp
@@ -270,40 +281,42 @@ client and server, a telnet client and server, and an rsh client and server.")
(define-public shadow
(package
(name "shadow")
(version "4.2.1")
(version "4.4")
(source (origin
(method url-fetch)
(uri (string-append
"http://pkg-shadow.alioth.debian.org/releases/"
name "-" version ".tar.xz"))
"https://github.com/shadow-maint/shadow/releases/"
"download/" version "/shadow-" version ".tar.xz"))
(patches (search-patches "shadow-4.4-su-snprintf-fix.patch"
"shadow-CVE-2017-2616.patch"))
(sha256
(base32
"0h9x1zdbq0pqmygmc1x459jraiqw4gqz8849v268crk78z8r621v"))))
"0g7hf55ar2pafg5g3ldx0fwzjk36wf4xb21p4ndanbjm3c2a9ab1"))))
(build-system gnu-build-system)
(arguments
'(;; Assume System V `setpgrp (void)', which is the default on GNU
;; variants (`AC_FUNC_SETPGRP' is not cross-compilation capable.)
#:configure-flags '("--with-libpam" "ac_cv_func_setpgrp_void=yes")
#:configure-flags
'("--with-libpam" "ac_cv_func_setpgrp_void=yes")
#:phases (alist-cons-before
'build 'set-nscd-file-name
(lambda* (#:key inputs #:allow-other-keys)
;; Use the right file name for nscd.
(let ((libc (assoc-ref inputs "libc")))
(substitute* "lib/nscd.c"
(("/usr/sbin/nscd")
(string-append libc "/sbin/nscd")))))
(alist-cons-after
'install 'remove-groups
(lambda* (#:key outputs #:allow-other-keys)
;; Remove `groups', which is already provided by Coreutils.
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/share/man")))
(delete-file (string-append bin "/groups"))
(for-each delete-file (find-files man "^groups\\."))
#t))
%standard-phases))))
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-nscd-file-name
(lambda* (#:key inputs #:allow-other-keys)
;; Use the right file name for nscd.
(let ((libc (assoc-ref inputs "libc")))
(substitute* "lib/nscd.c"
(("/usr/sbin/nscd")
(string-append libc "/sbin/nscd"))))))
(add-after 'install 'remove-groups
(lambda* (#:key outputs #:allow-other-keys)
;; Remove `groups', which is already provided by Coreutils.
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/share/man")))
(delete-file (string-append bin "/groups"))
(for-each delete-file (find-files man "^groups\\."))
#t))))))
(inputs (if (string-suffix? "-linux"
(or (%current-target-system)
@@ -362,7 +375,7 @@ login, passwd, su, groupadd, and useradd.")
#:tests? #f)) ; no tests
(inputs `(("shadow" ,shadow)))
(home-page "http://sourceforge.net/projects/mingetty")
(home-page "https://sourceforge.net/projects/mingetty")
(synopsis "Getty for the text console")
(description
"Small console getty that is started on the Linux text console,
@@ -459,7 +472,7 @@ would need and has several interesting built-in capabilities.")
(arguments '(#:configure-flags '("alive_cv_nice_ping=yes")))
(inputs `(("guile" ,guile-2.0)
("inetutils" ,inetutils)))
(home-page "http://www.gnu.org/software/alive/")
(home-page "https://www.gnu.org/software/alive/")
(synopsis "Autologin and keep-alive daemon")
(description
"GNU Alive sends periodic pings to a server, generally to keep a
@@ -471,7 +484,7 @@ connection alive.")
(bind-minor-version "9")
(bind-patch-version "9")
(bind-release-type "-P") ; for patch release, use "-P"
(bind-release-version "4") ; for patch release, e.g. "4"
(bind-release-version "8") ; for patch release, e.g. "6"
(bind-version (string-append bind-major-version
"."
bind-minor-version
@@ -587,7 +600,7 @@ connection alive.")
"/bind-" bind-version ".tar.gz"))
(sha256
(base32
"1qpi23lrs6jfxqx8dakbqfyg3hvrzq5ldchg6my19xcvx8515mgx"))))
"1f5i64f6y4rmy61y63r5if1lifw8dw8r8dh6ns3x4002hanzrpgz"))))
;; When cross-compiling, we need the cross Coreutils and sed.
;; Otherwise just use those from %FINAL-INPUTS.
@@ -608,14 +621,14 @@ tools: server, client, and relay agent.")
(define-public libpcap
(package
(name "libpcap")
(version "1.7.4")
(version "1.8.1")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/libpcap-"
version ".tar.gz"))
(sha256
(base32
"1c28ykkizd7jqgzrfkg7ivqjlqs9p6lygp26bsw2i0z8hwhi3lvs"))))
"07jlhc66z76dipj4j5v3dig8x6h3k6cb36kmnmpsixf3zmlvqgb7"))))
(build-system gnu-build-system)
(native-inputs `(("bison" ,bison) ("flex" ,flex)))
(arguments '(#:configure-flags '("--with-pcap=linux")
@@ -633,14 +646,14 @@ network statistics collection, security monitoring, network debugging, etc.")
(define-public tcpdump
(package
(name "tcpdump")
(version "4.7.4")
(version "4.9.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.tcpdump.org/release/tcpdump-"
version ".tar.gz"))
(sha256
(base32
"1byr8w6grk08fsq0444jmcz9ar89lq9nf4mjq2cny0w9k8k21rbb"))))
"0pjsxsy8l71i813sa934cwf1ryp9xbr7nxwsvnzavjdirchq3sga"))))
(build-system gnu-build-system)
(inputs `(("libpcap" ,libpcap)
("openssl" ,openssl)))
@@ -717,7 +730,7 @@ by bandwidth they use.")
`("PERL5LIB" ":" prefix (,x11-inc ,tk-inc)))))
%standard-phases)))
;; The clusterssh.sourceforge.net address requires login to view
(home-page "http://sourceforge.net/projects/clusterssh/")
(home-page "https://sourceforge.net/projects/clusterssh/")
(synopsis "Secure concurrent multi-server terminal control")
(description
"ClusterSSH controls a number of xterm windows via a single graphical
@@ -777,7 +790,7 @@ over ssh connections.")
(zero? (system* "make" "install-info")))))))
(native-inputs `(("texinfo" ,texinfo)
("util-linux" ,util-linux))) ; for 'cal'
(home-page "http://www.gnu.org/software/rottlog/")
(home-page "https://www.gnu.org/software/rottlog/")
(synopsis "Log rotation and management")
(description
"GNU Rot[t]log is a program for managing log files. It is used to
@@ -790,7 +803,7 @@ system administrator.")
(define-public sudo
(package
(name "sudo")
(version "1.8.17p1")
(version "1.8.19p1")
(source (origin
(method url-fetch)
(uri
@@ -800,7 +813,7 @@ system administrator.")
version ".tar.gz")))
(sha256
(base32
"1k2mn65l1kmsxm8wh0gjxy496xhbpiimbpm6yv6kw6snzc3xg466"))))
"14pwdwl03kdbbyjkvxrfx409x3c1fjqz8aqz2wgwddinhz7v3bxq"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@@ -902,9 +915,7 @@ commands and their arguments.")
(man8 (string-append man "/man8")))
(define (copy-man-page target)
(lambda (file)
(copy-file file
(string-append target "/"
(basename file)))))
(install-file file target)))
(mkdir-p man5) (mkdir man8)
(for-each (copy-man-page man5)
@@ -1213,7 +1224,7 @@ environment variable is set and output is to tty.")
#t))
%standard-phases)))
(home-page "http://www.gnu.org/software/direvent/")
(home-page "https://www.gnu.org/software/direvent/")
(synopsis "Daemon to monitor directories for events such as file removal")
(description
"A daemon that monitors directories for events, such as creating,
@@ -1345,14 +1356,14 @@ of supported upstream metrics systems simultaneously.")
(define-public ansible
(package
(name "ansible")
(version "2.1.0.0")
(version "2.3.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ansible" version))
(sha256
(base32
"1bfc2xiplpad6f2nwi48y0kps7xqnsll85dlz63cy8k5bysl6d20"))))
"0n54h8g6a6hcp41sasvjqa4yz1pwd8mshbwlcghj0sjnrl3kk7r9"))))
(build-system python-build-system)
(native-inputs
`(("python2-pycrypto" ,python2-pycrypto)
@@ -1568,14 +1579,14 @@ done with the @code{auditctl} utility.")
(define-public nmap
(package
(name "nmap")
(version "7.31")
(version "7.40")
(source (origin
(method url-fetch)
(uri (string-append "https://nmap.org/dist/nmap-" version
".tar.bz2"))
(sha256
(base32
"0hiqb28950kn4bjsmw0ksfyss7j2qdmgrj3xsjf7073pq01lx7yb"))
"121i9mgyc28ra2825akd0ix5qyssv4xc2qlx296mam6hzxgnc54y"))
(modules '((guix build utils)))
(snippet
'(map delete-file-recursively
@@ -1687,7 +1698,7 @@ throughput (in the same interval).")
(define-public thefuck
(package
(name "thefuck")
(version "3.11")
(version "3.16")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/nvbn/thefuck/archive/"
@@ -1695,17 +1706,32 @@ throughput (in the same interval).")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"04q2cn8c83f6z6wn1scla1ilrpi5ssjc64987hvmwfvwvb82bvkp"))))
"0jrhfxmj2asx4jdix9ks3fpl364ph8w9prhwpk4488aj1a0q4rak"))
(patches (search-patches "thefuck-test-environ.patch"))))
(build-system python-build-system)
(inputs
(arguments
'(#:phases
(modify-phases %standard-phases
(delete 'check)
(add-after 'install 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Tests look for installed package
(add-installed-pythonpath inputs outputs)
;; Some tests need write access to $HOME.
(setenv "HOME" "/tmp")
(zero? (system* "py.test" "-v")))))))
(propagated-inputs
`(("python-colorama" ,python-colorama)
("python-decorator" ,python-decorator)
("python-psutil" ,python-psutil)
("python-six" ,python-six)))
(inputs
;; Requires setuptools >= 17.1 due to some features used, while our
;; python currently only includes 12.0. TODO: Remove this input.
`(("python-setuptools" ,python-setuptools)))
(native-inputs
`(("python-mock" ,python-mock)
("python-pytest" ,python-pytest)
("python-pytest-mock" ,python-pytest-mock)
;; Requires setuptools >= 17.1 due to some features used, while our
;; python currently only includes 12.0. TODO: Remove this input.
("python-setuptools" ,python-setuptools)))
(home-page "https://github.com/nvbn/thefuck")
(synopsis "Correct mistyped console command")
(description
@@ -1716,13 +1742,13 @@ a new command using the matched rule, and runs it.")
(define-public di
(package
(name "di")
(version "4.42")
(version "4.43")
(source
(origin
(method url-fetch)
(uri (string-append "https://gentoo.com/di/di-" version ".tar.gz"))
(sha256
(base32 "1i6m9zdnidn8268q1lz9fd8payk7s4pgwh5zlam9rr4dy6h6a67n"))))
(base32 "1q25jy51qfzsym9b2w0cqzscq2j492gn60dy6gbp88m8nwm4sdy8"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; Obscure test failures.
@@ -1741,20 +1767,20 @@ a new command using the matched rule, and runs it.")
"'di' is a disk information utility, displaying everything
(and more) that your @code{df} command does. It features the ability to
display your disk usage in whatever format you prefer. It is designed to be
highly portable. Great for heterogenous networks.")
highly portable. Great for heterogeneous networks.")
(license license:zlib)))
(define-public cbatticon
(package
(name "cbatticon")
(version "1.6.4")
(version "1.6.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/valr/"
name "/archive/" version ".tar.gz"))
(sha256
(base32
"023fvsa4q7rl98rqgwrb1shyzaybdkkbyz5sywd0s5p7ixkksxqx"))
"0xzz1faqgm57bwlkw6sjdfbckf5hck81879zbfk18p7xn9vhvixv"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(arguments
@@ -1916,3 +1942,293 @@ in order to be able to find it.
@item @command{sunxi-nand-image-builder}: Prepares raw NAND images.
@end enumerate")
(license license:gpl2+)))
(define-public sedsed
(package
(name "sedsed")
(version "1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/aureliojargas/sedsed/"
"archive/v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0139jkqvm8ipiwfj7k69ry2f9b1ffgpk79arpz4r7w9kf6h23bnh"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; No tests.
#:python ,python-2
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-sed-in
(lambda _
(substitute* "sedsed.py"
(("sedbin = 'sed'")
(string-append "sedbin = '" (which "sed") "'")))
#t))
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
;; Just one file to copy around
(install-file "sedsed.py" bin)
#t)))
(add-after 'install 'symlink
;; Create 'sedsed' symlink to "sedsed.py".
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(sed (string-append bin "/sedsed"))
(sedpy (string-append bin "/sedsed.py")))
(symlink sedpy sed)
#t))))))
(home-page "http://aurelio.net/projects/sedsed")
(synopsis "Sed sed scripts")
(description
"@code{sedsed} can debug, indent, tokenize and HTMLize your sed(1) script.
In debug mode it reads your script and add extra commands to it. When
executed you can see the data flow between the commands, revealing all the
magic sed does on its internal buffers.
In indent mode your script is reformatted with standard spacing.
In tokenize mode you can see the elements of every command you use.
In HTMLize mode your script is converted to a beautiful colored HTML file,
with all the commands and parameters identified for your viewing pleasure.
With sedsed you can master any sed script. No more secrets, no more hidden
buffers.")
(license license:expat)))
(define-public intel-gpu-tools
(package
(name "intel-gpu-tools")
(version "1.18")
(source (origin
(method url-fetch)
(uri (string-append "https://cgit.freedesktop.org/xorg/app/"
"intel-gpu-tools/snapshot/"
"intel-gpu-tools-" version ".tar.gz"))
(sha256
(base32
"0w7djk0y5w76hzn1b3cm39zd5c6w9za1wfn80wd857h0v313rzq3"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; many of the tests try to load kernel modules
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'autogen
(lambda _
;; Don't run configure in this phase
(setenv "NOCONFIGURE" "1")
(zero? (system* "sh" "autogen.sh")))))))
(inputs
`(("util-macros" ,util-macros)
("libdrm" ,libdrm)
("libpciaccess" ,libpciaccess)
("kmod" ,kmod)
("procps" ,procps)
("cairo" ,cairo)
("libunwind" ,libunwind)
("libxrandr" ,libxrandr)
("glib" ,glib)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(home-page "https://cgit.freedesktop.org/xorg/app/intel-gpu-tools/")
(synopsis "Tools for development and testing of the Intel DRM driver")
(description "Intel GPU Tools is a collection of tools for development and
testing of the Intel DRM driver. There are many macro-level test suites that
get used against the driver, including xtest, rendercheck, piglit, and
oglconform, but failures from those can be difficult to track down to kernel
changes, and many require complicated build procedures or specific testing
environments to get useful results. Therefore, Intel GPU Tools includes
low-level tools and tests specifically for development and testing of the
Intel DRM Driver.")
(license license:expat)))
(define-public fabric
(package
(name "fabric")
(version "1.13.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Fabric" version))
(sha256
(base32
"1z17hw0yiqp1blq217zxkg2jzkv8qd79saqhscgsw14mwlcqpwd0"))
(patches (search-patches "fabric-tests.patch"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2)) ;Python 2 only
(native-inputs
`(("python2-fudge" ,python2-fudge) ; Requires < 1.0
("python2-jinja2" ,python2-jinja2) ; Requires < 3.0
("python2-nose" ,python2-nose))) ; Requires < 2.0
(propagated-inputs
;; Required upgrading python-paramiko 1.17.4 to fix an incompatibility
;; between python-paramiko and newer python-pycrypto. Without this, the
;; `fab` command fails with "ValueError: CTR mode needs counter
;; parameter, not IV". See:
;; https://github.com/paramiko/paramiko/pull/714#issuecomment-281191548.
`(("python2-paramiko" ,python2-paramiko)))
(home-page "http://fabfile.org")
(synopsis "Simple Pythonic remote execution and deployment tool")
(description
"Fabric is designed to upload files and run shell commands on a number of
servers in parallel or serially. These commands are grouped in tasks (which
are regular Python functions) and specified in a @dfn{fabfile}.
It is similar to Capistrano, except it's implemented in Python and doesn't
expect you to be deploying Rails applications. Fabric is a simple, Pythonic
tool for remote execution and deployment.")
(license license:bsd-2)))
(define-public neofetch
(package
(name "neofetch")
(version "3.1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/dylanaraps/neofetch/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1rgznkl7a5q7lnc6zxlwvinq20b7k46n949l1hiwifarv0jgwynv"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; there are no tests
#:make-flags
(list (string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-target-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("\\$\\(DESTDIR\\)/etc/")
"$(PREFIX)/etc/"))
(substitute* "neofetch"
(("\"/etc/neofetch")
(string-append "\"" out "/etc/neofetch"))
(("\"/usr/share/neofetch")
(string-append "\"" out "/usr/share/neofetch"))))
#t))
(delete 'configure))))
(home-page "https://github.com/dylanaraps/neofetch")
(synopsis "System info script")
(description "Neofetch is a CLI system information tool written in Bash.
Neofetch displays information about your system next to an image, your OS
logo, or any ASCII file of your choice. The main purpose of Neofetch is to be
used in screenshots to show other users what operating system or distribution
you are running, what theme or icon set you are using, etc.")
(license license:expat)))
(define-public nnn
(package
(name "nnn")
(version "1.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/"
"archive/v" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1hww4385f81lyy30fx2rb4wchfi79dpgl7yylnfxvf27a4h2mkhm"))))
(build-system gnu-build-system)
(inputs `(("ncurses" ,ncurses)
("readline" ,readline)))
(arguments
'(#:tests? #f ; no tests
#:phases
;; We do not provide `ncurses.h' within an `ncursesw'
;; sub-directory, so patch the source accordingly. See
;; <http://bugs.gnu.org/19018>.
;; Thanks to gtypist maintainer.
(modify-phases %standard-phases
(add-after 'unpack 'patch-curses-lib
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(substitute* "Makefile"
(("-lncursesw")
"-lncurses"))
(substitute* "nnn.c"
(("ncursesw\\/curses.h")
"ncurses.h")))
#t))
(delete 'configure))
#:make-flags
(list
(string-append "PREFIX="
(assoc-ref %outputs "out"))
(string-append "-Wl,-rpath="
%output "/lib")
"CC=gcc")))
(home-page "https://github.com/jarun/nnn")
(synopsis "Terminal file browser")
(description "@command{nnn} is a fork of @command{noice}, a blazing-fast
lightweight terminal file browser with easy keyboard shortcuts for
navigation, opening files and running tasks. There is no config file and
mime associations are hard-coded. The incredible user-friendliness and speed
make it a perfect utility on modern distros.")
(license license:bsd-2)))
(define-public thermald
(package
(name "thermald")
(version "1.6")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/01org/thermal_daemon/archive/v"
version ".tar.gz"))
(sha256 (base32
"14klz9fnvi9jdlaqwrp61xa5nh051n8ykrs1fh1wxd7j66qf2fn6"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after
'unpack 'autogen.sh-and-fix-paths
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; upstartconfir is hardcoded to /etc/init and the build
;; system tries to mkdir that. We don't even need upstart
;; files at all; this is a fast and kludgy workaround
(substitute* "data/Makefile.am"
(("upstartconfdir = /etc/init")
(string-append "upstartconfdir = "
out "/etc/init")))
;; Now run autogen
(zero? (system* "sh" "autogen.sh"))))))
#:configure-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append "--sysconfdir="
out "/etc")
(string-append "--with-udev-dir="
out "/lib/udev")
(string-append "--with-dbus-sys-dir="
out "/etc/dbus-1/system.d")
"--localstatedir=/var"))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("glib" ,glib "bin") ; for glib-genmarshal, etc.
("pkg-config" ,pkg-config)))
(inputs
`(("dbus-glib" ,dbus-glib)
("libxml2" ,libxml2)))
(home-page "https://01.org/linux-thermal-daemon/")
(synopsis "CPU scaling for thermal management")
(description "The Linux Thermal Daemon helps monitor and control temperature
on systems running the Linux kernel.")
(license license:gpl2+)))
+1 -1
View File
@@ -47,7 +47,7 @@
;; XXX: Tests expect real name resolution to work.
#:tests? #f))
(home-page "http://www.gnu.org/software/adns/")
(home-page "https://www.gnu.org/software/adns/")
(synopsis "Asynchronous DNS client library and utilities")
(description
"GNU adns is a C library that provides easy-to-use DNS resolution
+1 -1
View File
@@ -45,7 +45,7 @@ from text strings. It supports a variety of encoding standards and sizing
measurements. Barcodes can be output in PostScript or Encapsulated PostScript
formats.")
(license license:gpl3+)
(home-page "http://www.gnu.org/software/barcode/")))
(home-page "https://www.gnu.org/software/barcode/")))
(define-public qrencode
(package
+30 -55
View File
@@ -1,9 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2015, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,26 +27,28 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
#:use-module (gnu packages ed)
#:use-module (gnu packages flex)
#:use-module (gnu packages fltk)
#:use-module (gnu packages gl)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages image)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages perl)
#:use-module (gnu packages readline)
#:use-module (gnu packages flex)
#:use-module (gnu packages python)
#:use-module (gnu packages readline)
#:use-module (gnu packages shells)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xorg)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils))
@@ -128,7 +132,7 @@ solve the shortest vector problem.")
(define-public pari-gp
(package
(name "pari-gp")
(version "2.7.6")
(version "2.9.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -136,7 +140,7 @@ solve the shortest vector problem.")
version ".tar.gz"))
(sha256
(base32
"04dqi697czd8mmw8aiwzrkgbvkjassqagg6lfy3lkf1k5qi9g9rr"))))
"0rq7wz9df1xs4acdzzb5dapx8vs6m5py39n2wynw2qv4d2b0ylfw"))))
(build-system gnu-build-system)
(native-inputs `(("texlive" ,texlive-minimal)))
(inputs `(("gmp" ,gmp)
@@ -168,7 +172,7 @@ PARI is also available as a C library to allow for faster computations.")
(define-public gp2c
(package
(name "gp2c")
(version "0.0.9pl5")
(version "0.0.10")
(source (origin
(method url-fetch)
(uri (string-append
@@ -176,7 +180,7 @@ PARI is also available as a C library to allow for faster computations.")
version ".tar.gz"))
(sha256
(base32
"1q003mkagc5ib6lqb2xfay7j4ffkwv7xlnznp6wdrq2sbqq4vyak"))))
"1xhpz5p81iw261ay1kip283ggr0ir8ydz8qx3v24z8jfms1r3y70"))))
(build-system gnu-build-system)
(native-inputs `(("perl" ,perl)))
(inputs `(("pari-gp" ,pari-gp)))
@@ -202,7 +206,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
(define-public giac-xcas
(package
(name "giac-xcas")
(version "1.2.2-103")
(version "1.2.3-37")
(source (origin
(method url-fetch)
;; "~parisse/giac" is not used because the maintainer regularly
@@ -214,7 +218,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.")
"source/giac_" version ".tar.gz"))
(sha256
(base32
"1qrhjw2sdvyv2x8fqs9isqv8rgldn448gfxbi7zbva8m5va5b3z1"))))
"180146rm8fxlbd6x25x81yscf6q8qjpzr35k203r25c2xkcb7h2x"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -311,7 +315,7 @@ fast arithmetic.")
(define-public arb
(package
(name "arb")
(version "2.8.1")
(version "2.10.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -320,8 +324,7 @@ fast arithmetic.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"04hhcpshfkcq9fr4hixbhpps50yf9drk62xgkvlcaj5kb4nyrx7l"))
(patches (search-patches "arb-ldconfig.patch"))))
"0jwcv9ssvi8axb1y7m2h4ykgyl015cl6g28gfl92l4dgnag585ak"))))
(build-system gnu-build-system)
(propagated-inputs
`(("flint" ,flint))) ; flint.h is included by arf.h
@@ -468,35 +471,23 @@ binary.")
(define-public bc
(package
(name "bc")
(version "1.06")
(version "1.07.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/bc/bc-" version ".tar.gz"))
(sha256
(base32
"0cqf5jkwx6awgd2xc2a0mkpxilzcfmhncdcfg7c9439wgkqxkxjf"))))
"0amh9ik44jfg66csyvf4zz1l878c4755kjndq9j0270akflgrbb2"))))
(build-system gnu-build-system)
(inputs `(("readline" ,readline)))
(native-inputs `(("flex" ,flex)))
(native-inputs
`(("ed" ,ed)
("flex" ,flex)
("texinfo" ,texinfo)))
(arguments
'(#:phases
(alist-replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
;; This old `configure' script doesn't support
;; variables passed as arguments.
(let ((out (assoc-ref outputs "out")))
(setenv "CONFIG_SHELL" (which "bash"))
(zero?
(system*
"./configure"
(string-append "--prefix=" out)
;; By default, man and info pages are put in
;; PREFIX/{man,info}, but we want them in
;; PREFIX/share/{man,info}.
(string-append "--mandir=" out "/share/man")
(string-append "--infodir=" out "/share/info")))))
%standard-phases)))
(home-page "http://www.gnu.org/software/bc/")
'(#:configure-flags
(list "--with-readline")))
(home-page "https://www.gnu.org/software/bc/")
(synopsis "Arbitrary precision numeric processing language")
(description
"bc is an arbitrary precision numeric processing language. It includes
@@ -577,22 +568,6 @@ cosine/ sine transforms or DCT/DST).")
(string-append (package-description fftw)
" Single-precision version."))))
;; FIXME: These packages are used temporarily by packages like Ardour until
;; "--enable-flags" is added to the fftw and fftwf packages.
(define-public fftw-with-threads
(package (inherit fftw)
(arguments
(substitute-keyword-arguments (package-arguments fftw)
((#:configure-flags flags)
`(cons "--enable-threads" ,flags))))))
(define-public fftwf-with-threads
(package (inherit fftwf)
(arguments
(substitute-keyword-arguments (package-arguments fftwf)
((#:configure-flags flags)
`(cons "--enable-threads" ,flags))))))
(define-public fftw-openmpi
(package (inherit fftw)
(name "fftw-openmpi")
+300
View File
@@ -0,0 +1,300 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Stefan Handschuh <handschuh.stefan@googlemail.com>
;;; Copyright © 2015 Kai-Chung Yan <seamlikok@gmail.com>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;;
;;; 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 android)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages tls))
;; The Makefiles that we add are largely based on the Debian
;; packages. They are licensed under GPL-2 and have copyright:
;; 2012, Stefan Handschuh <handschuh.stefan@googlemail.com>
;; 2015, Kai-Chung Yan <seamlikok@gmail.com>
;; Big thanks to them for laying the groundwork.
;; The version tag is consistent between all repositories.
(define (android-platform-version) "7.1.2_r6")
(define (android-platform-system-core version)
(origin
(method git-fetch)
(uri (git-reference
(url "https://android.googlesource.com/platform/system/core")
(commit (string-append "android-" version))))
(file-name (string-append "android-platform-system-core-"
version "-checkout"))
(sha256
(base32
"0xc2n7jxrf1iw9cc278pijdfjix2fkiig5ws27f6rwp40zg5mrgg"))))
(define liblog
(package
(name "liblog")
(version (android-platform-version))
(source (android-platform-system-core version))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; TODO.
#:make-flags '("CC=gcc")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-source
(lambda _ (chdir "liblog") #t))
(add-after 'enter-source 'create-Makefile
(lambda _
;; No useful makefile is shipped, so we create one.
(with-output-to-file "Makefile"
(lambda _
(display
(string-append
"NAME = liblog\n"
"SOURCES = log_event_list.c log_event_write.c"
" logger_write.c config_write.c logger_name.c"
" logger_lock.c fake_log_device.c fake_writer.c"
" event_tag_map.c\n"
"CFLAGS += -fvisibility=hidden -fPIC\n"
"CPPFLAGS += -I../include -DFAKE_LOG_DEVICE=1"
;; Keep these two in sync with "liblog/Android.bp".
" -DLIBLOG_LOG_TAG=1005"
" -DSNET_EVENT_LOG_TAG=1397638484\n"
"LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 -lpthread\n"
"build: $(SOURCES)\n"
" $(CC) $^ -o $(NAME).so.0 $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)\n"))
#t))))
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
(install-file "liblog.so.0" lib)
(with-directory-excursion lib
(symlink "liblog.so.0" "liblog.so"))
#t))))))
(home-page "https://developer.android.com/")
(synopsis "Logging library from the Android platform.")
(description "@code{liblog} represents an interface to the volatile Android
Logging system for NDK (Native) applications and libraries and contain
interfaces for either writing or reading logs. The log buffers are divided up
in Main, System, Radio and Events sub-logs.")
(license license:asl2.0)))
(define libbase
(package
(name "libbase")
(version (android-platform-version))
(source (origin
(inherit (android-platform-system-core version))
(patches
(search-patches "libbase-use-own-logging.patch"
"libbase-fix-includes.patch"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; TODO.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-source
(lambda _ (chdir "base") #t))
(add-after 'enter-source 'create-Makefile
(lambda _
;; No useful makefile is shipped, so we create one.
(with-output-to-file "Makefile"
(lambda _
(display
(string-append
"NAME = libbase\n"
"SOURCES = file.cpp logging.cpp parsenetaddress.cpp"
" stringprintf.cpp strings.cpp errors_unix.cpp\n"
"CXXFLAGS += -std=gnu++11 -fPIC\n"
"CPPFLAGS += -Iinclude -I../include\n"
"LDFLAGS += -shared -Wl,-soname,$(NAME).so.0"
" -L.. -llog\n"
"build: $(SOURCES)\n"
" $(CXX) $^ -o $(NAME).so.0 $(CXXFLAGS) $(CPPFLAGS)"
" $(LDFLAGS)\n"))
#t))))
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
(install-file "libbase.so.0" lib)
(with-directory-excursion lib
(symlink "libbase.so.0" "libbase.so"))
(copy-recursively "include" out)
#t))))))
(inputs `(("liblog" ,liblog)))
(home-page "https://developer.android.com/")
(synopsis "Android platform base library")
(description "@code{libbase} is a library in common use by the
various Android core host applications.")
(license license:asl2.0)))
(define libcutils
(package
(name "libcutils")
(version (android-platform-version))
(source (android-platform-system-core version))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; TODO.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-source
(lambda _ (chdir "libcutils") #t))
(add-after 'enter-source 'create-Makefile
(lambda _
;; No useful makefile is shipped, so we create one.
(with-output-to-file "Makefile"
(lambda _
(display
(string-append
"NAME = libcutils\n"
"SOURCES = load_file.o socket_local_client_unix.o"
" socket_loopback_client_unix.o socket_network_client_unix.o"
" socket_loopback_server_unix.o socket_local_server_unix.o"
" sockets_unix.o socket_inaddr_any_server_unix.o"
" sockets.o\n"
"CC = gcc\n"
"CFLAGS += -fPIC\n"
"CXXFLAGS += -std=gnu++11 -fPIC\n"
"CPPFLAGS += -Iinclude -I../include\n"
"LDFLAGS += -shared -Wl,-soname,$(NAME).so.0\n"
"build: $(SOURCES)\n"
" $(CXX) $^ -o $(NAME).so.0 $(CXXFLAGS) $(CPPFLAGS)"
" $(LDFLAGS)\n"))
#t))))
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
(install-file "libcutils.so.0" lib)
(with-directory-excursion lib
(symlink "libcutils.so.0" "libcutils.so"))
#t))))))
(home-page "https://developer.android.com/")
(synopsis "Android platform c utils library")
(description "@code{libcutils} is a library in common use by the
various Android core host applications.")
(license license:asl2.0)))
(define-public adb
(package
(name "adb")
(version (android-platform-version))
(source (origin
(inherit (android-platform-system-core version))
(patches
(search-patches "libbase-use-own-logging.patch"
"libbase-fix-includes.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-source
(lambda _ (chdir "adb") #t))
(add-before 'build 'fix-clang
(lambda _
;; adb_client.h contains _Nonnull and _Nullable attributes, that
;; are not understood by gcc.
(substitute* "adb_client.h"
(("_Nonnull") "")
(("_Nullable") ""))
#t))
(add-before 'build 'fix-main
(lambda _
;; main.cpp used to be adb_main.cpp in the current directory
;; rather than in its own subdirectory, but it was not fixed.
;; This leads to some header files not being found anymore.
(copy-file "client/main.cpp" "adb_main.cpp")
#t))
(add-after 'enter-source 'create-Makefile
(lambda* (#:key outputs #:allow-other-keys)
;; No useful makefile is shipped, so we create one.
(with-output-to-file "Makefile"
(lambda _
(display
(string-append
;; Common for all components.
"CXXFLAGS += -std=gnu++14 -fpermissive\n"
"CPPFLAGS += -I../include -I../base/include -I. -DADB_HOST=1 "
"-DADB_REVISION='\"" ,version "\"' -fPIC\n"
"LDFLAGS += -lcrypto -lpthread -lbase -lcutils -L. -ladb\n"
;; Libadb specifics.
"LIBADB_SOURCES = adb.cpp adb_auth.cpp adb_io.cpp "
"adb_listeners.cpp adb_trace.cpp adb_utils.cpp fdevent.cpp "
"sockets.cpp transport.cpp transport_local.cpp transport_usb.cpp "
"get_my_path_linux.cpp sysdeps_unix.cpp usb_linux.cpp "
"adb_auth_host.cpp diagnose_usb.cpp services.cpp "
"shell_service_protocol.cpp bugreport.cpp line_printer.cpp\n"
"LIBADB_LDFLAGS += -shared -Wl,-soname,libadb.so.0 "
"-lcrypto -lpthread -lbase\n"
;; Adb specifics.
"ADB_SOURCES = adb_main.cpp console.cpp commandline.cpp "
"adb_client.cpp file_sync_client.cpp\n"
"ADB_LDFLAGS += -Wl,-rpath=" (assoc-ref outputs "out") "/lib\n"
"build: libadb $(ADB_SOURCES)\n"
" $(CXX) $(ADB_SOURCES) -o adb $(CXXFLAGS) $(CPPFLAGS) "
"$(ADB_LDFLAGS) $(LDFLAGS)\n"
"libadb: $(LIBADB_SOURCES)\n"
" $(CXX) $^ -o libadb.so.0 $(CXXFLAGS) $(CPPFLAGS) "
"$(LIBADB_LDFLAGS)\n"
" ln -sv libadb.so.0 libadb.so\n"))
#t))))
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(bin (string-append out "/bin")))
(install-file "libadb.so.0" lib)
(install-file "adb" bin)
(with-directory-excursion lib
(symlink "libadb.so.0" "libadb.so"))
#t))))
;; Test suite must be run with attached devices
#:tests? #f))
(inputs
`(("libbase" ,libbase)
("libcutils" ,libcutils)
("openssl" ,openssl)))
(home-page "https://developer.android.com/studio/command-line/adb.html")
(synopsis "Android Debug Bridge")
(description
"@command{adb} is a versatile command line tool that lets you communicate
with an emulator instance or connected Android device. It facilitates a variety
of device actions, such as installing and debugging apps, and it provides access
to a Unix shell that can run commands on the connected device or emulator.")
(license license:asl2.0)))
+4 -3
View File
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,16 +31,16 @@
(define-public apl
(package
(name "apl")
(version "1.6")
(version "1.7")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/apl/apl-" version ".tar.gz"))
(sha256
(base32
"057zwzvvgcrrwsl52a27w86hgy31jqq6avqq629xj7yq90qah3ay"))))
"07xq8ddlmz8psvsmwr23gar108ri0lwmw0n6kpxcv8ypas1f5xlg"))))
(build-system gnu-build-system)
(home-page "http://www.gnu.org/software/apl/")
(home-page "https://www.gnu.org/software/apl/")
(inputs
`(("gettext" ,gettext-minimal)
("lapack" ,lapack)
+23 -4
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, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
@@ -26,6 +26,7 @@
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module (guix licenses)
#:use-module (gnu packages)
#:use-module (gnu packages perl)
#:use-module (gnu packages base))
@@ -40,7 +41,8 @@
version ".tar.gz"))
(sha256
(base32
"1qgn5psfyhbrnap275xjfrzppf5a83fb67gpql0kfqv37al869gm"))))
"1qgn5psfyhbrnap275xjfrzppf5a83fb67gpql0kfqv37al869gm"))
(patches (search-patches "aspell-default-dict-dir.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@@ -53,6 +55,15 @@
'("ASPELL_CONF" "" =
("${ASPELL_CONF:-\"dict-dir ${GUIX_PROFILE:-$HOME/.guix-profile}/lib/aspell\"}")))))))))
(inputs `(("perl" ,perl)))
(native-search-paths
;; This is a Guix-specific environment variable that takes a single
;; entry, not an actual search path.
(list (search-path-specification
(variable "ASPELL_DICT_DIR")
(separator #f)
(files '("lib/aspell")))))
(home-page "http://aspell.net/")
(synopsis "Spell checker")
(description
@@ -62,12 +73,12 @@ documents written in the UTF-8 encoding and its ability to use multiple
dictionaries, including personal ones.")
(license lgpl2.1+)))
;;;
;;; Dictionaries.
;;;
;;; Use 'export ASPELL_CONF="dict-dir $HOME/.guix-profile/lib/aspell"' to use
;;; them.
;;; them, or set the Guix-specific 'ASPELL_DICT_DIR', or just do nothing (as
;;; long as 'HOME' is set, that's fine!).
;;;
(define* (aspell-dictionary dict-name full-name
@@ -190,3 +201,11 @@ dictionaries, including personal ones.")
#:sha256
(base32
"1zxr8958v37v260fkqd4pg37ns5h5kyqm54hn1hg70wq5cz8h512")))
(define-public aspell-dict-pt-br
(aspell-dictionary "pt-br" "Brazilian Portuguese"
#:version "20090702-0"
#:prefix "aspell6-"
#:sha256
(base32
"1y09lx9zf2rnp55r16b2vgj953l3538z1vaqgflg9mdvm555bz3p")))
+1 -1
View File
@@ -119,5 +119,5 @@ debugging information in STABS, DWARF 2, and CodeView 8 formats.")
run-time. Thus, it is useful in creating Just-In-Time compilers. It
abstracts over the target CPU by exposing a standardized RISC instruction set
to the clients.")
(home-page "http://www.gnu.org/software/lightning/")
(home-page "https://www.gnu.org/software/lightning/")
(license license:gpl3+)))
+50 -3
View File
@@ -21,7 +21,13 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (gnu packages image)
#:use-module (gnu packages compression)
#:use-module (gnu packages gettext)
#:use-module (gnu packages perl)
#:use-module (gnu packages gl)
#:use-module (gnu packages qt)
#:use-module (gnu packages maths)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu))
(define-public cfitsio
@@ -58,7 +64,7 @@ in FITS files.")
(define-public wcslib
(package
(name "wcslib")
(version "5.15")
(version "5.16")
(source
(origin
(method url-fetch)
@@ -66,7 +72,7 @@ in FITS files.")
"ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version
".tar.bz2"))
(sha256
(base32 "1s2nig327g4bimd9xshlk11ww09a7mrjmsbpdcd8smsmn2kl1glb"))))
(base32 "1vwrzkznpig2q40m11j12hsfqvsjz8z44l66pz5fkh6fy461w0zd"))))
(inputs
`(("cfitsio" ,cfitsio)))
(build-system gnu-build-system)
@@ -102,8 +108,49 @@ systems in a FITS image header.")
("libjpeg" ,libjpeg-8)
("wcslib" ,wcslib)))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/gnuastro")
(home-page "https://www.gnu.org/software/gnuastro/")
(synopsis "Astronomical data manipulation programs")
(description "The GNU Astronomy Utilities (Gnuastro) is a suite of
programs for the manipulation and analysis of astronomical data.")
(license license:gpl3+)))
(define-public stellarium
(package
(name "stellarium")
(version "0.15.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/stellarium/"
"Stellarium-sources/"
version "/stellarium-" version ".tar.gz"))
(sha256
(base32
"04avigz8i8mi2x6x71bqr9np85n1p9qnvbj2hxr947f1jv22zr8g"))))
(build-system cmake-build-system)
(inputs
`(("qtbase" ,qtbase)
("qtmultimedia" ,qtmultimedia)
("qtscript" ,qtscript)
("qtserialport" ,qtserialport)
("zlib" ,zlib)))
(native-inputs
`(("gettext" ,gettext-minimal) ; xgettext is used at compile time
("perl" ,perl) ; For pod2man
("qtbase" ,qtbase) ; Qt MOC is needed at compile time
("qttools" ,qttools)))
(arguments
`(#:test-target "tests"
#:phases (modify-phases %standard-phases
(add-before 'check 'set-offscreen-display
(lambda _
;; make Qt render "offscreen", required for tests
(setenv "QT_QPA_PLATFORM" "offscreen")
(setenv "HOME" "/tmp")
#t)))))
(home-page "http://www.stellarium.org/")
(synopsis "3D sky viewer")
(description "Stellarium is a planetarium. It shows a realistic sky in
3D, just like what you see with the naked eye, binoculars, or a telescope. It
can be used to control telescopes over a serial port for tracking celestial
objects.")
(license license:gpl2+)))
+1 -1
View File
@@ -54,7 +54,7 @@
;; Use the right shell.
(substitute* "test/run"
(("/bin/sh")
(which "bash")))
(which "sh")))
;; When building natively, run the tests.
(unless target
-101
View File
@@ -1,101 +0,0 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@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 GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages audacity)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages audio)
#:use-module (gnu packages base)
#:use-module (gnu packages gtk)
#:use-module (gnu packages linux)
#:use-module (gnu packages mp3)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages video)
#:use-module (gnu packages wxwidgets))
(define-public audacity
(package
(name "audacity")
(version "2.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/audacity/audacity/" version
"/audacity-minsrc-" version ".tar.xz"))
(sha256
(base32 "1cs2w3fwqylpqmfwkvlgdx5lhclpckfil7pqibl37qlbnf4qvndh"))
(patches (search-patches "audacity-fix-ffmpeg-binding.patch"))))
(build-system gnu-build-system)
(inputs
;; TODO: Add portSMF and libwidgetextra once they're packaged. In-tree
;; versions shipping with Audacity are used for now.
`(("wxwidgets" ,wxwidgets-2)
("gtk" ,gtk+-2)
("alsa-lib" ,alsa-lib)
("jack" ,jack-1)
("expat" ,expat)
("ffmpeg" ,ffmpeg)
("lame" ,lame)
("flac" ,flac)
("libid3tag" ,libid3tag)
("libmad" ,libmad)
("libsbsms" ,libsbsms)
("libsndfile" ,libsndfile)
("soundtouch" ,soundtouch)
("soxr" ,soxr) ;replaces libsamplerate
("twolame" ,twolame)
("vamp" ,vamp)
("libvorbis" ,libvorbis)
("lv2" ,lv2)
("lilv" ,lilv)
("portaudio" ,portaudio)))
(native-inputs
`(("pkg-config" ,pkg-config)
("python" ,python-2)
("which" ,which)))
(arguments
'(#:configure-flags
(let ((libid3tag (assoc-ref %build-inputs "libid3tag"))
(libmad (assoc-ref %build-inputs "libmad")))
(list
;; Loading FFmpeg dynamically is problematic.
"--disable-dynamic-loading"
;; libid3tag and libmad provide no .pc files, so pkg-config fails to
;; find them. Force their inclusion.
(string-append "ID3TAG_CFLAGS=-I" libid3tag "/include")
(string-append "ID3TAG_LIBS=-L" libid3tag "/lib -lid3tag -lz")
(string-append "LIBMAD_CFLAGS=-I" libmad "/include")
(string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")))
;; The test suite is not "well exercised" according to the developers,
;; and fails with various errors. See
;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
#:tests? #f))
(home-page "http://audacity.sourceforge.net/")
(synopsis "Software for recording and editing sounds")
(description
"Audacity is a multi-track audio editor designed for recording, playing
and editing digital audio. It features digital effects and spectrum analysis
tools.")
(license license:gpl2+)))
+156 -46
View File
@@ -1,11 +1,11 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017 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, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
;;; Copyright © 2016 Tobias Geerinckx-Rice <me@tobias.gr>
@@ -75,6 +75,7 @@
#:use-module (gnu packages video)
#:use-module (gnu packages vim) ;xxd
#:use-module (gnu packages webkit)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
@@ -186,7 +187,7 @@ streams from live audio.")
(define-public ardour
(package
(name "ardour")
(version "5.5")
(version "5.8")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -203,18 +204,20 @@ streams from live audio.")
namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
(sha256
(base32
"1a3whv2dhl073pkd803hcp53rdmm31adjwn40qi06lkjb7rgwrlh"))
"1lcvslrcw6g4kp9w0h1jx46x6ilz4nzz0k2yrw4gd545k1rwx0c1"))
(file-name (string-append name "-" version))))
(build-system waf-build-system)
(arguments
`(#:configure-flags '("--cxx11" ; required by gtkmm
"--no-phone-home") ; don't contact ardour.org
"--no-phone-home" ; don't contact ardour.org
"--freedesktop" ; install .desktop file
"--test") ; build unit tests
#:phases
(modify-phases %standard-phases
(add-after
'unpack 'set-rpath-in-LDFLAGS
,(ardour-rpath-phase (version-prefix version 1))))
#:tests? #f ; no check target
#:test-target "test"
#:python ,python-2))
(inputs
`(("alsa-lib" ,alsa-lib)
@@ -223,6 +226,7 @@ namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
("boost" ,boost)
("atkmm" ,atkmm)
("cairomm" ,cairomm)
("eudev" ,eudev)
("gtkmm" ,gtkmm-2)
("glibmm" ,glibmm)
("libart-lgpl" ,libart-lgpl)
@@ -238,8 +242,8 @@ namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
("lv2" ,lv2)
("vamp" ,vamp)
("curl" ,curl)
("fftw" ,fftw-with-threads)
("fftwf" ,fftwf-with-threads)
("fftw" ,fftw)
("fftwf" ,fftwf)
("jack" ,jack-1)
("serd" ,serd)
("sord" ,sord)
@@ -255,6 +259,8 @@ namespace ARDOUR { const char* revision = \"" version "\" ; }")))))
(native-inputs
`(("perl" ,perl)
("cppunit" ,cppunit)
("itstool" ,itstool)
("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(home-page "http://ardour.org")
(synopsis "Digital audio workstation")
@@ -264,6 +270,80 @@ record, edit, mix and master audio and MIDI projects. It is targeted at audio
engineers, musicians, soundtrack editors and composers.")
(license license:gpl2+)))
(define-public audacity
(package
(name "audacity")
(version "2.1.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/audacity/audacity/archive"
"/Audacity-" version ".tar.gz"))
(sha256
(base32 "11mx7gb4dbqrgfp7hm0154x3m76ddnmhf2675q5zkxn7jc5qfc6b"))))
(build-system gnu-build-system)
(inputs
;; TODO: Add portSMF and libwidgetextra once they're packaged. In-tree
;; versions shipping with Audacity are used for now.
`(("wxwidgets" ,wxwidgets-gtk2)
("gtk" ,gtk+-2)
("alsa-lib" ,alsa-lib)
("jack" ,jack-1)
("expat" ,expat)
("ffmpeg" ,ffmpeg)
("lame" ,lame)
("flac" ,flac)
("libid3tag" ,libid3tag)
("libmad" ,libmad)
("libsbsms" ,libsbsms)
("libsndfile" ,libsndfile)
("soundtouch" ,soundtouch)
("soxr" ,soxr) ;replaces libsamplerate
("twolame" ,twolame)
("vamp" ,vamp)
("libvorbis" ,libvorbis)
("lv2" ,lv2)
("lilv" ,lilv)
("portaudio" ,portaudio)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal) ;for msgfmt
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("python" ,python-2)
("which" ,which)))
(arguments
'(#:configure-flags
(let ((libid3tag (assoc-ref %build-inputs "libid3tag"))
(libmad (assoc-ref %build-inputs "libmad")))
(list
;; Loading FFmpeg dynamically is problematic.
"--disable-dynamic-loading"
;; libid3tag and libmad provide no .pc files, so pkg-config fails to
;; find them. Force their inclusion.
(string-append "ID3TAG_CFLAGS=-I" libid3tag "/include")
(string-append "ID3TAG_LIBS=-L" libid3tag "/lib -lid3tag -lz")
(string-append "LIBMAD_CFLAGS=-I" libmad "/include")
(string-append "LIBMAD_LIBS=-L" libmad "/lib -lmad")))
#:phases
(modify-phases %standard-phases
;; FFmpeg is only detected if autoreconf runs.
(add-before 'configure 'autoreconf
(lambda _
(zero? (system* "autoreconf" "-vfi")))))
;; The test suite is not "well exercised" according to the developers,
;; and fails with various errors. See
;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
#:tests? #f))
(home-page "http://audacity.sourceforge.net/")
(synopsis "Software for recording and editing sounds")
(description
"Audacity is a multi-track audio editor designed for recording, playing
and editing digital audio. It features digital effects and spectrum analysis
tools.")
(license license:gpl2+)))
(define-public azr3
(package
(name "azr3")
@@ -1057,7 +1137,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
(define-public guitarix
(package
(name "guitarix")
(version "0.35.2")
(version "0.35.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1065,7 +1145,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
version ".tar.xz"))
(sha256
(base32
"1qj3adjhg511jygbjkl9k5v0gcjmg6ifc479rspfyf45m383pp3p"))))
"0pvw4ijkq6lcn45vrif9b4mqmgzi0qg1dp5b33kb5zan6n1aci4j"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no "check" target
@@ -1086,7 +1166,6 @@ 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)
@@ -1222,7 +1301,7 @@ especially for creating reverb effects. It supports impulse responses with 1,
(define-public jack-1
(package
(name "jack")
(version "0.124.1")
(version "0.125.0")
(source (origin
(method url-fetch)
(uri (string-append
@@ -1231,7 +1310,7 @@ especially for creating reverb effects. It supports impulse responses with 1,
".tar.gz"))
(sha256
(base32
"1mk1wnx33anp6haxfjjkfhwbaknfblsvj35nxvz0hvspcmhdyhpb"))))
"0i6l25dmfk2ji2lrakqq9icnwjxklgcjzzk65dmsff91z2zva5rm"))))
(build-system gnu-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)
@@ -1281,6 +1360,15 @@ synchronous execution of all clients, and low latency operation.")
"--alsa")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-fast_rand
(lambda _
(substitute* "common/memops.c"
;; Fixed in upstream commit d3c8e2d8d78899fba40a3e677ed4dbe388d82269
(("^inline unsigned int fast_rand" line)
(string-append "static " line))
;; Fixed in upstream commit 0279a2d65a36d1378f5bab56d95bf9e99cc8cefb
((" 96314165") " 196314165"))
#t))
(add-before
'configure 'set-linkflags
(lambda _
@@ -1314,14 +1402,14 @@ synchronous execution of all clients, and low latency operation.")
(define-public jalv
(package
(name "jalv")
(version "1.4.6")
(version "1.6.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/jalv-"
version ".tar.bz2"))
(sha256
(base32
"1f1hcq74n3ziw8bk97mn5a1vgw028dxikv3fchaxd430pbbhqgl9"))))
"1x2wpzzx2cgvz3dgdcgsj8dr0w3zsasy62mvl199bsdj5fbjaili"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
@@ -1337,8 +1425,8 @@ synchronous execution of all clients, and low latency operation.")
`(("lv2" ,lv2)
("lilv" ,lilv)
("suil" ,suil)
("gtk" ,gtk+-2)
("gtkmm" ,gtkmm-2)
("gtk" ,gtk+)
("gtkmm" ,gtkmm)
("jack" ,jack-1)))
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -1448,7 +1536,7 @@ connections between them.")
(build-system gnu-build-system)
(native-inputs `(("pkg-config" ,pkg-config)))
(inputs `(("libsndfile" ,libsndfile)))
(home-page "http://sourceforge.net/projects/bs2b/")
(home-page "https://sourceforge.net/projects/bs2b/")
(synopsis "Bauer stereophonic-to-binaural DSP")
(description
"The Bauer stereophonic-to-binaural DSP (bs2b) library and plugins is
@@ -1512,15 +1600,14 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
(define-public lilv
(package
(name "lilv")
(version "0.22.0")
(version "0.24.2")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/lilv-"
version
".tar.bz2"))
version ".tar.bz2"))
(sha256
(base32
"1d3ss7vv8drf1c5340lyd0gv736n2qy7sxji2nh1rw9y48hr69yd"))))
"08m5a372pr1l7aii9s3pic5nm68gynx1n1bc7bnlswziq6qnbv7p"))))
(build-system waf-build-system)
(arguments
`(#:tests? #f ; no check target
@@ -1778,6 +1865,34 @@ buffers, and audio capture.")
and ALSA.")
(license license:gpl3+)))
(define-public qjackctl
(package
(name "qjackctl")
(version "0.4.5")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz"))
(sha256
(base32
"1dsavjfzz5bpzc80mvfs940w9f9f47cf4r9cqxnaqrl4xilsa3f5"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f)) ; no check target
(inputs
`(("jack" ,jack-1)
("qtbase" ,qtbase)
("qtx11extras" ,qtx11extras)))
(native-inputs
`(("pkg-config" ,pkg-config)
("qttools" ,qttools)))
(home-page "https://qjackctl.sourceforge.io/")
(synopsis "Jack server control application")
(description "Control a Jack server. Allows you to plug various sources
into various outputs and to start, stop and configure jackd")
(license license:gpl2+)))
(define-public raul
(package
(name "raul")
@@ -1904,15 +2019,14 @@ input/output.")
(define-public sratom
(package
(name "sratom")
(version "0.4.6")
(version "0.6.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/sratom-"
version
".tar.bz2"))
version ".tar.bz2"))
(sha256
(base32
"080jjiyxjnj7hf25844hd9rb01grvzz1rk8mxcdnakywmspbxfd4"))))
"0hrxd9i66s06bpn6i3s9ka95134g3sm8yscmif7qgdzhyjqw42j4"))))
(build-system waf-build-system)
(arguments `(#:tests? #f)) ; no check target
(inputs
@@ -1931,15 +2045,14 @@ the Turtle syntax.")
(define-public suil
(package
(name "suil")
(version "0.8.2")
(version "0.8.4")
(source (origin
(method url-fetch)
(uri (string-append "http://download.drobilla.net/suil-"
version
".tar.bz2"))
version ".tar.bz2"))
(sha256
(base32
"1s3adyiw7sa5gfvm5wasa61qa23629kprxyv6w8hbxdiwp0hhxkq"))))
"1kji3lhha26qr6xm9j8ic5c40zbrrb5qnwm2qxzmsfxgmrz29wkf"))))
(build-system waf-build-system)
(arguments `(#:tests? #f)) ; no check target
(inputs
@@ -2101,19 +2214,15 @@ stretching and pitch scaling of audio. This package contains the library.")
(define-public wavpack
(package
(name "wavpack")
(version "4.70.0")
(version "5.1.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.wavpack.com/"
name "-" version ".tar.bz2"))
(sha256
(base32
"191h8hv8qk72hfh1crg429i9yq3cminwqb249sy9zadbn1wy7b9c"))))
"0i19c6krc0p9krwrqy9s5xahaafigqzxcn31piidmlaqadyn4f8r"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
;; wavpack.pc.in lacks path substitution for 'exec_prefix'.
(list (string-append "--libdir=" %output "/lib"))))
(home-page "http://www.wavpack.com/")
(synopsis "Hybrid lossless audio codec")
(description
@@ -2268,7 +2377,7 @@ can play and record audio files.")
(define-public soxr
(package
(name "soxr")
(version "0.1.1")
(version "0.1.2")
(source
(origin
(method url-fetch)
@@ -2276,10 +2385,10 @@ can play and record audio files.")
(string-append "mirror://sourceforge/soxr/soxr-" version
"-Source.tar.xz"))
(sha256
(base32 "1hmadwqfpg15vhwq9pa1sl5xslibrjpk6hpq2s9hfmx1s5l6ihfw"))))
(base32 "0xf2w3piwz9gfr1xqyrj4k685q5dy53kq3igv663i4f4y4sg9rjl"))))
(build-system cmake-build-system)
(arguments '(#:tests? #f)) ;no 'check' target
(home-page "http://sourceforge.net/p/soxr/wiki/Home/")
(home-page "https://sourceforge.net/p/soxr/wiki/Home/")
(synopsis "One-dimensional sample-rate conversion library")
(description
"The SoX Resampler library (libsoxr) performs one-dimensional sample-rate
@@ -2322,7 +2431,7 @@ portions of LAME.")
(define-public portaudio
(package
(name "portaudio")
(version "19.20140130")
(version "190600.20161030")
(source
(origin
(method url-fetch)
@@ -2331,7 +2440,7 @@ portions of LAME.")
(string-map (lambda (c) (if (char=? c #\.) #\_ c)) version)
".tgz"))
(sha256
(base32 "0mwddk4qzybaf85wqfhxqlf0c5im9il8z03rd4n127k8y2jj9q4g"))
(base32 "04qmin6nj144b8qb9kkd9a52xfvm0qdgm8bg8jbl7s3frmyiv8pm"))
(patches (search-patches "portaudio-audacity-compat.patch"))))
(build-system gnu-build-system)
(inputs
@@ -2364,14 +2473,15 @@ interface.")
(define-public qsynth
(package
(name "qsynth")
(version "0.4.3")
(version "0.4.4")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz"))
(sha256
(base32 "1j5hm99fjrnaw8wbmlh4qixkv3rw5dl429mp1ag7js2ydrx0j9yy"))))
(base32
"0qhfnikx3xcllkvs60kj6vcf2rwwzh31y41qkk6kwfhzgd219y8f"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" phase
@@ -2699,7 +2809,7 @@ with support for HD extensions.")
(define-public bs1770gain
(package
(name "bs1770gain")
(version "0.4.11")
(version "0.4.12")
(source
(origin
(method url-fetch)
@@ -2707,7 +2817,7 @@ with support for HD extensions.")
version "/bs1770gain-" version ".tar.gz"))
(sha256
(base32
"0j765drdb7h3y5ipjv9sg1a0if6zh8cksbv3rdk5ppd7kxcrjnlb"))))
"0n9skdap1vnl6w52fx0gsrjlk7w3xgdwi62ycyf96h29rx059z6a"))))
(build-system gnu-build-system)
(inputs `(("ffmpeg" ,ffmpeg)
("sox" ,sox)))
+3 -3
View File
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -30,14 +30,14 @@
(define-public augeas
(package
(name "augeas")
(version "1.4.0")
(version "1.8.0")
(source (origin
(method url-fetch)
(uri (string-append "http://download.augeas.net/augeas-"
version ".tar.gz"))
(sha256
(base32
"0c2vncn0afmgwggnqa5s5z7m3zbcc66bi8v9m1h9w0i9q9xax7v5"))))
"1iac5lwi1q10r343ii9v5p2fdplvh06yv9svsi8zz6cd2c2fjp2i"))))
(build-system gnu-build-system)
;; Marked as "required" in augeas.pc
(propagated-inputs
+58 -20
View File
@@ -3,8 +3,9 @@
;;; 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>
;;; Copyright © 2015, 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2017 ng0 <ng0@libertad.pw>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -26,6 +27,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages perl)
#:use-module (gnu packages m4)
#:use-module (gnu packages man)
#:use-module (gnu packages bash)
#:use-module (guix utils)
#:use-module (guix packages)
@@ -90,6 +92,35 @@ know anything about Autoconf or M4.")
(base32
"0j3jdjpf5ly39dlp0bg70h72nzqr059k0x8iqxvaxf106chpgn9j"))))))
(define-public autoconf-2.13
;; GNU IceCat 52.x requires autoconf-2.13 to build!
(package (inherit autoconf)
(version "2.13")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/autoconf/autoconf-"
version ".tar.gz"))
(sha256
(base32
"07krzl4czczdsgzrrw9fiqx35xcf32naf751khg821g5pqv12qgh"))))
(arguments
`(#:tests? #f
#:phases
;; The 'configure' script in autoconf-2.13 can't cope with "SHELL=" and
;; "CONFIG_SHELL=" arguments, so we set them as environment variables
;; and pass a simplified set of arguments.
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key build inputs outputs #:allow-other-keys)
(let ((bash (which "bash"))
(out (assoc-ref outputs "out")))
(setenv "CONFIG_SHELL" bash)
(setenv "SHELL" bash)
(zero? (system* bash "./configure"
(string-append "--prefix=" out)
(string-append "--build=" build)))))))))))
(define* (autoconf-wrapper #:optional (autoconf autoconf))
"Return an wrapper around AUTOCONF that generates `configure' scripts that
@@ -163,7 +194,7 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
(define-public autoconf-archive
(package
(name "autoconf-archive")
(version "2016.09.16")
(version "2017.03.21")
(source
(origin
(method url-fetch)
@@ -171,9 +202,9 @@ exec ~a --no-auto-compile \"$0\" \"$@\"
version ".tar.xz"))
(sha256
(base32
"10mxz9hfnfz66m1l9s28sbyfb9a04akz92wkyv9blhpq6p9fzwp8"))))
"0rfpapadka2023qhy8294ca5awxpb8d4904js6kv7piby5ax8siq"))))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/autoconf-archive")
(home-page "https://www.gnu.org/software/autoconf-archive/")
(synopsis "Collection of freely reusable Autoconf macros")
(description
"Autoconf Archive is a collection of over 450 new macros for Autoconf,
@@ -275,7 +306,7 @@ output is indexed in many ways to simplify browsing.")
args)))))
(find-files dir ".*"))))
%standard-phases))))
(home-page "http://www.gnu.org/software/automake/")
(home-page "https://www.gnu.org/software/automake/")
(synopsis "Making GNU standards-compliant Makefiles")
(description
"Automake the part of the GNU build system for producing
@@ -300,6 +331,7 @@ Makefile, simplifying the entire process for the developer.")
(propagated-inputs `(("m4" ,m4)))
(native-inputs `(("m4" ,m4)
("perl" ,perl)
("help2man" ,help2man) ;because we modify ltmain.sh
("automake" ,automake) ;some tests rely on 'aclocal'
("autoconf" ,(autoconf-wrapper)))) ;others on 'autom4te'
@@ -313,28 +345,34 @@ Makefile, simplifying the entire process for the developer.")
(or (%current-target-system)
(%current-system))))
#:phases (alist-cons-before
'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
;; Run the test suite in parallel, if possible.
(setenv "TESTSUITEFLAGS"
(string-append
"-j"
(number->string (parallel-job-count))))
#:phases
(modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys)
;; Run the test suite in parallel, if possible.
(setenv "TESTSUITEFLAGS"
(string-append
"-j"
(number->string (parallel-job-count))))
;; Patch references to /bin/sh.
(let ((bash (assoc-ref inputs "bash")))
(substitute* "tests/testsuite"
(("/bin/sh")
(string-append bash "/bin/sh")))
#t)))
(add-after 'patch-source-shebangs 'restore-ltmain-shebang
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "build-aux/ltmain.in"
(("^#!.*/bin/sh$") "#!/bin/sh"))
#t)))))
;; Path references to /bin/sh.
(let ((bash (assoc-ref inputs "bash")))
(substitute* "tests/testsuite"
(("/bin/sh")
(string-append bash "/bin/bash")))))
%standard-phases)))
(synopsis "Generic shared library support tools")
(description
"GNU Libtool helps in the creation and use of shared libraries, by
presenting a single consistent, portable interface that hides the usual
complexity of working with shared libraries across platforms.")
(license gpl3+)
(home-page "http://www.gnu.org/software/libtool/")))
(home-page "https://www.gnu.org/software/libtool/")))
(define-public libltdl
;; This is a libltdl package separate from the libtool package. This is

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