diff options
author | Marius Bakke <mbakke@fastmail.com> | 2018-12-11 22:18:05 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2018-12-11 22:18:05 +0100 |
commit | b03e4fd5269897448124a7b61a737802b2c638ee (patch) | |
tree | e4eaab1d3076e335c57eea462ff7fda7919f0831 /gnu | |
parent | da3c6a7f19ef1243af725f63c16c8fd92fde33b4 (diff) | |
parent | 99aad42138e0895df51e64e1261984f277952516 (diff) | |
download | guix-patches-b03e4fd5269897448124a7b61a737802b2c638ee.tar guix-patches-b03e4fd5269897448124a7b61a737802b2c638ee.tar.gz |
Merge branch 'master' into core-updates
Diffstat (limited to 'gnu')
274 files changed, 25815 insertions, 10083 deletions
diff --git a/gnu/artwork.scm b/gnu/artwork.scm index 92498b8b23..35bfd0f967 100644 --- a/gnu/artwork.scm +++ b/gnu/artwork.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; ;;; This file is part of GNU Guix. @@ -33,7 +33,7 @@ (origin (method git-fetch) (uri (git-reference - (url "git://git.savannah.gnu.org/guix/guix-artwork.git") + (url "https://git.savannah.gnu.org/git/guix/guix-artwork.git") (commit commit))) (file-name (string-append "guix-artwork-" (string-take commit 7) "-checkout")) diff --git a/gnu/bootloader/extlinux.scm b/gnu/bootloader/extlinux.scm index 8b7a95a6fc..b48596c496 100644 --- a/gnu/bootloader/extlinux.scm +++ b/gnu/bootloader/extlinux.scm @@ -19,12 +19,8 @@ (define-module (gnu bootloader extlinux) #:use-module (gnu bootloader) - #:use-module (gnu system) - #:use-module (gnu build bootloader) #:use-module (gnu packages bootloaders) #:use-module (guix gexp) - #:use-module (guix monads) - #:use-module (guix records) #:use-module (guix utils) #:export (extlinux-bootloader extlinux-bootloader-gpt)) @@ -78,7 +74,7 @@ TIMEOUT ~a~%" (format port "~%")) #~()))))) - (gexp->derivation "extlinux.conf" builder)) + (computed-file "extlinux.conf" builder)) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 06856dd58c..161e8b3d02 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -20,26 +20,18 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu bootloader grub) - #:use-module (guix store) - #:use-module (guix packages) - #:use-module (guix derivations) #:use-module (guix records) - #:use-module (guix monads) + #:use-module ((guix utils) #:select (%current-system)) #:use-module (guix gexp) - #:use-module (guix download) #:use-module (gnu artwork) - #:use-module (gnu system) #:use-module (gnu bootloader) #:use-module (gnu system uuid) #:use-module (gnu system file-systems) #:autoload (gnu packages bootloaders) (grub) - #:autoload (gnu packages compression) (gzip) #:autoload (gnu packages gtk) (guile-cairo guile-rsvg) - #:autoload (gnu packages guile) (guile-2.2) #:use-module (ice-9 match) #:use-module (ice-9 regex) #:use-module (srfi srfi-1) - #:use-module (rnrs bytevectors) #:export (grub-image grub-image? grub-image-aspect-ratio @@ -121,14 +113,14 @@ otherwise." (define* (svg->png svg #:key width height) "Build a PNG of HEIGHT x WIDTH from SVG." - (gexp->derivation "grub-image.png" - (with-imported-modules '((gnu build svg)) - (with-extensions (list guile-rsvg guile-cairo) - #~(begin - (use-modules (gnu build svg)) - (svg->png #+svg #$output - #:width #$width - #:height #$height)))))) + (computed-file "grub-image.png" + (with-imported-modules '((gnu build svg)) + (with-extensions (list guile-rsvg guile-cairo) + #~(begin + (use-modules (gnu build svg)) + (svg->png #+svg #$output + #:width #$width + #:height #$height)))))) (define* (grub-background-image config #:key (width 1024) (height 768)) "Return the GRUB background image defined in CONFIG with a ratio of @@ -138,15 +130,13 @@ WIDTH/HEIGHT, or #f if none was found." (= (grub-image-aspect-ratio image) ratio)) (grub-theme-images (bootloader-theme config))))) - (if image - (svg->png (grub-image-file image) - #:width width #:height height) - (with-monad %store-monad - (return #f))))) + (and image + (svg->png (grub-image-file image) + #:width width #:height height)))) (define* (eye-candy config store-device store-mount-point #:key system port) - "Return in %STORE-MONAD a gexp that writes to PORT (a port-valued gexp) the + "Return a gexp that writes to PORT (a port-valued gexp) the 'grub.cfg' part concerned with graphics mode, background images, colors, and all that. STORE-DEVICE designates the device holding the store, and STORE-MOUNT-POINT is its mount point; these are used to determine where the @@ -194,9 +184,11 @@ fi~%" #$font-file) (strip-mount-point store-mount-point (file-append grub "/share/grub/unicode.pf2"))) - (mlet* %store-monad ((image (grub-background-image config))) - (return (and image - #~(format #$port " + (define image + (grub-background-image config)) + + (and image + #~(format #$port " function setup_gfxterm {~a} # Set 'root' to the partition that contains /gnu/store. @@ -213,14 +205,14 @@ else set menu_color_normal=cyan/blue set menu_color_highlight=white/blue fi~%" - #$setup-gfxterm-body - #$(grub-root-search store-device font-file) - #$(setup-gfxterm config font-file) - #$(grub-setup-io config) + #$setup-gfxterm-body + #$(grub-root-search store-device font-file) + #$(setup-gfxterm config font-file) + #$(grub-setup-io config) - #$(strip-mount-point store-mount-point image) - #$(theme-colors grub-theme-color-normal) - #$(theme-colors grub-theme-color-highlight)))))) + #$(strip-mount-point store-mount-point image) + #$(theme-colors grub-theme-color-normal) + #$(theme-colors grub-theme-color-highlight)))) ;;; @@ -331,36 +323,36 @@ entries corresponding to old generations of the system." #$(grub-root-search device kernel) #$kernel (string-join (list #$@arguments)) #$initrd)))) - (mlet %store-monad ((sugar (eye-candy config - (menu-entry-device - (first all-entries)) - (menu-entry-device-mount-point - (first all-entries)) - #:system system - #:port #~port))) - (define builder - #~(call-with-output-file #$output - (lambda (port) - (format port - "# This file was generated from your GuixSD configuration. Any changes + (define sugar + (eye-candy config + (menu-entry-device (first all-entries)) + (menu-entry-device-mount-point (first all-entries)) + #:system system + #:port #~port)) + + (define builder + #~(call-with-output-file #$output + (lambda (port) + (format port + "# This file was generated from your GuixSD configuration. Any changes # will be lost upon reconfiguration. ") - #$sugar - (format port " + #$sugar + (format port " set default=~a set timeout=~a~%" - #$(bootloader-configuration-default-entry config) - #$(bootloader-configuration-timeout config)) - #$@(map menu-entry->gexp all-entries) + #$(bootloader-configuration-default-entry config) + #$(bootloader-configuration-timeout config)) + #$@(map menu-entry->gexp all-entries) - #$@(if (pair? old-entries) - #~((format port " + #$@(if (pair? old-entries) + #~((format port " submenu \"GNU system, old configurations...\" {~%") - #$@(map menu-entry->gexp old-entries) - (format port "}~%")) - #~())))) + #$@(map menu-entry->gexp old-entries) + (format port "}~%")) + #~())))) - (gexp->derivation "grub.cfg" builder))) + (computed-file "grub.cfg" builder)) diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index 0157fde3da..1c6f322bc4 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -20,13 +20,8 @@ (define-module (gnu bootloader u-boot) #:use-module (gnu bootloader extlinux) #:use-module (gnu bootloader) - #:use-module (gnu system) - #:use-module (gnu build bootloader) #:use-module (gnu packages bootloaders) #:use-module (guix gexp) - #:use-module (guix monads) - #:use-module (guix records) - #:use-module (guix utils) #:export (u-boot-bootloader u-boot-a20-olinuxino-lime-bootloader u-boot-a20-olinuxino-lime2-bootloader @@ -37,6 +32,7 @@ u-boot-nintendo-nes-classic-edition-bootloader u-boot-novena-bootloader u-boot-pine64-plus-bootloader + u-boot-pinebook-bootloader u-boot-puma-rk3399-bootloader u-boot-wandboard-bootloader)) @@ -173,6 +169,11 @@ (inherit u-boot-allwinner64-bootloader) (package u-boot-pine64-plus))) +(define u-boot-pinebook-bootloader + (bootloader + (inherit u-boot-allwinner64-bootloader) + (package u-boot-pinebook))) + (define u-boot-puma-rk3399-bootloader (bootloader (inherit u-boot-bootloader) diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 68ecd6bc71..0e77677de1 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -148,11 +148,15 @@ properties. Return #t on success." `("-G" ,(string-join supplementary-groups ",")) '()) ,@(if comment `("-c" ,comment) '()) - ,@(if (and home create-home?) - (if (file-exists? home) - `("-d" ,home) ; avoid warning from 'useradd' - `("-d" ,home "--create-home")) + ,@(if home `("-d" ,home) '()) + + ;; Home directories of non-system accounts are created by + ;; 'activate-user-home'. + ,@(if (and home create-home? system? + (not (file-exists? home))) + '("--create-home") '()) + ,@(if shell `("-s" ,shell) '()) ,@(if password `("-p" ,password) '()) ,@(if system? '("--system") '()) @@ -229,10 +233,7 @@ numeric gid or #f." #:supplementary-groups supplementary-groups #:comment comment #:home home - - ;; Home directories of non-system accounts are created by - ;; 'activate-user-home'. - #:create-home? (and create-home? system?) + #:create-home? create-home? #:shell shell #:password password) diff --git a/gnu/build/install.scm b/gnu/build/install.scm index 5a5e703872..c9ebe124fe 100644 --- a/gnu/build/install.scm +++ b/gnu/build/install.scm @@ -18,7 +18,6 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu build install) - #:use-module (guix store database) #:use-module (guix build utils) #:use-module (guix build store-copy) #:use-module (srfi srfi-26) @@ -27,6 +26,7 @@ evaluate-populate-directive populate-root-file-system register-closure + install-database-and-gc-roots populate-single-profile-directory)) ;;; Commentary: @@ -141,41 +141,53 @@ includes /etc, /var, /run, /bin/sh, etc., and all the symlinks to SYSTEM." (try)) (apply throw args))))))) -(define* (register-closure prefix closure - #:key - (deduplicate? #t) (reset-timestamps? #t) - (schema (sql-schema))) - "Register CLOSURE in PREFIX, where PREFIX is the directory name of the -target store and CLOSURE is the name of a file containing a reference graph as -produced by #:references-graphs.. As a side effect, if RESET-TIMESTAMPS? is -true, reset timestamps on store files and, if DEDUPLICATE? is true, -deduplicates files common to CLOSURE and the rest of PREFIX." - (let ((items (call-with-input-file closure read-reference-graph))) - (register-items items - #:prefix prefix - #:deduplicate? deduplicate? - #:reset-timestamps? reset-timestamps? - #:registration-time %epoch - #:schema schema))) +(define %root-profile + "/var/guix/profiles/per-user/root") + +(define* (install-database-and-gc-roots root database profile + #:key (profile-name "guix-profile")) + "Install DATABASE, the store database, under directory ROOT. Create +PROFILE-NAME and have it link to PROFILE, a store item." + (define (scope file) + (string-append root "/" file)) + + (define (mkdir-p* dir) + (mkdir-p (scope dir))) + + (define (symlink* old new) + (symlink old (scope new))) + + (install-file database (scope "/var/guix/db/")) + (chmod (scope "/var/guix/db/db.sqlite") #o644) + (mkdir-p* "/var/guix/profiles") + (mkdir-p* "/var/guix/gcroots") + (symlink* "/var/guix/profiles" "/var/guix/gcroots/profiles") + + ;; Make root's profile, which makes it a GC root. + (mkdir-p* %root-profile) + (symlink* profile + (string-append %root-profile "/" profile-name "-1-link")) + (symlink* (string-append profile-name "-1-link") + (string-append %root-profile "/" profile-name))) (define* (populate-single-profile-directory directory #:key profile closure - deduplicate? - register? schema) + (profile-name "guix-profile") + database) "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. -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. + +When DATABASE is true, copy it to DIRECTORY/var/guix/db and create +DIRECTORY/var/guix/gcroots and friends. + +PROFILE-NAME is the name of the profile being created under +/var/guix/profiles, typically either \"guix-profile\" or \"current-guix\". This is used to create the self-contained tarballs with 'guix pack'." (define (scope file) (string-append directory "/" file)) - (define %root-profile - "/var/guix/profiles/per-user/root") - (define (mkdir-p* dir) (mkdir-p (scope dir))) @@ -185,25 +197,20 @@ This is used to create the self-contained tarballs with 'guix pack'." ;; Populate the store. (populate-store (list closure) directory) - (when register? - (register-closure (canonicalize-path directory) closure - #:deduplicate? deduplicate? - #:schema schema) - - (mkdir-p* "/var/guix/profiles") - (mkdir-p* "/var/guix/gcroots") - (symlink* "/var/guix/profiles" - "/var/guix/gcroots/profiles")) - - ;; Make root's profile, which makes it a GC root. - (mkdir-p* %root-profile) - (symlink* profile - (string-append %root-profile "/guix-profile-1-link")) - (symlink* (string-append %root-profile "/guix-profile-1-link") - (string-append %root-profile "/guix-profile")) - - (mkdir-p* "/root") - (symlink* (string-append %root-profile "/guix-profile") - "/root/.guix-profile")) + (when database + (install-database-and-gc-roots directory database profile + #:profile-name profile-name)) + + (match profile-name + ("guix-profile" + (mkdir-p* "/root") + (symlink* (string-append %root-profile "/guix-profile") + "/root/.guix-profile")) + ("current-guix" + (mkdir-p* "/root/.config/guix") + (symlink* (string-append %root-profile "/current-guix") + "/root/.config/guix/current")) + (_ + #t))) ;;; install.scm ends here diff --git a/gnu/build/linux-initrd.scm b/gnu/build/linux-initrd.scm index c65b5aacfa..3aaa06d3a0 100644 --- a/gnu/build/linux-initrd.scm +++ b/gnu/build/linux-initrd.scm @@ -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, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -72,11 +72,23 @@ COMPRESS? is true, compress it using GZIP. On success, return OUTPUT." #:file->header cpio:file->cpio-header*))) (or (not compress?) - ;; Use '--no-name' so that gzip records neither a file name nor a time - ;; stamp in its output. - (and (zero? (system* gzip "--best" "--no-name" output)) - (rename-file (string-append output ".gz") - output)) + + ;; Gzip insists on adding a '.gz' suffix and does nothing if the input + ;; file already has that suffix. Shuffle files around to placate it. + (let* ((gz-suffix? (string-suffix? ".gz" output)) + (sans-gz (if gz-suffix? + (string-drop-right output 3) + output))) + (when gz-suffix? + (rename-file output sans-gz)) + ;; Use '--no-name' so that gzip records neither a file name nor a time + ;; stamp in its output. + (and (zero? (system* gzip "--best" "--no-name" sans-gz)) + (begin + (unless gz-suffix? + (rename-file (string-append output ".gz") output)) + output))) + output)) (define (cache-compiled-file-name file) @@ -139,6 +151,12 @@ REFERENCES-GRAPHS." (write-cpio-archive output "." #:gzip gzip)) + ;; Make sure directories are writable so we can delete files. + (for-each make-file-writable + (find-files "contents" + (lambda (file stat) + (eq? 'directory (stat:type stat))) + #:directories? #t)) (delete-file-recursively "contents")) ;;; linux-initrd.scm ends here diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 5579886264..83ad489cc7 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -25,7 +25,7 @@ #:use-module (guix build utils) #:use-module (guix build store-copy) #:use-module (guix build syscalls) - #:use-module ((guix store database) #:select (reset-timestamps)) + #:use-module (guix store database) #:use-module (gnu build linux-boot) #:use-module (gnu build install) #:use-module (gnu system uuid) @@ -191,6 +191,23 @@ the #:references-graphs parameter of 'derivation'." (mkdir output) (copy-recursively "xchg" output))))) +(define* (register-closure prefix closure + #:key + (deduplicate? #t) (reset-timestamps? #t) + (schema (sql-schema))) + "Register CLOSURE in PREFIX, where PREFIX is the directory name of the +target store and CLOSURE is the name of a file containing a reference graph as +produced by #:references-graphs.. As a side effect, if RESET-TIMESTAMPS? is +true, reset timestamps on store files and, if DEDUPLICATE? is true, +deduplicates files common to CLOSURE and the rest of PREFIX." + (let ((items (call-with-input-file closure read-reference-graph))) + (register-items items + #:prefix prefix + #:deduplicate? deduplicate? + #:reset-timestamps? reset-timestamps? + #:registration-time %epoch + #:schema schema))) + ;;; ;;; Partitions. @@ -460,6 +477,11 @@ GRUB configuration and OS-DRV as the stuff in it." "mnt=/tmp/root/mnt" "-path-list" "-" "--" + + ;; XXX: Add padding to avoid I/O errors on i686: + ;; <https://bugs.gnu.org/33639>. + "-padding" "10m" + "-volid" (string-upcase volume-id) (if volume-uuid `("-volume_date" "uuid" diff --git a/gnu/local.mk b/gnu/local.mk index 773d55ff18..0c324cd7d6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -19,6 +19,7 @@ # Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net> # Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> # Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com> +# Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> # # This file is part of GNU Guix. # @@ -60,6 +61,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/android.scm \ %D%/packages/animation.scm \ %D%/packages/anthy.scm \ + %D%/packages/antivirus.scm \ %D%/packages/apl.scm \ %D%/packages/apr.scm \ %D%/packages/aspell.scm \ @@ -99,6 +101,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/chez.scm \ %D%/packages/ci.scm \ %D%/packages/cinnamon.scm \ + %D%/packages/clojure.scm \ %D%/packages/cluster.scm \ %D%/packages/cmake.scm \ %D%/packages/cobol.scm \ @@ -143,6 +146,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/documentation.scm \ %D%/packages/dunst.scm \ %D%/packages/dvtm.scm \ + %D%/packages/easyrpg.scm \ %D%/packages/ebook.scm \ %D%/packages/ed.scm \ %D%/packages/education.scm \ @@ -234,6 +238,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/imagemagick.scm \ %D%/packages/inklingreader.scm \ %D%/packages/inkscape.scm \ + %D%/packages/ipfs.scm \ %D%/packages/irc.scm \ %D%/packages/iso-codes.scm \ %D%/packages/java.scm \ @@ -344,6 +349,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/perl-check.scm \ %D%/packages/perl-web.scm \ %D%/packages/photo.scm \ + %D%/packages/phabricator.scm \ %D%/packages/php.scm \ %D%/packages/pkg-config.scm \ %D%/packages/plotutils.scm \ @@ -570,6 +576,7 @@ dist_patch_DATA = \ %D%/packages/patches/aegis-test-fixup-1.patch \ %D%/packages/patches/aegis-test-fixup-2.patch \ %D%/packages/patches/aegisub-icu59-include-unistr.patch \ + %D%/packages/patches/aegisub-boost68.patch \ %D%/packages/patches/agg-am_c_prototype.patch \ %D%/packages/patches/amule-crypto-6.patch \ %D%/packages/patches/ansible-wrap-program-hack.patch \ @@ -594,25 +601,30 @@ dist_patch_DATA = \ %D%/packages/patches/bash-completion-directories.patch \ %D%/packages/patches/bastet-change-source-of-unordered_set.patch \ %D%/packages/patches/bazaar-CVE-2017-14176.patch \ + %D%/packages/patches/beets-python-3.7-fix.patch \ %D%/packages/patches/beignet-correct-file-names.patch \ %D%/packages/patches/binutils-boot-2.20.1a.patch \ %D%/packages/patches/binutils-loongson-workaround.patch \ %D%/packages/patches/blast+-fix-makefile.patch \ + %D%/packages/patches/blender-newer-ffmpeg.patch \ %D%/packages/patches/boost-fix-icu-build.patch \ - %D%/packages/patches/borg-respect-storage-quota.patch \ %D%/packages/patches/byobu-writable-status.patch \ %D%/packages/patches/cairo-CVE-2016-9082.patch \ %D%/packages/patches/cairo-setjmp-wrapper.patch \ %D%/packages/patches/calibre-no-updates-dialog.patch \ %D%/packages/patches/calibre-use-packaged-feedparser.patch \ + %D%/packages/patches/casync-renameat2-declaration.patch \ %D%/packages/patches/catdoc-CVE-2017-11110.patch \ %D%/packages/patches/cdparanoia-fpic.patch \ %D%/packages/patches/cdrtools-3.01-mkisofs-isoinfo.patch \ + %D%/packages/patches/ceph-detect-rocksdb.patch \ %D%/packages/patches/ceph-disable-cpu-optimizations.patch \ - %D%/packages/patches/ceph-rocksdb-compat.patch \ %D%/packages/patches/ceph-skip-collect-sys-info-test.patch \ %D%/packages/patches/ceph-skip-unittest_blockdev.patch \ + %D%/packages/patches/ceph-volume-respect-PATH.patch \ %D%/packages/patches/chmlib-inttypes.patch \ + %D%/packages/patches/clamav-config-llvm-libs.patch \ + %D%/packages/patches/clamav-system-tomsfastmath.patch \ %D%/packages/patches/clang-3.5-libc-search-path.patch \ %D%/packages/patches/clang-3.5-libsanitizer-ustat-fix.patch \ %D%/packages/patches/clang-3.8-libc-search-path.patch \ @@ -636,7 +648,6 @@ dist_patch_DATA = \ %D%/packages/patches/cracklib-fix-buffer-overflow.patch \ %D%/packages/patches/crawl-upgrade-saves.patch \ %D%/packages/patches/crda-optional-gcrypt.patch \ - %D%/packages/patches/crossmap-allow-system-pysam.patch \ %D%/packages/patches/clucene-contribs-lib.patch \ %D%/packages/patches/cube-nocheck.patch \ %D%/packages/patches/cursynth-wave-rand.patch \ @@ -645,7 +656,6 @@ dist_patch_DATA = \ %D%/packages/patches/datamash-arm-tests.patch \ %D%/packages/patches/dbus-helper-search-path.patch \ %D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \ - %D%/packages/patches/delly-use-system-libraries.patch \ %D%/packages/patches/dfu-programmer-fix-libusb.patch \ %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/diffutils-getopt.patch \ @@ -657,14 +667,15 @@ dist_patch_DATA = \ %D%/packages/patches/dropbear-CVE-2018-15599.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ - %D%/packages/patches/elogind-glibc-2.27.patch \ %D%/packages/patches/einstein-build.patch \ %D%/packages/patches/emacs-exec-path.patch \ %D%/packages/patches/emacs-fix-scheme-indent-function.patch \ %D%/packages/patches/emacs-json-reformat-fix-tests.patch \ %D%/packages/patches/emacs-highlight-stages-add-gexp.patch \ + %D%/packages/patches/emacs-pdf-tools-poppler.patch \ %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \ + %D%/packages/patches/emacs-realgud-fix-configure-ac.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \ %D%/packages/patches/erlang-man-path.patch \ %D%/packages/patches/eudev-rules-directory.patch \ @@ -706,7 +717,6 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-4.8-libsanitizer-fix.patch \ %D%/packages/patches/gcc-4.9-libsanitizer-fix.patch \ %D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \ - %D%/packages/patches/gcc-libsanitizer-fix.patch \ %D%/packages/patches/gcc-libsanitizer-ustat.patch \ %D%/packages/patches/gcc-libvtv-runpath.patch \ %D%/packages/patches/gcc-strmov-store-file-names.patch \ @@ -728,10 +738,10 @@ dist_patch_DATA = \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-freetype-test-failure.patch \ %D%/packages/patches/gdm-CVE-2018-14424.patch \ - %D%/packages/patches/gemma-intel-compat.patch \ %D%/packages/patches/geoclue-config.patch \ %D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \ %D%/packages/patches/ghc-dont-pass-linker-flags-via-response-files.patch \ + %D%/packages/patches/ghc-haddock-library-unbundle.patch \ %D%/packages/patches/ghostscript-CVE-2018-16509.patch \ %D%/packages/patches/ghostscript-bug-699708.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \ @@ -803,7 +813,6 @@ dist_patch_DATA = \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ %D%/packages/patches/gzdoom-search-in-installed-share.patch \ - %D%/packages/patches/handbrake-pkg-config-path.patch \ %D%/packages/patches/haskell-mode-unused-variables.patch \ %D%/packages/patches/haskell-mode-make-check.patch \ %D%/packages/patches/hdf4-architectures.patch \ @@ -820,9 +829,9 @@ dist_patch_DATA = \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hubbub-sort-entities.patch \ %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ + %D%/packages/patches/hplip-remove-imageprocessor.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ - %D%/packages/patches/icecat-CVE-2018-12383.patch \ %D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \ %D%/packages/patches/icecat-use-system-media-libs.patch \ %D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch \ @@ -844,7 +853,6 @@ dist_patch_DATA = \ %D%/packages/patches/java-xerces-xjavac_taskdef.patch \ %D%/packages/patches/jbig2dec-ignore-testtest.patch \ %D%/packages/patches/json-glib-fix-tests-32bit.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/libziparchive-add-includes.patch \ @@ -887,6 +895,7 @@ dist_patch_DATA = \ %D%/packages/patches/libexif-CVE-2016-6328.patch \ %D%/packages/patches/libexif-CVE-2017-7544.patch \ %D%/packages/patches/libgit2-mtime-0.patch \ + %D%/packages/patches/libgit2-oom-test.patch \ %D%/packages/patches/libgdata-fix-tests.patch \ %D%/packages/patches/libgdata-glib-duplicate-tests.patch \ %D%/packages/patches/libgnome-encoding.patch \ @@ -894,8 +903,8 @@ dist_patch_DATA = \ %D%/packages/patches/libffi-3.2.1-complex-alpha.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-typos.patch \ + %D%/packages/patches/libopenshot-tests-with-system-libs.patch \ %D%/packages/patches/libotr-test-auth-fix.patch \ - %D%/packages/patches/liblxqt-include.patch \ %D%/packages/patches/libmad-armv7-thumb-pt1.patch \ %D%/packages/patches/libmad-armv7-thumb-pt2.patch \ %D%/packages/patches/libmad-frame-length.patch \ @@ -933,6 +942,7 @@ dist_patch_DATA = \ %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/lirc-reproducible-build.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 \ @@ -948,7 +958,6 @@ dist_patch_DATA = \ %D%/packages/patches/lvm2-static-link.patch \ %D%/packages/patches/lxsession-use-gapplication.patch \ %D%/packages/patches/lyx-2.2.3-fix-test.patch \ - %D%/packages/patches/mailutils-uninitialized-memory.patch \ %D%/packages/patches/make-glibc-compat.patch \ %D%/packages/patches/make-impure-dirs.patch \ %D%/packages/patches/mariadb-client-test-32bit.patch \ @@ -961,6 +970,7 @@ dist_patch_DATA = \ %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/meandmyshadow-define-paths-earlier.patch \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/mescc-tools-boot.patch \ %D%/packages/patches/meson-for-build-rpath.patch \ @@ -971,6 +981,7 @@ dist_patch_DATA = \ %D%/packages/patches/module-init-tools-moduledir.patch \ %D%/packages/patches/monero-use-system-miniupnpc.patch \ %D%/packages/patches/mongodb-support-unknown-linux-distributions.patch \ + %D%/packages/patches/mono-mdoc-timestamping.patch \ %D%/packages/patches/mozjs17-aarch64-support.patch \ %D%/packages/patches/mozjs24-aarch64-support.patch \ %D%/packages/patches/mozjs38-pkg-config-version.patch \ @@ -983,7 +994,6 @@ dist_patch_DATA = \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \ %D%/packages/patches/mutt-store-references.patch \ - %D%/packages/patches/myrepos-CVE-2018-7032.patch \ %D%/packages/patches/m4-gnulib-libio.patch \ %D%/packages/patches/net-tools-bitrot.patch \ %D%/packages/patches/netcdf-date-time.patch \ @@ -1014,6 +1024,7 @@ dist_patch_DATA = \ %D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch \ %D%/packages/patches/opencascade-oce-glibc-2.26.patch \ %D%/packages/patches/openfoam-4.1-cleanup.patch \ + %D%/packages/patches/openjdk-10-idlj-reproducibility.patch \ %D%/packages/patches/openldap-CVE-2017-9287.patch \ %D%/packages/patches/openocd-nrf52.patch \ %D%/packages/patches/opensmtpd-fix-crash.patch \ @@ -1030,7 +1041,7 @@ dist_patch_DATA = \ %D%/packages/patches/parted-glibc-compat.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/patchutils-test-perms.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-deterministic-ordering.patch \ @@ -1050,12 +1061,16 @@ dist_patch_DATA = \ %D%/packages/patches/pinball-missing-separators.patch \ %D%/packages/patches/pinball-src-deps.patch \ %D%/packages/patches/pinball-system-ltdl.patch \ + %D%/packages/patches/pinentry-efl.patch \ %D%/packages/patches/pingus-sdl-libs-config.patch \ %D%/packages/patches/pius.patch \ %D%/packages/patches/pixman-CVE-2016-5296.patch \ %D%/packages/patches/plink-1.07-unclobber-i.patch \ %D%/packages/patches/plink-endian-detection.patch \ %D%/packages/patches/plotutils-libpng-jmpbuf.patch \ + %D%/packages/patches/podofo-cmake-3.12.patch \ + %D%/packages/patches/polkit-CVE-2018-19788.patch \ + %D%/packages/patches/poppler-CVE-2018-19149.patch \ %D%/packages/patches/portaudio-audacity-compat.patch \ %D%/packages/patches/portmidi-modular-build.patch \ %D%/packages/patches/potrace-tests.patch \ @@ -1086,16 +1101,14 @@ dist_patch_DATA = \ %D%/packages/patches/python-CVE-2018-14647.patch \ %D%/packages/patches/python-axolotl-AES-fix.patch \ %D%/packages/patches/python-cairocffi-dlopen-path.patch \ + %D%/packages/patches/python-cffi-x87-stack-clean.patch \ %D%/packages/patches/python-fix-tests.patch \ %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \ - %D%/packages/patches/python-networkx2-reproducible-build.patch \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ - %D%/packages/patches/python-scikit-learn-fix-test-non-determinism.patch \ %D%/packages/patches/python-configobj-setuptools.patch \ %D%/packages/patches/python-faker-fix-build-32bit.patch \ %D%/packages/patches/python-mox3-python3.6-compat.patch \ %D%/packages/patches/python-testtools.patch \ - %D%/packages/patches/python-paste-remove-website-test.patch \ %D%/packages/patches/python-paste-remove-timing-test.patch \ %D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \ %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \ @@ -1105,16 +1118,19 @@ dist_patch_DATA = \ %D%/packages/patches/python-unittest2-remove-argparse.patch \ %D%/packages/patches/python-waitress-fix-tests.patch \ %D%/packages/patches/qemu-glibc-2.27.patch \ + %D%/packages/patches/qemu-CVE-2018-16847.patch \ + %D%/packages/patches/qemu-CVE-2018-16867.patch \ %D%/packages/patches/qt4-ldflags.patch \ - %D%/packages/patches/qtbase-glibc-compat.patch \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ + %D%/packages/patches/qt-5-renameat2.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/quilt-test-fix-regex.patch \ - %D%/packages/patches/quilt-compat-getopt-fix-second-separator.patch \ - %D%/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch \ + %D%/packages/patches/quilt-getopt-nondigit-param.patch \ + %D%/packages/patches/quilt-getopt-second-separator.patch \ %D%/packages/patches/qtwebkit-pbutils-include.patch \ + %D%/packages/patches/randomjungle-disable-static-build.patch \ %D%/packages/patches/rapicorn-isnan.patch \ %D%/packages/patches/raptor2-heap-overflow.patch \ %D%/packages/patches/ratpoison-shell.patch \ @@ -1138,12 +1154,14 @@ dist_patch_DATA = \ %D%/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch \ %D%/packages/patches/rust-bootstrap-stage0-test.patch \ %D%/packages/patches/rust-coresimd-doctest.patch \ + %D%/packages/patches/rust-reproducible-builds.patch \ %D%/packages/patches/rxvt-unicode-escape-sequences.patch \ %D%/packages/patches/scheme48-tests.patch \ %D%/packages/patches/scotch-test-threading.patch \ %D%/packages/patches/scotch-build-parallelism.patch \ %D%/packages/patches/scotch-graph-diam-64.patch \ %D%/packages/patches/scotch-graph-induce-type-64.patch \ + %D%/packages/patches/scribus-poppler.patch \ %D%/packages/patches/sdl-libx11-1.6.patch \ %D%/packages/patches/seq24-rename-mutex.patch \ %D%/packages/patches/sharutils-CVE-2018-1000097.patch \ @@ -1177,6 +1195,7 @@ dist_patch_DATA = \ %D%/packages/patches/teeworlds-use-latest-wavpack.patch \ %D%/packages/patches/texinfo-perl-compat.patch \ %D%/packages/patches/texinfo-5-perl-compat.patch \ + %D%/packages/patches/telegram-purple-adjust-test.patch \ %D%/packages/patches/texi2html-document-encoding.patch \ %D%/packages/patches/texi2html-i18n.patch \ %D%/packages/patches/thefuck-test-environ.patch \ @@ -1187,10 +1206,16 @@ dist_patch_DATA = \ %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/tomsfastmath-constness.patch \ %D%/packages/patches/totem-meson-easy-codec.patch \ %D%/packages/patches/tuxpaint-stamps-path.patch \ %D%/packages/patches/twinkle-include-qregexpvalidator.patch \ + %D%/packages/patches/u-boot-pinebook-a64-update-dts.patch \ + %D%/packages/patches/u-boot-pinebook-mmc-calibration.patch \ + %D%/packages/patches/u-boot-pinebook-r_i2c-controller.patch \ + %D%/packages/patches/u-boot-pinebook-dts.patch \ + %D%/packages/patches/u-boot-pinebook-syscon-node.patch \ + %D%/packages/patches/u-boot-pinebook-video-bridge.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 \ @@ -1240,9 +1265,8 @@ dist_patch_DATA = \ %D%/packages/patches/wpa-supplicant-fix-zeroed-keys.patch \ %D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \ %D%/packages/patches/wpa-supplicant-krack-followups.patch \ - %D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \ + %D%/packages/patches/x265-arm-flags.patch \ %D%/packages/patches/x265-detect512-all-arches.patch \ - %D%/packages/patches/xapian-revert-5489fb2f8.patch \ %D%/packages/patches/xboing-CVE-2004-0149.patch \ %D%/packages/patches/xf86-video-ark-remove-mibstore.patch \ %D%/packages/patches/xf86-video-geode-glibc-2.20.patch \ @@ -1258,7 +1282,6 @@ dist_patch_DATA = \ %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/zathura-pdf-mupdf-link-to-jpeg-libraries.patch \ %D%/packages/patches/zathura-plugindir-environment-variable.patch MISC_DISTRO_FILES = \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index fa60cadd01..01a58763d8 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl> ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Peter Feigl <peter.feigl@nexoid.at> ;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net> ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> @@ -45,6 +45,7 @@ #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system cmake) + #:use-module (guix build-system emacs) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system perl) @@ -125,7 +126,9 @@ `(("libgcrypt" ,libgcrypt) ("libgpg-error" ,libgpg-error) ("libmhash" ,libmhash) + ("pcre:static" ,pcre "static") ("pcre" ,pcre) + ("zlib:static" ,zlib "static") ("zlib" ,zlib))) (synopsis "File and directory integrity checker") (description @@ -225,13 +228,15 @@ interface and is based on GNU Guile.") (modify-phases %standard-phases (add-after 'unpack 'chdir (lambda _ - (chdir ,(string-append name "-" version)))) + (chdir ,(string-append name "-" version)) + #t)) (delete 'configure) (add-before 'build 'patch (lambda _ (substitute* "src/error.h" (("extern int errno;") - "#include <errno.h>")))) + "#include <errno.h>")) + #t)) (replace 'build (lambda _ (invoke "package/compile"))) @@ -241,7 +246,8 @@ interface and is based on GNU Guile.") (bin (string-append out "/bin"))) (for-each (lambda (file) (install-file file bin)) - (find-files "command")))))))) + (find-files "command"))) + #t))))) (synopsis "Tools for managing UNIX style services") (description "@code{daemontools} is a collection of tools for managing UNIX @@ -963,7 +969,7 @@ at once based on a Perl regular expression.") #t)) (add-after 'install 'install-info (lambda _ - (zero? (system* "make" "install-info"))))))) + (invoke "make" "install-info")))))) (native-inputs `(("texinfo" ,texinfo) ("util-linux" ,util-linux))) ; for 'cal' (home-page "https://www.gnu.org/software/rottlog/") @@ -979,7 +985,7 @@ system administrator.") (define-public sudo (package (name "sudo") - (version "1.8.25p1") + (version "1.8.26") (source (origin (method url-fetch) (uri @@ -989,7 +995,7 @@ system administrator.") version ".tar.gz"))) (sha256 (base32 - "0nqri46d4dpycj96zin2f2wszmhm7q9mr68hhj9sp81pgmx9rjcx")) + "1qpyyfga8rs02p3186sns8qvh2bzwa48ka845nrcqh83dyd23nj0")) (modules '((guix build utils))) (snippet '(begin @@ -1094,7 +1100,8 @@ commands and their arguments.") CFLAGS += $(shell pkg-config libnl-3.0 --cflags) CONFIG_LIBNL32=y CONFIG_READLINE=y\n" port) - (close-port port)))) + (close-port port)) + #t)) (add-after 'install 'install-man-pages (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1233,11 +1240,10 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.") ;; It's an old configure script that doesn't understand ;; the extra options we pass. (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - (string-append "--mandir=" out - "/share/man"))))))) + (invoke "./configure" + (string-append "--prefix=" out) + (string-append "--mandir=" out + "/share/man")))))) #:tests? #f)) (home-page "https://www.kernel.org") ; really, no home page (synopsis "Send a wake-on-LAN packet") @@ -1339,25 +1345,30 @@ system is under heavy load.") (define-public detox (package (name "detox") - (version "1.2.0") + (version "1.3.0") (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/detox/detox/" version - "/detox-" version ".tar.bz2")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dharple/detox.git") + (commit (string-append "v" version)))) (sha256 (base32 - "1y6vvjqsg54kl49cry73jbfhr04s7wjs779vrr9zrq6kww7dkymb")))) + "1dd608c7g65s5lj02cddvani3q9kzirddgkjqa22ap9d4f8b9xgr")))) (build-system gnu-build-system) - ;; Both flex and popt are used in this case for their runtime libraries - ;; (libfl and libpopt). - (inputs - `(("flex" ,flex) - ("popt" ,popt))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("flex" ,flex))) (arguments - `(#:configure-flags `(,(string-append "--with-popt=" - (assoc-ref %build-inputs "popt"))) - #:tests? #f)) ;no 'check' target - (home-page "http://detox.sourceforge.net") + `(#:tests? #f ;no 'check' target + #:phases (modify-phases %standard-phases + (add-after 'unpack 'delete-configure + ;; The "configure" script is present, but otherwise the + ;; project is not bootstrapped: missing install-sh and + ;; Makefile.in, so delete it so the bootstrap phase will + ;; take over. + (lambda _ (delete-file "configure") #t))))) + (home-page "https://github.com/dharple/detox") (synopsis "Clean up file names") (description "Detox is a program that renames files to make them easier to work with @@ -1589,14 +1600,14 @@ of supported upstream metrics systems simultaneously.") (define-public ansible (package (name "ansible") - (version "2.5.7") + (version "2.7.4") (source (origin (method url-fetch) (uri (pypi-uri "ansible" version)) (sha256 (base32 - "0wbsjjx3xjlm8g50a9j9c6p9rn23jx32yn1234bf5rmj1qgy3p85")) + "0p1n6yyc632522fl2r247p0jg4mncc7z4hqngzbh1zxq3dcb12s9")) (patches (search-patches "ansible-wrap-program-hack.patch")))) (build-system python-build-system) (native-inputs @@ -1622,6 +1633,34 @@ ad hoc task execution, and multinode orchestration---including trivializing things like zero-downtime rolling updates with load balancers.") (license license:gpl3+))) +(define-public emacs-ansible-doc + (let ((commit "86083a7bb2ed0468ca64e52076b06441a2f8e9e0")) + (package + (name "emacs-ansible-doc") + (version (git-version "0.4" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/lunaryorn/ansible-doc.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0lap404ch74w99n3xip176jr42b38xhyzkfnkyqg0g3wk2cd3aq8")))) + (build-system emacs-build-system) + ;; Unmaintained by upstream. + (home-page "https://github.com/lunaryorn/ansible-doc.el") + (synopsis "Ansible documentation for Emacs") + (description + "This package provides an Ansible documentation for GNU Emacs. + +@code{ansible-doc} allows you to view the documentation of an Ansible +module and @code{ansible-doc-mode} minor mode adds documentation +lookup to YAML Mode. You could enable the mode with @code{(add-hook +'yaml-mode-hook #'ansible-doc-mode)}.") + (license license:gpl3+)))) + (define-public cpulimit (package (name "cpulimit") @@ -1639,20 +1678,18 @@ things like zero-downtime rolling updates with load balancers.") (arguments `(#:phases (modify-phases %standard-phases (delete 'configure) - (replace - 'build - (lambda _ - (zero? (system* "make" "CC=gcc" "-Csrc")))) - (replace - 'check - (lambda _ - (zero? (system* "make" "CC=gcc" "-Ctests")))) - (replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (install-file "src/cpulimit" bin))))))) + (replace 'build + (lambda _ + (invoke "make" "CC=gcc" "-Csrc"))) + (replace 'check + (lambda _ + (invoke "make" "CC=gcc" "-Ctests"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "src/cpulimit" bin)) + #t))))) (home-page "https://github.com/opsengine/cpulimit") (synopsis "Limit CPU usage") (description @@ -1861,10 +1898,9 @@ done with the @code{auditctl} utility.") (replace 'install (lambda* (#:key outputs #:allow-other-keys) (define (make out . args) - (unless (zero? (apply system* "make" - (string-append "prefix=" out) - args)) - (error "make failed"))) + (apply invoke "make" + (string-append "prefix=" out) + args)) (define (python-path dir) (string-append dir "/lib/python2.7/site-packages")) (let ((out (assoc-ref outputs "out")) @@ -1878,13 +1914,14 @@ done with the @code{auditctl} utility.") (make ndiff "install-ndiff") (wrap-program (string-append ndiff "/bin/ndiff") `("PYTHONPATH" prefix - (,(python-path ndiff))))))) + (,(python-path ndiff))))) + #t)) ;; These are the tests that do not require network access. (replace 'check - (lambda _ (zero? (system* "make" - "check-nse" - "check-ndiff" - "check-dns"))))) + (lambda _ (invoke "make" + "check-nse" + "check-ndiff" + "check-dns")))) ;; Nmap can't cope with out-of-source building. #:out-of-source? #f)) (home-page "https://nmap.org/") @@ -2190,15 +2227,15 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") #t)) (replace 'build (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* "make" "tools" "misc" make-flags)))) + (apply invoke "make" "tools" "misc" make-flags))) (add-after 'build 'build-armhf (lambda* (#:key make-flags #:allow-other-keys) (setenv "LIBRARY_PATH" #f) - (zero? (apply system* "make" "target-tools" make-flags)))) + (apply invoke "make" "target-tools" make-flags))) (replace 'install (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* "make" "install-all" "install-misc" - make-flags))))))) + (apply invoke "make" "install-all" "install-misc" + make-flags)))))) (home-page "https://github.com/linux-sunxi/sunxi-tools") (synopsis "Hardware management tools for Allwinner computers") (description "This package contains tools for Allwinner devices: @@ -2452,26 +2489,20 @@ make it a perfect utility on modern distros.") (version "1.7.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/01org/thermal_daemon/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 (base32 - "15a6vb67y5wsmf0irrq7sxam18yqpz64130k83ryf24mp40h661b")))) + (method git-fetch) + (uri (git-reference + (url "https://github.com/01org/thermal_daemon") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1cs2pq8xvfnsvrhg2bxawk4kn3z1qmfrnpnhs178pvfbglzh15hc")))) (build-system gnu-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'bootstrap - (lambda _ - (invoke "sh" "autogen.sh") - #t))) - #:configure-flags + `(#: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")))) @@ -2843,3 +2874,82 @@ support forum. It runs with the @code{/exec} command in most IRC clients.") (description "This package provides tools to manage clients of the Logitech Unifying Receiver.") (license license:gpl2))) + +(define-public lynis + (package + (name "lynis") + (version "2.7.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/CISOfy/lynis") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rzc0y8lk22bymf56249jzmllki2lh0rz5in4lkrc5fkmp29c2wv")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove proprietary plugins. As of now, all plugins supplied with + ;; lynis are proprietary. In the future, if free plugins are + ;; provided, whitelist them from deletion. + (for-each delete-file (find-files "plugins")) + #t)))) + (build-system gnu-build-system) + (native-inputs + `(;; For tests + ("lynis-sdk" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/CISOfy/lynis-sdk") + (commit "3310aef4f2b3dd97d166c96ad0253c89c4ad390d"))) + (file-name (git-file-name "lynis-sdk" version)) + (sha256 + (base32 + "0sqsrm5wal742yrwps8bqb8a8lxd93n4b93n3kkm1b30nbs25g7y")))))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "lynis" + (("/usr/share/lynis") + (string-append (assoc-ref outputs "out") "/share/lynis"))) + (substitute* "include/functions" + (("/usr/local/etc/lynis") + (string-append (assoc-ref outputs "out") "/etc/lynis"))) + #t)) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "lynis" (string-append out "/bin/")) + (install-file "default.prf" (string-append out "/etc/lynis")) + (for-each + (lambda (dir) + (copy-recursively dir (string-append out "/share/lynis/" dir))) + (list "db" "include" "plugins")) + (install-file "lynis.8" (string-append out "/share/man/man8")) + #t))) + (replace 'check + (lambda* (#:key inputs #:allow-other-keys) + (copy-recursively (assoc-ref inputs "lynis-sdk") "../lynis-sdk") + (setenv "LANG" "en_US.UTF-8") + (let ((lynis-dir (getcwd))) + (with-directory-excursion "../lynis-sdk" + (substitute* "config" + (("\\.\\./lynis") lynis-dir)) + (substitute* "unit-tests/tests-language-translations.sh" + (("\\.\\./lynis") lynis-dir)) + (invoke "sh" "lynis-devkit" "run" "unit-tests")))))))) + (home-page "https://cisofy.com/lynis/") + (synopsis "Security auditing tool") + (description "Lynis is a security auditing tool. It performs an in-depth +security scan and runs on the system itself. The primary goal is to test +security defenses and provide tips for further system hardening. It will also +scan for general system information, vulnerable software packages, and +possible configuration issues.") + (license license:gpl3+))) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 45a3da1713..0f19649917 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2014, 2018 Mark H Weaver <mhw@netris.org> @@ -139,7 +139,7 @@ solve the shortest vector problem.") (define-public pari-gp (package (name "pari-gp") - (version "2.11.0") + (version "2.11.1") (source (origin (method url-fetch) (uri (string-append @@ -147,7 +147,7 @@ solve the shortest vector problem.") version ".tar.gz")) (sha256 (base32 - "18f9yj8ffn3dxignbxj1x36771zbxy4js0r18mv6831ymb6cld9q")))) + "1jfax92jpydjd02fwl30r6b8kfzqqd6sm4yx94gidyz9lqjb7a94")))) (build-system gnu-build-system) (native-inputs `(("texlive" ,texlive-tiny))) (inputs `(("gmp" ,gmp) @@ -179,7 +179,7 @@ PARI is also available as a C library to allow for faster computations.") (define-public gp2c (package (name "gp2c") - (version "0.0.11") + (version "0.0.11pl1") (source (origin (method url-fetch) (uri (string-append @@ -187,7 +187,7 @@ PARI is also available as a C library to allow for faster computations.") version ".tar.gz")) (sha256 (base32 - "1z69xj2dpd8yyi8108rz26c50xpv0k2j8qnk0bzy1c5lw3pd1adm")))) + "1c6f6vmncw032kfzrfyr8bynw6yd3faxpy2285r009fmr0zxfs5s")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) (inputs `(("pari-gp" ,pari-gp))) @@ -210,10 +210,40 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (license license:gpl2) (home-page "https://pari.math.u-bordeaux.fr/"))) +(define-public cmh + (package + (name "cmh") + (version "1.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://gforge.inria.fr/frs/download.php/33497/cmh-" + version ".tar.gz")) + (sha256 + (base32 + "1a28xr9bs0igms0ik99x0w8lnb0jyfcmvyi26pbyh9ggcdivd33p")))) + (build-system gnu-build-system) + (inputs + `(("gmp" ,gmp) + ("mpfr" ,mpfr) + ("mpc" ,mpc) + ("mpfrcx" ,mpfrcx) + ("fplll" ,fplll) + ("pari-gp" ,pari-gp))) + (synopsis "Igusa class polynomial computations") + (description + "The CMH software computes Igusa (genus 2) class polynomials, which +parameterize the CM points in the moduli space of 2-dimensional abelian +varieties, i.e. Jacobians of hyperelliptic curves. +It can also be used to compute theta constants at arbitrary +precision.") + (license license:gpl3+) + (home-page "http://cmh.gforge.inria.fr/"))) + (define-public giac-xcas (package (name "giac-xcas") - (version "1.4.9-59") + (version "1.5.0-19") (source (origin (method url-fetch) ;; "~parisse/giac" is not used because the maintainer regularly @@ -225,16 +255,48 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") "source/giac_" version ".tar.gz")) (sha256 (base32 - "0dv5p5y6gkrsmz3xa7fw87rjyabwdwk09mqb09kb7gai9n9dgayk")))) + "0ds1zh712sr20qh0fih8jnm4nlv90andllp8n263qs7rlhblz551")))) (build-system gnu-build-system) + (outputs '("out" "doc")) ;77MiB of documentation (arguments - `(#:phases + `(#:modules ((ice-9 ftw) + (guix build utils) + (guix build gnu-build-system)) + #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-bin-cp + ;; Some Makefiles contain hard-coded "/bin/cp". (lambda _ - ;; Some Makefiles contain hard-coded "/bin/cp". (substitute* (find-files "doc" "^Makefile") (("/bin/cp") (which "cp"))) + #t)) + (add-after 'unpack 'disable-failing-test + ;; FIXME: Test failing. Not sure why. + (lambda _ + (substitute* "check/Makefile.in" + (("chk_fhan11") "")) + #t)) + (add-after 'install 'install-doc + ;; Setting --docdir to "doc" output isn't sufficient as + ;; documentation and examples are scattered throughout the source. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc")) + (docdir (string-append doc + "/share/doc/" + (string-append ,name "-" ,version)))) + ;; For some reason, the install process moves + ;; "share/giac/examples" instead of "share/giac/doc" to + ;; "$(docdir)". Clean up the mess and start over. + (delete-file-recursively (string-append doc "/share")) + (mkdir-p docdir) + (with-directory-excursion out + (for-each (lambda (f) + (unless (member f '("." "..")) + (copy-recursively (string-append "share/giac/" f) + (string-append docdir "/" f)))) + (scandir "share/giac")) + (delete-file-recursively "share/giac"))) #t))))) (inputs `(("fltk" ,fltk) @@ -314,47 +376,47 @@ fast arithmetic.") (define-public arb (package - (name "arb") - (version "2.14.0") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/fredrik-johansson/arb/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0ncr27nd20xxi18nj30cvpa6r52v59nq7gbi34x3l4xym3p8mlmx")))) - (build-system gnu-build-system) - (propagated-inputs - `(("flint" ,flint))) ; flint.h is included by arf.h - (inputs - `(("gmp" ,gmp) - ("mpfr" ,mpfr))) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (flint (assoc-ref inputs "flint")) - (gmp (assoc-ref inputs "gmp")) - (mpfr (assoc-ref inputs "mpfr"))) - ;; do not pass "--enable-fast-install", which makes the - ;; homebrew configure process fail - (invoke "./configure" - (string-append "--prefix=" out) - (string-append "--with-flint=" flint) - (string-append "--with-gmp=" gmp) - (string-append "--with-mpfr=" mpfr)))))))) - (synopsis "Arbitrary precision floating-point ball arithmetic") - (description - "Arb is a C library for arbitrary-precision floating-point ball + (name "arb") + (version "2.14.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fredrik-johansson/arb.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ndxg7h4xvccjgp5l9z2f8b66dsff6fhf86bn5n7f75a1ksd7554")))) + (build-system gnu-build-system) + (propagated-inputs + `(("flint" ,flint))) ; flint.h is included by arf.h + (inputs + `(("gmp" ,gmp) + ("mpfr" ,mpfr))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (flint (assoc-ref inputs "flint")) + (gmp (assoc-ref inputs "gmp")) + (mpfr (assoc-ref inputs "mpfr"))) + ;; do not pass "--enable-fast-install", which makes the + ;; homebrew configure process fail + (invoke "./configure" + (string-append "--prefix=" out) + (string-append "--with-flint=" flint) + (string-append "--with-gmp=" gmp) + (string-append "--with-mpfr=" mpfr)))))))) + (synopsis "Arbitrary precision floating-point ball arithmetic") + (description + "Arb is a C library for arbitrary-precision floating-point ball arithmetic. It supports efficient high-precision computation with polynomials, power series, matrices and special functions over the real and complex numbers, with automatic, rigorous error control.") - (license license:lgpl2.1+) - (home-page "http://fredrikj.net/arb/"))) + (license license:lgpl2.1+) + (home-page "http://fredrikj.net/arb/"))) (define-public ntl (package @@ -506,13 +568,14 @@ syntax is similar to that of C, so basic usage is familiar. It also includes (name "kiss-fft-for-extempore") (version "1.3.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/extemporelang/kiss_fft/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/extemporelang/kiss_fft.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0hkp9l6l4c92fb1l2sh6a6zv1hynpvb2s4d03vd8vxyvybc0l4pv")))) + "0jasbmqy4wkqrqx3w64s1dfmj34875xmsl72mb26aa4hpyn14bi2")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests included ;; Extempore refuses to build on architectures other than x86_64 diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm index 9f8d850ff5..48380740a3 100644 --- a/gnu/packages/android.scm +++ b/gnu/packages/android.scm @@ -108,7 +108,7 @@ use their packages mostly unmodified in our Android NDK build system.") ;; 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-version) "7.1.2_r36") (define (android-platform-system-core version) (origin @@ -120,7 +120,7 @@ use their packages mostly unmodified in our Android NDK build system.") version "-checkout")) (sha256 (base32 - "0xc2n7jxrf1iw9cc278pijdfjix2fkiig5ws27f6rwp40zg5mrgg")) + "1krnc2b9zfkzpdgs1dcbji59nszlx2qr723pg89m52622czc06hg")) (patches (search-patches "libbase-use-own-logging.patch" "libbase-fix-includes.patch" @@ -151,7 +151,7 @@ use their packages mostly unmodified in our Android NDK build system.") version "-checkout")) (sha256 (base32 - "0n9wkz3ynqw39if1ss9n32m66iga14nndf29hpm7g1aqn4wvvgzk")))) + "15r4s20d7vw022f8vrc3jbghmqwdcqzprl7i2bfvdkz8z76wc1ps")))) (define (android-platform-external version subdirectory checksum) (origin @@ -339,6 +339,13 @@ various Android core host applications.") (modify-phases %standard-phases (add-after 'unpack 'enter-source (lambda _ (chdir "adb") #t)) + (add-after 'enter-source 'glibc-compat + (lambda _ + ;; Include sysmacros.h for "major" and "minor" in Glibc 2.28. + (substitute* "usb_linux.cpp" + (("#include <sys/types.h>" all) + (string-append all "\n#include <sys/sysmacros.h>\n"))) + #t)) (add-after 'enter-source 'make-libs-available (lambda* (#:key inputs outputs #:allow-other-keys) (substitute* "Android.mk" diff --git a/gnu/packages/antivirus.scm b/gnu/packages/antivirus.scm new file mode 100644 index 0000000000..95749761bd --- /dev/null +++ b/gnu/packages/antivirus.scm @@ -0,0 +1,156 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016, 2017, 2018 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2018 Christopher Baines <mail@cbaines.net> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages antivirus) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system gnu) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix utils) + #:use-module (gnu packages) + #:use-module (gnu packages autotools) + #:use-module (gnu packages bison) + #:use-module (gnu packages check) + #:use-module (gnu packages compression) + #:use-module (gnu packages curl) + #:use-module (gnu packages cyrus-sasl) + #:use-module (gnu packages flex) + #:use-module (gnu packages llvm) + #:use-module (gnu packages multiprecision) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages pcre) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages tls) + #:use-module (gnu packages web) + #:use-module (gnu packages xml)) + +(define-public clamav + (package + (name "clamav") + (version "0.100.2") + (source (origin + (method url-fetch) + (uri (string-append "https://www.clamav.net/downloads/production/" + "clamav-" version ".tar.gz")) + (sha256 + (base32 + "1mkd41sxbjkfjinpx5b9kb85q529gj2s3d0klysssqhysh64ybja")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file-recursively + '("win32" ;unnecessary + "libclamav/c++/llvm" ;use system llvm + "libclamunrar")))) ;non-free license + (patches + (search-patches "clamav-system-tomsfastmath.patch" + "clamav-config-llvm-libs.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("bison" ,bison) + ("check" ,check) ;for tests + ("flex" ,flex) + ("pkg-config" ,pkg-config) + ;; The tomsfastmath patch touches configure.ac and Makefile.am + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (inputs + `(("bzip2" ,bzip2) + ("libcurl" ,curl) + ("libjson" ,json-c) + ("libltdl" ,libltdl) + ("libmspack" ,libmspack) + ("llvm" ,llvm-3.6) ;requires <3.7, for JIT/verifier + ("ncurses" ,ncurses) + ("openssl" ,libressl) + ("pcre" ,pcre "bin") ;for pcre-config + ("sasl" ,cyrus-sasl) ;for linking curl with libtool + ("tomsfastmath" ,tomsfastmath) + ("xml" ,libxml2) + ("zlib" ,zlib))) + (arguments + `(#:configure-flags + (let-syntax ((with (syntax-rules () + ((_ name) + (string-append "--with-" name "=" + (assoc-ref %build-inputs name)))))) + (list "--disable-unrar" + "--enable-llvm" + "--with-system-llvm" + "--with-system-libmspack" + "--without-included-ltdl" + (with "xml") + (with "openssl") + (with "libjson") + (with "pcre") + (with "zlib") + (with "libcurl") + ;; For sanity, specifying --enable-* flags turns + ;; "support unavailable" warnings into errors. + "--enable-bzip2" + "--enable-check" + "--sysconfdir=/etc/clamav" + ;; Default database directory needs to be writeable + "--with-dbdir=/var/db/clamav")) + ;; install sample .conf files to %output/etc rather than /etc/clamav + #:make-flags (list (string-append "sysconfdir=" %output "/etc")) + #:phases (modify-phases %standard-phases + (add-after 'unpack 'reconf + (lambda _ (zero? (system* "autoreconf" "-vfi")))) + (add-before 'configure 'patch-llvm-config + (lambda _ + (substitute* '("libclamav/c++/detect.cpp" + "libclamav/c++/ClamBCRTChecks.cpp" + "libclamav/c++/bytecode2llvm.cpp") + (("llvm/Config/config.h") "llvm/Config/llvm-config.h")) + ;; `llvm-config --libfiles` inappropriately lists lib*.a + ;; libraries, rather than the lib*.so's that our llvm + ;; contains. They're used only for listing extra build + ;; dependencies, so ignore them until that's fixed. + (substitute* "libclamav/c++/Makefile.in" + (("@LLVMCONFIG_LIBFILES@") "")) + #t)) + (add-before 'check 'skip-clamd-tests + ;; XXX: The check?_clamd tests fail inside the build + ;; chroot, but pass outside. + (lambda _ + (substitute* "unit_tests/Makefile" + (("check2_clamd.sh.*check4_clamd.sh") "")) + #t))))) + (home-page "https://www.clamav.net") + (synopsis "Antivirus engine") + (description + "Clam AntiVirus is an anti-virus toolkit, designed especially for e-mail +scanning on mail gateways. It provides a number of utilities including a +flexible and scalable multi-threaded daemon, a command line scanner, and +advanced tool for automatic database updates. The core of the package is an +anti-virus engine available in the form of a shared library.") + (license (list license:gpl2+ ;ClamAV itself + license:lgpl2.1 ;libclamav/mspack.[ch] + license:public-domain ;libclamav/7z/*, libclamav/rijndael.[ch], etc... + (package-license bzip2) ;modified bzip2 source in libclamav/nsis + license:bsd-2 ;several files in libclamav + license:bsd-3 ;libclamav/{regex,qsort.c,swf.[ch] + license:ncsa ;libclamav/c++/PointerTracking.cpp + license:zlib ;libclamav/inf*.h + license:x11 ;libclamav/lzw + (license:non-copyleft "libclamav/strlcat.c") ;"OpenBSD" license + license:asl2.0 ;libclamav/yara* + license:expat)))) ;shared/getopt.[ch] diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index b664712f7a..2786f62163 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -15,6 +15,8 @@ ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2018 Brett Gilio <brettg@posteo.net> ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de> +;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -427,6 +429,46 @@ and editing digital audio. It features digital effects and spectrum analysis tools.") (license license:gpl2+))) +(define-public autotalent + (package + (name "autotalent") + (version "0.2") + (source (origin + (method url-fetch) + (uri (string-append "http://tombaran.info/autotalent-" + version ".tar.gz")) + (sha256 + (base32 + "1n04qm66f14195ly6gsy3ra7v2j7zad5n19d8dwfmh0qs6h9hphh")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + ;; no configure script + (delete 'configure) + (add-before 'install 'prepare-target-directory + (lambda* (#:key outputs #:allow-other-keys) + (mkdir-p (string-append (assoc-ref outputs "out") "/lib/ladspa")) + #t)) + (add-after 'unpack 'override-target-directory + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile" + (("/usr/lib64/ladspa") + (string-append (assoc-ref outputs "out") "/lib/ladspa"))) + #t))))) + (inputs + `(("ladspa" ,ladspa))) + (home-page "http://tombaran.info/autotalent.html") + (synopsis "Pitch-correction LADSPA audio plugin") + (description + "Autotalent is a LADSPA plugin for real-time pitch-correction. Among its +controls are allowable notes, strength of correction, LFO for vibrato and +formant warp.") + ;; All code except the FFT routine is licensed under GPLv2+. + ;; The FFT routine is under BSD-3. + (license license:gpl2+))) + (define-public azr3 (package (name "azr3") @@ -514,6 +556,47 @@ tools (analyzer, mono/stereo tools, crossovers).") ;; The plugins are released under LGPLv2.1+ (license (list license:lgpl2.1+ license:gpl2+)))) +(define-public caps-plugins-lv2 + (package + (name "caps-plugins-lv2") + (version "0.9.24") ; version that has been ported. + (source + (origin + ;; The Github project hasn't tagged a release. + (method git-fetch) + (uri (git-reference + ;; Actually https://github.com/moddevices/caps-lv2.git, but it's + ;; missing fixes for newer glibc, so using the origin of a pull + ;; request regarding this issue: + (url "https://github.com/jujudusud/caps-lv2.git") + (commit "9c9478b7fbd8f9714f552ebe2a6866398b0babfb"))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1idfnazin3cca41zw1a8vwgnxjnkrap7bxxjamjqvgpmvydgcam1")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + ;; no configure script + (delete 'configure) + (add-after 'unpack 'override-target-directory + (lambda* (#:key outputs #:allow-other-keys) + (substitute* (find-files "plugins" "Makefile") + (("/usr/local")(assoc-ref outputs "out"))) + #t))))) + (inputs + `(("lv2" ,lv2))) + ;; home-page of the original LADSPA version: http://quitte.de/dsp/caps.html + (home-page "https://github.com/moddevices/caps-lv2") + (synopsis "LV2 port of the CAPS audio plugin colection") + (description + "LV2 port of CAPS, a collection of audio plugins comprising basic virtual +guitar amplification and a small range of classic effects, signal processors and +generators of mostly elementary and occasionally exotic nature.") + (license license:gpl3+))) + (define-public espeak (package (name "espeak") @@ -572,13 +655,14 @@ based on human speech recordings.") (name "infamous-plugins") (version "0.2.04") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ssj71/infamousPlugins/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ssj71/infamousPlugins.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1n6rhqsmvad7692w2h01niw5gqg5yk7a09wxl5ivs77zyp93vf7z")))) + "0hmqk80w4qxq09iag7b7srf2g0wigkyhzq0ywxvhz2iz0hq9k0dh")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there are no tests @@ -610,13 +694,14 @@ envelope follower, distortion effects, tape effects and more.") (name "swh-plugins-lv2") (version "1.0.16") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/swh/" - "lv2/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/swh/lv2.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0j1mih0lp4fds07knp5i32in515sh0df1qi6694pmyz2wqnm295w")))) + "0y7nnww864mm4k6ayy2lhcws3wlbhb2gkyjbrwk921fvc18qk9mz")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -654,14 +739,14 @@ emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.") (name "csound") (version "6.11.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/csound/csound/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/csound/csound.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "072pk5h9w0vhw0ncc9dn90haw1yv18v04iwwjn8nsp6930w7dvxd")))) + "1hlkrnv3gghx4v382nl6v6k2k1dzm5ddk35m5g3q6pzc959726s7")))) (build-system cmake-build-system) (inputs `(("alsa-lib" ,alsa-lib) @@ -713,7 +798,8 @@ language and software synthesizer.") (lambda _ (symlink "libclalsadrv.so" (string-append (assoc-ref %outputs "out") - "/lib/libclalsadrv.so.2")))) + "/lib/libclalsadrv.so.2")) + #t)) ;; no configure script (delete 'configure)))) (inputs @@ -1042,7 +1128,7 @@ follower.") (define-public fluidsynth (package (name "fluidsynth") - (version "2.0.1") + (version "2.0.2") (source (origin (method git-fetch) (uri (git-reference @@ -1051,7 +1137,7 @@ follower.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1mqyym5qkh8xd1rqj3yhfxbw5dxjcrljb6nkfqzvcarlv4h6rjn7")))) + "02vs5sfsyh1dl7wlcvgs4w3x0qcmsl7vi000qgp99ynwh3wjb274")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no check target @@ -1174,19 +1260,15 @@ PS, and DAB+.") (define-public faust-2 (package (inherit faust) - (version "2.1.0") + (version "2.5.23") (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/grame-cncm/faust.git") - (commit (string-append "v" - (string-map (lambda (c) - (if (char=? c #\.) #\- c)) - version))))) - (file-name (string-append "faust-" version "-checkout")) + (method url-fetch) + (uri (string-append "https://github.com/grame-cncm/faust/" + "releases/download/" version + "/faust-" version ".tar.gz")) (sha256 (base32 - "06km0ygwxxwgw1lqldccqidxhmjfz8ck0wnbd95qk5sg8sbpc068")))) + "1yz5jnr76hh7rmxkpdi7gyrw1wp4gyqfpq8zyl97qdi5ga5gjznq")))) (build-system gnu-build-system) (arguments (substitute-keyword-arguments (package-arguments faust) @@ -1194,7 +1276,7 @@ PS, and DAB+.") `(list (string-append "prefix=" (assoc-ref %outputs "out")) "world")))) (native-inputs - `(("llvm" ,llvm-with-rtti) + `(("llvm" ,llvm-3.8) ("which" ,which) ("xxd" ,xxd) ("ctags" ,emacs-minimal) ; for ctags @@ -1486,7 +1568,8 @@ synchronous execution of all clients, and low latency operation.") ((".*CFLAGS.*-Wall.*" m) (string-append m " conf.env.append_unique('LINKFLAGS'," - "'-Wl,-rpath=" %output "/lib')\n"))))) + "'-Wl,-rpath=" %output "/lib')\n"))) + #t)) (add-after 'install 'wrap-python-scripts (lambda* (#:key inputs outputs #:allow-other-keys) ;; Make sure 'jack_control' runs with the correct PYTHONPATH. @@ -1522,6 +1605,7 @@ synchronous execution of all clients, and low latency operation.") (build-system waf-build-system) (arguments `(#:tests? #f ; no check target + #:python ,python-2 #:phases (modify-phases %standard-phases (add-before @@ -1569,19 +1653,20 @@ plugin function as a JACK application.") (arguments `(#:tests? #f ; the "test" target is a listening test only #:phases - (alist-replace - 'configure - (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) - (chdir "src") - (let ((out (assoc-ref outputs "out"))) - (substitute* "makefile" - (("/usr/lib/ladspa/") (string-append out "/lib/ladspa/")) - (("/usr/include/") (string-append out "/include/")) - (("/usr/bin/") (string-append out "/bin/")) - (("-mkdirhier") "mkdir -p") - (("^CC.*") "CC = gcc\n") - (("^CPP.*") "CPP = g++\n")))) - (alist-delete 'build %standard-phases)))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) + (chdir "src") + (let ((out (assoc-ref outputs "out"))) + (substitute* "makefile" + (("/usr/lib/ladspa/") (string-append out "/lib/ladspa/")) + (("/usr/include/") (string-append out "/include/")) + (("/usr/bin/") (string-append out "/bin/")) + (("-mkdirhier") "mkdir -p") + (("^CC.*") "CC = gcc\n") + (("^CPP.*") "CPP = g++\n"))) + #t)) + (delete 'build)))) ;; Since the home page is gone, we provide a link to the archived version. (home-page "https://web.archive.org/web/20140729190945/http://www.ladspa.org/") @@ -1881,14 +1966,14 @@ software.") (name "lvtk") (version "1.2.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/lvtk/lvtk/archive/" - version - ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lvtk/lvtk.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "03nbj2cqcklqwh50zj2gwm07crh5iwqbpxbpzwbg5hvgl4k4rnjd")))) + "1b01zvzl70ana6l1kn8fgyr7msnn3c7x61cgw7fdpp50322352p8")))) (build-system waf-build-system) (arguments `(#:tests? #f ; no check target @@ -2012,7 +2097,9 @@ buffers, and audio capture.") (base32 "1agdpwwi42176l4mxj0c4fsvdiv1ig56bfnnx0msckxmy57df8bb")))) (build-system waf-build-system) - (arguments `(#:tests? #f)) ; no check target + (arguments + `(#:tests? #f ; no check target + #:python ,python-2)) (inputs `(("alsa-lib" ,alsa-lib) ("boost" ,boost) @@ -2033,14 +2120,14 @@ and ALSA.") (define-public qjackctl (package (name "qjackctl") - (version "0.5.4") + (version "0.5.5") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/qjackctl/qjackctl/" version "/qjackctl-" version ".tar.gz")) (sha256 (base32 - "0qr71nb93gkz5q53nfcl5g168z173wc6s8w1yjs3rfn3m4hg0bcq")))) + "1rzzqa39a6llr52vjkjr0a86nc776kmr5xs52qqga8ms9697psz5")))) (build-system gnu-build-system) (arguments '(#:tests? #f)) ; no check target @@ -2096,7 +2183,7 @@ background file post-processing.") (define-public supercollider (package (name "supercollider") - (version "3.9.2") + (version "3.10.0") (source (origin (method url-fetch) (uri (string-append @@ -2105,7 +2192,7 @@ background file post-processing.") "/SuperCollider-" version "-Source-linux.tar.bz2")) (sha256 (base32 - "0d3cb6dw8jz7ijriqn3rlwin24gffczp69hl17pzxj1d5w57yj44")))) + "16j9psa32czx1p1y2vvq0qf2ib0ngrfc604vx35n2b4llyika84v")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on" @@ -2117,6 +2204,12 @@ background file post-processing.") (ice-9 ftw)) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-build-with-boost-1.68 + (lambda _ + (substitute* "server/supernova/utilities/time_tag.hpp" + (("(time_duration offset = .+ microseconds\\().*" _ m) + (string-append m "static_cast<long>(get_nanoseconds()/1000));\n"))) + #t)) (add-after 'unpack 'rm-bundled-libs (lambda _ ;; The build system doesn't allow us to unbundle the following @@ -2137,13 +2230,13 @@ background file post-processing.") ;; https://github.com/supercollider/supercollider/issues/1736 (add-after 'rm-bundled-libs 'disable-broken-tests (lambda _ - (substitute* "testsuite/supernova/CMakeLists.txt" + (substitute* "testsuite/server/supernova/CMakeLists.txt" (("server_test.cpp") "") (("perf_counter_test.cpp") "")) - (delete-file "testsuite/supernova/server_test.cpp") - (delete-file "testsuite/supernova/perf_counter_test.cpp") + (delete-file "testsuite/server/supernova/server_test.cpp") + (delete-file "testsuite/server/supernova/perf_counter_test.cpp") (substitute* "testsuite/CMakeLists.txt" (("add_subdirectory\\(sclang\\)") "")) @@ -2181,7 +2274,7 @@ external_libraries/yaml-cpp/include)")) ("eudev" ,eudev) ;for user interactions with devices ("avahi" ,avahi) ;zeroconf service discovery support ("icu4c" ,icu4c) - ("boost" ,boost) + ("boost" ,boost-cxx14) ("boost-sync" ,boost-sync) ("yaml-cpp" ,yaml-cpp))) (home-page "https://github.com/supercollider/supercollider") @@ -2274,36 +2367,32 @@ tempo and pitch of an audio recording independently of one another.") (name "rtmidi") (version "2.1.0") (source (origin - (method url-fetch) - (uri - (string-append "https://github.com/powertab/rtmidi/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/powertab/rtmidi.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0d49lapnmdgmjxh4vw57h6xk74nn5r0zwysv7jbd7m8kqhpq5rjj")))) + "106v177y3nrjv2l1yskch4phpqd8h97b67zj0jiq9pc3c69jr1ay")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;no "check" target - #:phases (modify-phases %standard-phases - (add-after - 'unpack 'autoconf - (lambda _ (invoke "autoreconf" "-vfi"))) - (add-before - 'build 'fix-makefile - (lambda _ - (substitute* "Makefile" - (("/bin/ln") "ln") - (("RtMidi.h RtError.h") "RtMidi.h")) - #t)) - (add-before - 'install 'make-target-dirs - (lambda _ - (let ((out (assoc-ref %outputs "out"))) - (mkdir-p (string-append out "/bin")) - (mkdir (string-append out "/lib")) - (mkdir (string-append out "/include"))) - #t))))) + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-makefile + (lambda _ + (substitute* "Makefile" + (("/bin/ln") "ln") + (("RtMidi.h RtError.h") "RtMidi.h")) + #t)) + (add-before 'install 'make-target-dirs + (lambda _ + (let ((out (assoc-ref %outputs "out"))) + (mkdir-p (string-append out "/bin")) + (mkdir (string-append out "/lib")) + (mkdir (string-append out "/include"))) + #t))))) (inputs `(("jack" ,jack-1) ("alsa-lib" ,alsa-lib))) @@ -2360,6 +2449,7 @@ the Turtle syntax.") (build-system waf-build-system) (arguments `(#:tests? #f ; no check target + #:python ,python-2 ;XXX: The bundled waf does not work with Python 3.7.0. #:configure-flags '("CXXFLAGS=-std=gnu++11"))) (inputs @@ -2508,7 +2598,8 @@ analysis plugins or audio feature extraction plugins.") (symlink (string-append (assoc-ref inputs "automake") "/share/automake-" ,(package-version automake) "/ar-lib") - "ar-lib")))))) + "ar-lib") + #t))))) (home-page "http://sbsms.sourceforge.net/") (synopsis "Library for time stretching and pitch scaling of audio") (description @@ -2753,20 +2844,14 @@ portions of LAME.") ;; TODO: Add ASIHPI. `(("alsa-lib" ,alsa-lib) ("jack" ,jack-1))) + ;; Autoreconf is necessary because the audacity-compat patch modifies .in + ;; files. (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) ("pkg-config" ,pkg-config))) - (arguments - '(#:phases - ;; Autoreconf is necessary because the audacity-compat patch modifies - ;; .in files. - (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ - (invoke "autoreconf" "-vif")))) - #:tests? #f)) ;no 'check' target + (arguments '(#:tests? #f)) ;no 'check' target (home-page "http://www.portaudio.com/") (synopsis "Audio I/O library") (description @@ -2778,7 +2863,7 @@ interface.") (define-public qsynth (package (name "qsynth") - (version "0.5.3") + (version "0.5.4") (source (origin (method url-fetch) @@ -2786,7 +2871,7 @@ interface.") "/qsynth-" version ".tar.gz")) (sha256 (base32 - "1jghczmmva7cyavg1q0j8nr3hmjpzzglzi5ckg92ax4ji8gpks9c")))) + "0kpq5fxr96wnii18ax780w1ivq8ksk892ac0bprn92iz0asfysrd")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no "check" phase @@ -2812,12 +2897,13 @@ synthesizer written in C++.") (version "1.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/Themaister/RSound/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Themaister/RSound.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "1wzs40c0k5zpkmm5ffl6c17xmr399sxli7ys0fbb9ib0fd334knx")))) + (base32 "0gspmr3klwnq98h17p5hc6ifygya4p80g4g8r7a1qavm3mv19waf")))) (build-system gnu-build-system) (inputs `(("alsa-lib" ,alsa-lib) @@ -2850,14 +2936,14 @@ with a much different focus than most other audio daemons.") (name "xjackfreak") (version "1.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/johnhldavis/xjackfreak/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/johnhldavis/xjackfreak.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0xj6gpxfnw9jbdgwgm0x23xgfvj2kwmwb1nk0drw8lxgcchkq7d9")))) + "18c546qidbrj0f5wfiq5llii2192xpln0ab3r4vpr7i3wybxqjfz")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -2909,12 +2995,14 @@ result.") (substitute* "libs/Makefile" (("ldconfig") "true") (("^LIBDIR =.*") "LIBDIR = lib\n")) - (chdir "libs") #t)) + (chdir "libs") + #t)) (add-after 'install 'install-symlink (lambda _ (symlink "libzita-convolver.so" (string-append (assoc-ref %outputs "out") - "/lib/libzita-convolver.so.3")))) + "/lib/libzita-convolver.so.3")) + #t)) ;; no configure script (delete 'configure)))) (inputs `(("fftwf" ,fftwf))) @@ -2964,7 +3052,8 @@ engine.") (lambda _ (symlink "libzita-resampler.so" (string-append (assoc-ref %outputs "out") - "/lib/libzita-resampler.so.1")))) + "/lib/libzita-resampler.so.1")) + #t)) ;; no configure script (delete 'configure)))) (home-page "https://kokkinizita.linuxaudio.org/linuxaudio/zita-resampler/resampler.html") @@ -3005,7 +3094,8 @@ provide high-quality sample rate conversion.") (lambda _ (symlink "libzita-alsa-pcmi.so" (string-append (assoc-ref %outputs "out") - "/lib/libzita-alsa-pcmi.so.0")))) + "/lib/libzita-alsa-pcmi.so.0")) + #t)) ;; no configure script (delete 'configure)))) (inputs @@ -3025,15 +3115,16 @@ point audio data.") (name "cuetools") (version "1.4.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/svend/cuetools/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/svend/cuetools.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "01xi3rvdmil9nawsha04iagjylqr1l9v9vlzk99scs8c207l58i4")))) + "02ksv1ahf1v4cr2xbclsfv5x17m9ivzbssb5r8xjm97yh8a7spa3")))) (build-system gnu-build-system) - ;; The source tarball is not bootstrapped. + ;; The source checkout is not bootstrapped. (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -3074,13 +3165,14 @@ use them split WAVE data into multiple files.") (name "dcadec") (version "0.2.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/foo86/dcadec/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/foo86/dcadec.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0i0dpypgqkhhi4v1fmsp2way6w9kbcix3c7q79pmg39yvrzj17gd")))) + "07nd0ajizrp1w02bsyfcv18431r8m8rq8gjfmz9wmckpg7cxj2hs")))) (build-system gnu-build-system) (arguments ;; Test files are missing: https://github.com/foo86/dcadec/issues/53 @@ -3107,7 +3199,7 @@ with support for HD extensions.") (define-public bs1770gain (package (name "bs1770gain") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) @@ -3115,7 +3207,7 @@ with support for HD extensions.") version "/bs1770gain-" version ".tar.gz")) (sha256 (base32 - "0vd7320k7s2zcn2vganclxbr1vav18ghld27rcwskvcc3dm8prii")))) + "0r4fbajgfmnwgl63hcm56f1j8m5f135q6j5jkzdvrrhpcj39yx06")))) (build-system gnu-build-system) (inputs `(("ffmpeg" ,ffmpeg) ("sox" ,sox))) @@ -3188,7 +3280,8 @@ code, used in @code{libtoxcore}.") (mkdir-p (string-append out "/man/man1")) (mkdir-p (string-append out "/man/man3")) (mkdir-p (string-append out "/bin")) - (mkdir-p (string-append out "/lib"))))) + (mkdir-p (string-append out "/lib"))) + #t)) (add-after 'install 'post-install (lambda _ (let ((out (assoc-ref %outputs "out"))) @@ -3196,7 +3289,8 @@ code, used in @code{libtoxcore}.") (string-append out "/include")) (mkdir-p (string-append out "/include/gsm")) (copy-recursively "inc" - (string-append out "/include/gsm"))))) + (string-append out "/include/gsm"))) + #t)) (delete 'configure)))) ; no configure script (synopsis "GSM 06.10 lossy speech compression library") (description "This C library provides an encoder and a decoder for the GSM @@ -3385,13 +3479,14 @@ the following features: (version "1.6") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/dpayne/cli-visualizer/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dpayne/cli-visualizer.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "07zkm87f2fr8kc6531zrkya7q81sdanm6813y2f54mg13g41y6hi")))) + "0mirp8bk398di5xyq95iprmdyvplfghxqmrfj7jdnpy554vx7ppc")))) (build-system gnu-build-system) (native-inputs `(("which" ,which))) @@ -3439,14 +3534,14 @@ representations.") (name "cava") (version "0.6.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/karlstav/cava/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/karlstav/cava.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "13d72swnjs894llf0paandmhf1lf90dz6ygkcdw4bv84wzkq1f4q")))) + "1kvhqgijs29909w3sq9m0bslx2zxxn4b3i07kdz4hb0dqkppxpjy")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -3471,14 +3566,16 @@ representations.") (invoke "sh" "autogen.sh"))) (add-before 'build 'make-cava-ldflags (lambda* (#:key outputs #:allow-other-keys) - (mkdir-p (string-append (assoc-ref outputs "out") "/lib")))) + (mkdir-p (string-append (assoc-ref outputs "out") "/lib")) + #t)) (add-after 'install 'data (lambda* (#:key outputs #:allow-other-keys) (for-each (lambda (file) (install-file file (string-append (assoc-ref outputs "out") "/share/doc/examples"))) - (find-files "example_files"))))))) + (find-files "example_files")) + #t))))) (home-page "https://karlstav.github.io/cava/") (synopsis "Console audio visualizer for ALSA, MPD, and PulseAudio") (description "C.A.V.A. is a bar audio spectrum visualizer for the terminal @@ -3517,3 +3614,72 @@ using ALSA, MPD, PulseAudio, or a FIFO buffer as its input.") (synopsis "Pro-quality GM soundfont") (description "Fluid-3 is Frank Wen's pro-quality GM soundfont.") (license license:expat)))) + +(define-public libfdk + (let ((commit "2326faaf8f2cdf2c3a9108ccdaf1d7551aec543e") + (revision "0")) + (package + (name "libfdk") + ;; The latest upstream revision, with many bug fixes. + (version (git-version "0.1.6" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mstorsjo/fdk-aac") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0yy6ndd9d61bwl283vl1r5kva2a4acc0f4r9g0sza156f2abr9ws")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (home-page "https://github.com/mstorsjo/fdk-aac") + (synopsis "Fraunhofer FDK AAC library") + (description "FDK is a library for encoding and decoding Advanced Audio +Coding (AAC) format audio, developed by Fraunhofer IIS, and included as part of +Android. It supports several Audio Object Types including MPEG-2 and MPEG-4 AAC +LC, HE-AAC (AAC LC + SBR), HE-AACv2 (LC + SBR + PS) as well AAC-LD (low delay) +and AAC-ELD (enhanced low delay) for real-time communication. The encoding +library supports sample rates up to 96 kHz and up to eight channels (7.1 +surround).") + (license (license:fsf-free "https://github.com/mstorsjo/fdk-aac/blob/master/NOTICE" + "https://www.gnu.org/licenses/license-list.html#fdk"))))) + +(define-public libopenshot-audio + (package + (name "libopenshot-audio") + (version "0.1.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenShot/libopenshot-audio") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08a8wbi28kwrdz4h0rs1b9vsr28ldfi8g75q54rj676y1vwg3qys")))) + (build-system cmake-build-system) + (inputs + `(("alsa-lib" ,alsa-lib) + ;; The following are for JUCE GUI components: + ("libx11" ,libx11) + ("freetype" ,freetype) + ("libxrandr" ,libxrandr) + ("libxinerama" ,libxinerama) + ("libxcursor" ,libxcursor))) + (arguments + `(#:tests? #f ;there are no tests + #:configure-flags + (list (string-append "-DCMAKE_CXX_FLAGS=-I" + (assoc-ref %build-inputs "freetype") + "/include/freetype2")))) + (home-page "https://openshot.org") + (synopsis "Audio editing and playback for OpenShot") + (description "OpenShot Audio Library (libopenshot-audio) allows +high-quality editing and playback of audio, and is based on the JUCE +library.") + (license license:lgpl3+))) diff --git a/gnu/packages/aux-files/linux-libre/4.18-arm.conf b/gnu/packages/aux-files/linux-libre/4.19-arm.conf index 46be71cded..184f73276f 100644 --- a/gnu/packages/aux-files/linux-libre/4.18-arm.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-arm.conf @@ -1,28 +1,7 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 4.18.0-gnu Kernel Configuration +# Linux/arm 4.19.0-gnu Kernel Configuration # -CONFIG_ARM=y -CONFIG_ARM_HAS_SG_CHAIN=y -CONFIG_ARM_DMA_USE_IOMMU=y -CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 -CONFIG_MIGHT_HAVE_PCI=y -CONFIG_SYS_SUPPORTS_APM_EMULATION=y -CONFIG_HAVE_PROC_CPU=y -CONFIG_NO_IOPORT_MAP=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_ARCH_HAS_BANDGAP=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_FIQ=y -CONFIG_ARM_PATCH_PHYS_VIRT=y -CONFIG_GENERIC_BUG=y -CONFIG_PGTABLE_LEVELS=2 CONFIG_CC_IS_GCC=y CONFIG_GCC_VERSION=70300 CONFIG_CLANG_VERSION=0 @@ -36,6 +15,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="" # CONFIG_LOCALVERSION_AUTO is not set +CONFIG_BUILD_SALT="" CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_LZMA=y CONFIG_HAVE_KERNEL_XZ=y @@ -77,6 +57,7 @@ CONFIG_HANDLE_DOMAIN_IRQ=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y # CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_GENERIC_IRQ_MULTI_HANDLER=y CONFIG_ARCH_CLOCKSOURCE_DATA=y CONFIG_GENERIC_TIME_VSYSCALL=y CONFIG_GENERIC_CLOCKEVENTS=y @@ -93,6 +74,9 @@ CONFIG_NO_HZ_IDLE=y # CONFIG_NO_HZ_FULL is not set # CONFIG_NO_HZ is not set CONFIG_HIGH_RES_TIMERS=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set # # CPU/Task time and stats accounting @@ -128,6 +112,7 @@ CONFIG_PAGE_COUNTER=y CONFIG_MEMCG=y CONFIG_MEMCG_SWAP=y # CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_CGROUP_WRITEBACK=y @@ -152,6 +137,7 @@ CONFIG_IPC_NS=y CONFIG_USER_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y +CONFIG_CHECKPOINT_RESTORE=y CONFIG_SCHED_AUTOGROUP=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y @@ -192,13 +178,13 @@ CONFIG_SHMEM=y CONFIG_AIO=y CONFIG_ADVISE_SYSCALLS=y CONFIG_MEMBARRIER=y -CONFIG_CHECKPOINT_RESTORE=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set CONFIG_KALLSYMS_BASE_RELATIVE=y CONFIG_BPF_SYSCALL=y # CONFIG_BPF_JIT_ALWAYS_ON is not set CONFIG_USERFAULTFD=y +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y CONFIG_RSEQ=y # CONFIG_DEBUG_RSEQ is not set # CONFIG_EMBEDDED is not set @@ -221,160 +207,34 @@ CONFIG_SLAB_FREELIST_RANDOM=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y CONFIG_TRACEPOINTS=y -CONFIG_CRASH_CORE=y -CONFIG_KEXEC_CORE=y -CONFIG_OPROFILE=m -CONFIG_HAVE_OPROFILE=y -CONFIG_KPROBES=y -CONFIG_JUMP_LABEL=y -# CONFIG_STATIC_KEYS_SELFTEST is not set -CONFIG_OPTPROBES=y -CONFIG_UPROBES=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_ARCH_USE_BUILTIN_BSWAP=y -CONFIG_KRETPROBES=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_NMI=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_GENERIC_IDLE_POLL_SETUP=y -CONFIG_ARCH_HAS_FORTIFY_SOURCE=y -CONFIG_ARCH_HAS_SET_MEMORY=y -CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_RSEQ=y -CONFIG_HAVE_CLK=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP_FILTER=y -CONFIG_PLUGIN_HOSTCC="" -CONFIG_HAVE_GCC_PLUGINS=y -CONFIG_HAVE_STACKPROTECTOR=y -CONFIG_CC_HAS_STACKPROTECTOR_NONE=y -CONFIG_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR_STRONG=y -CONFIG_HAVE_CONTEXT_TRACKING=y -CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_MOD_ARCH_SPECIFIC=y -CONFIG_MODULES_USE_ELF_REL=y -CONFIG_ARCH_HAS_ELF_RANDOMIZE=y -CONFIG_HAVE_ARCH_MMAP_RND_BITS=y -CONFIG_HAVE_EXIT_THREAD=y -CONFIG_ARCH_MMAP_RND_BITS_MIN=8 -CONFIG_ARCH_MMAP_RND_BITS_MAX=16 -CONFIG_ARCH_MMAP_RND_BITS=8 -CONFIG_CLONE_BACKWARDS=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_OLD_SIGACTION=y -CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y -CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y -CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y -CONFIG_STRICT_KERNEL_RWX=y -CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y -CONFIG_STRICT_MODULE_RWX=y -CONFIG_ARCH_HAS_PHYS_TO_DMA=y -CONFIG_REFCOUNT_FULL=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -CONFIG_MODULE_FORCE_LOAD=y -CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y -CONFIG_MODVERSIONS=y -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -# CONFIG_MODULE_COMPRESS is not set -# CONFIG_TRIM_UNUSED_KSYMS is not set -CONFIG_MODULES_TREE_LOOKUP=y -CONFIG_BLOCK=y -CONFIG_LBDAF=y -CONFIG_BLK_SCSI_REQUEST=y -CONFIG_BLK_DEV_BSG=y -CONFIG_BLK_DEV_BSGLIB=y -CONFIG_BLK_DEV_INTEGRITY=y -# CONFIG_BLK_DEV_ZONED is not set -CONFIG_BLK_DEV_THROTTLING=y -# CONFIG_BLK_DEV_THROTTLING_LOW is not set -# CONFIG_BLK_CMDLINE_PARSER is not set -CONFIG_BLK_WBT=y -# CONFIG_BLK_WBT_SQ is not set -CONFIG_BLK_WBT_MQ=y -CONFIG_BLK_DEBUG_FS=y -# CONFIG_BLK_SED_OPAL is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -# CONFIG_AIX_PARTITION is not set -# CONFIG_OSF_PARTITION is not set -# CONFIG_AMIGA_PARTITION is not set -# CONFIG_ATARI_PARTITION is not set -# CONFIG_MAC_PARTITION is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_BSD_DISKLABEL is not set -# CONFIG_MINIX_SUBPARTITION is not set -# CONFIG_SOLARIS_X86_PARTITION is not set -# CONFIG_UNIXWARE_DISKLABEL is not set -# CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set -# CONFIG_ULTRIX_PARTITION is not set -# CONFIG_SUN_PARTITION is not set -CONFIG_KARMA_PARTITION=y -CONFIG_EFI_PARTITION=y -# CONFIG_SYSV68_PARTITION is not set -# CONFIG_CMDLINE_PARTITION is not set -CONFIG_BLK_MQ_PCI=y -CONFIG_BLK_MQ_VIRTIO=y -CONFIG_BLK_MQ_RDMA=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -CONFIG_CFQ_GROUP_IOSCHED=y -# CONFIG_DEFAULT_DEADLINE is not set -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -CONFIG_MQ_IOSCHED_DEADLINE=y -CONFIG_MQ_IOSCHED_KYBER=m -CONFIG_IOSCHED_BFQ=m -CONFIG_BFQ_GROUP_IOSCHED=y -CONFIG_PADATA=y -CONFIG_ASN1=y -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y -CONFIG_MUTEX_SPIN_ON_OWNER=y -CONFIG_RWSEM_SPIN_ON_OWNER=y -CONFIG_LOCK_SPIN_ON_OWNER=y -CONFIG_FREEZER=y +CONFIG_ARM=y +CONFIG_ARM_HAS_SG_CHAIN=y +CONFIG_ARM_DMA_USE_IOMMU=y +CONFIG_ARM_DMA_IOMMU_ALIGNMENT=8 +CONFIG_MIGHT_HAVE_PCI=y +CONFIG_SYS_SUPPORTS_APM_EMULATION=y +CONFIG_HAVE_PROC_CPU=y +CONFIG_NO_IOPORT_MAP=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_ARCH_HAS_BANDGAP=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_FIQ=y +CONFIG_ARM_PATCH_PHYS_VIRT=y +CONFIG_GENERIC_BUG=y +CONFIG_PGTABLE_LEVELS=2 # # System Type # CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=8 +CONFIG_ARCH_MMAP_RND_BITS_MAX=16 CONFIG_ARCH_MULTIPLATFORM=y # CONFIG_ARCH_EBSA110 is not set # CONFIG_ARCH_EP93XX is not set @@ -494,12 +354,12 @@ CONFIG_SOC_IMX6Q=y # CONFIG_SOC_IMX6SLL is not set # CONFIG_SOC_IMX6SX is not set # CONFIG_SOC_IMX6UL is not set -# CONFIG_SOC_IMX7D is not set # CONFIG_SOC_LS1021A is not set # # Cortex-A/Cortex-M asymmetric multiprocessing platforms # +# CONFIG_SOC_IMX7D is not set # CONFIG_SOC_VF610 is not set # CONFIG_ARCH_KEYSTONE is not set # CONFIG_ARCH_MEDIATEK is not set @@ -653,7 +513,6 @@ CONFIG_ARM_HEAVY_MB=y CONFIG_ARCH_SUPPORTS_BIG_ENDIAN=y CONFIG_DEBUG_ALIGN_RODATA=y CONFIG_IWMMXT=y -CONFIG_MULTI_IRQ_HANDLER=y CONFIG_PJ4B_ERRATA_4742=y CONFIG_ARM_ERRATA_430973=y CONFIG_ARM_ERRATA_643719=y @@ -715,6 +574,7 @@ CONFIG_PCI_MVEBU=y CONFIG_PCI_TEGRA=y CONFIG_PCI_HOST_COMMON=y CONFIG_PCI_HOST_GENERIC=y +# CONFIG_PCIE_XILINX is not set # CONFIG_PCI_V3_SEMI is not set # CONFIG_PCIE_ALTERA is not set CONFIG_PCIE_ROCKCHIP=y @@ -766,9 +626,6 @@ CONFIG_NR_CPUS=8 CONFIG_HOTPLUG_CPU=y CONFIG_ARM_PSCI=y CONFIG_ARCH_NR_GPIO=2048 -# CONFIG_PREEMPT_NONE is not set -CONFIG_PREEMPT_VOLUNTARY=y -# CONFIG_PREEMPT is not set CONFIG_HZ_FIXED=0 # CONFIG_HZ_100 is not set # CONFIG_HZ_200 is not set @@ -790,38 +647,6 @@ CONFIG_CPU_SW_DOMAIN_PAN=y CONFIG_HW_PERF_EVENTS=y CONFIG_ARCH_WANT_GENERAL_HUGETLB=y # CONFIG_ARM_MODULE_PLTS is not set -CONFIG_FLATMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_NO_BOOTMEM=y -CONFIG_MEMORY_ISOLATION=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -CONFIG_MEMORY_BALLOON=y -CONFIG_BALLOON_COMPACTION=y -CONFIG_COMPACTION=y -CONFIG_MIGRATION=y -CONFIG_BOUNCE=y -CONFIG_MMU_NOTIFIER=y -CONFIG_KSM=y -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -# CONFIG_CLEANCACHE is not set -CONFIG_FRONTSWAP=y -CONFIG_CMA=y -# CONFIG_CMA_DEBUG is not set -# CONFIG_CMA_DEBUGFS is not set -CONFIG_CMA_AREAS=7 -CONFIG_ZSWAP=y -CONFIG_ZPOOL=y -CONFIG_ZBUD=y -# CONFIG_Z3FOLD is not set -CONFIG_ZSMALLOC=m -# CONFIG_PGTABLE_MAPPING is not set -# CONFIG_ZSMALLOC_STAT is not set -CONFIG_GENERIC_EARLY_IOREMAP=y -# CONFIG_IDLE_PAGE_TRACKING is not set -CONFIG_FRAME_VECTOR=y -# CONFIG_PERCPU_STATS is not set -# CONFIG_GUP_BENCHMARK is not set CONFIG_FORCE_MAX_ZONEORDER=12 CONFIG_ALIGNMENT_TRAP=y # CONFIG_UACCESS_WITH_MEMCPY is not set @@ -911,18 +736,6 @@ CONFIG_NEON=y # CONFIG_KERNEL_MODE_NEON is not set # -# Userspace binary formats -# -CONFIG_BINFMT_ELF=y -# CONFIG_BINFMT_ELF_FDPIC is not set -CONFIG_ELFCORE=y -CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y -CONFIG_BINFMT_SCRIPT=y -# CONFIG_BINFMT_FLAT is not set -CONFIG_BINFMT_MISC=m -CONFIG_COREDUMP=y - -# # Power management options # CONFIG_SUSPEND=y @@ -950,6 +763,241 @@ CONFIG_CPU_PM=y CONFIG_ARCH_SUSPEND_POSSIBLE=y CONFIG_ARM_CPU_SUSPEND=y CONFIG_ARCH_HIBERNATION_POSSIBLE=y + +# +# Firmware Drivers +# +CONFIG_ARM_PSCI_FW=y +CONFIG_ARM_SCMI_PROTOCOL=y +CONFIG_ARM_SCMI_POWER_DOMAIN=m +# CONFIG_ARM_SCPI_PROTOCOL is not set +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=y +CONFIG_RASPBERRYPI_FIRMWARE=y +CONFIG_HAVE_ARM_SMCCC=y +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_VARS=m +CONFIG_EFI_ESRT=y +CONFIG_EFI_PARAMS_FROM_FDT=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_ARMSTUB=y +CONFIG_EFI_ARMSTUB_DTB_LOADER=y +# CONFIG_EFI_BOOTLOADER_CONTROL is not set +# CONFIG_EFI_CAPSULE_LOADER is not set +# CONFIG_EFI_TEST is not set +CONFIG_RESET_ATTACK_MITIGATION=y + +# +# Tegra firmware driver +# +# CONFIG_TEGRA_IVC is not set +# CONFIG_ARM_CRYPTO is not set +# CONFIG_VIRTUALIZATION is not set + +# +# General architecture-dependent options +# +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_OPROFILE=m +CONFIG_HAVE_OPROFILE=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_OPTPROBES=y +CONFIG_UPROBES=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_KRETPROBES=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_REL=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_ARCH_MMAP_RND_BITS=8 +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OLD_SIGACTION=y +CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y +CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_PHYS_TO_DMA=y +CONFIG_REFCOUNT_FULL=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_PLUGIN_HOSTCC="" +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_TRIM_UNUSED_KSYMS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_LBDAF=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +# CONFIG_BLK_DEV_ZONED is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_CMDLINE_PARSER is not set +CONFIG_BLK_WBT=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +# CONFIG_BLK_WBT_SQ is not set +CONFIG_BLK_WBT_MQ=y +CONFIG_BLK_DEBUG_FS=y +# CONFIG_BLK_SED_OPAL is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_MQ_RDMA=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_IOSCHED_BFQ=m +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_FREEZER=y + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +# CONFIG_BINFMT_ELF_FDPIC is not set +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_BINFMT_FLAT is not set +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y + +# +# Memory Management options +# +CONFIG_FLATMEM=y +CONFIG_FLAT_NODE_MEM_MAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_BOUNCE=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +# CONFIG_CLEANCACHE is not set +CONFIG_FRONTSWAP=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_AREAS=7 +CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y +# CONFIG_Z3FOLD is not set +CONFIG_ZSMALLOC=m +# CONFIG_PGTABLE_MAPPING is not set +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_FRAME_VECTOR=y +# CONFIG_PERCPU_STATS is not set +# CONFIG_GUP_BENCHMARK is not set CONFIG_NET=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y @@ -965,6 +1013,7 @@ CONFIG_UNIX_DIAG=m CONFIG_XFRM=y CONFIG_XFRM_ALGO=m CONFIG_XFRM_USER=m +CONFIG_XFRM_INTERFACE=m CONFIG_XFRM_SUB_POLICY=y CONFIG_XFRM_MIGRATE=y # CONFIG_XFRM_STATISTICS is not set @@ -1081,6 +1130,7 @@ CONFIG_NETFILTER_FAMILY_ARP=y CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m CONFIG_NF_CONNTRACK=m CONFIG_NF_LOG_COMMON=m # CONFIG_NF_LOG_NETDEV is not set @@ -1124,7 +1174,6 @@ CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=y CONFIG_NETFILTER_SYNPROXY=m -CONFIG_NF_OSF=m CONFIG_NF_TABLES=m CONFIG_NF_TABLES_SET=m # CONFIG_NF_TABLES_INET is not set @@ -1139,6 +1188,7 @@ CONFIG_NFT_LIMIT=m CONFIG_NFT_MASQ=m CONFIG_NFT_REDIR=m CONFIG_NFT_NAT=m +CONFIG_NFT_TUNNEL=m # CONFIG_NFT_OBJREF is not set CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m @@ -1146,6 +1196,8 @@ CONFIG_NFT_REJECT=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m CONFIG_NFT_SOCKET=m +CONFIG_NFT_OSF=m +CONFIG_NFT_TPROXY=m CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NETFILTER_XTABLES=m @@ -1307,7 +1359,6 @@ CONFIG_IP_VS_PE_SIP=m # IP: Netfilter Configuration # CONFIG_NF_DEFRAG_IPV4=m -CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m CONFIG_NF_TPROXY_IPV4=m # CONFIG_NF_TABLES_IPV4 is not set @@ -1348,8 +1399,6 @@ CONFIG_IP_NF_ARP_MANGLE=m # # IPv6: Netfilter Configuration # -CONFIG_NF_DEFRAG_IPV6=m -CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m CONFIG_NF_TPROXY_IPV6=m # CONFIG_NF_TABLES_IPV6 is not set @@ -1380,6 +1429,7 @@ CONFIG_IP6_NF_SECURITY=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_NF_DEFRAG_IPV6=m # CONFIG_NF_TABLES_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m @@ -1511,15 +1561,18 @@ CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_ETF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m CONFIG_NET_SCH_NETEM=m CONFIG_NET_SCH_DRR=m CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_SKBPRIO=m CONFIG_NET_SCH_CHOKE=m CONFIG_NET_SCH_QFQ=m CONFIG_NET_SCH_CODEL=m CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_CAKE=m CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_HHF=m CONFIG_NET_SCH_PIE=m @@ -1636,7 +1689,6 @@ CONFIG_CAN_VCAN=m CONFIG_CAN_SLCAN=m CONFIG_CAN_DEV=m CONFIG_CAN_CALC_BITTIMING=y -# CONFIG_CAN_LEDS is not set # CONFIG_CAN_FLEXCAN is not set # CONFIG_CAN_GRCAN is not set CONFIG_CAN_SUN4I=m @@ -1667,13 +1719,14 @@ CONFIG_CAN_SOFTING=m # # CAN USB interfaces # +CONFIG_CAN_8DEV_USB=m CONFIG_CAN_EMS_USB=m CONFIG_CAN_ESD_USB2=m CONFIG_CAN_GS_USB=m CONFIG_CAN_KVASER_USB=m -CONFIG_CAN_PEAK_USB=m -CONFIG_CAN_8DEV_USB=m # CONFIG_CAN_MCBA_USB is not set +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_UCAN=m # CONFIG_CAN_DEBUG_DEVICES is not set CONFIG_BT=m CONFIG_BT_BREDR=y @@ -1861,12 +1914,14 @@ CONFIG_MVEBU_MBUS=y CONFIG_OMAP_INTERCONNECT=y CONFIG_OMAP_OCP2SCP=m # CONFIG_SIMPLE_PM_BUS is not set +CONFIG_SUN50I_DE2_BUS=y CONFIG_SUNXI_RSB=y # CONFIG_TEGRA_GMI is not set CONFIG_TI_SYSC=y CONFIG_VEXPRESS_CONFIG=y CONFIG_CONNECTOR=y CONFIG_PROC_EVENTS=y +CONFIG_GNSS=m CONFIG_MTD=y # CONFIG_MTD_TESTS is not set # CONFIG_MTD_REDBOOT_PARTS is not set @@ -1938,6 +1993,7 @@ CONFIG_MTD_SST25L=m # Disk-On-Chip Device Drivers # # CONFIG_MTD_DOCG3 is not set +CONFIG_MTD_NAND_CORE=m CONFIG_MTD_ONENAND=y CONFIG_MTD_ONENAND_VERIFY_WRITE=y # CONFIG_MTD_ONENAND_GENERIC is not set @@ -1968,6 +2024,8 @@ CONFIG_MTD_NAND_GPMI_NAND=m CONFIG_MTD_NAND_ORION=m CONFIG_MTD_NAND_MXC=m CONFIG_MTD_NAND_SUNXI=m +CONFIG_MTD_NAND_TEGRA=m +CONFIG_MTD_SPI_NAND=m # # LPDDR & LPDDR2 PCM memory drivers @@ -2500,8 +2558,10 @@ CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y # CONFIG_NET_DSA_MV88E6XXX_PTP is not set # CONFIG_NET_DSA_QCA8K is not set +CONFIG_NET_DSA_REALTEK_SMI=m # CONFIG_NET_DSA_SMSC_LAN9303_I2C is not set # CONFIG_NET_DSA_SMSC_LAN9303_MDIO is not set +CONFIG_NET_DSA_VITESSE_VSC73XX=m CONFIG_ETHERNET=y CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y @@ -2543,9 +2603,10 @@ CONFIG_BNX2X=m CONFIG_BNXT=m CONFIG_BNXT_FLOWER_OFFLOAD=y # CONFIG_BNXT_DCB is not set +CONFIG_BNXT_HWMON=y CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CADENCE=y +CONFIG_NET_VENDOR_CADENCE=y # CONFIG_MACB is not set CONFIG_NET_CALXEDA_XGMAC=m CONFIG_NET_VENDOR_CAVIUM=y @@ -2585,6 +2646,10 @@ CONFIG_SUNDANCE=m CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y CONFIG_NET_VENDOR_EZCHIP=y # CONFIG_EZCHIP_NPS_MANAGEMENT_ENET is not set CONFIG_NET_VENDOR_FARADAY=y @@ -2624,10 +2689,6 @@ CONFIG_I40E_DCB=y CONFIG_I40EVF=m # CONFIG_ICE is not set # CONFIG_FM10K is not set -CONFIG_NET_VENDOR_EXAR=y -CONFIG_S2IO=m -CONFIG_VXGE=m -# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_JME=m CONFIG_NET_VENDOR_MARVELL=y # CONFIG_MV643XX_ETH is not set @@ -2649,6 +2710,8 @@ CONFIG_MLX4_CORE_GEN2=y CONFIG_MLX5_CORE=m # CONFIG_MLX5_FPGA is not set CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_RXNFC=y CONFIG_MLX5_MPFS=y CONFIG_MLX5_ESWITCH=y CONFIG_MLX5_CORE_EN_DCB=y @@ -2673,6 +2736,10 @@ CONFIG_FEALNX=m CONFIG_NET_VENDOR_NATSEMI=y CONFIG_NATSEMI=m CONFIG_NS83820=m +CONFIG_NET_VENDOR_NETERION=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m # CONFIG_NFP_APP_FLOWER is not set @@ -2686,7 +2753,7 @@ CONFIG_NET_VENDOR_NVIDIA=y # CONFIG_FORCEDETH is not set CONFIG_NET_VENDOR_OKI=y # CONFIG_ETHOC is not set -CONFIG_NET_PACKET_ENGINE=y +CONFIG_NET_VENDOR_PACKET_ENGINES=y CONFIG_HAMACHI=m CONFIG_YELLOWFIN=m CONFIG_NET_VENDOR_QLOGIC=y @@ -3052,7 +3119,11 @@ CONFIG_MWL8K=m CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT7601U=m CONFIG_MT76_CORE=m +CONFIG_MT76_USB=m +CONFIG_MT76x2_COMMON=m +CONFIG_MT76x0U=m CONFIG_MT76x2E=m +CONFIG_MT76x2U=m CONFIG_WLAN_VENDOR_RALINK=y CONFIG_RT2X00=m CONFIG_RT2400PCI=m @@ -3149,6 +3220,7 @@ CONFIG_IEEE802154_ATUSB=m CONFIG_IEEE802154_ADF7242=m # CONFIG_IEEE802154_CA8210 is not set # CONFIG_IEEE802154_MCR20A is not set +# CONFIG_IEEE802154_HWSIM is not set CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_NETDEV_BACKEND=m # CONFIG_VMXNET3 is not set @@ -3259,11 +3331,13 @@ CONFIG_TOUCHSCREEN_AD7877=m CONFIG_TOUCHSCREEN_AD7879=m CONFIG_TOUCHSCREEN_AD7879_I2C=m # CONFIG_TOUCHSCREEN_AD7879_SPI is not set +CONFIG_TOUCHSCREEN_ADC=m # CONFIG_TOUCHSCREEN_AR1021_I2C is not set CONFIG_TOUCHSCREEN_ATMEL_MXT=m # CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set # CONFIG_TOUCHSCREEN_AUO_PIXCIR is not set # CONFIG_TOUCHSCREEN_BU21013 is not set +# CONFIG_TOUCHSCREEN_BU21029 is not set # CONFIG_TOUCHSCREEN_CHIPONE_ICN8318 is not set # CONFIG_TOUCHSCREEN_CY8CTMG110 is not set # CONFIG_TOUCHSCREEN_CYTTSP_CORE is not set @@ -3773,6 +3847,7 @@ CONFIG_PINCTRL_TEGRA_XUSB=y CONFIG_PINCTRL_TI_IODELAY=y CONFIG_PINCTRL_WMT=y CONFIG_PINCTRL_WM8850=y +CONFIG_PINCTRL_MADERA=m CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y CONFIG_GPIOLIB=y CONFIG_GPIOLIB_FASTPATH_LIMIT=512 @@ -3825,6 +3900,7 @@ CONFIG_GPIO_PCF857X=m CONFIG_GPIO_BD9571MWV=m CONFIG_GPIO_DA9052=m # CONFIG_HTC_EGPIO is not set +CONFIG_GPIO_MADERA=m CONFIG_GPIO_PALMAS=y # CONFIG_GPIO_STMPE is not set CONFIG_GPIO_TWL4030=y @@ -3880,7 +3956,6 @@ CONFIG_W1_SLAVE_DS2431=m CONFIG_W1_SLAVE_DS2433=m # CONFIG_W1_SLAVE_DS2433_CRC is not set # CONFIG_W1_SLAVE_DS2438 is not set -# CONFIG_W1_SLAVE_DS2760 is not set # CONFIG_W1_SLAVE_DS2780 is not set # CONFIG_W1_SLAVE_DS2781 is not set # CONFIG_W1_SLAVE_DS28E04 is not set @@ -3907,6 +3982,8 @@ CONFIG_POWER_SUPPLY=y # CONFIG_APM_POWER is not set # CONFIG_GENERIC_ADC_BATTERY is not set # CONFIG_TEST_POWER is not set +CONFIG_CHARGER_ADP5061=m +# CONFIG_BATTERY_DS2760 is not set # CONFIG_BATTERY_DS2780 is not set # CONFIG_BATTERY_DS2781 is not set # CONFIG_BATTERY_DS2782 is not set @@ -3944,6 +4021,7 @@ CONFIG_CHARGER_BQ2415X=m # CONFIG_CHARGER_SMB347 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set # CONFIG_CHARGER_RT9455 is not set +CONFIG_CHARGER_CROS_USBPD=m CONFIG_HWMON=y CONFIG_HWMON_VID=m # CONFIG_HWMON_DEBUG_CHIP is not set @@ -4036,9 +4114,11 @@ CONFIG_SENSORS_NCT6683=m CONFIG_SENSORS_NCT6775=m # CONFIG_SENSORS_NCT7802 is not set # CONFIG_SENSORS_NCT7904 is not set +# CONFIG_SENSORS_NPCM7XX is not set # CONFIG_SENSORS_PCF8591 is not set # CONFIG_PMBUS is not set CONFIG_SENSORS_PWM_FAN=m +CONFIG_SENSORS_RASPBERRYPI_HWMON=m # CONFIG_SENSORS_SHT15 is not set CONFIG_SENSORS_SHT21=m # CONFIG_SENSORS_SHT3x is not set @@ -4197,8 +4277,6 @@ CONFIG_SSB_PCIHOST=y CONFIG_SSB_B43_PCI_BRIDGE=y CONFIG_SSB_SDIOHOST_POSSIBLE=y CONFIG_SSB_SDIOHOST=y -# CONFIG_SSB_SILENT is not set -# CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y CONFIG_SSB_DRIVER_PCICORE=y # CONFIG_SSB_DRIVER_GPIO is not set @@ -4233,9 +4311,13 @@ CONFIG_MFD_AXP20X=y CONFIG_MFD_AXP20X_I2C=y # CONFIG_MFD_AXP20X_RSB is not set CONFIG_MFD_CROS_EC=m -# CONFIG_MFD_CROS_EC_I2C is not set -CONFIG_MFD_CROS_EC_SPI=m CONFIG_MFD_CROS_EC_CHARDEV=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +# CONFIG_MFD_CS47L35 is not set +# CONFIG_MFD_CS47L85 is not set +# CONFIG_MFD_CS47L90 is not set # CONFIG_MFD_ASIC3 is not set # CONFIG_PMIC_DA903X is not set CONFIG_PMIC_DA9052=y @@ -4336,6 +4418,7 @@ CONFIG_TWL6040_CORE=y # CONFIG_MFD_WM831X_SPI is not set # CONFIG_MFD_WM8350_I2C is not set # CONFIG_MFD_WM8994 is not set +CONFIG_MFD_ROHM_BD718XX=m CONFIG_MFD_VEXPRESS_SYSREG=y CONFIG_REGULATOR=y # CONFIG_REGULATOR_DEBUG is not set @@ -4348,6 +4431,7 @@ CONFIG_REGULATOR_ACT8865=m CONFIG_REGULATOR_ANATOP=m CONFIG_REGULATOR_AS3722=y CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_BD718XX=m CONFIG_REGULATOR_BD9571MWV=m CONFIG_REGULATOR_DA9052=m # CONFIG_REGULATOR_DA9210 is not set @@ -4592,7 +4676,6 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m @@ -4740,6 +4823,7 @@ CONFIG_VIDEO_VIVID=m CONFIG_VIDEO_VIVID_CEC=y CONFIG_VIDEO_VIVID_MAX_DEVS=64 # CONFIG_VIDEO_VIM2M is not set +# CONFIG_VIDEO_VICODEC is not set # CONFIG_DVB_PLATFORM_DRIVERS is not set # CONFIG_CEC_PLATFORM_DRIVERS is not set # CONFIG_SDR_PLATFORM_DRIVERS is not set @@ -5106,6 +5190,7 @@ CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_DP_CEC is not set CONFIG_DRM_TTM=m CONFIG_DRM_GEM_CMA_HELPER=y CONFIG_DRM_KMS_CMA_HELPER=y @@ -5133,6 +5218,7 @@ CONFIG_DRM_I2C_NXP_TDA9950=m # # CONFIG_DRM_NOUVEAU is not set CONFIG_DRM_VGEM=m +# CONFIG_DRM_VKMS is not set CONFIG_DRM_EXYNOS=m # @@ -5225,6 +5311,7 @@ CONFIG_DRM_PANEL_ARM_VERSATILE=m # CONFIG_DRM_PANEL_LVDS is not set CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL_ILITEK_IL9322=m +CONFIG_DRM_PANEL_ILITEK_ILI9881C=m # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set @@ -5403,6 +5490,7 @@ CONFIG_DUMMY_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set # CONFIG_LOGO is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE=y @@ -5692,10 +5780,10 @@ CONFIG_SND_SOC_ALC5632=m # CONFIG_SND_SOC_CS43130 is not set # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set -# CONFIG_SND_SOC_DIO2125 is not set CONFIG_SND_SOC_DMIC=m CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_ES7134 is not set +# CONFIG_SND_SOC_ES7241 is not set # CONFIG_SND_SOC_ES8316 is not set CONFIG_SND_SOC_ES8328=m CONFIG_SND_SOC_ES8328_I2C=m @@ -5727,6 +5815,7 @@ CONFIG_SND_SOC_RT5645=m CONFIG_SND_SOC_RT5677=m CONFIG_SND_SOC_RT5677_SPI=m CONFIG_SND_SOC_SGTL5000=m +# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set # CONFIG_SND_SOC_SPDIF is not set # CONFIG_SND_SOC_SSM2305 is not set @@ -5819,6 +5908,7 @@ CONFIG_HID_BETOP_FF=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_CORSAIR=m +# CONFIG_HID_COUGAR is not set CONFIG_HID_PRODIKEYS=m CONFIG_HID_CMEDIA=m CONFIG_HID_CP2112=m @@ -6061,6 +6151,7 @@ CONFIG_USB_DWC3_DUAL_ROLE=y # CONFIG_USB_DWC3_OMAP=m CONFIG_USB_DWC3_EXYNOS=m +CONFIG_USB_DWC3_HAPS=m CONFIG_USB_DWC3_OF_SIMPLE=m CONFIG_USB_DWC2=m # CONFIG_USB_DWC2_HOST is not set @@ -6291,6 +6382,11 @@ CONFIG_TYPEC_UCSI=m # USB Type-C Multiplexer/DeMultiplexer Switch support # # CONFIG_TYPEC_MUX_PI3USB30532 is not set + +# +# USB Type-C Alternate Mode drivers +# +# CONFIG_TYPEC_DP_ALTMODE is not set CONFIG_USB_LED_TRIG=y CONFIG_USB_ULPI_BUS=m CONFIG_UWB=m @@ -6319,6 +6415,7 @@ CONFIG_MMC_SDHCI_PLTFM=m # CONFIG_MMC_SDHCI_OF_ARASAN is not set # CONFIG_MMC_SDHCI_OF_AT91 is not set # CONFIG_MMC_SDHCI_OF_ESDHC is not set +# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set # CONFIG_MMC_SDHCI_CADENCE is not set CONFIG_MMC_SDHCI_ESDHC_IMX=m CONFIG_MMC_SDHCI_TEGRA=m @@ -6504,7 +6601,6 @@ CONFIG_RTC_INTF_DEV=y # CONFIG_RTC_DRV_ABX80X is not set CONFIG_RTC_DRV_AS3722=y CONFIG_RTC_DRV_DS1307=y -CONFIG_RTC_DRV_DS1307_HWMON=y # CONFIG_RTC_DRV_DS1307_CENTURY is not set # CONFIG_RTC_DRV_DS1374 is not set # CONFIG_RTC_DRV_DS1672 is not set @@ -6691,7 +6787,7 @@ CONFIG_VIRTIO_MMIO=m # Xen driver support # CONFIG_XEN_BALLOON=y -CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_SCRUB_PAGES_DEFAULT=y CONFIG_XEN_DEV_EVTCHN=m CONFIG_XEN_BACKEND=y CONFIG_XENFS=m @@ -6700,6 +6796,7 @@ CONFIG_XEN_SYS_HYPERVISOR=y CONFIG_XEN_XENBUS_FRONTEND=y CONFIG_XEN_GNTDEV=m CONFIG_XEN_GRANT_DEV_ALLOC=m +# CONFIG_XEN_GRANT_DMA_ALLOC is not set CONFIG_SWIOTLB_XEN=y CONFIG_XEN_PVCALLS_FRONTEND=m # CONFIG_XEN_PVCALLS_BACKEND is not set @@ -6760,11 +6857,6 @@ CONFIG_RTLWIFI_DEBUG_ST=y # CONFIG_AD9834 is not set # -# Digital gyroscope sensors -# -# CONFIG_ADIS16060 is not set - -# # Network Analyzer, Impedance Converters # # CONFIG_AD5933 is not set @@ -6821,17 +6913,28 @@ CONFIG_BCM_VIDEOCORE=y # CONFIG_BCM2835_VCHIQ is not set # CONFIG_SND_BCM2835 is not set # CONFIG_VIDEO_BCM2835 is not set - -# -# USB Power Delivery and Type-C drivers -# CONFIG_PI433=m CONFIG_MTK_MMC=m # CONFIG_MTK_AEE_KDUMP is not set # CONFIG_MTK_MMC_CD_POLL is not set + +# +# Gasket devices +# +# CONFIG_XIL_AXIS_FIFO is not set +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_XATTR=y +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +# CONFIG_EROFS_FS_USE_VM_MAP_RAM is not set +# CONFIG_EROFS_FAULT_INJECTION is not set +# CONFIG_EROFS_FS_ZIP is not set # CONFIG_GOLDFISH is not set CONFIG_CHROME_PLATFORMS=y CONFIG_CROS_EC_CTL=m +CONFIG_CROS_EC_I2C=m +CONFIG_CROS_EC_SPI=m CONFIG_CROS_EC_PROTO=y # CONFIG_MELLANOX_PLATFORM is not set CONFIG_CLKDEV_LOOKUP=y @@ -6847,6 +6950,7 @@ CONFIG_CLK_SP810=y CONFIG_CLK_VEXPRESS_OSC=y # CONFIG_CLK_HSDK is not set CONFIG_COMMON_CLK_MAX77686=m +CONFIG_COMMON_CLK_MAX9485=m CONFIG_COMMON_CLK_RK808=m CONFIG_COMMON_CLK_SCMI=m # CONFIG_COMMON_CLK_SI5351 is not set @@ -6917,6 +7021,7 @@ CONFIG_CLKSRC_VERSATILE=y CONFIG_CLKSRC_IMX_GPT=y CONFIG_MAILBOX=y # CONFIG_ARM_MHU is not set +CONFIG_IMX_MBOX=m # CONFIG_PLATFORM_MHU is not set CONFIG_PL320_MBOX=y CONFIG_OMAP2PLUS_MBOX=y @@ -6934,6 +7039,8 @@ CONFIG_IOMMU_SUPPORT=y # # CONFIG_IOMMU_IO_PGTABLE_LPAE is not set # CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_OF_IOMMU=y CONFIG_OMAP_IOMMU=y # CONFIG_OMAP_IOMMU_DEBUG is not set @@ -6969,6 +7076,10 @@ CONFIG_RASPBERRYPI_POWER=y # CONFIG_SOC_BRCMSTB is not set # +# NXP/Freescale QorIQ SoC drivers +# + +# # i.MX SoC drivers # @@ -7039,7 +7150,7 @@ CONFIG_TEGRA_MC=y CONFIG_TEGRA124_EMC=y CONFIG_IIO=m CONFIG_IIO_BUFFER=y -# CONFIG_IIO_BUFFER_CB is not set +CONFIG_IIO_BUFFER_CB=m # CONFIG_IIO_BUFFER_HW_CONSUMER is not set CONFIG_IIO_KFIFO_BUF=m CONFIG_IIO_TRIGGERED_BUFFER=m @@ -7152,6 +7263,7 @@ CONFIG_VIPERBOARD_ADC=m # Chemical Sensors # # CONFIG_ATLAS_PH_SENSOR is not set +# CONFIG_BME680 is not set CONFIG_CCS811=m # CONFIG_IAQCORE is not set # CONFIG_VZ89X is not set @@ -7192,6 +7304,7 @@ CONFIG_IIO_ST_SENSORS_CORE=m # CONFIG_AD5686_SPI is not set # CONFIG_AD5696_I2C is not set # CONFIG_AD5755 is not set +# CONFIG_AD5758 is not set # CONFIG_AD5761 is not set # CONFIG_AD5764 is not set # CONFIG_AD5791 is not set @@ -7303,6 +7416,7 @@ CONFIG_HID_SENSOR_PROX=m # CONFIG_MAX44000 is not set # CONFIG_OPT3001 is not set # CONFIG_PA12203001 is not set +# CONFIG_SI1133 is not set # CONFIG_SI1145 is not set # CONFIG_STK3310 is not set # CONFIG_ST_UVIS25 is not set @@ -7392,6 +7506,7 @@ CONFIG_HID_SENSOR_PRESS=m # # Proximity and distance sensors # +# CONFIG_ISL29501 is not set # CONFIG_LIDAR_LITE_V2 is not set # CONFIG_RFD77402 is not set # CONFIG_SRF04 is not set @@ -7533,38 +7648,6 @@ CONFIG_PM_OPP=y # CONFIG_SLIMBUS is not set # -# Firmware Drivers -# -CONFIG_ARM_PSCI_FW=y -CONFIG_ARM_SCMI_PROTOCOL=y -CONFIG_ARM_SCMI_POWER_DOMAIN=m -# CONFIG_ARM_SCPI_PROTOCOL is not set -# CONFIG_FIRMWARE_MEMMAP is not set -CONFIG_DMIID=y -CONFIG_DMI_SYSFS=y -CONFIG_RASPBERRYPI_FIRMWARE=y -CONFIG_HAVE_ARM_SMCCC=y -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# EFI (Extensible Firmware Interface) Support -# -CONFIG_EFI_VARS=m -CONFIG_EFI_ESRT=y -CONFIG_EFI_PARAMS_FROM_FDT=y -CONFIG_EFI_RUNTIME_WRAPPERS=y -CONFIG_EFI_ARMSTUB=y -# CONFIG_EFI_BOOTLOADER_CONTROL is not set -# CONFIG_EFI_CAPSULE_LOADER is not set -# CONFIG_EFI_TEST is not set -CONFIG_RESET_ATTACK_MITIGATION=y - -# -# Tegra firmware driver -# -# CONFIG_TEGRA_IVC is not set - -# # File systems # CONFIG_DCACHE_WORD_ACCESS=y @@ -7651,6 +7734,7 @@ CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set # CONFIG_OVERLAY_FS_INDEX is not set # CONFIG_OVERLAY_FS_XINO_AUTO is not set +# CONFIG_OVERLAY_FS_METACOPY is not set # # Caches @@ -7709,7 +7793,6 @@ CONFIG_ECRYPT_FS=m CONFIG_ECRYPT_FS_MESSAGING=y CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m -# CONFIG_HFSPLUS_FS_POSIX_ACL is not set CONFIG_BEFS_FS=m # CONFIG_BEFS_DEBUG is not set CONFIG_BFS_FS=m @@ -7736,6 +7819,7 @@ CONFIG_UBIFS_FS_ADVANCED_COMPR=y CONFIG_UBIFS_FS_LZO=y CONFIG_UBIFS_FS_ZLIB=y # CONFIG_UBIFS_ATIME_SUPPORT is not set +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBIFS_FS_ENCRYPTION is not set CONFIG_UBIFS_FS_SECURITY=y # CONFIG_CRAMFS is not set @@ -7821,7 +7905,8 @@ CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y CONFIG_CIFS=m -# CONFIG_CIFS_STATS is not set +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_CIFS_UPCALL=y CONFIG_CIFS_XATTR=y @@ -7831,7 +7916,6 @@ CONFIG_CIFS_DEBUG=y # CONFIG_CIFS_DEBUG2 is not set # CONFIG_CIFS_DEBUG_DUMP_KEYS is not set CONFIG_CIFS_DFS_UPCALL=y -# CONFIG_CIFS_SMB311 is not set # CONFIG_CIFS_SMB_DIRECT is not set CONFIG_CIFS_FSCACHE=y CONFIG_CODA_FS=m @@ -7897,232 +7981,6 @@ CONFIG_DLM=m CONFIG_DLM_DEBUG=y # -# Kernel hacking -# - -# -# printk and dmesg options -# -CONFIG_PRINTK_TIME=y -CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 -CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 -CONFIG_BOOT_PRINTK_DELAY=y -CONFIG_DYNAMIC_DEBUG=y - -# -# Compile-time checks and compiler options -# -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_INFO_SPLIT is not set -# CONFIG_DEBUG_INFO_DWARF4 is not set -# CONFIG_GDB_SCRIPTS is not set -CONFIG_ENABLE_WARN_DEPRECATED=y -CONFIG_ENABLE_MUST_CHECK=y -CONFIG_FRAME_WARN=1024 -CONFIG_STRIP_ASM_SYMS=y -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_PAGE_OWNER is not set -CONFIG_DEBUG_FS=y -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_SECTION_MISMATCH_WARN_ONLY=y -CONFIG_FRAME_POINTER=y -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -CONFIG_MAGIC_SYSRQ=y -CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 -CONFIG_MAGIC_SYSRQ_SERIAL=y -CONFIG_DEBUG_KERNEL=y - -# -# Memory Debugging -# -CONFIG_PAGE_EXTENSION=y -CONFIG_PAGE_POISONING=y -CONFIG_PAGE_POISONING_NO_SANITY=y -# CONFIG_PAGE_POISONING_ZERO is not set -# CONFIG_DEBUG_PAGE_REF is not set -# CONFIG_DEBUG_RODATA_TEST is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_VM is not set -CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y -# CONFIG_DEBUG_VIRTUAL is not set -CONFIG_DEBUG_MEMORY_INIT=y -# CONFIG_DEBUG_PER_CPU_MAPS is not set -# CONFIG_DEBUG_HIGHMEM is not set -CONFIG_ARCH_HAS_KCOV=y -CONFIG_CC_HAS_SANCOV_TRACE_PC=y -# CONFIG_KCOV is not set -# CONFIG_DEBUG_SHIRQ is not set - -# -# Debug Lockups and Hangs -# -CONFIG_LOCKUP_DETECTOR=y -CONFIG_SOFTLOCKUP_DETECTOR=y -# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -# CONFIG_WQ_WATCHDOG is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_PANIC_TIMEOUT=0 -CONFIG_SCHED_DEBUG=y -CONFIG_SCHED_INFO=y -CONFIG_SCHEDSTATS=y -CONFIG_SCHED_STACK_END_CHECK=y -# CONFIG_DEBUG_TIMEKEEPING is not set - -# -# Lock Debugging (spinlocks, mutexes, etc...) -# -CONFIG_LOCK_DEBUGGING_SUPPORT=y -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set -# CONFIG_DEBUG_RWSEMS is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_LOCK_TORTURE_TEST is not set -# CONFIG_WW_MUTEX_SELFTEST is not set -CONFIG_STACKTRACE=y -# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_LIST=y -# CONFIG_DEBUG_PI_LIST is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set - -# -# RCU Debugging -# -# CONFIG_RCU_PERF_TEST is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=21 -# CONFIG_RCU_TRACE is not set -# CONFIG_RCU_EQS_DEBUG is not set -# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set -CONFIG_NOTIFIER_ERROR_INJECTION=m -CONFIG_PM_NOTIFIER_ERROR_INJECT=m -# CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT is not set -# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_LATENCYTOP is not set -CONFIG_NOP_TRACER=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACER_MAX_TRACE=y -CONFIG_TRACE_CLOCK=y -CONFIG_RING_BUFFER=y -CONFIG_EVENT_TRACING=y -CONFIG_CONTEXT_SWITCH_TRACER=y -CONFIG_RING_BUFFER_ALLOW_SWAP=y -CONFIG_TRACING=y -CONFIG_GENERIC_TRACER=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -CONFIG_FUNCTION_TRACER=y -CONFIG_FUNCTION_GRAPH_TRACER=y -# CONFIG_PREEMPTIRQ_EVENTS is not set -# CONFIG_IRQSOFF_TRACER is not set -# CONFIG_SCHED_TRACER is not set -# CONFIG_HWLAT_TRACER is not set -CONFIG_FTRACE_SYSCALLS=y -CONFIG_TRACER_SNAPSHOT=y -# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -CONFIG_STACK_TRACER=y -CONFIG_BLK_DEV_IO_TRACE=y -CONFIG_KPROBE_EVENTS=y -CONFIG_UPROBE_EVENTS=y -CONFIG_BPF_EVENTS=y -CONFIG_PROBE_EVENTS=y -CONFIG_DYNAMIC_FTRACE=y -CONFIG_DYNAMIC_FTRACE_WITH_REGS=y -# CONFIG_FUNCTION_PROFILER is not set -CONFIG_FTRACE_MCOUNT_RECORD=y -# CONFIG_FTRACE_STARTUP_TEST is not set -# CONFIG_TRACEPOINT_BENCHMARK is not set -# CONFIG_RING_BUFFER_BENCHMARK is not set -# CONFIG_RING_BUFFER_STARTUP_TEST is not set -# CONFIG_TRACE_EVAL_MAP_FILE is not set -CONFIG_TRACING_EVENTS_GPIO=y -# CONFIG_DMA_API_DEBUG is not set -CONFIG_RUNTIME_TESTING_MENU=y -# CONFIG_LKDTM is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_TEST_SORT is not set -# CONFIG_KPROBES_SANITY_TEST is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_PERCPU_TEST is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_ASYNC_RAID6_TEST is not set -# CONFIG_TEST_HEXDUMP is not set -# CONFIG_TEST_STRING_HELPERS is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_TEST_PRINTF is not set -# CONFIG_TEST_BITMAP is not set -# CONFIG_TEST_UUID is not set -# CONFIG_TEST_OVERFLOW is not set -# CONFIG_TEST_RHASHTABLE is not set -# CONFIG_TEST_HASH is not set -# CONFIG_TEST_LKM is not set -CONFIG_TEST_USER_COPY=m -CONFIG_TEST_BPF=m -CONFIG_FIND_BIT_BENCHMARK=m -CONFIG_TEST_FIRMWARE=m -# CONFIG_TEST_SYSCTL is not set -# CONFIG_TEST_UDELAY is not set -CONFIG_TEST_STATIC_KEYS=m -# CONFIG_TEST_KMOD is not set -# CONFIG_MEMTEST is not set -CONFIG_BUG_ON_DATA_CORRUPTION=y -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -# CONFIG_UBSAN is not set -CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y -CONFIG_STRICT_DEVMEM=y -CONFIG_IO_STRICT_DEVMEM=y -CONFIG_ARM_PTDUMP_CORE=y -# CONFIG_ARM_PTDUMP_DEBUGFS is not set -CONFIG_DEBUG_WX=y -CONFIG_ARM_UNWIND=y -CONFIG_OLD_MCOUNT=y -# CONFIG_DEBUG_USER is not set -# CONFIG_DEBUG_LL is not set -CONFIG_DEBUG_IMX_UART_PORT=1 -CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" -CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" -# CONFIG_ARM_KPROBES_TEST is not set -# CONFIG_PID_IN_CONTEXTIDR is not set -# CONFIG_CORESIGHT is not set - -# # Security options # CONFIG_KEYS=y @@ -8183,6 +8041,7 @@ CONFIG_IMA_DEFAULT_HASH="sha256" # CONFIG_IMA_WRITE_POLICY is not set # CONFIG_IMA_READ_POLICY is not set CONFIG_IMA_APPRAISE=y +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set CONFIG_IMA_APPRAISE_BOOTPARAM=y CONFIG_IMA_TRUSTED_KEYRING=y # CONFIG_IMA_BLACKLIST_KEYRING is not set @@ -8378,7 +8237,6 @@ CONFIG_SYSTEM_TRUSTED_KEYS="" # CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set # CONFIG_SECONDARY_TRUSTED_KEYRING is not set # CONFIG_SYSTEM_BLACKLIST_KEYRING is not set -# CONFIG_ARM_CRYPTO is not set CONFIG_BINARY_PRINTF=y # @@ -8404,6 +8262,7 @@ CONFIG_CRC32_SLICEBY8=y # CONFIG_CRC32_SLICEBY4 is not set # CONFIG_CRC32_SARWATE is not set # CONFIG_CRC32_BIT is not set +CONFIG_CRC64=m # CONFIG_CRC4 is not set CONFIG_CRC7=m CONFIG_LIBCRC32C=m @@ -8479,4 +8338,232 @@ CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_SBITMAP=y # CONFIG_STRING_SELFTEST is not set -# CONFIG_VIRTUALIZATION is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +# CONFIG_DEBUG_INFO_DWARF4 is not set +# CONFIG_GDB_SCRIPTS is not set +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=1024 +CONFIG_STRIP_ASM_SYMS=y +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +CONFIG_PAGE_EXTENSION=y +CONFIG_PAGE_POISONING=y +CONFIG_PAGE_POISONING_NO_SANITY=y +# CONFIG_PAGE_POISONING_ZERO is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_DEBUG_SLAB is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_HIGHMEM is not set +CONFIG_ARCH_HAS_KCOV=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +# CONFIG_KCOV is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +CONFIG_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_LIST=y +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +# CONFIG_OF_RECONFIG_NOTIFIER_ERROR_INJECT is not set +# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_HWLAT_TRACER is not set +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENTS=y +CONFIG_UPROBE_EVENTS=y +CONFIG_BPF_EVENTS=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +# CONFIG_FUNCTION_PROFILER is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_RUNTIME_TESTING_MENU=y +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_ASYNC_RAID6_TEST is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_BITMAP is not set +# CONFIG_TEST_BITFIELD is not set +# CONFIG_TEST_UUID is not set +# CONFIG_TEST_OVERFLOW is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_HASH is not set +# CONFIG_TEST_IDA is not set +# CONFIG_TEST_LKM is not set +CONFIG_TEST_USER_COPY=m +CONFIG_TEST_BPF=m +CONFIG_FIND_BIT_BENCHMARK=m +CONFIG_TEST_FIRMWARE=m +# CONFIG_TEST_SYSCTL is not set +# CONFIG_TEST_UDELAY is not set +CONFIG_TEST_STATIC_KEYS=m +# CONFIG_TEST_KMOD is not set +# CONFIG_MEMTEST is not set +CONFIG_BUG_ON_DATA_CORRUPTION=y +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_STRICT_DEVMEM=y +CONFIG_IO_STRICT_DEVMEM=y +CONFIG_ARM_PTDUMP_CORE=y +# CONFIG_ARM_PTDUMP_DEBUGFS is not set +CONFIG_DEBUG_WX=y +CONFIG_ARM_UNWIND=y +CONFIG_OLD_MCOUNT=y +# CONFIG_DEBUG_USER is not set +# CONFIG_DEBUG_LL is not set +CONFIG_DEBUG_IMX_UART_PORT=1 +CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" +CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" +# CONFIG_ARM_KPROBES_TEST is not set +# CONFIG_PID_IN_CONTEXTIDR is not set +# CONFIG_CORESIGHT is not set diff --git a/gnu/packages/aux-files/linux-libre/4.18-arm64.conf b/gnu/packages/aux-files/linux-libre/4.19-arm64.conf index 64b14b52c0..ba6fa177b7 100644 --- a/gnu/packages/aux-files/linux-libre/4.18-arm64.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-arm64.conf @@ -1,35 +1,7 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm64 4.18.14-gnu Kernel Configuration +# Linux/arm64 4.19.0-gnu Kernel Configuration # -CONFIG_ARM64=y -CONFIG_64BIT=y -CONFIG_MMU=y -CONFIG_ARM64_PAGE_SHIFT=12 -CONFIG_ARM64_CONT_SHIFT=4 -CONFIG_ARCH_MMAP_RND_BITS_MIN=18 -CONFIG_ARCH_MMAP_RND_BITS_MAX=33 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CSUM=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ZONE_DMA32=y -CONFIG_HAVE_GENERIC_GUP=y -CONFIG_SMP=y -CONFIG_KERNEL_MODE_NEON=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_PGTABLE_LEVELS=4 -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_ARCH_PROC_KCORE_TEXT=y -CONFIG_MULTI_IRQ_HANDLER=y CONFIG_CC_IS_GCC=y CONFIG_GCC_VERSION=70300 CONFIG_CLANG_VERSION=0 @@ -44,6 +16,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="" # CONFIG_LOCALVERSION_AUTO is not set +CONFIG_BUILD_SALT="" CONFIG_DEFAULT_HOSTNAME="(none)" CONFIG_SWAP=y CONFIG_SYSVIPC=y @@ -76,6 +49,7 @@ CONFIG_HANDLE_DOMAIN_IRQ=y CONFIG_IRQ_FORCED_THREADING=y CONFIG_SPARSE_IRQ=y # CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_GENERIC_IRQ_MULTI_HANDLER=y CONFIG_ARCH_CLOCKSOURCE_DATA=y CONFIG_GENERIC_TIME_VSYSCALL=y CONFIG_GENERIC_CLOCKEVENTS=y @@ -92,6 +66,9 @@ CONFIG_NO_HZ_IDLE=y # CONFIG_NO_HZ_FULL is not set # CONFIG_NO_HZ is not set CONFIG_HIGH_RES_TIMERS=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set # # CPU/Task time and stats accounting @@ -131,6 +108,7 @@ CONFIG_PAGE_COUNTER=y CONFIG_MEMCG=y CONFIG_MEMCG_SWAP=y # CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_CGROUP_WRITEBACK=y @@ -156,6 +134,7 @@ CONFIG_IPC_NS=y CONFIG_USER_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y +CONFIG_CHECKPOINT_RESTORE=y CONFIG_SCHED_AUTOGROUP=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y @@ -197,7 +176,6 @@ CONFIG_SHMEM=y CONFIG_AIO=y CONFIG_ADVISE_SYSCALLS=y CONFIG_MEMBARRIER=y -CONFIG_CHECKPOINT_RESTORE=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set CONFIG_KALLSYMS_BASE_RELATIVE=y @@ -205,6 +183,8 @@ CONFIG_BPF_SYSCALL=y # CONFIG_BPF_JIT_ALWAYS_ON is not set CONFIG_USERFAULTFD=y CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +CONFIG_RSEQ=y +# CONFIG_DEBUG_RSEQ is not set # CONFIG_EMBEDDED is not set CONFIG_HAVE_PERF_EVENTS=y # CONFIG_PC104 is not set @@ -228,186 +208,33 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y CONFIG_TRACEPOINTS=y -CONFIG_CRASH_CORE=y -CONFIG_KEXEC_CORE=y -CONFIG_KPROBES=y -CONFIG_JUMP_LABEL=y -# CONFIG_STATIC_KEYS_SELFTEST is not set -CONFIG_UPROBES=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_KRETPROBES=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_NMI=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_GENERIC_IDLE_POLL_SETUP=y -CONFIG_ARCH_HAS_FORTIFY_SOURCE=y -CONFIG_ARCH_HAS_SET_MEMORY=y -CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_CLK=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_HAVE_RCU_TABLE_FREE=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP_FILTER=y -CONFIG_PLUGIN_HOSTCC="" -CONFIG_HAVE_GCC_PLUGINS=y -CONFIG_HAVE_STACKPROTECTOR=y -CONFIG_CC_HAS_STACKPROTECTOR_NONE=y -CONFIG_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR_STRONG=y -CONFIG_HAVE_CONTEXT_TRACKING=y -CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_HAVE_ARCH_HUGE_VMAP=y -CONFIG_HAVE_MOD_ARCH_SPECIFIC=y -CONFIG_MODULES_USE_ELF_RELA=y -CONFIG_ARCH_HAS_ELF_RANDOMIZE=y -CONFIG_HAVE_ARCH_MMAP_RND_BITS=y -CONFIG_ARCH_MMAP_RND_BITS=18 -CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y -CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 -CONFIG_CLONE_BACKWARDS=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_COMPAT_OLD_SIGACTION=y -CONFIG_COMPAT_32BIT_TIME=y -CONFIG_HAVE_ARCH_VMAP_STACK=y -CONFIG_VMAP_STACK=y -CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y -CONFIG_STRICT_KERNEL_RWX=y -CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y -CONFIG_STRICT_MODULE_RWX=y -CONFIG_REFCOUNT_FULL=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -CONFIG_MODULE_FORCE_LOAD=y -CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y -CONFIG_MODVERSIONS=y -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -# CONFIG_MODULE_COMPRESS is not set -# CONFIG_TRIM_UNUSED_KSYMS is not set -CONFIG_MODULES_TREE_LOOKUP=y -CONFIG_BLOCK=y -CONFIG_BLK_SCSI_REQUEST=y -CONFIG_BLK_DEV_BSG=y -CONFIG_BLK_DEV_BSGLIB=y -CONFIG_BLK_DEV_INTEGRITY=y -# CONFIG_BLK_DEV_ZONED is not set -CONFIG_BLK_DEV_THROTTLING=y -# CONFIG_BLK_DEV_THROTTLING_LOW is not set -# CONFIG_BLK_CMDLINE_PARSER is not set -CONFIG_BLK_WBT=y -# CONFIG_BLK_WBT_SQ is not set -CONFIG_BLK_WBT_MQ=y -CONFIG_BLK_DEBUG_FS=y -CONFIG_BLK_SED_OPAL=y - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -# CONFIG_AIX_PARTITION is not set -# CONFIG_OSF_PARTITION is not set -# CONFIG_AMIGA_PARTITION is not set -# CONFIG_ATARI_PARTITION is not set -# CONFIG_MAC_PARTITION is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_BSD_DISKLABEL is not set -# CONFIG_MINIX_SUBPARTITION is not set -# CONFIG_SOLARIS_X86_PARTITION is not set -# CONFIG_UNIXWARE_DISKLABEL is not set -# CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set -# CONFIG_ULTRIX_PARTITION is not set -# CONFIG_SUN_PARTITION is not set -CONFIG_KARMA_PARTITION=y -CONFIG_EFI_PARTITION=y -# CONFIG_SYSV68_PARTITION is not set -# CONFIG_CMDLINE_PARTITION is not set -CONFIG_BLOCK_COMPAT=y -CONFIG_BLK_MQ_PCI=y -CONFIG_BLK_MQ_VIRTIO=y -CONFIG_BLK_MQ_RDMA=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -CONFIG_CFQ_GROUP_IOSCHED=y -# CONFIG_DEFAULT_DEADLINE is not set -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -CONFIG_MQ_IOSCHED_DEADLINE=y -CONFIG_MQ_IOSCHED_KYBER=m -CONFIG_IOSCHED_BFQ=m -CONFIG_BFQ_GROUP_IOSCHED=y -CONFIG_PREEMPT_NOTIFIERS=y -CONFIG_PADATA=y -CONFIG_ASN1=y -CONFIG_ARCH_INLINE_READ_LOCK=y -CONFIG_ARCH_INLINE_READ_LOCK_BH=y -CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y -CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y -CONFIG_ARCH_INLINE_READ_UNLOCK=y -CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y -CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y -CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y -CONFIG_ARCH_INLINE_WRITE_LOCK=y -CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y -CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y -CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y -CONFIG_ARCH_INLINE_WRITE_UNLOCK=y -CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y -CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_LOCK=y -CONFIG_INLINE_READ_LOCK_BH=y -CONFIG_INLINE_READ_LOCK_IRQ=y -CONFIG_INLINE_READ_LOCK_IRQSAVE=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_BH=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y -CONFIG_INLINE_WRITE_LOCK=y -CONFIG_INLINE_WRITE_LOCK_BH=y -CONFIG_INLINE_WRITE_LOCK_IRQ=y -CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_BH=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y -CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y -CONFIG_MUTEX_SPIN_ON_OWNER=y -CONFIG_RWSEM_SPIN_ON_OWNER=y -CONFIG_LOCK_SPIN_ON_OWNER=y -CONFIG_ARCH_USE_QUEUED_RWLOCKS=y -CONFIG_QUEUED_RWLOCKS=y -CONFIG_FREEZER=y +CONFIG_ARM64=y +CONFIG_64BIT=y +CONFIG_MMU=y +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_ARM64_CONT_SHIFT=4 +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=33 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ZONE_DMA32=y +CONFIG_HAVE_GENERIC_GUP=y +CONFIG_SMP=y +CONFIG_KERNEL_MODE_NEON=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=4 +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_PROC_KCORE_TEXT=y # # Platform selection @@ -420,6 +247,7 @@ CONFIG_ARCH_BCM2835=y # CONFIG_ARCH_BERLIN is not set # CONFIG_ARCH_BRCMSTB is not set # CONFIG_ARCH_EXYNOS is not set +# CONFIG_ARCH_K3 is not set # CONFIG_ARCH_LAYERSCAPE is not set # CONFIG_ARCH_LG1K is not set CONFIG_ARCH_HISI=y @@ -496,6 +324,7 @@ CONFIG_PCI_AARDVARK=y CONFIG_PCI_TEGRA=y CONFIG_PCI_HOST_COMMON=y CONFIG_PCI_HOST_GENERIC=y +# CONFIG_PCIE_XILINX is not set CONFIG_PCI_XGENE=y CONFIG_PCI_XGENE_MSI=y CONFIG_PCI_HOST_THUNDER_PEM=y @@ -571,9 +400,6 @@ CONFIG_USE_PERCPU_NUMA_NODE_ID=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_HOLES_IN_ZONE=y -# CONFIG_PREEMPT_NONE is not set -CONFIG_PREEMPT_VOLUNTARY=y -# CONFIG_PREEMPT is not set # CONFIG_HZ_100 is not set CONFIG_HZ_250=y # CONFIG_HZ_300 is not set @@ -590,54 +416,6 @@ CONFIG_HW_PERF_EVENTS=y CONFIG_SYS_SUPPORTS_HUGETLBFS=y CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_NEED_MULTIPLE_NODES=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_EXTREME=y -CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y -CONFIG_SPARSEMEM_VMEMMAP=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_NO_BOOTMEM=y -CONFIG_MEMORY_ISOLATION=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -CONFIG_MEMORY_BALLOON=y -CONFIG_BALLOON_COMPACTION=y -CONFIG_COMPACTION=y -CONFIG_MIGRATION=y -CONFIG_PHYS_ADDR_T_64BIT=y -CONFIG_MMU_NOTIFIER=y -CONFIG_KSM=y -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y -CONFIG_MEMORY_FAILURE=y -CONFIG_HWPOISON_INJECT=m -CONFIG_TRANSPARENT_HUGEPAGE=y -CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y -# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set -CONFIG_TRANSPARENT_HUGE_PAGECACHE=y -# CONFIG_CLEANCACHE is not set -CONFIG_FRONTSWAP=y -CONFIG_CMA=y -# CONFIG_CMA_DEBUG is not set -# CONFIG_CMA_DEBUGFS is not set -CONFIG_CMA_AREAS=7 -CONFIG_ZSWAP=y -CONFIG_ZPOOL=y -CONFIG_ZBUD=y -# CONFIG_Z3FOLD is not set -CONFIG_ZSMALLOC=m -# CONFIG_PGTABLE_MAPPING is not set -# CONFIG_ZSMALLOC_STAT is not set -CONFIG_GENERIC_EARLY_IOREMAP=y -# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set -# CONFIG_IDLE_PAGE_TRACKING is not set -CONFIG_FRAME_VECTOR=y -# CONFIG_PERCPU_STATS is not set -# CONFIG_GUP_BENCHMARK is not set -CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_SECCOMP=y CONFIG_PARAVIRT=y # CONFIG_PARAVIRT_TIME_ACCOUNTING is not set @@ -685,17 +463,6 @@ CONFIG_CMDLINE="" CONFIG_EFI_STUB=y CONFIG_EFI=y CONFIG_DMI=y - -# -# Userspace binary formats -# -CONFIG_BINFMT_ELF=y -CONFIG_COMPAT_BINFMT_ELF=y -CONFIG_ELFCORE=y -CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y -CONFIG_BINFMT_SCRIPT=y -CONFIG_BINFMT_MISC=m -CONFIG_COREDUMP=y CONFIG_COMPAT=y CONFIG_SYSVIPC_COMPAT=y @@ -779,6 +546,399 @@ CONFIG_ARM_TEGRA20_CPUFREQ=y CONFIG_ARM_TEGRA124_CPUFREQ=m # CONFIG_ARM_TEGRA186_CPUFREQ is not set # CONFIG_QORIQ_CPUFREQ is not set + +# +# Firmware Drivers +# +CONFIG_ARM_PSCI_FW=y +# CONFIG_ARM_PSCI_CHECKER is not set +CONFIG_ARM_SCMI_PROTOCOL=y +CONFIG_ARM_SCMI_POWER_DOMAIN=m +# CONFIG_ARM_SCPI_PROTOCOL is not set +# CONFIG_ARM_SDE_INTERFACE is not set +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=y +CONFIG_RASPBERRYPI_FIRMWARE=y +# CONFIG_FW_CFG_SYSFS is not set +CONFIG_QCOM_SCM=y +CONFIG_QCOM_SCM_64=y +# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set +CONFIG_HAVE_ARM_SMCCC=y +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_VARS=m +CONFIG_EFI_ESRT=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFI_PARAMS_FROM_FDT=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_ARMSTUB=y +CONFIG_EFI_ARMSTUB_DTB_LOADER=y +# CONFIG_EFI_BOOTLOADER_CONTROL is not set +# CONFIG_EFI_CAPSULE_LOADER is not set +# CONFIG_EFI_TEST is not set +# CONFIG_RESET_ATTACK_MITIGATION is not set +CONFIG_MESON_SM=y + +# +# Tegra firmware driver +# +CONFIG_TEGRA_IVC=y +CONFIG_TEGRA_BPMP=y +CONFIG_ARCH_SUPPORTS_ACPI=y +CONFIG_ACPI=y +CONFIG_ACPI_GENERIC_GSI=y +CONFIG_ACPI_CCA_REQUIRED=y +# CONFIG_ACPI_DEBUGGER is not set +CONFIG_ACPI_SPCR_TABLE=y +# CONFIG_ACPI_EC_DEBUGFS is not set +CONFIG_ACPI_BUTTON=y +CONFIG_ACPI_FAN=y +CONFIG_ACPI_TAD=m +# CONFIG_ACPI_DOCK is not set +CONFIG_ACPI_PROCESSOR_IDLE=y +CONFIG_ACPI_MCFG=y +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_PROCESSOR=y +# CONFIG_ACPI_IPMI is not set +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_NUMA=y +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ACPI_TABLE_UPGRADE=y +# CONFIG_ACPI_DEBUG is not set +# CONFIG_ACPI_PCI_SLOT is not set +CONFIG_ACPI_CONTAINER=y +# CONFIG_ACPI_HED is not set +# CONFIG_ACPI_CUSTOM_METHOD is not set +# CONFIG_ACPI_BGRT is not set +CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y +CONFIG_ACPI_NFIT=y +CONFIG_HAVE_ACPI_APEI=y +# CONFIG_ACPI_APEI is not set +# CONFIG_PMIC_OPREGION is not set +# CONFIG_ACPI_CONFIGFS is not set +CONFIG_ACPI_IORT=y +CONFIG_ACPI_GTDT=y +CONFIG_ACPI_PPTT=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_MMIO=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_KVM_VFIO=y +CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +CONFIG_KVM_ARM_HOST=y +CONFIG_KVM_ARM_PMU=y +CONFIG_KVM_INDIRECT_VECTORS=y +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VSOCK=m +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA256_ARM64=m +# CONFIG_CRYPTO_SHA512_ARM64 is not set +CONFIG_CRYPTO_SHA1_ARM64_CE=m +CONFIG_CRYPTO_SHA2_ARM64_CE=m +# CONFIG_CRYPTO_SHA512_ARM64_CE is not set +# CONFIG_CRYPTO_SHA3_ARM64 is not set +# CONFIG_CRYPTO_SM3_ARM64_CE is not set +# CONFIG_CRYPTO_SM4_ARM64_CE is not set +CONFIG_CRYPTO_GHASH_ARM64_CE=m +# CONFIG_CRYPTO_CRCT10DIF_ARM64_CE is not set +CONFIG_CRYPTO_CRC32_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64=m +CONFIG_CRYPTO_AES_ARM64_CE=m +CONFIG_CRYPTO_AES_ARM64_CE_CCM=m +CONFIG_CRYPTO_AES_ARM64_CE_BLK=m +# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set +# CONFIG_CRYPTO_CHACHA20_NEON is not set +# CONFIG_CRYPTO_AES_ARM64_BS is not set +CONFIG_CRYPTO_SPECK_NEON=m + +# +# General architecture-dependent options +# +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_UPROBES=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_KRETPROBES=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_VMAP_STACK=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_STRICT_MODULE_RWX=y +CONFIG_REFCOUNT_FULL=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_PLUGIN_HOSTCC="" +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_TRIM_UNUSED_KSYMS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +# CONFIG_BLK_DEV_ZONED is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_CMDLINE_PARSER is not set +CONFIG_BLK_WBT=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +# CONFIG_BLK_WBT_SQ is not set +CONFIG_BLK_WBT_MQ=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_SED_OPAL=y + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_MQ_RDMA=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_IOSCHED_BFQ=m +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK=y +CONFIG_ARCH_INLINE_SPIN_LOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_READ_LOCK=y +CONFIG_ARCH_INLINE_READ_LOCK_BH=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_READ_UNLOCK=y +CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_WRITE_LOCK=y +CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_SPIN_TRYLOCK=y +CONFIG_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_INLINE_SPIN_LOCK=y +CONFIG_INLINE_SPIN_LOCK_BH=y +CONFIG_INLINE_SPIN_LOCK_IRQ=y +CONFIG_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_INLINE_SPIN_UNLOCK_BH=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_READ_LOCK=y +CONFIG_INLINE_READ_LOCK_BH=y +CONFIG_INLINE_READ_LOCK_IRQ=y +CONFIG_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_BH=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_WRITE_LOCK=y +CONFIG_INLINE_WRITE_LOCK_BH=y +CONFIG_INLINE_WRITE_LOCK_IRQ=y +CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_BH=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_QUEUED_RWLOCKS=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_FREEZER=y + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y + +# +# Memory Management options +# +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_MEMORY_FAILURE=y +CONFIG_HWPOISON_INJECT=m +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TRANSPARENT_HUGE_PAGECACHE=y +# CONFIG_CLEANCACHE is not set +CONFIG_FRONTSWAP=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_AREAS=7 +CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y +# CONFIG_Z3FOLD is not set +CONFIG_ZSMALLOC=m +# CONFIG_PGTABLE_MAPPING is not set +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_FRAME_VECTOR=y +# CONFIG_PERCPU_STATS is not set +# CONFIG_GUP_BENCHMARK is not set +CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y CONFIG_NET_INGRESS=y @@ -796,6 +956,7 @@ CONFIG_XFRM=y CONFIG_XFRM_OFFLOAD=y CONFIG_XFRM_ALGO=m CONFIG_XFRM_USER=m +CONFIG_XFRM_INTERFACE=m CONFIG_XFRM_SUB_POLICY=y CONFIG_XFRM_MIGRATE=y # CONFIG_XFRM_STATISTICS is not set @@ -913,6 +1074,7 @@ CONFIG_NETFILTER_FAMILY_ARP=y CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m CONFIG_NF_CONNTRACK=m CONFIG_NF_LOG_COMMON=m CONFIG_NF_LOG_NETDEV=m @@ -956,7 +1118,6 @@ CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=y CONFIG_NETFILTER_SYNPROXY=m -CONFIG_NF_OSF=m CONFIG_NF_TABLES=m CONFIG_NF_TABLES_SET=m # CONFIG_NF_TABLES_INET is not set @@ -970,6 +1131,7 @@ CONFIG_NFT_LIMIT=m CONFIG_NFT_MASQ=m CONFIG_NFT_REDIR=m CONFIG_NFT_NAT=m +CONFIG_NFT_TUNNEL=m CONFIG_NFT_OBJREF=m CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m @@ -977,6 +1139,8 @@ CONFIG_NFT_REJECT=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m CONFIG_NFT_SOCKET=m +CONFIG_NFT_OSF=m +CONFIG_NFT_TPROXY=m # CONFIG_NF_FLOW_TABLE is not set CONFIG_NETFILTER_XTABLES=m @@ -1137,7 +1301,6 @@ CONFIG_IP_VS_PE_SIP=m # IP: Netfilter Configuration # CONFIG_NF_DEFRAG_IPV4=m -CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m CONFIG_NF_TPROXY_IPV4=m # CONFIG_NF_TABLES_IPV4 is not set @@ -1177,8 +1340,6 @@ CONFIG_IP_NF_ARP_MANGLE=m # # IPv6: Netfilter Configuration # -CONFIG_NF_DEFRAG_IPV6=m -CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m CONFIG_NF_TPROXY_IPV6=m # CONFIG_NF_TABLES_IPV6 is not set @@ -1208,6 +1369,7 @@ CONFIG_IP6_NF_SECURITY=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_NF_DEFRAG_IPV6=m # CONFIG_NF_TABLES_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m @@ -1337,15 +1499,18 @@ CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m # CONFIG_NET_SCH_CBS is not set +CONFIG_NET_SCH_ETF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m CONFIG_NET_SCH_NETEM=m CONFIG_NET_SCH_DRR=m CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_SKBPRIO=m CONFIG_NET_SCH_CHOKE=m CONFIG_NET_SCH_QFQ=m CONFIG_NET_SCH_CODEL=m CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_CAKE=m CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_HHF=m CONFIG_NET_SCH_PIE=m @@ -1463,7 +1628,6 @@ CONFIG_CAN_VCAN=m CONFIG_CAN_SLCAN=m CONFIG_CAN_DEV=m CONFIG_CAN_CALC_BITTIMING=y -# CONFIG_CAN_LEDS is not set # CONFIG_CAN_GRCAN is not set # CONFIG_CAN_XILINXCAN is not set # CONFIG_CAN_C_CAN is not set @@ -1490,13 +1654,14 @@ CONFIG_CAN_SOFTING=m # # CAN USB interfaces # +CONFIG_CAN_8DEV_USB=m CONFIG_CAN_EMS_USB=m CONFIG_CAN_ESD_USB2=m CONFIG_CAN_GS_USB=m CONFIG_CAN_KVASER_USB=m -CONFIG_CAN_PEAK_USB=m -CONFIG_CAN_8DEV_USB=m # CONFIG_CAN_MCBA_USB is not set +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_UCAN=m # CONFIG_CAN_DEBUG_DEVICES is not set CONFIG_BT=m CONFIG_BT_BREDR=y @@ -1534,6 +1699,7 @@ CONFIG_BT_HCIUART_ATH3K=y CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART_3WIRE=y CONFIG_BT_HCIUART_INTEL=y +CONFIG_BT_HCIUART_RTL=y CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIUART_AG6XX=y CONFIG_BT_HCIUART_MRVL=y @@ -1545,6 +1711,7 @@ CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m CONFIG_BT_WILINK=m +CONFIG_BT_MTKUART=m CONFIG_BT_QCOMSMD=m CONFIG_BT_HCIRSI=m CONFIG_AF_RXRPC=m @@ -1691,12 +1858,17 @@ CONFIG_GENERIC_ARCH_TOPOLOGY=y # CONFIG_HISILICON_LPC is not set CONFIG_QCOM_EBI2=y # CONFIG_SIMPLE_PM_BUS is not set +CONFIG_SUN50I_DE2_BUS=y CONFIG_SUNXI_RSB=y CONFIG_TEGRA_ACONNECT=y # CONFIG_TEGRA_GMI is not set CONFIG_VEXPRESS_CONFIG=y CONFIG_CONNECTOR=y CONFIG_PROC_EVENTS=y +CONFIG_GNSS=m +CONFIG_GNSS_SERIAL=m +CONFIG_GNSS_SIRF_SERIAL=m +CONFIG_GNSS_UBX_SERIAL=m CONFIG_MTD=m # CONFIG_MTD_TESTS is not set # CONFIG_MTD_REDBOOT_PARTS is not set @@ -1767,12 +1939,14 @@ CONFIG_MTD_SST25L=m # Disk-On-Chip Device Drivers # # CONFIG_MTD_DOCG3 is not set +CONFIG_MTD_NAND_CORE=m CONFIG_MTD_ONENAND=m CONFIG_MTD_ONENAND_VERIFY_WRITE=y # CONFIG_MTD_ONENAND_GENERIC is not set # CONFIG_MTD_ONENAND_OTP is not set CONFIG_MTD_ONENAND_2X_PROGRAM=y # CONFIG_MTD_NAND is not set +CONFIG_MTD_SPI_NAND=m # # LPDDR & LPDDR2 PCM memory drivers @@ -2324,8 +2498,10 @@ CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y # CONFIG_NET_DSA_MV88E6XXX_PTP is not set # CONFIG_NET_DSA_QCA8K is not set +CONFIG_NET_DSA_REALTEK_SMI=m # CONFIG_NET_DSA_SMSC_LAN9303_I2C is not set # CONFIG_NET_DSA_SMSC_LAN9303_MDIO is not set +CONFIG_NET_DSA_VITESSE_VSC73XX=m CONFIG_ETHERNET=y CONFIG_MDIO=m CONFIG_NET_VENDOR_3COM=y @@ -2374,9 +2550,10 @@ CONFIG_BNXT=m CONFIG_BNXT_SRIOV=y CONFIG_BNXT_FLOWER_OFFLOAD=y # CONFIG_BNXT_DCB is not set +CONFIG_BNXT_HWMON=y CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CADENCE=y +CONFIG_NET_VENDOR_CADENCE=y # CONFIG_MACB is not set CONFIG_NET_VENDOR_CAVIUM=y CONFIG_THUNDER_NIC_PF=m @@ -2419,6 +2596,10 @@ CONFIG_SUNDANCE=m CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y CONFIG_NET_VENDOR_EZCHIP=y # CONFIG_EZCHIP_NPS_MANAGEMENT_ENET is not set CONFIG_NET_VENDOR_HISILICON=y @@ -2452,10 +2633,6 @@ CONFIG_I40E_DCB=y CONFIG_I40EVF=m CONFIG_ICE=m # CONFIG_FM10K is not set -CONFIG_NET_VENDOR_EXAR=y -CONFIG_S2IO=m -CONFIG_VXGE=m -# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_JME=m CONFIG_NET_VENDOR_MARVELL=y CONFIG_MVMDIO=m @@ -2475,6 +2652,8 @@ CONFIG_MLX4_CORE_GEN2=y CONFIG_MLX5_CORE=m # CONFIG_MLX5_FPGA is not set CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_RXNFC=y CONFIG_MLX5_MPFS=y CONFIG_MLX5_ESWITCH=y CONFIG_MLX5_CORE_EN_DCB=y @@ -2499,6 +2678,10 @@ CONFIG_FEALNX=m CONFIG_NET_VENDOR_NATSEMI=y CONFIG_NATSEMI=m CONFIG_NS83820=m +CONFIG_NET_VENDOR_NETERION=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m CONFIG_NFP_APP_FLOWER=y @@ -2511,7 +2694,7 @@ CONFIG_NET_VENDOR_NVIDIA=y # CONFIG_FORCEDETH is not set CONFIG_NET_VENDOR_OKI=y # CONFIG_ETHOC is not set -CONFIG_NET_PACKET_ENGINE=y +CONFIG_NET_VENDOR_PACKET_ENGINES=y CONFIG_HAMACHI=m CONFIG_YELLOWFIN=m CONFIG_NET_VENDOR_QLOGIC=y @@ -2885,7 +3068,12 @@ CONFIG_LIBERTAS_THINFIRM_USB=m CONFIG_MWL8K=m CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT7601U=m +CONFIG_MT76_CORE=m +CONFIG_MT76_USB=m +CONFIG_MT76x2_COMMON=m +CONFIG_MT76x0U=m # CONFIG_MT76x2E is not set +CONFIG_MT76x2U=m CONFIG_WLAN_VENDOR_RALINK=y CONFIG_RT2X00=m CONFIG_RT2400PCI=m @@ -2982,6 +3170,7 @@ CONFIG_IEEE802154_ATUSB=m CONFIG_IEEE802154_ADF7242=m # CONFIG_IEEE802154_CA8210 is not set CONFIG_IEEE802154_MCR20A=m +# CONFIG_IEEE802154_HWSIM is not set CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_NETDEV_BACKEND=m # CONFIG_VMXNET3 is not set @@ -3250,7 +3439,6 @@ CONFIG_HW_RANDOM_BCM2835=m # CONFIG_HW_RANDOM_OMAP is not set CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM_HISI=m -CONFIG_HW_RANDOM_MSM=m CONFIG_HW_RANDOM_XGENE=m CONFIG_HW_RANDOM_MESON=m CONFIG_HW_RANDOM_CAVIUM=m @@ -3340,6 +3528,7 @@ CONFIG_I2C_OCORES=m CONFIG_I2C_PCA_PLATFORM=m CONFIG_I2C_PXA=m # CONFIG_I2C_PXA_SLAVE is not set +CONFIG_I2C_QCOM_GENI=m CONFIG_I2C_QUP=m CONFIG_I2C_RK3X=m CONFIG_I2C_SIMTEC=m @@ -3500,6 +3689,7 @@ CONFIG_PINCTRL_MESON_GXL=y CONFIG_PINCTRL_MESON8_PMX=y CONFIG_PINCTRL_MESON_AXG=y CONFIG_PINCTRL_MESON_AXG_PMX=y +CONFIG_PINCTRL_MADERA=m CONFIG_GPIOLIB=y CONFIG_GPIOLIB_FASTPATH_LIMIT=512 CONFIG_OF_GPIO=y @@ -3549,6 +3739,7 @@ CONFIG_GPIO_PCA953X_IRQ=y # # MFD GPIO expanders # +CONFIG_GPIO_MADERA=m CONFIG_GPIO_MAX77620=y # @@ -3600,7 +3791,6 @@ CONFIG_W1_SLAVE_DS2431=m CONFIG_W1_SLAVE_DS2433=m # CONFIG_W1_SLAVE_DS2433_CRC is not set CONFIG_W1_SLAVE_DS2438=m -CONFIG_W1_SLAVE_DS2760=m CONFIG_W1_SLAVE_DS2780=m CONFIG_W1_SLAVE_DS2781=m CONFIG_W1_SLAVE_DS28E04=m @@ -3613,18 +3803,21 @@ CONFIG_POWER_RESET=y # CONFIG_POWER_RESET_GPIO_RESTART is not set CONFIG_POWER_RESET_HISI=y CONFIG_POWER_RESET_MSM=y +CONFIG_POWER_RESET_QCOM_PON=m # CONFIG_POWER_RESET_LTC2952 is not set # CONFIG_POWER_RESET_RESTART is not set CONFIG_POWER_RESET_VEXPRESS=y CONFIG_POWER_RESET_XGENE=y CONFIG_POWER_RESET_SYSCON=y CONFIG_POWER_RESET_SYSCON_POWEROFF=y +CONFIG_REBOOT_MODE=m # CONFIG_SYSCON_REBOOT_MODE is not set CONFIG_POWER_SUPPLY=y # CONFIG_POWER_SUPPLY_DEBUG is not set # CONFIG_PDA_POWER is not set # CONFIG_GENERIC_ADC_BATTERY is not set # CONFIG_TEST_POWER is not set +CONFIG_CHARGER_ADP5061=m # CONFIG_BATTERY_DS2760 is not set # CONFIG_BATTERY_DS2780 is not set # CONFIG_BATTERY_DS2781 is not set @@ -3659,6 +3852,7 @@ CONFIG_CHARGER_QCOM_SMBB=m # CONFIG_CHARGER_SMB347 is not set # CONFIG_BATTERY_GAUGE_LTC2941 is not set # CONFIG_CHARGER_RT9455 is not set +CONFIG_CHARGER_CROS_USBPD=m CONFIG_HWMON=y CONFIG_HWMON_VID=m # CONFIG_HWMON_DEBUG_CHIP is not set @@ -3751,9 +3945,11 @@ CONFIG_SENSORS_NCT6683=m CONFIG_SENSORS_NCT6775=m # CONFIG_SENSORS_NCT7802 is not set # CONFIG_SENSORS_NCT7904 is not set +# CONFIG_SENSORS_NPCM7XX is not set # CONFIG_SENSORS_PCF8591 is not set # CONFIG_PMBUS is not set # CONFIG_SENSORS_PWM_FAN is not set +CONFIG_SENSORS_RASPBERRYPI_HWMON=m # CONFIG_SENSORS_SHT15 is not set CONFIG_SENSORS_SHT21=m # CONFIG_SENSORS_SHT3x is not set @@ -3908,8 +4104,6 @@ CONFIG_SSB_PCIHOST=y CONFIG_SSB_B43_PCI_BRIDGE=y CONFIG_SSB_SDIOHOST_POSSIBLE=y CONFIG_SSB_SDIOHOST=y -# CONFIG_SSB_SILENT is not set -# CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y CONFIG_SSB_DRIVER_PCICORE=y # CONFIG_SSB_DRIVER_GPIO is not set @@ -3943,9 +4137,13 @@ CONFIG_MFD_AXP20X=m # CONFIG_MFD_AXP20X_I2C is not set CONFIG_MFD_AXP20X_RSB=m CONFIG_MFD_CROS_EC=y -CONFIG_MFD_CROS_EC_I2C=m -CONFIG_MFD_CROS_EC_SPI=m # CONFIG_MFD_CROS_EC_CHARDEV is not set +CONFIG_MFD_MADERA=m +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +# CONFIG_MFD_CS47L35 is not set +# CONFIG_MFD_CS47L85 is not set +# CONFIG_MFD_CS47L90 is not set # CONFIG_PMIC_DA903X is not set # CONFIG_MFD_DA9052_SPI is not set # CONFIG_MFD_DA9052_I2C is not set @@ -4033,6 +4231,7 @@ CONFIG_MFD_SYSCON=y # CONFIG_MFD_WM831X_SPI is not set # CONFIG_MFD_WM8350_I2C is not set # CONFIG_MFD_WM8994 is not set +CONFIG_MFD_ROHM_BD718XX=m CONFIG_MFD_VEXPRESS_SYSREG=y # CONFIG_RAVE_SP_CORE is not set CONFIG_REGULATOR=y @@ -4045,6 +4244,7 @@ CONFIG_REGULATOR_FIXED_VOLTAGE=m # CONFIG_REGULATOR_AD5398 is not set # CONFIG_REGULATOR_ANATOP is not set CONFIG_REGULATOR_AXP20X=m +CONFIG_REGULATOR_BD718XX=m # CONFIG_REGULATOR_DA9210 is not set # CONFIG_REGULATOR_DA9211 is not set CONFIG_REGULATOR_FAN53555=m @@ -4282,7 +4482,6 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m @@ -4775,6 +4974,7 @@ CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_DP_CEC is not set CONFIG_DRM_TTM=m CONFIG_DRM_GEM_CMA_HELPER=y CONFIG_DRM_KMS_CMA_HELPER=y @@ -4809,7 +5009,6 @@ CONFIG_DRM_AMDGPU_USERPTR=y # Display Engine Configuration # CONFIG_DRM_AMD_DC=y -# CONFIG_DRM_AMD_DC_FBC is not set # CONFIG_DEBUG_KERNEL_DC is not set # @@ -4825,6 +5024,7 @@ CONFIG_NOUVEAU_DEBUG_DEFAULT=3 # CONFIG_NOUVEAU_DEBUG_MMU is not set CONFIG_DRM_NOUVEAU_BACKLIGHT=y CONFIG_DRM_VGEM=m +# CONFIG_DRM_VKMS is not set CONFIG_DRM_UDL=m CONFIG_DRM_AST=m # CONFIG_DRM_MGAG200 is not set @@ -4858,6 +5058,7 @@ CONFIG_DRM_PANEL_ARM_VERSATILE=m # CONFIG_DRM_PANEL_LVDS is not set CONFIG_DRM_PANEL_SIMPLE=m # CONFIG_DRM_PANEL_ILITEK_IL9322 is not set +# CONFIG_DRM_PANEL_ILITEK_ILI9881C is not set # CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set # CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set # CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set @@ -5018,6 +5219,7 @@ CONFIG_DUMMY_CONSOLE_ROWS=25 CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set # CONFIG_LOGO is not set CONFIG_SOUND=m CONFIG_SOUND_OSS_CORE=y @@ -5199,12 +5401,23 @@ CONFIG_SND_BCM2835_SOC_I2S=m CONFIG_SND_I2S_HI6210_I2S=m # CONFIG_SND_KIRKWOOD_SOC is not set # CONFIG_SND_SOC_IMG is not set + +# +# ASoC support for Amlogic platforms +# +# CONFIG_SND_MESON_AXG_FRDDR is not set +# CONFIG_SND_MESON_AXG_TODDR is not set +# CONFIG_SND_MESON_AXG_TDMIN is not set +# CONFIG_SND_MESON_AXG_TDMOUT is not set +# CONFIG_SND_MESON_AXG_SOUND_CARD is not set +# CONFIG_SND_MESON_AXG_SPDIFOUT is not set CONFIG_SND_SOC_QCOM=m CONFIG_SND_SOC_LPASS_CPU=m CONFIG_SND_SOC_LPASS_PLATFORM=m CONFIG_SND_SOC_LPASS_APQ8016=m # CONFIG_SND_SOC_STORM is not set CONFIG_SND_SOC_APQ8016_SBC=m +CONFIG_SND_SOC_QCOM_COMMON=m CONFIG_SND_SOC_QDSP6_COMMON=m CONFIG_SND_SOC_QDSP6_CORE=m CONFIG_SND_SOC_QDSP6_AFE=m @@ -5215,6 +5428,7 @@ CONFIG_SND_SOC_QDSP6_ASM=m CONFIG_SND_SOC_QDSP6_ASM_DAI=m CONFIG_SND_SOC_QDSP6=m CONFIG_SND_SOC_MSM8996=m +CONFIG_SND_SOC_SDM845=m # CONFIG_SND_SOC_ROCKCHIP is not set # @@ -5284,9 +5498,9 @@ CONFIG_SND_SOC_ALC5632=m # CONFIG_SND_SOC_CS43130 is not set # CONFIG_SND_SOC_CS4349 is not set # CONFIG_SND_SOC_CS53L30 is not set -# CONFIG_SND_SOC_DIO2125 is not set CONFIG_SND_SOC_HDMI_CODEC=m # CONFIG_SND_SOC_ES7134 is not set +# CONFIG_SND_SOC_ES7241 is not set # CONFIG_SND_SOC_ES8316 is not set # CONFIG_SND_SOC_ES8328_I2C is not set # CONFIG_SND_SOC_ES8328_SPI is not set @@ -5317,6 +5531,7 @@ CONFIG_SND_SOC_RT5640=m CONFIG_SND_SOC_RT5677=m CONFIG_SND_SOC_RT5677_SPI=m # CONFIG_SND_SOC_SGTL5000 is not set +# CONFIG_SND_SOC_SIMPLE_AMPLIFIER is not set # CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set # CONFIG_SND_SOC_SPDIF is not set # CONFIG_SND_SOC_SSM2305 is not set @@ -5404,6 +5619,7 @@ CONFIG_HID_BETOP_FF=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_CORSAIR=m +CONFIG_HID_COUGAR=m CONFIG_HID_PRODIKEYS=m CONFIG_HID_CMEDIA=m CONFIG_HID_CP2112=m @@ -5636,6 +5852,7 @@ CONFIG_USB_DWC3_DUAL_ROLE=y # Platform Glue Driver Support # CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_HAPS=m CONFIG_USB_DWC3_OF_SIMPLE=m CONFIG_USB_DWC3_QCOM=m CONFIG_USB_DWC2=m @@ -5887,6 +6104,7 @@ CONFIG_MMC_SDHCI_ACPI=m CONFIG_MMC_SDHCI_PLTFM=m CONFIG_MMC_SDHCI_OF_ARASAN=m # CONFIG_MMC_SDHCI_OF_AT91 is not set +# CONFIG_MMC_SDHCI_OF_DWCMSHC is not set # CONFIG_MMC_SDHCI_CADENCE is not set CONFIG_MMC_SDHCI_TEGRA=m # CONFIG_MMC_SDHCI_PXAV3 is not set @@ -6068,7 +6286,6 @@ CONFIG_RTC_INTF_DEV=y # CONFIG_RTC_DRV_ABB5ZES3 is not set # CONFIG_RTC_DRV_ABX80X is not set CONFIG_RTC_DRV_DS1307=y -CONFIG_RTC_DRV_DS1307_HWMON=y # CONFIG_RTC_DRV_DS1307_CENTURY is not set # CONFIG_RTC_DRV_DS1374 is not set # CONFIG_RTC_DRV_DS1672 is not set @@ -6230,7 +6447,6 @@ CONFIG_VFIO_PCI_MMAP=y CONFIG_VFIO_PCI_INTX=y # CONFIG_VFIO_PLATFORM is not set # CONFIG_VFIO_MDEV is not set -CONFIG_IRQ_BYPASS_MANAGER=y CONFIG_VIRT_DRIVERS=y CONFIG_VIRTIO=m CONFIG_VIRTIO_MENU=y @@ -6249,7 +6465,7 @@ CONFIG_VIRTIO_MMIO=m # Xen driver support # CONFIG_XEN_BALLOON=y -CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_SCRUB_PAGES_DEFAULT=y CONFIG_XEN_DEV_EVTCHN=m CONFIG_XEN_BACKEND=y CONFIG_XENFS=m @@ -6258,6 +6474,7 @@ CONFIG_XEN_SYS_HYPERVISOR=y CONFIG_XEN_XENBUS_FRONTEND=y CONFIG_XEN_GNTDEV=m CONFIG_XEN_GRANT_DEV_ALLOC=m +# CONFIG_XEN_GRANT_DMA_ALLOC is not set CONFIG_SWIOTLB_XEN=y # CONFIG_XEN_PVCALLS_FRONTEND is not set # CONFIG_XEN_PVCALLS_BACKEND is not set @@ -6317,11 +6534,6 @@ CONFIG_88EU_AP_MODE=y # CONFIG_AD9834 is not set # -# Digital gyroscope sensors -# -# CONFIG_ADIS16060 is not set - -# # Network Analyzer, Impedance Converters # # CONFIG_AD5933 is not set @@ -6377,17 +6589,29 @@ CONFIG_BCM_VIDEOCORE=y # CONFIG_BCM2835_VCHIQ is not set # CONFIG_SND_BCM2835 is not set # CONFIG_VIDEO_BCM2835 is not set - -# -# USB Power Delivery and Type-C drivers -# # CONFIG_PI433 is not set CONFIG_MTK_MMC=m # CONFIG_MTK_AEE_KDUMP is not set # CONFIG_MTK_MMC_CD_POLL is not set + +# +# Gasket devices +# +# CONFIG_STAGING_GASKET_FRAMEWORK is not set +# CONFIG_XIL_AXIS_FIFO is not set +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_XATTR=y +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +# CONFIG_EROFS_FS_USE_VM_MAP_RAM is not set +# CONFIG_EROFS_FAULT_INJECTION is not set +# CONFIG_EROFS_FS_ZIP is not set # CONFIG_GOLDFISH is not set CONFIG_CHROME_PLATFORMS=y CONFIG_CHROMEOS_TBMC=m +CONFIG_CROS_EC_I2C=m +CONFIG_CROS_EC_SPI=m CONFIG_CROS_EC_PROTO=y CONFIG_CROS_KBD_LED_BACKLIGHT=m CONFIG_CLKDEV_LOOKUP=y @@ -6402,6 +6626,7 @@ CONFIG_CLK_SP810=y CONFIG_CLK_VEXPRESS_OSC=y # CONFIG_CLK_HSDK is not set # CONFIG_COMMON_CLK_MAX77686 is not set +CONFIG_COMMON_CLK_MAX9485=m CONFIG_COMMON_CLK_RK808=m CONFIG_COMMON_CLK_HI655X=m CONFIG_COMMON_CLK_SCMI=m @@ -6425,10 +6650,12 @@ CONFIG_RESET_HISI=y CONFIG_STUB_CLK_HI6220=y # CONFIG_STUB_CLK_HI3660 is not set CONFIG_COMMON_CLK_AMLOGIC=y +CONFIG_COMMON_CLK_AMLOGIC_AUDIO=y CONFIG_COMMON_CLK_MESON_AO=y CONFIG_COMMON_CLK_REGMAP_MESON=y CONFIG_COMMON_CLK_GXBB=y CONFIG_COMMON_CLK_AXG=y +CONFIG_COMMON_CLK_AXG_AUDIO=m CONFIG_ARMADA_37XX_CLK=y CONFIG_ARMADA_AP806_SYSCON=y CONFIG_ARMADA_CP110_SYSCON=y @@ -6460,6 +6687,7 @@ CONFIG_MSM_MMCC_8996=y CONFIG_MSM_GCC_8998=m CONFIG_SDM_GCC_845=m CONFIG_SDM_VIDEOCC_845=m +CONFIG_SDM_DISPCC_845=m # CONFIG_SPMI_PMIC_CLKDIV is not set CONFIG_SUNXI_CCU=y CONFIG_SUN50I_A64_CCU=y @@ -6512,6 +6740,8 @@ CONFIG_IOMMU_IO_PGTABLE=y CONFIG_IOMMU_IO_PGTABLE_LPAE=y # CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set # CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_IOMMU_IOVA=y CONFIG_OF_IOMMU=y CONFIG_IOMMU_DMA=y @@ -6554,6 +6784,10 @@ CONFIG_RASPBERRYPI_POWER=y # CONFIG_SOC_BRCMSTB is not set # +# NXP/Freescale QorIQ SoC drivers +# + +# # i.MX SoC drivers # @@ -6563,8 +6797,11 @@ CONFIG_RASPBERRYPI_POWER=y # CONFIG_QCOM_COMMAND_DB is not set CONFIG_QCOM_GENI_SE=m CONFIG_QCOM_GSBI=m +CONFIG_QCOM_LLCC=m +CONFIG_QCOM_SDM845_LLCC=m CONFIG_QCOM_MDT_LOADER=m # CONFIG_QCOM_RMTFS_MEM is not set +# CONFIG_QCOM_RPMH is not set CONFIG_QCOM_SMD_RPM=m CONFIG_QCOM_WCNSS_CTRL=m CONFIG_QCOM_APR=m @@ -6727,6 +6964,7 @@ CONFIG_VIPERBOARD_ADC=m # Chemical Sensors # # CONFIG_ATLAS_PH_SENSOR is not set +# CONFIG_BME680 is not set # CONFIG_CCS811 is not set # CONFIG_IAQCORE is not set # CONFIG_VZ89X is not set @@ -6764,6 +7002,7 @@ CONFIG_AD5446=m # CONFIG_AD5686_SPI is not set # CONFIG_AD5696_I2C is not set # CONFIG_AD5755 is not set +# CONFIG_AD5758 is not set # CONFIG_AD5761 is not set # CONFIG_AD5764 is not set # CONFIG_AD5791 is not set @@ -6876,6 +7115,7 @@ CONFIG_HID_SENSOR_PROX=m # CONFIG_MAX44000 is not set # CONFIG_OPT3001 is not set # CONFIG_PA12203001 is not set +# CONFIG_SI1133 is not set # CONFIG_SI1145 is not set # CONFIG_STK3310 is not set # CONFIG_ST_UVIS25 is not set @@ -6965,6 +7205,7 @@ CONFIG_HID_SENSOR_PRESS=m # # Proximity and distance sensors # +# CONFIG_ISL29501 is not set # CONFIG_LIDAR_LITE_V2 is not set # CONFIG_RFD77402 is not set # CONFIG_SRF04 is not set @@ -7024,6 +7265,8 @@ CONFIG_MESON_IRQ_GPIO=y CONFIG_ARCH_HAS_RESET_CONTROLLER=y CONFIG_RESET_CONTROLLER=y CONFIG_RESET_MESON=y +# CONFIG_RESET_MESON_AUDIO_ARB is not set +# CONFIG_RESET_QCOM_AOSS is not set CONFIG_RESET_SIMPLE=y CONFIG_RESET_SUNXI=y # CONFIG_RESET_TI_SYSCON is not set @@ -7119,88 +7362,12 @@ CONFIG_TEE=m # TEE drivers # CONFIG_OPTEE=m +CONFIG_OPTEE_SHM_NUM_PRIV_PAGES=1 CONFIG_PM_OPP=y # CONFIG_SIOX is not set # CONFIG_SLIMBUS is not set # -# Firmware Drivers -# -CONFIG_ARM_PSCI_FW=y -# CONFIG_ARM_PSCI_CHECKER is not set -CONFIG_ARM_SCMI_PROTOCOL=y -CONFIG_ARM_SCMI_POWER_DOMAIN=m -# CONFIG_ARM_SCPI_PROTOCOL is not set -# CONFIG_ARM_SDE_INTERFACE is not set -# CONFIG_FIRMWARE_MEMMAP is not set -CONFIG_DMIID=y -CONFIG_DMI_SYSFS=y -CONFIG_RASPBERRYPI_FIRMWARE=y -# CONFIG_FW_CFG_SYSFS is not set -CONFIG_QCOM_SCM=y -CONFIG_QCOM_SCM_64=y -# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set -CONFIG_HAVE_ARM_SMCCC=y -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# EFI (Extensible Firmware Interface) Support -# -CONFIG_EFI_VARS=m -CONFIG_EFI_ESRT=y -CONFIG_EFI_VARS_PSTORE=m -# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set -CONFIG_EFI_PARAMS_FROM_FDT=y -CONFIG_EFI_RUNTIME_WRAPPERS=y -CONFIG_EFI_ARMSTUB=y -# CONFIG_EFI_BOOTLOADER_CONTROL is not set -# CONFIG_EFI_CAPSULE_LOADER is not set -# CONFIG_EFI_TEST is not set -# CONFIG_RESET_ATTACK_MITIGATION is not set -CONFIG_MESON_SM=y - -# -# Tegra firmware driver -# -CONFIG_TEGRA_IVC=y -CONFIG_TEGRA_BPMP=y -CONFIG_ACPI=y -CONFIG_ACPI_GENERIC_GSI=y -CONFIG_ACPI_CCA_REQUIRED=y -# CONFIG_ACPI_DEBUGGER is not set -CONFIG_ACPI_SPCR_TABLE=y -# CONFIG_ACPI_EC_DEBUGFS is not set -CONFIG_ACPI_BUTTON=y -CONFIG_ACPI_FAN=y -CONFIG_ACPI_TAD=m -# CONFIG_ACPI_DOCK is not set -CONFIG_ACPI_PROCESSOR_IDLE=y -CONFIG_ACPI_MCFG=y -CONFIG_ACPI_CPPC_LIB=y -CONFIG_ACPI_PROCESSOR=y -# CONFIG_ACPI_IPMI is not set -CONFIG_ACPI_HOTPLUG_CPU=y -CONFIG_ACPI_THERMAL=y -CONFIG_ACPI_NUMA=y -CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y -CONFIG_ACPI_TABLE_UPGRADE=y -# CONFIG_ACPI_DEBUG is not set -# CONFIG_ACPI_PCI_SLOT is not set -CONFIG_ACPI_CONTAINER=y -# CONFIG_ACPI_HED is not set -# CONFIG_ACPI_CUSTOM_METHOD is not set -# CONFIG_ACPI_BGRT is not set -CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y -CONFIG_ACPI_NFIT=y -CONFIG_HAVE_ACPI_APEI=y -# CONFIG_ACPI_APEI is not set -# CONFIG_PMIC_OPREGION is not set -# CONFIG_ACPI_CONFIGFS is not set -CONFIG_ACPI_IORT=y -CONFIG_ACPI_GTDT=y -CONFIG_ACPI_PPTT=y - -# # File systems # CONFIG_DCACHE_WORD_ACCESS=y @@ -7289,6 +7456,7 @@ CONFIG_OVERLAY_FS=m CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y # CONFIG_OVERLAY_FS_INDEX is not set # CONFIG_OVERLAY_FS_XINO_AUTO is not set +# CONFIG_OVERLAY_FS_METACOPY is not set # # Caches @@ -7353,7 +7521,6 @@ CONFIG_ECRYPT_FS=m CONFIG_ECRYPT_FS_MESSAGING=y CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m -# CONFIG_HFSPLUS_FS_POSIX_ACL is not set CONFIG_BEFS_FS=m # CONFIG_BEFS_DEBUG is not set CONFIG_BFS_FS=m @@ -7380,6 +7547,7 @@ CONFIG_UBIFS_FS_ADVANCED_COMPR=y CONFIG_UBIFS_FS_LZO=y CONFIG_UBIFS_FS_ZLIB=y # CONFIG_UBIFS_ATIME_SUPPORT is not set +CONFIG_UBIFS_FS_XATTR=y # CONFIG_UBIFS_FS_ENCRYPTION is not set CONFIG_UBIFS_FS_SECURITY=y # CONFIG_CRAMFS is not set @@ -7417,6 +7585,7 @@ CONFIG_PSTORE_DEFLATE_COMPRESS=m # CONFIG_PSTORE_LZ4_COMPRESS is not set # CONFIG_PSTORE_LZ4HC_COMPRESS is not set # CONFIG_PSTORE_842_COMPRESS is not set +# CONFIG_PSTORE_ZSTD_COMPRESS is not set CONFIG_PSTORE_COMPRESS=y CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" @@ -7477,7 +7646,8 @@ CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y CONFIG_CIFS=m -# CONFIG_CIFS_STATS is not set +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_CIFS_UPCALL=y CONFIG_CIFS_XATTR=y @@ -7487,7 +7657,6 @@ CONFIG_CIFS_DEBUG=y # CONFIG_CIFS_DEBUG2 is not set # CONFIG_CIFS_DEBUG_DUMP_KEYS is not set CONFIG_CIFS_DFS_UPCALL=y -# CONFIG_CIFS_SMB311 is not set # CONFIG_CIFS_SMB_DIRECT is not set CONFIG_CIFS_FSCACHE=y CONFIG_CODA_FS=m @@ -7551,253 +7720,6 @@ CONFIG_NLS_MAC_TURKISH=m CONFIG_NLS_UTF8=m CONFIG_DLM=m CONFIG_DLM_DEBUG=y -CONFIG_HAVE_KVM_IRQCHIP=y -CONFIG_HAVE_KVM_IRQFD=y -CONFIG_HAVE_KVM_IRQ_ROUTING=y -CONFIG_HAVE_KVM_EVENTFD=y -CONFIG_KVM_MMIO=y -CONFIG_HAVE_KVM_MSI=y -CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y -CONFIG_KVM_VFIO=y -CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y -CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y -CONFIG_HAVE_KVM_IRQ_BYPASS=y -CONFIG_HAVE_KVM_VCPU_RUN_PID_CHANGE=y -CONFIG_VIRTUALIZATION=y -CONFIG_KVM=y -CONFIG_KVM_ARM_HOST=y -CONFIG_KVM_ARM_PMU=y -CONFIG_KVM_INDIRECT_VECTORS=y -CONFIG_VHOST_NET=m -CONFIG_VHOST_SCSI=m -CONFIG_VHOST_VSOCK=m -CONFIG_VHOST=m -# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set - -# -# Kernel hacking -# - -# -# printk and dmesg options -# -CONFIG_PRINTK_TIME=y -CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 -CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 -CONFIG_BOOT_PRINTK_DELAY=y -CONFIG_DYNAMIC_DEBUG=y - -# -# Compile-time checks and compiler options -# -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_INFO_SPLIT is not set -# CONFIG_DEBUG_INFO_DWARF4 is not set -# CONFIG_GDB_SCRIPTS is not set -CONFIG_ENABLE_WARN_DEPRECATED=y -CONFIG_ENABLE_MUST_CHECK=y -CONFIG_FRAME_WARN=2048 -CONFIG_STRIP_ASM_SYMS=y -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_PAGE_OWNER is not set -CONFIG_DEBUG_FS=y -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_SECTION_MISMATCH_WARN_ONLY=y -CONFIG_ARCH_WANT_FRAME_POINTERS=y -CONFIG_FRAME_POINTER=y -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -CONFIG_MAGIC_SYSRQ=y -CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 -CONFIG_MAGIC_SYSRQ_SERIAL=y -CONFIG_DEBUG_KERNEL=y - -# -# Memory Debugging -# -CONFIG_PAGE_EXTENSION=y -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_PAGE_POISONING=y -CONFIG_PAGE_POISONING_NO_SANITY=y -# CONFIG_PAGE_POISONING_ZERO is not set -# CONFIG_DEBUG_PAGE_REF is not set -# CONFIG_DEBUG_RODATA_TEST is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SLUB_DEBUG_ON is not set -# CONFIG_SLUB_STATS is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_VM is not set -CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y -# CONFIG_DEBUG_VIRTUAL is not set -CONFIG_DEBUG_MEMORY_INIT=y -# CONFIG_DEBUG_PER_CPU_MAPS is not set -CONFIG_HAVE_ARCH_KASAN=y -# CONFIG_KASAN is not set -CONFIG_ARCH_HAS_KCOV=y -CONFIG_CC_HAS_SANCOV_TRACE_PC=y -# CONFIG_KCOV is not set -# CONFIG_DEBUG_SHIRQ is not set - -# -# Debug Lockups and Hangs -# -CONFIG_LOCKUP_DETECTOR=y -CONFIG_SOFTLOCKUP_DETECTOR=y -# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -# CONFIG_WQ_WATCHDOG is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_PANIC_TIMEOUT=0 -CONFIG_SCHED_DEBUG=y -CONFIG_SCHED_INFO=y -CONFIG_SCHEDSTATS=y -CONFIG_SCHED_STACK_END_CHECK=y -# CONFIG_DEBUG_TIMEKEEPING is not set - -# -# Lock Debugging (spinlocks, mutexes, etc...) -# -CONFIG_LOCK_DEBUGGING_SUPPORT=y -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set -# CONFIG_DEBUG_RWSEMS is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_LOCK_TORTURE_TEST is not set -# CONFIG_WW_MUTEX_SELFTEST is not set -CONFIG_STACKTRACE=y -# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_HAVE_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_BUGVERBOSE=y -CONFIG_DEBUG_LIST=y -# CONFIG_DEBUG_PI_LIST is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set - -# -# RCU Debugging -# -# CONFIG_RCU_PERF_TEST is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=21 -# CONFIG_RCU_TRACE is not set -# CONFIG_RCU_EQS_DEBUG is not set -# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set -CONFIG_NOTIFIER_ERROR_INJECTION=m -CONFIG_PM_NOTIFIER_ERROR_INJECT=m -# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_LATENCYTOP is not set -CONFIG_NOP_TRACER=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACER_MAX_TRACE=y -CONFIG_TRACE_CLOCK=y -CONFIG_RING_BUFFER=y -CONFIG_EVENT_TRACING=y -CONFIG_CONTEXT_SWITCH_TRACER=y -CONFIG_TRACING=y -CONFIG_GENERIC_TRACER=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -CONFIG_FUNCTION_TRACER=y -CONFIG_FUNCTION_GRAPH_TRACER=y -# CONFIG_PREEMPTIRQ_EVENTS is not set -# CONFIG_IRQSOFF_TRACER is not set -# CONFIG_SCHED_TRACER is not set -# CONFIG_HWLAT_TRACER is not set -CONFIG_FTRACE_SYSCALLS=y -CONFIG_TRACER_SNAPSHOT=y -# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -# CONFIG_PROFILE_ALL_BRANCHES is not set -CONFIG_STACK_TRACER=y -CONFIG_BLK_DEV_IO_TRACE=y -CONFIG_KPROBE_EVENTS=y -CONFIG_UPROBE_EVENTS=y -CONFIG_BPF_EVENTS=y -CONFIG_PROBE_EVENTS=y -CONFIG_DYNAMIC_FTRACE=y -# CONFIG_FUNCTION_PROFILER is not set -CONFIG_FTRACE_MCOUNT_RECORD=y -# CONFIG_FTRACE_STARTUP_TEST is not set -# CONFIG_HIST_TRIGGERS is not set -# CONFIG_TRACEPOINT_BENCHMARK is not set -# CONFIG_RING_BUFFER_BENCHMARK is not set -# CONFIG_RING_BUFFER_STARTUP_TEST is not set -# CONFIG_TRACE_EVAL_MAP_FILE is not set -CONFIG_TRACING_EVENTS_GPIO=y -# CONFIG_DMA_API_DEBUG is not set -CONFIG_RUNTIME_TESTING_MENU=y -# CONFIG_LKDTM is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_TEST_SORT is not set -# CONFIG_KPROBES_SANITY_TEST is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_PERCPU_TEST is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_ASYNC_RAID6_TEST is not set -# CONFIG_TEST_HEXDUMP is not set -# CONFIG_TEST_STRING_HELPERS is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_TEST_PRINTF is not set -# CONFIG_TEST_BITMAP is not set -# CONFIG_TEST_UUID is not set -# CONFIG_TEST_OVERFLOW is not set -# CONFIG_TEST_RHASHTABLE is not set -# CONFIG_TEST_HASH is not set -# CONFIG_TEST_LKM is not set -CONFIG_TEST_USER_COPY=m -CONFIG_TEST_BPF=m -# CONFIG_FIND_BIT_BENCHMARK is not set -CONFIG_TEST_FIRMWARE=m -# CONFIG_TEST_SYSCTL is not set -# CONFIG_TEST_UDELAY is not set -CONFIG_TEST_STATIC_KEYS=m -# CONFIG_TEST_KMOD is not set -# CONFIG_MEMTEST is not set -CONFIG_BUG_ON_DATA_CORRUPTION=y -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y -# CONFIG_UBSAN is not set -CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y -CONFIG_STRICT_DEVMEM=y -CONFIG_IO_STRICT_DEVMEM=y -# CONFIG_ARM64_PTDUMP_DEBUGFS is not set -# CONFIG_PID_IN_CONTEXTIDR is not set -# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set -# CONFIG_DEBUG_WX is not set -# CONFIG_DEBUG_ALIGN_RODATA is not set -# CONFIG_DEBUG_EFI is not set -# CONFIG_ARM64_RELOC_TEST is not set -# CONFIG_CORESIGHT is not set # # Security options @@ -8019,12 +7941,14 @@ CONFIG_CRYPTO_DEV_NITROX=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m # CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set CONFIG_CRYPTO_DEV_QCE=m +CONFIG_CRYPTO_DEV_QCOM_RNG=m # CONFIG_CRYPTO_DEV_ROCKCHIP is not set CONFIG_CRYPTO_DEV_CHELSIO=m # CONFIG_CHELSIO_IPSEC_INLINE is not set CONFIG_CRYPTO_DEV_VIRTIO=m CONFIG_CRYPTO_DEV_SAFEXCEL=m # CONFIG_CRYPTO_DEV_CCREE is not set +CONFIG_CRYPTO_DEV_HISI_SEC=m CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y CONFIG_X509_CERTIFICATE_PARSER=y @@ -8040,26 +7964,6 @@ CONFIG_SYSTEM_TRUSTED_KEYS="" # CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set # CONFIG_SECONDARY_TRUSTED_KEYRING is not set # CONFIG_SYSTEM_BLACKLIST_KEYRING is not set -CONFIG_ARM64_CRYPTO=y -CONFIG_CRYPTO_SHA256_ARM64=m -# CONFIG_CRYPTO_SHA512_ARM64 is not set -CONFIG_CRYPTO_SHA1_ARM64_CE=m -CONFIG_CRYPTO_SHA2_ARM64_CE=m -# CONFIG_CRYPTO_SHA512_ARM64_CE is not set -# CONFIG_CRYPTO_SHA3_ARM64 is not set -# CONFIG_CRYPTO_SM3_ARM64_CE is not set -# CONFIG_CRYPTO_SM4_ARM64_CE is not set -CONFIG_CRYPTO_GHASH_ARM64_CE=m -# CONFIG_CRYPTO_CRCT10DIF_ARM64_CE is not set -CONFIG_CRYPTO_CRC32_ARM64_CE=y -CONFIG_CRYPTO_AES_ARM64=m -CONFIG_CRYPTO_AES_ARM64_CE=m -CONFIG_CRYPTO_AES_ARM64_CE_CCM=m -CONFIG_CRYPTO_AES_ARM64_CE_BLK=m -# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set -# CONFIG_CRYPTO_CHACHA20_NEON is not set -# CONFIG_CRYPTO_AES_ARM64_BS is not set -CONFIG_CRYPTO_SPECK_NEON=m CONFIG_BINARY_PRINTF=y # @@ -8086,6 +7990,7 @@ CONFIG_CRC32_SLICEBY8=y # CONFIG_CRC32_SLICEBY4 is not set # CONFIG_CRC32_SARWATE is not set # CONFIG_CRC32_BIT is not set +CONFIG_CRC64=m # CONFIG_CRC4 is not set CONFIG_CRC7=m CONFIG_LIBCRC32C=m @@ -8161,9 +8066,238 @@ CONFIG_FONT_SUPPORT=y # CONFIG_FONTS is not set CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y +CONFIG_SG_SPLIT=y CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_ARCH_HAS_PMEM_API=y CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y CONFIG_SBITMAP=y # CONFIG_STRING_SELFTEST is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +# CONFIG_DEBUG_INFO_DWARF4 is not set +# CONFIG_GDB_SCRIPTS is not set +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +CONFIG_STRIP_ASM_SYMS=y +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +CONFIG_PAGE_EXTENSION=y +# CONFIG_DEBUG_PAGEALLOC is not set +CONFIG_PAGE_POISONING=y +CONFIG_PAGE_POISONING_NO_SANITY=y +# CONFIG_PAGE_POISONING_ZERO is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_ARCH_KASAN=y +# CONFIG_KASAN is not set +CONFIG_ARCH_HAS_KCOV=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +# CONFIG_KCOV is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +CONFIG_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_LIST=y +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_HWLAT_TRACER is not set +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENTS=y +CONFIG_UPROBE_EVENTS=y +CONFIG_BPF_EVENTS=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +# CONFIG_FUNCTION_PROFILER is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_HIST_TRIGGERS is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_RUNTIME_TESTING_MENU=y +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_ASYNC_RAID6_TEST is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_BITMAP is not set +# CONFIG_TEST_BITFIELD is not set +# CONFIG_TEST_UUID is not set +# CONFIG_TEST_OVERFLOW is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_HASH is not set +# CONFIG_TEST_IDA is not set +# CONFIG_TEST_LKM is not set +CONFIG_TEST_USER_COPY=m +CONFIG_TEST_BPF=m +# CONFIG_FIND_BIT_BENCHMARK is not set +CONFIG_TEST_FIRMWARE=m +# CONFIG_TEST_SYSCTL is not set +# CONFIG_TEST_UDELAY is not set +CONFIG_TEST_STATIC_KEYS=m +# CONFIG_TEST_KMOD is not set +# CONFIG_MEMTEST is not set +CONFIG_BUG_ON_DATA_CORRUPTION=y +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_STRICT_DEVMEM=y +CONFIG_IO_STRICT_DEVMEM=y +# CONFIG_ARM64_PTDUMP_DEBUGFS is not set +# CONFIG_PID_IN_CONTEXTIDR is not set +# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set +# CONFIG_DEBUG_WX is not set +# CONFIG_DEBUG_ALIGN_RODATA is not set +# CONFIG_DEBUG_EFI is not set +# CONFIG_ARM64_RELOC_TEST is not set +# CONFIG_CORESIGHT is not set diff --git a/gnu/packages/aux-files/linux-libre/4.18-i686.conf b/gnu/packages/aux-files/linux-libre/4.19-i686.conf index 859b8b10b6..c1df3f0f49 100644 --- a/gnu/packages/aux-files/linux-libre/4.18-i686.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-i686.conf @@ -1,47 +1,11 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.18.9-gnu Kernel Configuration +# Linux/x86 4.19.0-gnu Kernel Configuration # # # Compiler: gcc (GCC) 7.3.0 # -# CONFIG_64BIT is not set -CONFIG_X86_32=y -CONFIG_X86=y -CONFIG_INSTRUCTION_DECODER=y -CONFIG_OUTPUT_FORMAT="elf32-i386" -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_MMU=y -CONFIG_ARCH_MMAP_RND_BITS_MIN=8 -CONFIG_ARCH_MMAP_RND_BITS_MAX=16 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_FILTER_PGPROT=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y -CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y -CONFIG_ARCH_WANT_GENERAL_HUGETLB=y -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_HAVE_INTEL_TXT=y -CONFIG_X86_32_SMP=y -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_PGTABLE_LEVELS=3 CONFIG_CC_IS_GCC=y CONFIG_GCC_VERSION=70300 CONFIG_CLANG_VERSION=0 @@ -56,6 +20,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="" # CONFIG_LOCALVERSION_AUTO is not set +CONFIG_BUILD_SALT="" CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y CONFIG_HAVE_KERNEL_LZMA=y @@ -118,6 +83,9 @@ CONFIG_NO_HZ_COMMON=y CONFIG_NO_HZ_IDLE=y CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set # # CPU/Task time and stats accounting @@ -153,6 +121,7 @@ CONFIG_PAGE_COUNTER=y CONFIG_MEMCG=y CONFIG_MEMCG_SWAP=y # CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_CGROUP_WRITEBACK=y @@ -178,6 +147,7 @@ CONFIG_IPC_NS=y CONFIG_USER_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y +CONFIG_CHECKPOINT_RESTORE=y CONFIG_SCHED_AUTOGROUP=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y @@ -221,7 +191,6 @@ CONFIG_SHMEM=y CONFIG_AIO=y CONFIG_ADVISE_SYSCALLS=y CONFIG_MEMBARRIER=y -CONFIG_CHECKPOINT_RESTORE=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y CONFIG_KALLSYMS_BASE_RELATIVE=y @@ -253,178 +222,43 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y CONFIG_TRACEPOINTS=y -CONFIG_CRASH_CORE=y -CONFIG_KEXEC_CORE=y -CONFIG_HOTPLUG_SMT=y -CONFIG_OPROFILE=m -# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_OPROFILE_NMI_TIMER=y -CONFIG_KPROBES=y -CONFIG_JUMP_LABEL=y -# CONFIG_STATIC_KEYS_SELFTEST is not set -CONFIG_OPTPROBES=y -CONFIG_KPROBES_ON_FTRACE=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_ARCH_USE_BUILTIN_BSWAP=y -CONFIG_KRETPROBES=y -CONFIG_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_KPROBES_ON_FTRACE=y -CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y -CONFIG_HAVE_NMI=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_ARCH_HAS_FORTIFY_SOURCE=y -CONFIG_ARCH_HAS_SET_MEMORY=y -CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y -CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_RSEQ=y -CONFIG_HAVE_CLK=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y -CONFIG_HAVE_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_PERF_EVENTS_NMI=y -CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_HAVE_RCU_TABLE_FREE=y -CONFIG_HAVE_RCU_TABLE_INVALIDATE=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP_FILTER=y -CONFIG_PLUGIN_HOSTCC="" -CONFIG_HAVE_GCC_PLUGINS=y -CONFIG_HAVE_STACKPROTECTOR=y -CONFIG_CC_HAS_STACKPROTECTOR_NONE=y -CONFIG_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR_STRONG=y -CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_HAVE_ARCH_HUGE_VMAP=y -CONFIG_HAVE_MOD_ARCH_SPECIFIC=y -CONFIG_MODULES_USE_ELF_REL=y -CONFIG_ARCH_HAS_ELF_RANDOMIZE=y -CONFIG_HAVE_ARCH_MMAP_RND_BITS=y -CONFIG_HAVE_EXIT_THREAD=y -CONFIG_ARCH_MMAP_RND_BITS=8 -CONFIG_HAVE_COPY_THREAD_TLS=y -CONFIG_ISA_BUS_API=y -CONFIG_CLONE_BACKWARDS=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_OLD_SIGACTION=y -CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y -CONFIG_STRICT_KERNEL_RWX=y -CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y -CONFIG_STRICT_MODULE_RWX=y -CONFIG_ARCH_HAS_REFCOUNT=y -CONFIG_REFCOUNT_FULL=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -# CONFIG_MODULE_FORCE_UNLOAD is not set -CONFIG_MODVERSIONS=y -CONFIG_MODULE_SRCVERSION_ALL=y -# CONFIG_MODULE_SIG is not set -# CONFIG_MODULE_COMPRESS is not set -CONFIG_MODULES_TREE_LOOKUP=y -CONFIG_BLOCK=y -CONFIG_LBDAF=y -CONFIG_BLK_SCSI_REQUEST=y -CONFIG_BLK_DEV_BSG=y -CONFIG_BLK_DEV_BSGLIB=y -CONFIG_BLK_DEV_INTEGRITY=y -CONFIG_BLK_DEV_ZONED=y -CONFIG_BLK_DEV_THROTTLING=y -# CONFIG_BLK_DEV_THROTTLING_LOW is not set -CONFIG_BLK_CMDLINE_PARSER=y -CONFIG_BLK_WBT=y -# CONFIG_BLK_WBT_SQ is not set -CONFIG_BLK_WBT_MQ=y -CONFIG_BLK_DEBUG_FS=y -# CONFIG_BLK_SED_OPAL is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -CONFIG_AIX_PARTITION=y -CONFIG_OSF_PARTITION=y -CONFIG_AMIGA_PARTITION=y -CONFIG_ATARI_PARTITION=y -CONFIG_MAC_PARTITION=y -CONFIG_MSDOS_PARTITION=y -CONFIG_BSD_DISKLABEL=y -CONFIG_MINIX_SUBPARTITION=y -CONFIG_SOLARIS_X86_PARTITION=y -CONFIG_UNIXWARE_DISKLABEL=y -CONFIG_LDM_PARTITION=y -# CONFIG_LDM_DEBUG is not set -CONFIG_SGI_PARTITION=y -CONFIG_ULTRIX_PARTITION=y -CONFIG_SUN_PARTITION=y -CONFIG_KARMA_PARTITION=y -CONFIG_EFI_PARTITION=y -CONFIG_SYSV68_PARTITION=y -CONFIG_CMDLINE_PARTITION=y -CONFIG_BLK_MQ_PCI=y -CONFIG_BLK_MQ_VIRTIO=y -CONFIG_BLK_MQ_RDMA=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -CONFIG_CFQ_GROUP_IOSCHED=y -CONFIG_DEFAULT_DEADLINE=y -# CONFIG_DEFAULT_CFQ is not set -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="deadline" -CONFIG_MQ_IOSCHED_DEADLINE=m -CONFIG_MQ_IOSCHED_KYBER=m -CONFIG_IOSCHED_BFQ=m -# CONFIG_BFQ_GROUP_IOSCHED is not set -CONFIG_PREEMPT_NOTIFIERS=y -CONFIG_PADATA=y -CONFIG_ASN1=y -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y -CONFIG_MUTEX_SPIN_ON_OWNER=y -CONFIG_RWSEM_SPIN_ON_OWNER=y -CONFIG_LOCK_SPIN_ON_OWNER=y -CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y -CONFIG_QUEUED_SPINLOCKS=y -CONFIG_ARCH_USE_QUEUED_RWLOCKS=y -CONFIG_QUEUED_RWLOCKS=y -CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +# CONFIG_64BIT is not set +CONFIG_X86_32=y +CONFIG_X86=y +CONFIG_INSTRUCTION_DECODER=y +CONFIG_OUTPUT_FORMAT="elf32-i386" +CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=8 +CONFIG_ARCH_MMAP_RND_BITS_MAX=16 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_X86_32_SMP=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=3 CONFIG_CC_HAS_SANE_STACKPROTECTOR=y -CONFIG_FREEZER=y # # Processor type and features @@ -520,9 +354,6 @@ CONFIG_NR_CPUS=8 CONFIG_SCHED_SMT=y CONFIG_SCHED_MC=y CONFIG_SCHED_MC_PRIO=y -# CONFIG_PREEMPT_NONE is not set -CONFIG_PREEMPT_VOLUNTARY=y -# CONFIG_PREEMPT is not set CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y @@ -568,57 +399,6 @@ CONFIG_ARCH_FLATMEM_ENABLE=y CONFIG_ARCH_SPARSEMEM_ENABLE=y CONFIG_ARCH_SELECT_MEMORY_MODEL=y CONFIG_ILLEGAL_POINTER_VALUE=0 -CONFIG_SELECT_MEMORY_MODEL=y -# CONFIG_FLATMEM_MANUAL is not set -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_HAVE_GENERIC_GUP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -CONFIG_MEMORY_ISOLATION=y -CONFIG_MEMORY_HOTPLUG=y -CONFIG_MEMORY_HOTPLUG_SPARSE=y -# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set -CONFIG_MEMORY_HOTREMOVE=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y -CONFIG_MEMORY_BALLOON=y -CONFIG_BALLOON_COMPACTION=y -CONFIG_COMPACTION=y -CONFIG_MIGRATION=y -CONFIG_PHYS_ADDR_T_64BIT=y -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -CONFIG_MMU_NOTIFIER=y -CONFIG_KSM=y -CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 -CONFIG_TRANSPARENT_HUGEPAGE=y -CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y -# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set -CONFIG_TRANSPARENT_HUGE_PAGECACHE=y -CONFIG_CLEANCACHE=y -CONFIG_FRONTSWAP=y -CONFIG_CMA=y -# CONFIG_CMA_DEBUG is not set -# CONFIG_CMA_DEBUGFS is not set -CONFIG_CMA_AREAS=7 -CONFIG_ZSWAP=y -CONFIG_ZPOOL=y -CONFIG_ZBUD=y -CONFIG_Z3FOLD=m -CONFIG_ZSMALLOC=y -CONFIG_PGTABLE_MAPPING=y -# CONFIG_ZSMALLOC_STAT is not set -CONFIG_GENERIC_EARLY_IOREMAP=y -# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set -CONFIG_IDLE_PAGE_TRACKING=y -CONFIG_FRAME_VECTOR=y -# CONFIG_PERCPU_STATS is not set -# CONFIG_GUP_BENCHMARK is not set -CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_X86_PMEM_LEGACY_DEVICE=y CONFIG_X86_PMEM_LEGACY=y CONFIG_HIGHPTE=y @@ -660,6 +440,7 @@ CONFIG_HOTPLUG_CPU=y CONFIG_MODIFY_LDT_SYSCALL=y CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y # # Power management and ACPI options @@ -686,6 +467,7 @@ CONFIG_PM_TRACE=y CONFIG_PM_TRACE_RTC=y CONFIG_PM_CLK=y CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_ARCH_SUPPORTS_ACPI=y CONFIG_ACPI=y CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y @@ -934,7 +716,255 @@ CONFIG_RAPIDIO_RXS_GEN3=m # CONFIG_X86_SYSFB is not set # -# Executable file formats / Emulations +# Binary Emulations +# +CONFIG_COMPAT_32=y +CONFIG_HAVE_ATOMIC_IOMAP=y +CONFIG_HAVE_GENERIC_GUP=y + +# +# Firmware Drivers +# +CONFIG_EDD=y +CONFIG_EDD_OFF=y +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_DELL_RBU=m +CONFIG_DCDBAS=m +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=m +CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_IBFT=m +CONFIG_FW_CFG_SYSFS=m +# CONFIG_FW_CFG_SYSFS_CMDLINE is not set +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_VARS=y +CONFIG_EFI_ESRT=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFI_RUNTIME_MAP=y +# CONFIG_EFI_FAKE_MEMMAP is not set +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_BOOTLOADER_CONTROL=m +CONFIG_EFI_CAPSULE_LOADER=y +CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH=y +# CONFIG_EFI_TEST is not set +CONFIG_APPLE_PROPERTIES=y +CONFIG_RESET_ATTACK_MITIGATION=y +CONFIG_UEFI_CPER=y +CONFIG_UEFI_CPER_X86=y +CONFIG_EFI_DEV_PATH_PARSER=y + +# +# Tegra firmware driver +# +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_MMIO=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_KVM_VFIO=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=m +CONFIG_KVM_INTEL=m +CONFIG_KVM_AMD=m +# CONFIG_KVM_MMU_AUDIT is not set +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VSOCK=m +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set + +# +# General architecture-dependent options +# +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_HOTPLUG_SMT=y +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_HAVE_OPROFILE=y +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_OPTPROBES=y +CONFIG_KPROBES_ON_FTRACE=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_KRETPROBES=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_HAVE_RCU_TABLE_INVALIDATE=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_REL=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_ARCH_MMAP_RND_BITS=8 +CONFIG_HAVE_COPY_THREAD_TLS=y +CONFIG_ISA_BUS_API=y +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OLD_SIGACTION=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_REFCOUNT=y +CONFIG_REFCOUNT_FULL=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_PLUGIN_HOSTCC="" +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_LBDAF=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_BLK_WBT=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +# CONFIG_BLK_WBT_SQ is not set +CONFIG_BLK_WBT_MQ=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_DEBUG_FS_ZONED=y +# CONFIG_BLK_SED_OPAL is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +CONFIG_AIX_PARTITION=y +CONFIG_OSF_PARTITION=y +CONFIG_AMIGA_PARTITION=y +CONFIG_ATARI_PARTITION=y +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +CONFIG_BSD_DISKLABEL=y +CONFIG_MINIX_SUBPARTITION=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_LDM_PARTITION=y +# CONFIG_LDM_DEBUG is not set +CONFIG_SGI_PARTITION=y +CONFIG_ULTRIX_PARTITION=y +CONFIG_SUN_PARTITION=y +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +CONFIG_SYSV68_PARTITION=y +CONFIG_CMDLINE_PARTITION=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_MQ_RDMA=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +CONFIG_DEFAULT_DEADLINE=y +# CONFIG_DEFAULT_CFQ is not set +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_MQ_IOSCHED_DEADLINE=m +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_IOSCHED_BFQ=m +# CONFIG_BFQ_GROUP_IOSCHED is not set +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_QUEUED_RWLOCKS=y +CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_FREEZER=y + +# +# Executable file formats # CONFIG_BINFMT_ELF=y CONFIG_ELFCORE=y @@ -944,8 +974,58 @@ CONFIG_HAVE_AOUT=y CONFIG_BINFMT_AOUT=m CONFIG_BINFMT_MISC=m CONFIG_COREDUMP=y -CONFIG_COMPAT_32=y -CONFIG_HAVE_ATOMIC_IOMAP=y + +# +# Memory Management options +# +CONFIG_SELECT_MEMORY_MODEL=y +# CONFIG_FLATMEM_MANUAL is not set +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_STATIC=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_ARCH_DISCARD_MEMBLOCK=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_BOUNCE=y +CONFIG_VIRT_TO_BUS=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TRANSPARENT_HUGE_PAGECACHE=y +CONFIG_CLEANCACHE=y +CONFIG_FRONTSWAP=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_AREAS=7 +CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y +CONFIG_Z3FOLD=m +CONFIG_ZSMALLOC=y +CONFIG_PGTABLE_MAPPING=y +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_FRAME_VECTOR=y +# CONFIG_PERCPU_STATS is not set +# CONFIG_GUP_BENCHMARK is not set +CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_NET_INGRESS=y CONFIG_NET_EGRESS=y @@ -963,6 +1043,7 @@ CONFIG_XFRM=y CONFIG_XFRM_OFFLOAD=y CONFIG_XFRM_ALGO=m CONFIG_XFRM_USER=m +CONFIG_XFRM_INTERFACE=m # CONFIG_XFRM_SUB_POLICY is not set # CONFIG_XFRM_MIGRATE is not set CONFIG_XFRM_STATISTICS=y @@ -1082,6 +1163,7 @@ CONFIG_NETFILTER_FAMILY_ARP=y CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m CONFIG_NF_CONNTRACK=m CONFIG_NF_LOG_COMMON=m CONFIG_NF_LOG_NETDEV=m @@ -1125,7 +1207,6 @@ CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=y CONFIG_NETFILTER_SYNPROXY=m -CONFIG_NF_OSF=m CONFIG_NF_TABLES=m CONFIG_NF_TABLES_SET=m # CONFIG_NF_TABLES_INET is not set @@ -1140,6 +1221,7 @@ CONFIG_NFT_LIMIT=m CONFIG_NFT_MASQ=m CONFIG_NFT_REDIR=m CONFIG_NFT_NAT=m +CONFIG_NFT_TUNNEL=m CONFIG_NFT_OBJREF=m CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m @@ -1147,6 +1229,8 @@ CONFIG_NFT_REJECT=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m CONFIG_NFT_SOCKET=m +CONFIG_NFT_OSF=m +CONFIG_NFT_TPROXY=m CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NETFILTER_XTABLES=m @@ -1308,7 +1392,6 @@ CONFIG_IP_VS_PE_SIP=m # IP: Netfilter Configuration # CONFIG_NF_DEFRAG_IPV4=m -CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m CONFIG_NF_TPROXY_IPV4=m # CONFIG_NF_TABLES_IPV4 is not set @@ -1349,8 +1432,6 @@ CONFIG_IP_NF_ARP_MANGLE=m # # IPv6: Netfilter Configuration # -CONFIG_NF_DEFRAG_IPV6=m -CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m CONFIG_NF_TPROXY_IPV6=m # CONFIG_NF_TABLES_IPV6 is not set @@ -1381,6 +1462,7 @@ CONFIG_IP6_NF_SECURITY=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_NF_DEFRAG_IPV6=m # # DECnet: Netfilter Configuration @@ -1524,15 +1606,18 @@ CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_ETF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m CONFIG_NET_SCH_NETEM=m CONFIG_NET_SCH_DRR=m CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_SKBPRIO=m CONFIG_NET_SCH_CHOKE=m CONFIG_NET_SCH_QFQ=m CONFIG_NET_SCH_CODEL=m CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_CAKE=m CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_HHF=m CONFIG_NET_SCH_PIE=m @@ -1674,7 +1759,6 @@ CONFIG_CAN_VXCAN=m CONFIG_CAN_SLCAN=m CONFIG_CAN_DEV=m CONFIG_CAN_CALC_BITTIMING=y -CONFIG_CAN_LEDS=y CONFIG_CAN_JANZ_ICAN3=m CONFIG_PCH_CAN=m CONFIG_CAN_C_CAN=m @@ -1709,13 +1793,14 @@ CONFIG_CAN_MCP251X=m # # CAN USB interfaces # +CONFIG_CAN_8DEV_USB=m CONFIG_CAN_EMS_USB=m CONFIG_CAN_ESD_USB2=m CONFIG_CAN_GS_USB=m CONFIG_CAN_KVASER_USB=m -CONFIG_CAN_PEAK_USB=m -CONFIG_CAN_8DEV_USB=m CONFIG_CAN_MCBA_USB=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_UCAN=m # CONFIG_CAN_DEBUG_DEVICES is not set CONFIG_BT=m CONFIG_BT_BREDR=y @@ -1755,6 +1840,7 @@ CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART_3WIRE=y CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_BCM=y +CONFIG_BT_HCIUART_RTL=y CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIUART_AG6XX=y CONFIG_BT_HCIUART_MRVL=y @@ -1769,6 +1855,7 @@ CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m CONFIG_BT_WILINK=m +CONFIG_BT_MTKUART=m CONFIG_BT_HCIRSI=m CONFIG_AF_RXRPC=m CONFIG_AF_RXRPC_IPV6=y @@ -1931,6 +2018,10 @@ CONFIG_DMA_SHARED_BUFFER=y # CONFIG_CONNECTOR=y CONFIG_PROC_EVENTS=y +CONFIG_GNSS=m +CONFIG_GNSS_SERIAL=m +CONFIG_GNSS_SIRF_SERIAL=m +CONFIG_GNSS_UBX_SERIAL=m CONFIG_MTD=m # CONFIG_MTD_TESTS is not set CONFIG_MTD_REDBOOT_PARTS=m @@ -2029,6 +2120,7 @@ CONFIG_MTD_BLOCK2MTD=m CONFIG_MTD_DOCG3=m CONFIG_BCH_CONST_M=14 CONFIG_BCH_CONST_T=4 +CONFIG_MTD_NAND_CORE=m CONFIG_MTD_ONENAND=m CONFIG_MTD_ONENAND_VERIFY_WRITE=y CONFIG_MTD_ONENAND_GENERIC=m @@ -2053,6 +2145,7 @@ CONFIG_MTD_NAND_CAFE=m CONFIG_MTD_NAND_CS553X=m CONFIG_MTD_NAND_NANDSIM=m CONFIG_MTD_NAND_PLATFORM=m +CONFIG_MTD_SPI_NAND=m # # LPDDR & LPDDR2 PCM memory drivers @@ -2708,6 +2801,7 @@ CONFIG_B53_SPI_DRIVER=m CONFIG_B53_MDIO_DRIVER=m CONFIG_B53_MMAP_DRIVER=m CONFIG_B53_SRAB_DRIVER=m +CONFIG_NET_DSA_BCM_SF2=m # CONFIG_NET_DSA_LOOP is not set CONFIG_NET_DSA_MT7530=m CONFIG_NET_DSA_MV88E6060=m @@ -2717,6 +2811,7 @@ CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y # CONFIG_NET_DSA_MV88E6XXX_PTP is not set CONFIG_NET_DSA_QCA8K=m +CONFIG_NET_DSA_REALTEK_SMI=m CONFIG_NET_DSA_SMSC_LAN9303=m CONFIG_NET_DSA_SMSC_LAN9303_I2C=m CONFIG_NET_DSA_SMSC_LAN9303_MDIO=m @@ -2765,19 +2860,22 @@ CONFIG_B44=m CONFIG_B44_PCI_AUTOSELECT=y CONFIG_B44_PCICORE_AUTOSELECT=y CONFIG_B44_PCI=y +CONFIG_BCMGENET=m CONFIG_BNX2=m CONFIG_CNIC=m CONFIG_TIGON3=m CONFIG_TIGON3_HWMON=y CONFIG_BNX2X=m CONFIG_BNX2X_SRIOV=y +# CONFIG_SYSTEMPORT is not set CONFIG_BNXT=m CONFIG_BNXT_SRIOV=y CONFIG_BNXT_FLOWER_OFFLOAD=y # CONFIG_BNXT_DCB is not set +CONFIG_BNXT_HWMON=y CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CADENCE=y +CONFIG_NET_VENDOR_CADENCE=y CONFIG_MACB=m CONFIG_MACB_USE_HWSTAMP=y CONFIG_MACB_PCI=m @@ -2819,6 +2917,10 @@ CONFIG_SUNDANCE=m CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y CONFIG_NET_VENDOR_EZCHIP=y CONFIG_NET_VENDOR_FUJITSU=y CONFIG_PCMCIA_FMVJ18X=m @@ -2845,10 +2947,6 @@ CONFIG_I40E_DCB=y CONFIG_I40EVF=m CONFIG_ICE=m CONFIG_FM10K=m -CONFIG_NET_VENDOR_EXAR=y -CONFIG_S2IO=m -CONFIG_VXGE=m -# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_JME=m CONFIG_NET_VENDOR_MARVELL=y CONFIG_MVMDIO=m @@ -2866,6 +2964,8 @@ CONFIG_MLX4_CORE_GEN2=y CONFIG_MLX5_CORE=m # CONFIG_MLX5_FPGA is not set CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_RXNFC=y CONFIG_MLX5_MPFS=y CONFIG_MLX5_ESWITCH=y CONFIG_MLX5_CORE_EN_DCB=y @@ -2900,6 +3000,10 @@ CONFIG_FEALNX=m CONFIG_NET_VENDOR_NATSEMI=y CONFIG_NATSEMI=m CONFIG_NS83820=m +CONFIG_NET_VENDOR_NETERION=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m # CONFIG_NFP_APP_FLOWER is not set @@ -2918,7 +3022,7 @@ CONFIG_FORCEDETH=m CONFIG_NET_VENDOR_OKI=y CONFIG_PCH_GBE=m CONFIG_ETHOC=m -CONFIG_NET_PACKET_ENGINE=y +CONFIG_NET_VENDOR_PACKET_ENGINES=y CONFIG_HAMACHI=m CONFIG_YELLOWFIN=m CONFIG_NET_VENDOR_QLOGIC=y @@ -3015,6 +3119,7 @@ CONFIG_SKFP=m CONFIG_NET_SB1000=m CONFIG_MDIO_DEVICE=y CONFIG_MDIO_BUS=y +CONFIG_MDIO_BCM_UNIMAC=m CONFIG_MDIO_BITBANG=m CONFIG_MDIO_GPIO=m CONFIG_MDIO_I2C=m @@ -3307,7 +3412,11 @@ CONFIG_MWL8K=m CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT7601U=m CONFIG_MT76_CORE=m +CONFIG_MT76_USB=m +CONFIG_MT76x2_COMMON=m +CONFIG_MT76x0U=m CONFIG_MT76x2E=m +CONFIG_MT76x2U=m CONFIG_WLAN_VENDOR_RALINK=y CONFIG_RT2X00=m CONFIG_RT2400PCI=m @@ -3437,6 +3546,7 @@ CONFIG_IEEE802154_ADF7242=m CONFIG_IEEE802154_CA8210=m # CONFIG_IEEE802154_CA8210_DEBUGFS is not set CONFIG_IEEE802154_MCR20A=m +# CONFIG_IEEE802154_HWSIM is not set CONFIG_XEN_NETDEV_FRONTEND=y CONFIG_XEN_NETDEV_BACKEND=m CONFIG_VMXNET3=m @@ -3584,8 +3694,8 @@ CONFIG_MISDN_IPAC=m CONFIG_MISDN_ISAR=m CONFIG_ISDN_HDLC=m CONFIG_NVM=y -# CONFIG_NVM_DEBUG is not set CONFIG_NVM_PBLK=m +# CONFIG_NVM_PBLK_DEBUG is not set # # Input device support @@ -3722,10 +3832,12 @@ CONFIG_TOUCHSCREEN_AD7877=m CONFIG_TOUCHSCREEN_AD7879=m CONFIG_TOUCHSCREEN_AD7879_I2C=m CONFIG_TOUCHSCREEN_AD7879_SPI=m +CONFIG_TOUCHSCREEN_ADC=m CONFIG_TOUCHSCREEN_ATMEL_MXT=m # CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set CONFIG_TOUCHSCREEN_AUO_PIXCIR=m CONFIG_TOUCHSCREEN_BU21013=m +CONFIG_TOUCHSCREEN_BU21029=m CONFIG_TOUCHSCREEN_CHIPONE_ICN8505=m CONFIG_TOUCHSCREEN_CY8CTMG110=m CONFIG_TOUCHSCREEN_CYTTSP_CORE=m @@ -4075,6 +4187,7 @@ CONFIG_TELCLOCK=m CONFIG_DEVPORT=y CONFIG_XILLYBUS=m CONFIG_XILLYBUS_PCIE=m +# CONFIG_RANDOM_TRUST_CPU is not set # # I2C support @@ -4265,8 +4378,10 @@ CONFIG_PINCTRL_CANNONLAKE=m CONFIG_PINCTRL_CEDARFORK=m CONFIG_PINCTRL_DENVERTON=m CONFIG_PINCTRL_GEMINILAKE=m +CONFIG_PINCTRL_ICELAKE=m CONFIG_PINCTRL_LEWISBURG=m CONFIG_PINCTRL_SUNRISEPOINT=m +CONFIG_PINCTRL_MADERA=m CONFIG_GPIOLIB=y CONFIG_GPIOLIB_FASTPATH_LIMIT=512 CONFIG_GPIO_ACPI=y @@ -4325,6 +4440,7 @@ CONFIG_GPIO_JANZ_TTL=m CONFIG_GPIO_KEMPLD=m CONFIG_GPIO_LP3943=m CONFIG_GPIO_LP873X=m +CONFIG_GPIO_MADERA=m CONFIG_GPIO_MSIC=y CONFIG_GPIO_PALMAS=y CONFIG_GPIO_RC5T583=y @@ -4394,7 +4510,6 @@ CONFIG_W1_SLAVE_DS2431=m CONFIG_W1_SLAVE_DS2433=m # CONFIG_W1_SLAVE_DS2433_CRC is not set CONFIG_W1_SLAVE_DS2438=m -CONFIG_W1_SLAVE_DS2760=m CONFIG_W1_SLAVE_DS2780=m CONFIG_W1_SLAVE_DS2781=m CONFIG_W1_SLAVE_DS28E04=m @@ -4412,6 +4527,7 @@ CONFIG_WM831X_POWER=m CONFIG_WM8350_POWER=m CONFIG_TEST_POWER=m CONFIG_BATTERY_88PM860X=m +CONFIG_CHARGER_ADP5061=m CONFIG_BATTERY_DS2760=m CONFIG_BATTERY_DS2780=m CONFIG_BATTERY_DS2781=m @@ -4461,6 +4577,7 @@ CONFIG_CHARGER_TPS65090=m CONFIG_BATTERY_GAUGE_LTC2941=m CONFIG_BATTERY_RT5033=m CONFIG_CHARGER_RT9455=m +CONFIG_CHARGER_CROS_USBPD=m CONFIG_HWMON=y CONFIG_HWMON_VID=m # CONFIG_HWMON_DEBUG_CHIP is not set @@ -4567,6 +4684,7 @@ CONFIG_SENSORS_NCT6683=m CONFIG_SENSORS_NCT6775=m CONFIG_SENSORS_NCT7802=m CONFIG_SENSORS_NCT7904=m +CONFIG_SENSORS_NPCM7XX=m CONFIG_SENSORS_PCF8591=m CONFIG_PMBUS=m CONFIG_SENSORS_PMBUS=m @@ -4689,6 +4807,7 @@ CONFIG_DA9055_WATCHDOG=m CONFIG_DA9063_WATCHDOG=m CONFIG_DA9062_WATCHDOG=m CONFIG_MENF21BMC_WATCHDOG=m +CONFIG_MENZ069_WATCHDOG=m CONFIG_WDAT_WDT=m CONFIG_WM831X_WATCHDOG=m CONFIG_WM8350_WATCHDOG=m @@ -4778,8 +4897,6 @@ CONFIG_SSB_PCMCIAHOST_POSSIBLE=y # CONFIG_SSB_PCMCIAHOST is not set CONFIG_SSB_SDIOHOST_POSSIBLE=y CONFIG_SSB_SDIOHOST=y -# CONFIG_SSB_SILENT is not set -# CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y CONFIG_SSB_DRIVER_PCICORE=y CONFIG_SSB_DRIVER_GPIO=y @@ -4808,9 +4925,13 @@ CONFIG_MFD_BD9571MWV=m CONFIG_MFD_AXP20X=m CONFIG_MFD_AXP20X_I2C=m CONFIG_MFD_CROS_EC=m -CONFIG_MFD_CROS_EC_I2C=m -CONFIG_MFD_CROS_EC_SPI=m CONFIG_MFD_CROS_EC_CHARDEV=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +# CONFIG_MFD_CS47L35 is not set +# CONFIG_MFD_CS47L85 is not set +# CONFIG_MFD_CS47L90 is not set CONFIG_PMIC_DA903X=y CONFIG_PMIC_DA9052=y CONFIG_MFD_DA9052_SPI=y @@ -5196,7 +5317,6 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m @@ -5333,8 +5453,10 @@ CONFIG_VIDEO_VIVID=m CONFIG_VIDEO_VIVID_CEC=y CONFIG_VIDEO_VIVID_MAX_DEVS=64 CONFIG_VIDEO_VIM2M=m +CONFIG_VIDEO_VICODEC=m CONFIG_DVB_PLATFORM_DRIVERS=y CONFIG_CEC_PLATFORM_DRIVERS=y +CONFIG_VIDEO_CROS_EC_CEC=m CONFIG_SDR_PLATFORM_DRIVERS=y # @@ -5754,6 +5876,7 @@ CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_DP_CEC is not set CONFIG_DRM_TTM=m CONFIG_DRM_VM=y CONFIG_DRM_SCHED=m @@ -5782,8 +5905,7 @@ CONFIG_DRM_AMDGPU_USERPTR=y # Display Engine Configuration # CONFIG_DRM_AMD_DC=y -# CONFIG_DRM_AMD_DC_FBC is not set -# CONFIG_DRM_AMD_DC_DCN1_0 is not set +CONFIG_DRM_AMD_DC_DCN1_0=y # CONFIG_DEBUG_KERNEL_DC is not set # @@ -5815,6 +5937,7 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set # CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set CONFIG_DRM_VGEM=m +# CONFIG_DRM_VKMS is not set CONFIG_DRM_VMWGFX=m CONFIG_DRM_VMWGFX_FBCON=y CONFIG_DRM_GMA500=m @@ -5826,7 +5949,7 @@ CONFIG_DRM_AST=m # CONFIG_DRM_MGAG200 is not set CONFIG_DRM_CIRRUS_QEMU=m CONFIG_DRM_QXL=m -# CONFIG_DRM_BOCHS is not set +CONFIG_DRM_BOCHS=m CONFIG_DRM_VIRTIO_GPU=m CONFIG_DRM_PANEL=y @@ -6025,6 +6148,7 @@ CONFIG_DUMMY_CONSOLE_ROWS=25 CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_VGA16 is not set @@ -6228,6 +6352,7 @@ CONFIG_SND_HDA_GENERIC=m CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDA_CORE=m CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_COMPONENT=y CONFIG_SND_HDA_I915=y CONFIG_SND_HDA_EXT_CORE=m CONFIG_SND_HDA_PREALLOC_SIZE=64 @@ -6324,6 +6449,7 @@ CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m # # STMicroelectronics STM32 SOC audio support @@ -6375,10 +6501,10 @@ CONFIG_SND_SOC_CS4349=m CONFIG_SND_SOC_CS53L30=m CONFIG_SND_SOC_DA7213=m CONFIG_SND_SOC_DA7219=m -CONFIG_SND_SOC_DIO2125=m CONFIG_SND_SOC_DMIC=m CONFIG_SND_SOC_HDMI_CODEC=m CONFIG_SND_SOC_ES7134=m +CONFIG_SND_SOC_ES7241=m CONFIG_SND_SOC_ES8316=m CONFIG_SND_SOC_ES8328=m CONFIG_SND_SOC_ES8328_I2C=m @@ -6425,11 +6551,13 @@ CONFIG_SND_SOC_RT5663=m CONFIG_SND_SOC_RT5670=m CONFIG_SND_SOC_RT5677=m CONFIG_SND_SOC_RT5677_SPI=m +CONFIG_SND_SOC_RT5682=m CONFIG_SND_SOC_SGTL5000=m CONFIG_SND_SOC_SI476X=m CONFIG_SND_SOC_SIGMADSP=m CONFIG_SND_SOC_SIGMADSP_I2C=m CONFIG_SND_SOC_SIGMADSP_REGMAP=m +CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m CONFIG_SND_SOC_SPDIF=m CONFIG_SND_SOC_SSM2305=m @@ -6522,6 +6650,7 @@ CONFIG_HID_BETOP_FF=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_CORSAIR=m +CONFIG_HID_COUGAR=m CONFIG_HID_PRODIKEYS=m CONFIG_HID_CMEDIA=m CONFIG_HID_CP2112=m @@ -6751,6 +6880,7 @@ CONFIG_USB_DWC3_DUAL_ROLE=y # Platform Glue Driver Support # CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_HAPS=m CONFIG_USB_DWC2=y CONFIG_USB_DWC2_HOST=y @@ -6982,6 +7112,8 @@ CONFIG_USB_G_DBGP_SERIAL=y CONFIG_USB_G_WEBCAM=m CONFIG_TYPEC=m CONFIG_TYPEC_TCPM=m +CONFIG_TYPEC_TCPCI=m +CONFIG_TYPEC_RT1711H=m CONFIG_TYPEC_FUSB302=m CONFIG_TYPEC_UCSI=m CONFIG_UCSI_ACPI=m @@ -6991,6 +7123,11 @@ CONFIG_TYPEC_TPS6598X=m # USB Type-C Multiplexer/DeMultiplexer Switch support # CONFIG_TYPEC_MUX_PI3USB30532=m + +# +# USB Type-C Alternate Mode drivers +# +CONFIG_TYPEC_DP_ALTMODE=m CONFIG_USB_ROLES_INTEL_XHCI=m CONFIG_USB_LED_TRIG=y CONFIG_USB_ULPI_BUS=m @@ -7213,7 +7350,6 @@ CONFIG_RTC_DRV_88PM80X=m CONFIG_RTC_DRV_ABB5ZES3=m CONFIG_RTC_DRV_ABX80X=m CONFIG_RTC_DRV_DS1307=m -CONFIG_RTC_DRV_DS1307_HWMON=y # CONFIG_RTC_DRV_DS1307_CENTURY is not set CONFIG_RTC_DRV_DS1374=m CONFIG_RTC_DRV_DS1374_WDT=y @@ -7294,7 +7430,6 @@ CONFIG_RTC_DRV_DS1685=y # CONFIG_RTC_DRV_DS17485 is not set # CONFIG_RTC_DRV_DS17885 is not set # CONFIG_RTC_DS1685_PROC_REGS is not set -# CONFIG_RTC_DS1685_SYSFS_REGS is not set CONFIG_RTC_DRV_DS1742=m CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_DA9052=m @@ -7419,7 +7554,7 @@ CONFIG_XEN_BALLOON=y CONFIG_XEN_SELFBALLOONING=y CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y CONFIG_XEN_BALLOON_MEMORY_HOTPLUG_LIMIT=4 -CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_SCRUB_PAGES_DEFAULT=y CONFIG_XEN_DEV_EVTCHN=m CONFIG_XEN_BACKEND=y CONFIG_XENFS=m @@ -7428,6 +7563,7 @@ CONFIG_XEN_SYS_HYPERVISOR=y CONFIG_XEN_XENBUS_FRONTEND=y CONFIG_XEN_GNTDEV=m CONFIG_XEN_GRANT_DEV_ALLOC=m +# CONFIG_XEN_GRANT_DMA_ALLOC is not set CONFIG_SWIOTLB_XEN=y CONFIG_XEN_TMEM=m CONFIG_XEN_PCIDEV_BACKEND=m @@ -7451,7 +7587,6 @@ CONFIG_COMEDI_MISC_DRIVERS=y CONFIG_COMEDI_BOND=m CONFIG_COMEDI_TEST=m CONFIG_COMEDI_PARPORT=m -CONFIG_COMEDI_SERIAL2002=m CONFIG_COMEDI_SSV_DNP=m CONFIG_COMEDI_ISA_DRIVERS=y CONFIG_COMEDI_PCL711=m @@ -7640,11 +7775,6 @@ CONFIG_AD9832=m CONFIG_AD9834=m # -# Digital gyroscope sensors -# -CONFIG_ADIS16060=m - -# # Network Analyzer, Impedance Converters # CONFIG_AD5933=m @@ -7755,17 +7885,24 @@ CONFIG_MOST_I2C=m CONFIG_MOST_USB=m CONFIG_KS7010=m # CONFIG_GREYBUS is not set - -# -# USB Power Delivery and Type-C drivers -# -CONFIG_TYPEC_TCPCI=m -CONFIG_TYPEC_RT1711H=m CONFIG_DRM_VBOXVIDEO=m # CONFIG_PI433 is not set CONFIG_MTK_MMC=m # CONFIG_MTK_AEE_KDUMP is not set # CONFIG_MTK_MMC_CD_POLL is not set + +# +# Gasket devices +# +CONFIG_XIL_AXIS_FIFO=m +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_XATTR=y +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +# CONFIG_EROFS_FS_USE_VM_MAP_RAM is not set +# CONFIG_EROFS_FAULT_INJECTION is not set +# CONFIG_EROFS_FS_ZIP is not set CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACER_WMI=m CONFIG_ACER_WIRELESS=m @@ -7847,14 +7984,17 @@ CONFIG_SURFACE_PRO3_BUTTON=m CONFIG_SURFACE_3_BUTTON=m CONFIG_INTEL_PUNIT_IPC=m # CONFIG_MLX_PLATFORM is not set -# CONFIG_SILEAD_DMI is not set +# CONFIG_TOUCHSCREEN_DMI is not set CONFIG_INTEL_CHTDC_TI_PWRBTN=m +CONFIG_I2C_MULTI_INSTANTIATE=m CONFIG_PMC_ATOM=y CONFIG_CHROME_PLATFORMS=y CONFIG_CHROMEOS_LAPTOP=m CONFIG_CHROMEOS_PSTORE=m CONFIG_CHROMEOS_TBMC=m CONFIG_CROS_EC_CTL=m +CONFIG_CROS_EC_I2C=m +CONFIG_CROS_EC_SPI=m CONFIG_CROS_EC_LPC=m # CONFIG_CROS_EC_LPC_MEC is not set CONFIG_CROS_EC_PROTO=y @@ -7868,6 +8008,7 @@ CONFIG_COMMON_CLK=y # Common Clock Framework # CONFIG_COMMON_CLK_WM831X=m +CONFIG_COMMON_CLK_MAX9485=m CONFIG_COMMON_CLK_SI5351=m CONFIG_COMMON_CLK_SI544=m CONFIG_COMMON_CLK_CDCE706=m @@ -7895,6 +8036,8 @@ CONFIG_IOMMU_SUPPORT=y # # Generic IOMMU Pagetable Support # +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_IOMMU_IOVA=y CONFIG_DMAR_TABLE=y CONFIG_INTEL_IOMMU=y @@ -7930,6 +8073,10 @@ CONFIG_RPMSG_VIRTIO=m # # +# NXP/Freescale QorIQ SoC drivers +# + +# # i.MX SoC drivers # @@ -8097,6 +8244,9 @@ CONFIG_AD8366=m # Chemical Sensors # CONFIG_ATLAS_PH_SENSOR=m +CONFIG_BME680=m +CONFIG_BME680_I2C=m +CONFIG_BME680_SPI=m CONFIG_CCS811=m CONFIG_IAQCORE=m CONFIG_VZ89X=m @@ -8142,6 +8292,7 @@ CONFIG_AD5686=m CONFIG_AD5686_SPI=m CONFIG_AD5696_I2C=m CONFIG_AD5755=m +CONFIG_AD5758=m CONFIG_AD5761=m CONFIG_AD5764=m CONFIG_AD5791=m @@ -8268,6 +8419,7 @@ CONFIG_LV0104CS=m CONFIG_MAX44000=m CONFIG_OPT3001=m CONFIG_PA12203001=m +CONFIG_SI1133=m CONFIG_SI1145=m CONFIG_STK3310=m CONFIG_ST_UVIS25=m @@ -8373,6 +8525,7 @@ CONFIG_AS3935=m # # Proximity and distance sensors # +CONFIG_ISL29501=m CONFIG_LIDAR_LITE_V2=m CONFIG_RFD77402=m CONFIG_SRF04=m @@ -8461,6 +8614,7 @@ CONFIG_PHY_SAMSUNG_USB2=m CONFIG_PHY_TUSB1210=m CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m +# CONFIG_IDLE_INJECT is not set CONFIG_MCB=m CONFIG_MCB_PCI=m CONFIG_MCB_LPC=m @@ -8512,52 +8666,18 @@ CONFIG_FPGA_MGR_MACHXO2_SPI=m CONFIG_FPGA_BRIDGE=m CONFIG_XILINX_PR_DECOUPLER=m CONFIG_FPGA_REGION=m +CONFIG_FPGA_DFL=m +CONFIG_FPGA_DFL_FME=m +CONFIG_FPGA_DFL_FME_MGR=m +CONFIG_FPGA_DFL_FME_BRIDGE=m +CONFIG_FPGA_DFL_FME_REGION=m +CONFIG_FPGA_DFL_AFU=m +CONFIG_FPGA_DFL_PCI=m CONFIG_PM_OPP=y # CONFIG_SIOX is not set # CONFIG_SLIMBUS is not set # -# Firmware Drivers -# -CONFIG_EDD=y -CONFIG_EDD_OFF=y -CONFIG_FIRMWARE_MEMMAP=y -CONFIG_DELL_RBU=m -CONFIG_DCDBAS=m -CONFIG_DMIID=y -CONFIG_DMI_SYSFS=m -CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y -CONFIG_ISCSI_IBFT_FIND=y -CONFIG_ISCSI_IBFT=m -CONFIG_FW_CFG_SYSFS=m -# CONFIG_FW_CFG_SYSFS_CMDLINE is not set -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# EFI (Extensible Firmware Interface) Support -# -CONFIG_EFI_VARS=y -CONFIG_EFI_ESRT=y -CONFIG_EFI_VARS_PSTORE=m -# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set -CONFIG_EFI_RUNTIME_MAP=y -# CONFIG_EFI_FAKE_MEMMAP is not set -CONFIG_EFI_RUNTIME_WRAPPERS=y -CONFIG_EFI_BOOTLOADER_CONTROL=m -CONFIG_EFI_CAPSULE_LOADER=y -CONFIG_EFI_CAPSULE_QUIRK_QUARK_CSH=y -# CONFIG_EFI_TEST is not set -CONFIG_APPLE_PROPERTIES=y -CONFIG_RESET_ATTACK_MITIGATION=y -CONFIG_UEFI_CPER=y -CONFIG_UEFI_CPER_X86=y -CONFIG_EFI_DEV_PATH_PARSER=y - -# -# Tegra firmware driver -# - -# # File systems # CONFIG_DCACHE_WORD_ACCESS=y @@ -8645,6 +8765,7 @@ CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set # CONFIG_OVERLAY_FS_INDEX is not set # CONFIG_OVERLAY_FS_XINO_AUTO is not set +# CONFIG_OVERLAY_FS_METACOPY is not set # # Caches @@ -8708,7 +8829,6 @@ CONFIG_ECRYPT_FS=y CONFIG_ECRYPT_FS_MESSAGING=y CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m -CONFIG_HFSPLUS_FS_POSIX_ACL=y CONFIG_BEFS_FS=m # CONFIG_BEFS_DEBUG is not set CONFIG_BFS_FS=m @@ -8735,6 +8855,7 @@ CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_LZO=y CONFIG_UBIFS_FS_ZLIB=y CONFIG_UBIFS_ATIME_SUPPORT=y +CONFIG_UBIFS_FS_XATTR=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS_SECURITY=y CONFIG_CRAMFS=m @@ -8773,6 +8894,7 @@ CONFIG_PSTORE_DEFLATE_COMPRESS=m # CONFIG_PSTORE_LZ4_COMPRESS is not set # CONFIG_PSTORE_LZ4HC_COMPRESS is not set # CONFIG_PSTORE_842_COMPRESS is not set +# CONFIG_PSTORE_ZSTD_COMPRESS is not set CONFIG_PSTORE_COMPRESS=y CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" @@ -8832,8 +8954,8 @@ CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y CONFIG_CIFS=m -CONFIG_CIFS_STATS=y # CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_CIFS_UPCALL=y CONFIG_CIFS_XATTR=y @@ -8843,7 +8965,6 @@ CONFIG_CIFS_DEBUG=y # CONFIG_CIFS_DEBUG2 is not set # CONFIG_CIFS_DEBUG_DUMP_KEYS is not set CONFIG_CIFS_DFS_UPCALL=y -CONFIG_CIFS_SMB311=y # CONFIG_CIFS_SMB_DIRECT is not set CONFIG_CIFS_FSCACHE=y CONFIG_CODA_FS=m @@ -8909,269 +9030,6 @@ CONFIG_DLM=m # CONFIG_DLM_DEBUG is not set # -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y - -# -# printk and dmesg options -# -CONFIG_PRINTK_TIME=y -CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 -CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 -CONFIG_BOOT_PRINTK_DELAY=y -CONFIG_DYNAMIC_DEBUG=y - -# -# Compile-time checks and compiler options -# -# CONFIG_DEBUG_INFO is not set -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -CONFIG_UNUSED_SYMBOLS=y -# CONFIG_PAGE_OWNER is not set -CONFIG_DEBUG_FS=y -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_SECTION_MISMATCH_WARN_ONLY=y -CONFIG_FRAME_POINTER=y -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -CONFIG_MAGIC_SYSRQ=y -CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 -CONFIG_MAGIC_SYSRQ_SERIAL=y -CONFIG_DEBUG_KERNEL=y - -# -# Memory Debugging -# -CONFIG_PAGE_EXTENSION=y -# CONFIG_DEBUG_PAGEALLOC is not set -# CONFIG_PAGE_POISONING is not set -# CONFIG_DEBUG_PAGE_REF is not set -# CONFIG_DEBUG_RODATA_TEST is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SLUB_DEBUG_ON is not set -# CONFIG_SLUB_STATS is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_VM is not set -CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y -# CONFIG_DEBUG_VIRTUAL is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m -# CONFIG_DEBUG_PER_CPU_MAPS is not set -# CONFIG_DEBUG_HIGHMEM is not set -CONFIG_HAVE_DEBUG_STACKOVERFLOW=y -# CONFIG_DEBUG_STACKOVERFLOW is not set -CONFIG_CC_HAS_SANCOV_TRACE_PC=y -# CONFIG_DEBUG_SHIRQ is not set - -# -# Debug Lockups and Hangs -# -CONFIG_LOCKUP_DETECTOR=y -CONFIG_SOFTLOCKUP_DETECTOR=y -# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 -CONFIG_HARDLOCKUP_DETECTOR_PERF=y -CONFIG_HARDLOCKUP_DETECTOR=y -# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -# CONFIG_WQ_WATCHDOG is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_PANIC_TIMEOUT=0 -CONFIG_SCHED_DEBUG=y -CONFIG_SCHED_INFO=y -CONFIG_SCHEDSTATS=y -CONFIG_SCHED_STACK_END_CHECK=y -# CONFIG_DEBUG_TIMEKEEPING is not set - -# -# Lock Debugging (spinlocks, mutexes, etc...) -# -CONFIG_LOCK_DEBUGGING_SUPPORT=y -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set -# CONFIG_DEBUG_RWSEMS is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -CONFIG_LOCK_TORTURE_TEST=m -CONFIG_WW_MUTEX_SELFTEST=m -CONFIG_STACKTRACE=y -# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -# CONFIG_DEBUG_LIST is not set -# CONFIG_DEBUG_PI_LIST is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set - -# -# RCU Debugging -# -CONFIG_TORTURE_TEST=m -# CONFIG_RCU_PERF_TEST is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=60 -# CONFIG_RCU_TRACE is not set -# CONFIG_RCU_EQS_DEBUG is not set -# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set -CONFIG_NOTIFIER_ERROR_INJECTION=m -CONFIG_PM_NOTIFIER_ERROR_INJECT=m -CONFIG_NETDEV_NOTIFIER_ERROR_INJECT=m -CONFIG_FUNCTION_ERROR_INJECTION=y -# CONFIG_FAULT_INJECTION is not set -# CONFIG_LATENCYTOP is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_NOP_TRACER=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_FENTRY=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACER_MAX_TRACE=y -CONFIG_TRACE_CLOCK=y -CONFIG_RING_BUFFER=y -CONFIG_EVENT_TRACING=y -CONFIG_CONTEXT_SWITCH_TRACER=y -CONFIG_RING_BUFFER_ALLOW_SWAP=y -CONFIG_TRACING=y -CONFIG_GENERIC_TRACER=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -CONFIG_FUNCTION_TRACER=y -CONFIG_FUNCTION_GRAPH_TRACER=y -# CONFIG_PREEMPTIRQ_EVENTS is not set -# CONFIG_IRQSOFF_TRACER is not set -CONFIG_SCHED_TRACER=y -# CONFIG_HWLAT_TRACER is not set -CONFIG_FTRACE_SYSCALLS=y -CONFIG_TRACER_SNAPSHOT=y -# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -CONFIG_STACK_TRACER=y -CONFIG_BLK_DEV_IO_TRACE=y -CONFIG_KPROBE_EVENTS=y -# CONFIG_UPROBE_EVENTS is not set -CONFIG_BPF_EVENTS=y -CONFIG_PROBE_EVENTS=y -CONFIG_DYNAMIC_FTRACE=y -CONFIG_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_FUNCTION_PROFILER=y -# CONFIG_BPF_KPROBE_OVERRIDE is not set -CONFIG_FTRACE_MCOUNT_RECORD=y -# CONFIG_FTRACE_STARTUP_TEST is not set -CONFIG_MMIOTRACE=y -# CONFIG_HIST_TRIGGERS is not set -# CONFIG_MMIOTRACE_TEST is not set -# CONFIG_TRACEPOINT_BENCHMARK is not set -# CONFIG_RING_BUFFER_BENCHMARK is not set -# CONFIG_RING_BUFFER_STARTUP_TEST is not set -# CONFIG_TRACE_EVAL_MAP_FILE is not set -CONFIG_TRACING_EVENTS_GPIO=y -# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set -# CONFIG_DMA_API_DEBUG is not set -CONFIG_RUNTIME_TESTING_MENU=y -# CONFIG_LKDTM is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_TEST_SORT is not set -# CONFIG_KPROBES_SANITY_TEST is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -CONFIG_RBTREE_TEST=m -CONFIG_INTERVAL_TREE_TEST=m -CONFIG_PERCPU_TEST=m -# CONFIG_ATOMIC64_SELFTEST is not set -CONFIG_ASYNC_RAID6_TEST=m -CONFIG_TEST_HEXDUMP=m -CONFIG_TEST_STRING_HELPERS=m -CONFIG_TEST_KSTRTOX=m -CONFIG_TEST_PRINTF=m -CONFIG_TEST_BITMAP=m -CONFIG_TEST_UUID=m -CONFIG_TEST_OVERFLOW=m -# CONFIG_TEST_RHASHTABLE is not set -CONFIG_TEST_HASH=m -CONFIG_TEST_PARMAN=m -CONFIG_TEST_LKM=m -CONFIG_TEST_USER_COPY=m -CONFIG_TEST_BPF=m -CONFIG_FIND_BIT_BENCHMARK=m -CONFIG_TEST_FIRMWARE=m -# CONFIG_TEST_SYSCTL is not set -CONFIG_TEST_UDELAY=m -CONFIG_TEST_STATIC_KEYS=m -# CONFIG_TEST_KMOD is not set -CONFIG_MEMTEST=y -# CONFIG_BUG_ON_DATA_CORRUPTION is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -CONFIG_KGDB=y -CONFIG_KGDB_SERIAL_CONSOLE=y -# CONFIG_KGDB_TESTS is not set -CONFIG_KGDB_LOW_LEVEL_TRAP=y -CONFIG_KGDB_KDB=y -CONFIG_KDB_DEFAULT_ENABLE=0x1 -CONFIG_KDB_KEYBOARD=y -CONFIG_KDB_CONTINUE_CATASTROPHIC=0 -CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y -# CONFIG_UBSAN is not set -CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y -CONFIG_STRICT_DEVMEM=y -CONFIG_IO_STRICT_DEVMEM=y -CONFIG_EARLY_PRINTK_USB=y -# CONFIG_X86_VERBOSE_BOOTUP is not set -CONFIG_EARLY_PRINTK=y -CONFIG_EARLY_PRINTK_DBGP=y -CONFIG_EARLY_PRINTK_EFI=y -# CONFIG_EARLY_PRINTK_USB_XDBC is not set -# CONFIG_X86_PTDUMP is not set -# CONFIG_EFI_PGT_DUMP is not set -# CONFIG_DEBUG_WX is not set -CONFIG_DOUBLEFAULT=y -# CONFIG_DEBUG_TLBFLUSH is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -# CONFIG_X86_DECODER_SELFTEST is not set -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -# CONFIG_IO_DELAY_0X80 is not set -CONFIG_IO_DELAY_0XED=y -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=1 -# CONFIG_DEBUG_BOOT_PARAMS is not set -# CONFIG_CPA_DEBUG is not set -CONFIG_OPTIMIZE_INLINING=y -# CONFIG_DEBUG_ENTRY is not set -# CONFIG_DEBUG_NMI_SELFTEST is not set -CONFIG_X86_DEBUG_FPU=y -CONFIG_PUNIT_ATOM_DEBUG=m -CONFIG_UNWINDER_FRAME_POINTER=y -# CONFIG_UNWINDER_GUESS is not set - -# # Security options # CONFIG_KEYS=y @@ -9185,6 +9043,7 @@ CONFIG_SECURITY=y CONFIG_SECURITY_WRITABLE_HOOKS=y CONFIG_SECURITYFS=y CONFIG_SECURITY_NETWORK=y +CONFIG_PAGE_TABLE_ISOLATION=y # CONFIG_SECURITY_INFINIBAND is not set CONFIG_SECURITY_NETWORK_XFRM=y CONFIG_SECURITY_PATH=y @@ -9238,6 +9097,7 @@ CONFIG_IMA_DEFAULT_HASH="sha1" # CONFIG_IMA_WRITE_POLICY is not set # CONFIG_IMA_READ_POLICY is not set CONFIG_IMA_APPRAISE=y +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set CONFIG_IMA_APPRAISE_BOOTPARAM=y CONFIG_IMA_TRUSTED_KEYRING=y CONFIG_IMA_BLACKLIST_KEYRING=y @@ -9451,28 +9311,6 @@ CONFIG_SYSTEM_TRUSTED_KEYS="" # CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set # CONFIG_SECONDARY_TRUSTED_KEYRING is not set # CONFIG_SYSTEM_BLACKLIST_KEYRING is not set -CONFIG_HAVE_KVM=y -CONFIG_HAVE_KVM_IRQCHIP=y -CONFIG_HAVE_KVM_IRQFD=y -CONFIG_HAVE_KVM_IRQ_ROUTING=y -CONFIG_HAVE_KVM_EVENTFD=y -CONFIG_KVM_MMIO=y -CONFIG_KVM_ASYNC_PF=y -CONFIG_HAVE_KVM_MSI=y -CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y -CONFIG_KVM_VFIO=y -CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y -CONFIG_HAVE_KVM_IRQ_BYPASS=y -CONFIG_VIRTUALIZATION=y -CONFIG_KVM=m -CONFIG_KVM_INTEL=m -CONFIG_KVM_AMD=m -# CONFIG_KVM_MMU_AUDIT is not set -CONFIG_VHOST_NET=m -CONFIG_VHOST_SCSI=m -CONFIG_VHOST_VSOCK=m -CONFIG_VHOST=m -# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set CONFIG_BINARY_PRINTF=y # @@ -9498,6 +9336,7 @@ CONFIG_CRC32_SLICEBY8=y # CONFIG_CRC32_SLICEBY4 is not set # CONFIG_CRC32_SARWATE is not set # CONFIG_CRC32_BIT is not set +CONFIG_CRC64=m # CONFIG_CRC4 is not set CONFIG_CRC7=m CONFIG_LIBCRC32C=m @@ -9581,3 +9420,270 @@ CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_SBITMAP=y CONFIG_PARMAN=m # CONFIG_STRING_SELFTEST is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_FRAME_WARN=1024 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +CONFIG_UNUSED_SYMBOLS=y +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +CONFIG_PAGE_EXTENSION=y +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_PAGE_POISONING is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_HIGHMEM is not set +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_STACKOVERFLOW is not set +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +CONFIG_LOCK_TORTURE_TEST=m +CONFIG_WW_MUTEX_SELFTEST=m +CONFIG_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +CONFIG_TORTURE_TEST=m +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +CONFIG_NETDEV_NOTIFIER_ERROR_INJECT=m +CONFIG_FUNCTION_ERROR_INJECTION=y +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_SCHED_TRACER=y +# CONFIG_HWLAT_TRACER is not set +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set +# CONFIG_UPROBE_EVENTS is not set +CONFIG_BPF_EVENTS=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_FUNCTION_PROFILER=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_MMIOTRACE=y +# CONFIG_HIST_TRIGGERS is not set +# CONFIG_MMIOTRACE_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +# CONFIG_DMA_API_DEBUG is not set +CONFIG_RUNTIME_TESTING_MENU=y +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +CONFIG_RBTREE_TEST=m +CONFIG_INTERVAL_TREE_TEST=m +CONFIG_PERCPU_TEST=m +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_ASYNC_RAID6_TEST=m +CONFIG_TEST_HEXDUMP=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_PRINTF=m +CONFIG_TEST_BITMAP=m +CONFIG_TEST_BITFIELD=m +CONFIG_TEST_UUID=m +CONFIG_TEST_OVERFLOW=m +# CONFIG_TEST_RHASHTABLE is not set +CONFIG_TEST_HASH=m +CONFIG_TEST_IDA=m +CONFIG_TEST_PARMAN=m +CONFIG_TEST_LKM=m +CONFIG_TEST_USER_COPY=m +CONFIG_TEST_BPF=m +CONFIG_FIND_BIT_BENCHMARK=m +CONFIG_TEST_FIRMWARE=m +# CONFIG_TEST_SYSCTL is not set +CONFIG_TEST_UDELAY=m +CONFIG_TEST_STATIC_KEYS=m +# CONFIG_TEST_KMOD is not set +CONFIG_MEMTEST=y +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_KGDB=y +CONFIG_KGDB_SERIAL_CONSOLE=y +# CONFIG_KGDB_TESTS is not set +CONFIG_KGDB_LOW_LEVEL_TRAP=y +CONFIG_KGDB_KDB=y +CONFIG_KDB_DEFAULT_ENABLE=0x1 +CONFIG_KDB_KEYBOARD=y +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_STRICT_DEVMEM=y +CONFIG_IO_STRICT_DEVMEM=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_EARLY_PRINTK_USB=y +# CONFIG_X86_VERBOSE_BOOTUP is not set +CONFIG_EARLY_PRINTK=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_EARLY_PRINTK_EFI=y +# CONFIG_EARLY_PRINTK_USB_XDBC is not set +# CONFIG_X86_PTDUMP is not set +# CONFIG_EFI_PGT_DUMP is not set +# CONFIG_DEBUG_WX is not set +CONFIG_DOUBLEFAULT=y +# CONFIG_DEBUG_TLBFLUSH is not set +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_IO_DELAY_TYPE_0X80=0 +CONFIG_IO_DELAY_TYPE_0XED=1 +CONFIG_IO_DELAY_TYPE_UDELAY=2 +CONFIG_IO_DELAY_TYPE_NONE=3 +# CONFIG_IO_DELAY_0X80 is not set +CONFIG_IO_DELAY_0XED=y +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_DELAY_NONE is not set +CONFIG_DEFAULT_IO_DELAY_TYPE=1 +# CONFIG_DEBUG_BOOT_PARAMS is not set +# CONFIG_CPA_DEBUG is not set +CONFIG_OPTIMIZE_INLINING=y +# CONFIG_DEBUG_ENTRY is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +CONFIG_X86_DEBUG_FPU=y +CONFIG_PUNIT_ATOM_DEBUG=m +CONFIG_UNWINDER_FRAME_POINTER=y +# CONFIG_UNWINDER_GUESS is not set diff --git a/gnu/packages/aux-files/linux-libre/4.18-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf index 2a66c483d6..a8f8c81648 100644 --- a/gnu/packages/aux-files/linux-libre/4.18-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/4.19-x86_64.conf @@ -1,50 +1,11 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.18.9-gnu Kernel Configuration +# Linux/x86 4.19.0-gnu Kernel Configuration # # # Compiler: gcc (GCC) 7.3.0 # -CONFIG_64BIT=y -CONFIG_X86_64=y -CONFIG_X86=y -CONFIG_INSTRUCTION_DECODER=y -CONFIG_OUTPUT_FORMAT="elf64-x86-64" -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_MMU=y -CONFIG_ARCH_MMAP_RND_BITS_MIN=28 -CONFIG_ARCH_MMAP_RND_BITS_MAX=32 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 -CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_FILTER_PGPROT=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y -CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y -CONFIG_ARCH_WANT_GENERAL_HUGETLB=y -CONFIG_ZONE_DMA32=y -CONFIG_AUDIT_ARCH=y -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_HAVE_INTEL_TXT=y -CONFIG_X86_64_SMP=y -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_PGTABLE_LEVELS=4 CONFIG_CC_IS_GCC=y CONFIG_GCC_VERSION=70300 CONFIG_CLANG_VERSION=0 @@ -59,6 +20,7 @@ CONFIG_INIT_ENV_ARG_LIMIT=32 # CONFIG_COMPILE_TEST is not set CONFIG_LOCALVERSION="" # CONFIG_LOCALVERSION_AUTO is not set +CONFIG_BUILD_SALT="" CONFIG_HAVE_KERNEL_GZIP=y CONFIG_HAVE_KERNEL_BZIP2=y CONFIG_HAVE_KERNEL_LZMA=y @@ -122,6 +84,9 @@ CONFIG_NO_HZ_IDLE=y # CONFIG_NO_HZ_FULL is not set CONFIG_NO_HZ=y CONFIG_HIGH_RES_TIMERS=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set # # CPU/Task time and stats accounting @@ -162,6 +127,7 @@ CONFIG_PAGE_COUNTER=y CONFIG_MEMCG=y CONFIG_MEMCG_SWAP=y # CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y CONFIG_BLK_CGROUP=y # CONFIG_DEBUG_BLK_CGROUP is not set CONFIG_CGROUP_WRITEBACK=y @@ -187,6 +153,7 @@ CONFIG_IPC_NS=y CONFIG_USER_NS=y CONFIG_PID_NS=y CONFIG_NET_NS=y +CONFIG_CHECKPOINT_RESTORE=y CONFIG_SCHED_AUTOGROUP=y # CONFIG_SYSFS_DEPRECATED is not set CONFIG_RELAY=y @@ -230,7 +197,6 @@ CONFIG_SHMEM=y CONFIG_AIO=y CONFIG_ADVISE_SYSCALLS=y CONFIG_MEMBARRIER=y -CONFIG_CHECKPOINT_RESTORE=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y CONFIG_KALLSYMS_ABSOLUTE_PERCPU=y @@ -263,192 +229,46 @@ CONFIG_SLUB_CPU_PARTIAL=y CONFIG_SYSTEM_DATA_VERIFICATION=y CONFIG_PROFILING=y CONFIG_TRACEPOINTS=y -CONFIG_CRASH_CORE=y -CONFIG_KEXEC_CORE=y -CONFIG_HOTPLUG_SMT=y -CONFIG_OPROFILE=m -# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_OPROFILE_NMI_TIMER=y -CONFIG_KPROBES=y -CONFIG_JUMP_LABEL=y -# CONFIG_STATIC_KEYS_SELFTEST is not set -CONFIG_OPTPROBES=y -CONFIG_KPROBES_ON_FTRACE=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_ARCH_USE_BUILTIN_BSWAP=y -CONFIG_KRETPROBES=y -CONFIG_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_KPROBES_ON_FTRACE=y -CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y -CONFIG_HAVE_NMI=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_ARCH_HAS_FORTIFY_SOURCE=y -CONFIG_ARCH_HAS_SET_MEMORY=y -CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y -CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_RSEQ=y -CONFIG_HAVE_CLK=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y -CONFIG_HAVE_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_PERF_EVENTS_NMI=y -CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_HAVE_RCU_TABLE_FREE=y -CONFIG_HAVE_RCU_TABLE_INVALIDATE=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y -CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_SECCOMP_FILTER=y -CONFIG_PLUGIN_HOSTCC="" -CONFIG_HAVE_GCC_PLUGINS=y -CONFIG_HAVE_STACKPROTECTOR=y -CONFIG_CC_HAS_STACKPROTECTOR_NONE=y -CONFIG_STACKPROTECTOR=y -CONFIG_STACKPROTECTOR_STRONG=y -CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y -CONFIG_HAVE_CONTEXT_TRACKING=y -CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y -CONFIG_HAVE_ARCH_HUGE_VMAP=y -CONFIG_HAVE_ARCH_SOFT_DIRTY=y -CONFIG_HAVE_MOD_ARCH_SPECIFIC=y -CONFIG_MODULES_USE_ELF_RELA=y -CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y -CONFIG_ARCH_HAS_ELF_RANDOMIZE=y -CONFIG_HAVE_ARCH_MMAP_RND_BITS=y -CONFIG_HAVE_EXIT_THREAD=y -CONFIG_ARCH_MMAP_RND_BITS=28 -CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y -CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 -CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y -CONFIG_HAVE_COPY_THREAD_TLS=y -CONFIG_HAVE_STACK_VALIDATION=y -CONFIG_HAVE_RELIABLE_STACKTRACE=y -CONFIG_ISA_BUS_API=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_COMPAT_OLD_SIGACTION=y -CONFIG_COMPAT_32BIT_TIME=y -CONFIG_HAVE_ARCH_VMAP_STACK=y -CONFIG_VMAP_STACK=y -CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y -CONFIG_STRICT_KERNEL_RWX=y -CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y -CONFIG_STRICT_MODULE_RWX=y -CONFIG_ARCH_HAS_REFCOUNT=y -CONFIG_REFCOUNT_FULL=y - -# -# GCOV-based kernel profiling -# -# CONFIG_GCOV_KERNEL is not set -CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -# CONFIG_MODULE_FORCE_UNLOAD is not set -CONFIG_MODVERSIONS=y -CONFIG_MODULE_SRCVERSION_ALL=y -# CONFIG_MODULE_SIG is not set -# CONFIG_MODULE_COMPRESS is not set -CONFIG_MODULES_TREE_LOOKUP=y -CONFIG_BLOCK=y -CONFIG_BLK_SCSI_REQUEST=y -CONFIG_BLK_DEV_BSG=y -CONFIG_BLK_DEV_BSGLIB=y -CONFIG_BLK_DEV_INTEGRITY=y -CONFIG_BLK_DEV_ZONED=y -CONFIG_BLK_DEV_THROTTLING=y -# CONFIG_BLK_DEV_THROTTLING_LOW is not set -CONFIG_BLK_CMDLINE_PARSER=y -CONFIG_BLK_WBT=y -# CONFIG_BLK_WBT_SQ is not set -CONFIG_BLK_WBT_MQ=y -CONFIG_BLK_DEBUG_FS=y -# CONFIG_BLK_SED_OPAL is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -CONFIG_AIX_PARTITION=y -CONFIG_OSF_PARTITION=y -CONFIG_AMIGA_PARTITION=y -CONFIG_ATARI_PARTITION=y -CONFIG_MAC_PARTITION=y -CONFIG_MSDOS_PARTITION=y -CONFIG_BSD_DISKLABEL=y -CONFIG_MINIX_SUBPARTITION=y -CONFIG_SOLARIS_X86_PARTITION=y -CONFIG_UNIXWARE_DISKLABEL=y -CONFIG_LDM_PARTITION=y -# CONFIG_LDM_DEBUG is not set -CONFIG_SGI_PARTITION=y -CONFIG_ULTRIX_PARTITION=y -CONFIG_SUN_PARTITION=y -CONFIG_KARMA_PARTITION=y -CONFIG_EFI_PARTITION=y -CONFIG_SYSV68_PARTITION=y -CONFIG_CMDLINE_PARTITION=y -CONFIG_BLOCK_COMPAT=y -CONFIG_BLK_MQ_PCI=y -CONFIG_BLK_MQ_VIRTIO=y -CONFIG_BLK_MQ_RDMA=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_DEADLINE=y -CONFIG_IOSCHED_CFQ=y -CONFIG_CFQ_GROUP_IOSCHED=y -CONFIG_DEFAULT_DEADLINE=y -# CONFIG_DEFAULT_CFQ is not set -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="deadline" -CONFIG_MQ_IOSCHED_DEADLINE=m -CONFIG_MQ_IOSCHED_KYBER=m -CONFIG_IOSCHED_BFQ=m -# CONFIG_BFQ_GROUP_IOSCHED is not set -CONFIG_PREEMPT_NOTIFIERS=y -CONFIG_PADATA=y -CONFIG_ASN1=y -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y -CONFIG_MUTEX_SPIN_ON_OWNER=y -CONFIG_RWSEM_SPIN_ON_OWNER=y -CONFIG_LOCK_SPIN_ON_OWNER=y -CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y -CONFIG_QUEUED_SPINLOCKS=y -CONFIG_ARCH_USE_QUEUED_RWLOCKS=y -CONFIG_QUEUED_RWLOCKS=y -CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y -CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_64BIT=y +CONFIG_X86_64=y +CONFIG_X86=y +CONFIG_INSTRUCTION_DECODER=y +CONFIG_OUTPUT_FORMAT="elf64-x86-64" +CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_MMU=y +CONFIG_ARCH_MMAP_RND_BITS_MIN=28 +CONFIG_ARCH_MMAP_RND_BITS_MAX=32 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=8 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_GENERIC_ISA_DMA=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_ARCH_MAY_HAVE_PC_FDC=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ARCH_HAS_CPU_RELAX=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_WANT_GENERAL_HUGETLB=y +CONFIG_ZONE_DMA32=y +CONFIG_AUDIT_ARCH=y +CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_HAVE_INTEL_TXT=y +CONFIG_X86_64_SMP=y +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=4 CONFIG_CC_HAS_SANE_STACKPROTECTOR=y -CONFIG_FREEZER=y # # Processor type and features @@ -524,9 +344,6 @@ CONFIG_NR_CPUS=256 CONFIG_SCHED_SMT=y CONFIG_SCHED_MC=y CONFIG_SCHED_MC_PRIO=y -# CONFIG_PREEMPT_NONE is not set -CONFIG_PREEMPT_VOLUNTARY=y -# CONFIG_PREEMPT is not set CONFIG_X86_LOCAL_APIC=y CONFIG_X86_IO_APIC=y CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y @@ -571,77 +388,6 @@ CONFIG_ARCH_SELECT_MEMORY_MODEL=y CONFIG_ARCH_MEMORY_PROBE=y CONFIG_ARCH_PROC_KCORE_TEXT=y CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_NEED_MULTIPLE_NODES=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_EXTREME=y -CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y -CONFIG_SPARSEMEM_ALLOC_MEM_MAP_TOGETHER=y -CONFIG_SPARSEMEM_VMEMMAP=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_HAVE_GENERIC_GUP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -CONFIG_MEMORY_ISOLATION=y -CONFIG_HAVE_BOOTMEM_INFO_NODE=y -CONFIG_MEMORY_HOTPLUG=y -CONFIG_MEMORY_HOTPLUG_SPARSE=y -# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set -CONFIG_MEMORY_HOTREMOVE=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y -CONFIG_MEMORY_BALLOON=y -CONFIG_BALLOON_COMPACTION=y -CONFIG_COMPACTION=y -CONFIG_MIGRATION=y -CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y -CONFIG_ARCH_ENABLE_THP_MIGRATION=y -CONFIG_PHYS_ADDR_T_64BIT=y -CONFIG_VIRT_TO_BUS=y -CONFIG_MMU_NOTIFIER=y -CONFIG_KSM=y -CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 -CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y -CONFIG_MEMORY_FAILURE=y -CONFIG_HWPOISON_INJECT=m -CONFIG_TRANSPARENT_HUGEPAGE=y -CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y -# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set -CONFIG_ARCH_WANTS_THP_SWAP=y -CONFIG_THP_SWAP=y -CONFIG_TRANSPARENT_HUGE_PAGECACHE=y -CONFIG_CLEANCACHE=y -CONFIG_FRONTSWAP=y -CONFIG_CMA=y -# CONFIG_CMA_DEBUG is not set -# CONFIG_CMA_DEBUGFS is not set -CONFIG_CMA_AREAS=7 -CONFIG_MEM_SOFT_DIRTY=y -CONFIG_ZSWAP=y -CONFIG_ZPOOL=y -CONFIG_ZBUD=y -CONFIG_Z3FOLD=m -CONFIG_ZSMALLOC=y -CONFIG_PGTABLE_MAPPING=y -# CONFIG_ZSMALLOC_STAT is not set -CONFIG_GENERIC_EARLY_IOREMAP=y -# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set -CONFIG_IDLE_PAGE_TRACKING=y -CONFIG_ARCH_HAS_ZONE_DEVICE=y -CONFIG_ZONE_DEVICE=y -CONFIG_ARCH_HAS_HMM=y -CONFIG_DEV_PAGEMAP_OPS=y -# CONFIG_HMM_MIRROR is not set -# CONFIG_DEVICE_PRIVATE is not set -# CONFIG_DEVICE_PUBLIC is not set -CONFIG_FRAME_VECTOR=y -CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y -CONFIG_ARCH_HAS_PKEYS=y -# CONFIG_PERCPU_STATS is not set -# CONFIG_GUP_BENCHMARK is not set -CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_X86_PMEM_LEGACY_DEVICE=y CONFIG_X86_PMEM_LEGACY=y CONFIG_X86_CHECK_BIOS_CORRUPTION=y @@ -696,6 +442,9 @@ CONFIG_ARCH_HAS_ADD_PAGES=y CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_ARCH_ENABLE_HUGEPAGE_MIGRATION=y +CONFIG_ARCH_ENABLE_THP_MIGRATION=y # # Power management and ACPI options @@ -723,6 +472,7 @@ CONFIG_PM_TRACE=y CONFIG_PM_TRACE_RTC=y CONFIG_PM_CLK=y CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_ARCH_SUPPORTS_ACPI=y CONFIG_ACPI=y CONFIG_ACPI_LEGACY_TABLES_LOOKUP=y CONFIG_ARCH_MIGHT_HAVE_ACPI_PDC=y @@ -937,15 +687,8 @@ CONFIG_RAPIDIO_RXS_GEN3=m # CONFIG_X86_SYSFB is not set # -# Executable file formats / Emulations +# Binary Emulations # -CONFIG_BINFMT_ELF=y -CONFIG_COMPAT_BINFMT_ELF=y -CONFIG_ELFCORE=y -CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y -CONFIG_BINFMT_SCRIPT=y -CONFIG_BINFMT_MISC=m -CONFIG_COREDUMP=y CONFIG_IA32_EMULATION=y # CONFIG_IA32_AOUT is not set CONFIG_X86_X32=y @@ -954,6 +697,344 @@ CONFIG_COMPAT=y CONFIG_COMPAT_FOR_U64_ALIGNMENT=y CONFIG_SYSVIPC_COMPAT=y CONFIG_X86_DEV_DMA_OPS=y +CONFIG_HAVE_GENERIC_GUP=y + +# +# Firmware Drivers +# +CONFIG_EDD=y +CONFIG_EDD_OFF=y +CONFIG_FIRMWARE_MEMMAP=y +CONFIG_DELL_RBU=m +CONFIG_DCDBAS=m +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=m +CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y +CONFIG_ISCSI_IBFT_FIND=y +CONFIG_ISCSI_IBFT=m +CONFIG_FW_CFG_SYSFS=m +# CONFIG_FW_CFG_SYSFS_CMDLINE is not set +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_VARS=y +CONFIG_EFI_ESRT=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFI_RUNTIME_MAP=y +# CONFIG_EFI_FAKE_MEMMAP is not set +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_BOOTLOADER_CONTROL=m +# CONFIG_EFI_CAPSULE_LOADER is not set +# CONFIG_EFI_TEST is not set +CONFIG_APPLE_PROPERTIES=y +CONFIG_RESET_ATTACK_MITIGATION=y +CONFIG_UEFI_CPER=y +CONFIG_UEFI_CPER_X86=y +CONFIG_EFI_DEV_PATH_PARSER=y + +# +# Tegra firmware driver +# +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_MMIO=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_KVM_VFIO=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_KVM_COMPAT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=m +CONFIG_KVM_INTEL=m +CONFIG_KVM_AMD=m +CONFIG_KVM_AMD_SEV=y +# CONFIG_KVM_MMU_AUDIT is not set +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VSOCK=m +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set + +# +# General architecture-dependent options +# +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_HOTPLUG_SMT=y +CONFIG_OPROFILE=m +# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set +CONFIG_HAVE_OPROFILE=y +CONFIG_OPROFILE_NMI_TIMER=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_OPTPROBES=y +CONFIG_KPROBES_ON_FTRACE=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_KRETPROBES=y +CONFIG_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_IOREMAP_PROT=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_OPTPROBES=y +CONFIG_HAVE_KPROBES_ON_FTRACE=y +CONFIG_HAVE_FUNCTION_ERROR_INJECTION=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_ARCH_WANTS_DYNAMIC_TASK_STRUCT=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_RSEQ=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y +CONFIG_HAVE_USER_RETURN_NOTIFIER=y +CONFIG_HAVE_PERF_EVENTS_NMI=y +CONFIG_HAVE_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_HAVE_RCU_TABLE_INVALIDATE=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_STACKPROTECTOR=y +CONFIG_CC_HAS_STACKPROTECTOR_NONE=y +CONFIG_STACKPROTECTOR=y +CONFIG_STACKPROTECTOR_STRONG=y +CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE_PUD=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_HAVE_IRQ_EXIT_ON_IRQ_STACK=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_HAVE_EXIT_THREAD=y +CONFIG_ARCH_MMAP_RND_BITS=28 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8 +CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y +CONFIG_HAVE_COPY_THREAD_TLS=y +CONFIG_HAVE_STACK_VALIDATION=y +CONFIG_HAVE_RELIABLE_STACKTRACE=y +CONFIG_ISA_BUS_API=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y +CONFIG_COMPAT_32BIT_TIME=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_VMAP_STACK=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_STRICT_MODULE_RWX=y +CONFIG_ARCH_HAS_REFCOUNT=y +CONFIG_REFCOUNT_FULL=y +CONFIG_HAVE_ARCH_PREL32_RELOCATIONS=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_PLUGIN_HOSTCC="" +CONFIG_HAVE_GCC_PLUGINS=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_ZONED=y +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +CONFIG_BLK_CMDLINE_PARSER=y +CONFIG_BLK_WBT=y +# CONFIG_BLK_CGROUP_IOLATENCY is not set +# CONFIG_BLK_WBT_SQ is not set +CONFIG_BLK_WBT_MQ=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_DEBUG_FS_ZONED=y +# CONFIG_BLK_SED_OPAL is not set + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +CONFIG_AIX_PARTITION=y +CONFIG_OSF_PARTITION=y +CONFIG_AMIGA_PARTITION=y +CONFIG_ATARI_PARTITION=y +CONFIG_MAC_PARTITION=y +CONFIG_MSDOS_PARTITION=y +CONFIG_BSD_DISKLABEL=y +CONFIG_MINIX_SUBPARTITION=y +CONFIG_SOLARIS_X86_PARTITION=y +CONFIG_UNIXWARE_DISKLABEL=y +CONFIG_LDM_PARTITION=y +# CONFIG_LDM_DEBUG is not set +CONFIG_SGI_PARTITION=y +CONFIG_ULTRIX_PARTITION=y +CONFIG_SUN_PARTITION=y +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +CONFIG_SYSV68_PARTITION=y +CONFIG_CMDLINE_PARTITION=y +CONFIG_BLOCK_COMPAT=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_MQ_RDMA=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +CONFIG_DEFAULT_DEADLINE=y +# CONFIG_DEFAULT_CFQ is not set +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_MQ_IOSCHED_DEADLINE=m +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_IOSCHED_BFQ=m +# CONFIG_BFQ_GROUP_IOSCHED is not set +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_ARCH_USE_QUEUED_SPINLOCKS=y +CONFIG_QUEUED_SPINLOCKS=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_QUEUED_RWLOCKS=y +CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y +CONFIG_FREEZER=y + +# +# Executable file formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y + +# +# Memory Management options +# +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_ARCH_DISCARD_MEMBLOCK=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_HAVE_BOOTMEM_INFO_NODE=y +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +# CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_VIRT_TO_BUS=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_MEMORY_FAILURE=y +CONFIG_HWPOISON_INJECT=m +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_ARCH_WANTS_THP_SWAP=y +CONFIG_THP_SWAP=y +CONFIG_TRANSPARENT_HUGE_PAGECACHE=y +CONFIG_CLEANCACHE=y +CONFIG_FRONTSWAP=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_AREAS=7 +CONFIG_MEM_SOFT_DIRTY=y +CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y +CONFIG_Z3FOLD=m +CONFIG_ZSMALLOC=y +CONFIG_PGTABLE_MAPPING=y +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_ARCH_HAS_ZONE_DEVICE=y +CONFIG_ZONE_DEVICE=y +CONFIG_ARCH_HAS_HMM=y +CONFIG_DEV_PAGEMAP_OPS=y +# CONFIG_HMM_MIRROR is not set +# CONFIG_DEVICE_PRIVATE is not set +# CONFIG_DEVICE_PUBLIC is not set +CONFIG_FRAME_VECTOR=y +CONFIG_ARCH_USES_HIGH_VMA_FLAGS=y +CONFIG_ARCH_HAS_PKEYS=y +# CONFIG_PERCPU_STATS is not set +# CONFIG_GUP_BENCHMARK is not set +CONFIG_ARCH_HAS_PTE_SPECIAL=y CONFIG_NET=y CONFIG_COMPAT_NETLINK_MESSAGES=y CONFIG_NET_INGRESS=y @@ -972,6 +1053,7 @@ CONFIG_XFRM=y CONFIG_XFRM_OFFLOAD=y CONFIG_XFRM_ALGO=m CONFIG_XFRM_USER=m +CONFIG_XFRM_INTERFACE=m # CONFIG_XFRM_SUB_POLICY is not set # CONFIG_XFRM_MIGRATE is not set CONFIG_XFRM_STATISTICS=y @@ -1091,6 +1173,7 @@ CONFIG_NETFILTER_FAMILY_ARP=y CONFIG_NETFILTER_NETLINK_ACCT=m CONFIG_NETFILTER_NETLINK_QUEUE=m CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NETFILTER_NETLINK_OSF=m CONFIG_NF_CONNTRACK=m CONFIG_NF_LOG_COMMON=m CONFIG_NF_LOG_NETDEV=m @@ -1134,7 +1217,6 @@ CONFIG_NF_NAT_SIP=m CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=y CONFIG_NETFILTER_SYNPROXY=m -CONFIG_NF_OSF=m CONFIG_NF_TABLES=m CONFIG_NF_TABLES_SET=m # CONFIG_NF_TABLES_INET is not set @@ -1149,6 +1231,7 @@ CONFIG_NFT_LIMIT=m CONFIG_NFT_MASQ=m CONFIG_NFT_REDIR=m CONFIG_NFT_NAT=m +CONFIG_NFT_TUNNEL=m CONFIG_NFT_OBJREF=m CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m @@ -1156,6 +1239,8 @@ CONFIG_NFT_REJECT=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m CONFIG_NFT_SOCKET=m +CONFIG_NFT_OSF=m +CONFIG_NFT_TPROXY=m CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NETFILTER_XTABLES=m @@ -1317,7 +1402,6 @@ CONFIG_IP_VS_PE_SIP=m # IP: Netfilter Configuration # CONFIG_NF_DEFRAG_IPV4=m -CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m CONFIG_NF_TPROXY_IPV4=m # CONFIG_NF_TABLES_IPV4 is not set @@ -1358,8 +1442,6 @@ CONFIG_IP_NF_ARP_MANGLE=m # # IPv6: Netfilter Configuration # -CONFIG_NF_DEFRAG_IPV6=m -CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m CONFIG_NF_TPROXY_IPV6=m # CONFIG_NF_TABLES_IPV6 is not set @@ -1390,6 +1472,7 @@ CONFIG_IP6_NF_SECURITY=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_NF_DEFRAG_IPV6=m # # DECnet: Netfilter Configuration @@ -1529,15 +1612,18 @@ CONFIG_NET_SCH_SFQ=m CONFIG_NET_SCH_TEQL=m CONFIG_NET_SCH_TBF=m CONFIG_NET_SCH_CBS=m +CONFIG_NET_SCH_ETF=m CONFIG_NET_SCH_GRED=m CONFIG_NET_SCH_DSMARK=m CONFIG_NET_SCH_NETEM=m CONFIG_NET_SCH_DRR=m CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_SKBPRIO=m CONFIG_NET_SCH_CHOKE=m CONFIG_NET_SCH_QFQ=m CONFIG_NET_SCH_CODEL=m CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_CAKE=m CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_HHF=m CONFIG_NET_SCH_PIE=m @@ -1675,7 +1761,6 @@ CONFIG_CAN_VXCAN=m CONFIG_CAN_SLCAN=m CONFIG_CAN_DEV=m CONFIG_CAN_CALC_BITTIMING=y -CONFIG_CAN_LEDS=y CONFIG_CAN_JANZ_ICAN3=m CONFIG_CAN_C_CAN=m CONFIG_CAN_C_CAN_PLATFORM=m @@ -1708,13 +1793,14 @@ CONFIG_CAN_MCP251X=m # # CAN USB interfaces # +CONFIG_CAN_8DEV_USB=m CONFIG_CAN_EMS_USB=m CONFIG_CAN_ESD_USB2=m CONFIG_CAN_GS_USB=m CONFIG_CAN_KVASER_USB=m -CONFIG_CAN_PEAK_USB=m -CONFIG_CAN_8DEV_USB=m CONFIG_CAN_MCBA_USB=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_UCAN=m # CONFIG_CAN_DEBUG_DEVICES is not set CONFIG_BT=m CONFIG_BT_BREDR=y @@ -1754,6 +1840,7 @@ CONFIG_BT_HCIUART_LL=y CONFIG_BT_HCIUART_3WIRE=y CONFIG_BT_HCIUART_INTEL=y CONFIG_BT_HCIUART_BCM=y +CONFIG_BT_HCIUART_RTL=y CONFIG_BT_HCIUART_QCA=y CONFIG_BT_HCIUART_AG6XX=y CONFIG_BT_HCIUART_MRVL=y @@ -1768,6 +1855,7 @@ CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m CONFIG_BT_WILINK=m +CONFIG_BT_MTKUART=m CONFIG_BT_HCIRSI=m CONFIG_AF_RXRPC=m CONFIG_AF_RXRPC_IPV6=y @@ -1930,6 +2018,10 @@ CONFIG_DMA_SHARED_BUFFER=y # CONFIG_CONNECTOR=y CONFIG_PROC_EVENTS=y +CONFIG_GNSS=m +CONFIG_GNSS_SERIAL=m +CONFIG_GNSS_SIRF_SERIAL=m +CONFIG_GNSS_UBX_SERIAL=m CONFIG_MTD=m # CONFIG_MTD_TESTS is not set CONFIG_MTD_REDBOOT_PARTS=m @@ -2027,6 +2119,7 @@ CONFIG_MTD_BLOCK2MTD=m CONFIG_MTD_DOCG3=m CONFIG_BCH_CONST_M=14 CONFIG_BCH_CONST_T=4 +CONFIG_MTD_NAND_CORE=m CONFIG_MTD_ONENAND=m CONFIG_MTD_ONENAND_VERIFY_WRITE=y CONFIG_MTD_ONENAND_GENERIC=m @@ -2050,6 +2143,7 @@ CONFIG_MTD_NAND_DOCG4=m CONFIG_MTD_NAND_CAFE=m CONFIG_MTD_NAND_NANDSIM=m CONFIG_MTD_NAND_PLATFORM=m +CONFIG_MTD_SPI_NAND=m # # LPDDR & LPDDR2 PCM memory drivers @@ -2692,6 +2786,7 @@ CONFIG_B53_SPI_DRIVER=m CONFIG_B53_MDIO_DRIVER=m CONFIG_B53_MMAP_DRIVER=m CONFIG_B53_SRAB_DRIVER=m +CONFIG_NET_DSA_BCM_SF2=m # CONFIG_NET_DSA_LOOP is not set CONFIG_NET_DSA_MT7530=m CONFIG_NET_DSA_MV88E6060=m @@ -2701,6 +2796,7 @@ CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y # CONFIG_NET_DSA_MV88E6XXX_PTP is not set CONFIG_NET_DSA_QCA8K=m +CONFIG_NET_DSA_REALTEK_SMI=m CONFIG_NET_DSA_SMSC_LAN9303=m CONFIG_NET_DSA_SMSC_LAN9303_I2C=m CONFIG_NET_DSA_SMSC_LAN9303_MDIO=m @@ -2746,19 +2842,22 @@ CONFIG_B44=m CONFIG_B44_PCI_AUTOSELECT=y CONFIG_B44_PCICORE_AUTOSELECT=y CONFIG_B44_PCI=y +CONFIG_BCMGENET=m CONFIG_BNX2=m CONFIG_CNIC=m CONFIG_TIGON3=m CONFIG_TIGON3_HWMON=y CONFIG_BNX2X=m CONFIG_BNX2X_SRIOV=y +# CONFIG_SYSTEMPORT is not set CONFIG_BNXT=m CONFIG_BNXT_SRIOV=y CONFIG_BNXT_FLOWER_OFFLOAD=y # CONFIG_BNXT_DCB is not set +CONFIG_BNXT_HWMON=y CONFIG_NET_VENDOR_BROCADE=y CONFIG_BNA=m -CONFIG_NET_CADENCE=y +CONFIG_NET_VENDOR_CADENCE=y CONFIG_MACB=m CONFIG_MACB_USE_HWSTAMP=y CONFIG_MACB_PCI=m @@ -2804,6 +2903,10 @@ CONFIG_SUNDANCE=m CONFIG_NET_VENDOR_EMULEX=y CONFIG_BE2NET=m CONFIG_BE2NET_HWMON=y +CONFIG_BE2NET_BE2=y +CONFIG_BE2NET_BE3=y +CONFIG_BE2NET_LANCER=y +CONFIG_BE2NET_SKYHAWK=y CONFIG_NET_VENDOR_EZCHIP=y CONFIG_NET_VENDOR_FUJITSU=y CONFIG_PCMCIA_FMVJ18X=m @@ -2832,10 +2935,6 @@ CONFIG_I40E_DCB=y CONFIG_I40EVF=m CONFIG_ICE=m CONFIG_FM10K=m -CONFIG_NET_VENDOR_EXAR=y -CONFIG_S2IO=m -CONFIG_VXGE=m -# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_JME=m CONFIG_NET_VENDOR_MARVELL=y CONFIG_MVMDIO=m @@ -2853,6 +2952,8 @@ CONFIG_MLX4_CORE_GEN2=y CONFIG_MLX5_CORE=m # CONFIG_MLX5_FPGA is not set CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_EN_ARFS=y +CONFIG_MLX5_EN_RXNFC=y CONFIG_MLX5_MPFS=y CONFIG_MLX5_ESWITCH=y CONFIG_MLX5_CORE_EN_DCB=y @@ -2888,6 +2989,10 @@ CONFIG_FEALNX=m CONFIG_NET_VENDOR_NATSEMI=y CONFIG_NATSEMI=m CONFIG_NS83820=m +CONFIG_NET_VENDOR_NETERION=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m # CONFIG_NFP_APP_FLOWER is not set @@ -2902,7 +3007,7 @@ CONFIG_NET_VENDOR_NVIDIA=y CONFIG_FORCEDETH=m CONFIG_NET_VENDOR_OKI=y CONFIG_ETHOC=m -CONFIG_NET_PACKET_ENGINE=y +CONFIG_NET_VENDOR_PACKET_ENGINES=y CONFIG_HAMACHI=m CONFIG_YELLOWFIN=m CONFIG_NET_VENDOR_QLOGIC=y @@ -2999,6 +3104,7 @@ CONFIG_SKFP=m CONFIG_NET_SB1000=m CONFIG_MDIO_DEVICE=y CONFIG_MDIO_BUS=y +CONFIG_MDIO_BCM_UNIMAC=m CONFIG_MDIO_BITBANG=m CONFIG_MDIO_CAVIUM=m CONFIG_MDIO_GPIO=m @@ -3293,7 +3399,11 @@ CONFIG_MWL8K=m CONFIG_WLAN_VENDOR_MEDIATEK=y CONFIG_MT7601U=m CONFIG_MT76_CORE=m +CONFIG_MT76_USB=m +CONFIG_MT76x2_COMMON=m +CONFIG_MT76x0U=m CONFIG_MT76x2E=m +CONFIG_MT76x2U=m CONFIG_WLAN_VENDOR_RALINK=y CONFIG_RT2X00=m CONFIG_RT2400PCI=m @@ -3417,6 +3527,7 @@ CONFIG_IEEE802154_ADF7242=m CONFIG_IEEE802154_CA8210=m # CONFIG_IEEE802154_CA8210_DEBUGFS is not set CONFIG_IEEE802154_MCR20A=m +# CONFIG_IEEE802154_HWSIM is not set CONFIG_XEN_NETDEV_FRONTEND=y CONFIG_XEN_NETDEV_BACKEND=m CONFIG_VMXNET3=m @@ -3552,8 +3663,8 @@ CONFIG_MISDN_IPAC=m CONFIG_MISDN_ISAR=m CONFIG_ISDN_HDLC=m CONFIG_NVM=y -# CONFIG_NVM_DEBUG is not set CONFIG_NVM_PBLK=m +# CONFIG_NVM_PBLK_DEBUG is not set # # Input device support @@ -3687,10 +3798,12 @@ CONFIG_TOUCHSCREEN_AD7877=m CONFIG_TOUCHSCREEN_AD7879=m CONFIG_TOUCHSCREEN_AD7879_I2C=m CONFIG_TOUCHSCREEN_AD7879_SPI=m +CONFIG_TOUCHSCREEN_ADC=m CONFIG_TOUCHSCREEN_ATMEL_MXT=m # CONFIG_TOUCHSCREEN_ATMEL_MXT_T37 is not set CONFIG_TOUCHSCREEN_AUO_PIXCIR=m CONFIG_TOUCHSCREEN_BU21013=m +CONFIG_TOUCHSCREEN_BU21029=m CONFIG_TOUCHSCREEN_CHIPONE_ICN8505=m CONFIG_TOUCHSCREEN_CY8CTMG110=m CONFIG_TOUCHSCREEN_CYTTSP_CORE=m @@ -4025,6 +4138,7 @@ CONFIG_TELCLOCK=m CONFIG_DEVPORT=y CONFIG_XILLYBUS=m CONFIG_XILLYBUS_PCIE=m +# CONFIG_RANDOM_TRUST_CPU is not set # # I2C support @@ -4210,8 +4324,10 @@ CONFIG_PINCTRL_CANNONLAKE=m CONFIG_PINCTRL_CEDARFORK=m CONFIG_PINCTRL_DENVERTON=m CONFIG_PINCTRL_GEMINILAKE=m +CONFIG_PINCTRL_ICELAKE=m CONFIG_PINCTRL_LEWISBURG=m CONFIG_PINCTRL_SUNRISEPOINT=m +CONFIG_PINCTRL_MADERA=m CONFIG_GPIOLIB=y CONFIG_GPIOLIB_FASTPATH_LIMIT=512 CONFIG_GPIO_ACPI=y @@ -4269,6 +4385,7 @@ CONFIG_GPIO_JANZ_TTL=m CONFIG_GPIO_KEMPLD=m CONFIG_GPIO_LP3943=m CONFIG_GPIO_LP873X=m +CONFIG_GPIO_MADERA=m CONFIG_GPIO_PALMAS=y CONFIG_GPIO_RC5T583=y CONFIG_GPIO_TPS65086=m @@ -4333,7 +4450,6 @@ CONFIG_W1_SLAVE_DS2431=m CONFIG_W1_SLAVE_DS2433=m # CONFIG_W1_SLAVE_DS2433_CRC is not set CONFIG_W1_SLAVE_DS2438=m -CONFIG_W1_SLAVE_DS2760=m CONFIG_W1_SLAVE_DS2780=m CONFIG_W1_SLAVE_DS2781=m CONFIG_W1_SLAVE_DS28E04=m @@ -4351,6 +4467,7 @@ CONFIG_WM831X_POWER=m CONFIG_WM8350_POWER=m CONFIG_TEST_POWER=m CONFIG_BATTERY_88PM860X=m +CONFIG_CHARGER_ADP5061=m CONFIG_BATTERY_DS2760=m CONFIG_BATTERY_DS2780=m CONFIG_BATTERY_DS2781=m @@ -4400,6 +4517,7 @@ CONFIG_CHARGER_TPS65090=m CONFIG_BATTERY_GAUGE_LTC2941=m CONFIG_BATTERY_RT5033=m CONFIG_CHARGER_RT9455=m +CONFIG_CHARGER_CROS_USBPD=m CONFIG_HWMON=y CONFIG_HWMON_VID=m # CONFIG_HWMON_DEBUG_CHIP is not set @@ -4506,6 +4624,7 @@ CONFIG_SENSORS_NCT6683=m CONFIG_SENSORS_NCT6775=m CONFIG_SENSORS_NCT7802=m CONFIG_SENSORS_NCT7904=m +CONFIG_SENSORS_NPCM7XX=m CONFIG_SENSORS_PCF8591=m CONFIG_PMBUS=m CONFIG_SENSORS_PMBUS=m @@ -4628,6 +4747,7 @@ CONFIG_DA9055_WATCHDOG=m CONFIG_DA9063_WATCHDOG=m CONFIG_DA9062_WATCHDOG=m CONFIG_MENF21BMC_WATCHDOG=m +CONFIG_MENZ069_WATCHDOG=m CONFIG_WDAT_WDT=m CONFIG_WM831X_WATCHDOG=m CONFIG_WM8350_WATCHDOG=m @@ -4705,8 +4825,6 @@ CONFIG_SSB_PCMCIAHOST_POSSIBLE=y # CONFIG_SSB_PCMCIAHOST is not set CONFIG_SSB_SDIOHOST_POSSIBLE=y CONFIG_SSB_SDIOHOST=y -# CONFIG_SSB_SILENT is not set -# CONFIG_SSB_DEBUG is not set CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y CONFIG_SSB_DRIVER_PCICORE=y CONFIG_SSB_DRIVER_GPIO=y @@ -4734,9 +4852,13 @@ CONFIG_MFD_BD9571MWV=m CONFIG_MFD_AXP20X=m CONFIG_MFD_AXP20X_I2C=m CONFIG_MFD_CROS_EC=m -CONFIG_MFD_CROS_EC_I2C=m -CONFIG_MFD_CROS_EC_SPI=m CONFIG_MFD_CROS_EC_CHARDEV=m +CONFIG_MFD_MADERA=m +CONFIG_MFD_MADERA_I2C=m +CONFIG_MFD_MADERA_SPI=m +# CONFIG_MFD_CS47L35 is not set +# CONFIG_MFD_CS47L85 is not set +# CONFIG_MFD_CS47L90 is not set CONFIG_PMIC_DA903X=y CONFIG_PMIC_DA9052=y CONFIG_MFD_DA9052_SPI=y @@ -5120,7 +5242,6 @@ CONFIG_DVB_USB_PCTV452E=m CONFIG_DVB_USB_DW2102=m CONFIG_DVB_USB_CINERGY_T2=m CONFIG_DVB_USB_DTV5100=m -CONFIG_DVB_USB_FRIIO=m CONFIG_DVB_USB_AZ6027=m CONFIG_DVB_USB_TECHNISAT_USB2=m CONFIG_DVB_USB_V2=m @@ -5257,8 +5378,10 @@ CONFIG_VIDEO_VIVID=m CONFIG_VIDEO_VIVID_CEC=y CONFIG_VIDEO_VIVID_MAX_DEVS=64 CONFIG_VIDEO_VIM2M=m +CONFIG_VIDEO_VICODEC=m CONFIG_DVB_PLATFORM_DRIVERS=y CONFIG_CEC_PLATFORM_DRIVERS=y +CONFIG_VIDEO_CROS_EC_CEC=m CONFIG_SDR_PLATFORM_DRIVERS=y # @@ -5657,6 +5780,7 @@ CONFIG_DRM_KMS_FB_HELPER=y CONFIG_DRM_FBDEV_EMULATION=y CONFIG_DRM_FBDEV_OVERALLOC=100 CONFIG_DRM_LOAD_EDID_FIRMWARE=y +# CONFIG_DRM_DP_CEC is not set CONFIG_DRM_TTM=m CONFIG_DRM_VM=y CONFIG_DRM_SCHED=m @@ -5685,8 +5809,7 @@ CONFIG_DRM_AMDGPU_USERPTR=y # Display Engine Configuration # CONFIG_DRM_AMD_DC=y -# CONFIG_DRM_AMD_DC_FBC is not set -# CONFIG_DRM_AMD_DC_DCN1_0 is not set +CONFIG_DRM_AMD_DC_DCN1_0=y # CONFIG_DEBUG_KERNEL_DC is not set # @@ -5719,6 +5842,7 @@ CONFIG_DRM_I915_USERPTR=y # CONFIG_DRM_I915_LOW_LEVEL_TRACEPOINTS is not set # CONFIG_DRM_I915_DEBUG_VBLANK_EVADE is not set CONFIG_DRM_VGEM=m +# CONFIG_DRM_VKMS is not set CONFIG_DRM_VMWGFX=m CONFIG_DRM_VMWGFX_FBCON=y CONFIG_DRM_GMA500=m @@ -5729,7 +5853,7 @@ CONFIG_DRM_AST=m # CONFIG_DRM_MGAG200 is not set CONFIG_DRM_CIRRUS_QEMU=m CONFIG_DRM_QXL=m -# CONFIG_DRM_BOCHS is not set +CONFIG_DRM_BOCHS=m CONFIG_DRM_VIRTIO_GPU=m CONFIG_DRM_PANEL=y @@ -5922,6 +6046,7 @@ CONFIG_DUMMY_CONSOLE_ROWS=25 CONFIG_FRAMEBUFFER_CONSOLE=y CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER is not set CONFIG_LOGO=y # CONFIG_LOGO_LINUX_MONO is not set # CONFIG_LOGO_LINUX_VGA16 is not set @@ -6067,6 +6192,7 @@ CONFIG_SND_HDA_GENERIC=m CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 CONFIG_SND_HDA_CORE=m CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_COMPONENT=y CONFIG_SND_HDA_I915=y CONFIG_SND_HDA_EXT_CORE=m CONFIG_SND_HDA_PREALLOC_SIZE=64 @@ -6163,6 +6289,7 @@ CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m +CONFIG_SND_SOC_INTEL_GLK_RT5682_MAX98357A_MACH=m # # STMicroelectronics STM32 SOC audio support @@ -6214,10 +6341,10 @@ CONFIG_SND_SOC_CS4349=m CONFIG_SND_SOC_CS53L30=m CONFIG_SND_SOC_DA7213=m CONFIG_SND_SOC_DA7219=m -CONFIG_SND_SOC_DIO2125=m CONFIG_SND_SOC_DMIC=m CONFIG_SND_SOC_HDMI_CODEC=m CONFIG_SND_SOC_ES7134=m +CONFIG_SND_SOC_ES7241=m CONFIG_SND_SOC_ES8316=m CONFIG_SND_SOC_ES8328=m CONFIG_SND_SOC_ES8328_I2C=m @@ -6264,11 +6391,13 @@ CONFIG_SND_SOC_RT5663=m CONFIG_SND_SOC_RT5670=m CONFIG_SND_SOC_RT5677=m CONFIG_SND_SOC_RT5677_SPI=m +CONFIG_SND_SOC_RT5682=m CONFIG_SND_SOC_SGTL5000=m CONFIG_SND_SOC_SI476X=m CONFIG_SND_SOC_SIGMADSP=m CONFIG_SND_SOC_SIGMADSP_I2C=m CONFIG_SND_SOC_SIGMADSP_REGMAP=m +CONFIG_SND_SOC_SIMPLE_AMPLIFIER=m CONFIG_SND_SOC_SIRF_AUDIO_CODEC=m CONFIG_SND_SOC_SPDIF=m CONFIG_SND_SOC_SSM2305=m @@ -6360,6 +6489,7 @@ CONFIG_HID_BETOP_FF=m CONFIG_HID_CHERRY=m CONFIG_HID_CHICONY=m CONFIG_HID_CORSAIR=m +CONFIG_HID_COUGAR=m CONFIG_HID_PRODIKEYS=m CONFIG_HID_CMEDIA=m CONFIG_HID_CP2112=m @@ -6594,6 +6724,7 @@ CONFIG_USB_DWC3_DUAL_ROLE=y # Platform Glue Driver Support # CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_HAPS=m CONFIG_USB_DWC2=y CONFIG_USB_DWC2_HOST=y @@ -6825,6 +6956,8 @@ CONFIG_USB_G_DBGP_SERIAL=y CONFIG_USB_G_WEBCAM=m CONFIG_TYPEC=m CONFIG_TYPEC_TCPM=m +CONFIG_TYPEC_TCPCI=m +CONFIG_TYPEC_RT1711H=m CONFIG_TYPEC_FUSB302=m CONFIG_TYPEC_UCSI=m CONFIG_UCSI_ACPI=m @@ -6834,6 +6967,11 @@ CONFIG_TYPEC_TPS6598X=m # USB Type-C Multiplexer/DeMultiplexer Switch support # CONFIG_TYPEC_MUX_PI3USB30532=m + +# +# USB Type-C Alternate Mode drivers +# +CONFIG_TYPEC_DP_ALTMODE=m CONFIG_USB_ROLES_INTEL_XHCI=m CONFIG_USB_LED_TRIG=y CONFIG_USB_ULPI_BUS=m @@ -7059,7 +7197,6 @@ CONFIG_RTC_DRV_88PM80X=m CONFIG_RTC_DRV_ABB5ZES3=m CONFIG_RTC_DRV_ABX80X=m CONFIG_RTC_DRV_DS1307=m -CONFIG_RTC_DRV_DS1307_HWMON=y # CONFIG_RTC_DRV_DS1307_CENTURY is not set CONFIG_RTC_DRV_DS1374=m CONFIG_RTC_DRV_DS1374_WDT=y @@ -7139,7 +7276,6 @@ CONFIG_RTC_DRV_DS1685=y # CONFIG_RTC_DRV_DS17485 is not set # CONFIG_RTC_DRV_DS17885 is not set # CONFIG_RTC_DS1685_PROC_REGS is not set -# CONFIG_RTC_DS1685_SYSFS_REGS is not set CONFIG_RTC_DRV_DS1742=m CONFIG_RTC_DRV_DS2404=m CONFIG_RTC_DRV_DA9052=m @@ -7266,7 +7402,7 @@ CONFIG_XEN_BALLOON=y CONFIG_XEN_SELFBALLOONING=y CONFIG_XEN_BALLOON_MEMORY_HOTPLUG=y CONFIG_XEN_BALLOON_MEMORY_HOTPLUG_LIMIT=512 -CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_SCRUB_PAGES_DEFAULT=y CONFIG_XEN_DEV_EVTCHN=m CONFIG_XEN_BACKEND=y CONFIG_XENFS=m @@ -7275,6 +7411,7 @@ CONFIG_XEN_SYS_HYPERVISOR=y CONFIG_XEN_XENBUS_FRONTEND=y CONFIG_XEN_GNTDEV=m CONFIG_XEN_GRANT_DEV_ALLOC=m +# CONFIG_XEN_GRANT_DMA_ALLOC is not set CONFIG_SWIOTLB_XEN=y CONFIG_XEN_TMEM=m CONFIG_XEN_PCIDEV_BACKEND=m @@ -7300,7 +7437,6 @@ CONFIG_COMEDI_MISC_DRIVERS=y CONFIG_COMEDI_BOND=m CONFIG_COMEDI_TEST=m CONFIG_COMEDI_PARPORT=m -CONFIG_COMEDI_SERIAL2002=m CONFIG_COMEDI_ISA_DRIVERS=y CONFIG_COMEDI_PCL711=m CONFIG_COMEDI_PCL724=m @@ -7488,11 +7624,6 @@ CONFIG_AD9832=m CONFIG_AD9834=m # -# Digital gyroscope sensors -# -CONFIG_ADIS16060=m - -# # Network Analyzer, Impedance Converters # CONFIG_AD5933=m @@ -7551,7 +7682,6 @@ CONFIG_MTD_SPINAND_MT29F=m CONFIG_MTD_SPINAND_ONDIEECC=y CONFIG_DGNC=m CONFIG_GS_FPGABOOT=m -CONFIG_CRYPTO_SKEIN=y CONFIG_UNISYSSPAR=y CONFIG_UNISYS_VISORNIC=m CONFIG_UNISYS_VISORINPUT=m @@ -7603,17 +7733,26 @@ CONFIG_MOST_I2C=m CONFIG_MOST_USB=m CONFIG_KS7010=m # CONFIG_GREYBUS is not set - -# -# USB Power Delivery and Type-C drivers -# -CONFIG_TYPEC_TCPCI=m -CONFIG_TYPEC_RT1711H=m CONFIG_DRM_VBOXVIDEO=m # CONFIG_PI433 is not set CONFIG_MTK_MMC=m # CONFIG_MTK_AEE_KDUMP is not set # CONFIG_MTK_MMC_CD_POLL is not set + +# +# Gasket devices +# +CONFIG_STAGING_GASKET_FRAMEWORK=m +CONFIG_STAGING_APEX_DRIVER=m +CONFIG_XIL_AXIS_FIFO=m +CONFIG_EROFS_FS=m +# CONFIG_EROFS_FS_DEBUG is not set +CONFIG_EROFS_FS_XATTR=y +CONFIG_EROFS_FS_POSIX_ACL=y +CONFIG_EROFS_FS_SECURITY=y +# CONFIG_EROFS_FS_USE_VM_MAP_RAM is not set +# CONFIG_EROFS_FAULT_INJECTION is not set +# CONFIG_EROFS_FS_ZIP is not set CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACER_WMI=m CONFIG_ACER_WIRELESS=m @@ -7692,14 +7831,17 @@ CONFIG_INTEL_PUNIT_IPC=m CONFIG_INTEL_TELEMETRY=m # CONFIG_MLX_PLATFORM is not set # CONFIG_INTEL_TURBO_MAX_3 is not set -# CONFIG_SILEAD_DMI is not set +# CONFIG_TOUCHSCREEN_DMI is not set CONFIG_INTEL_CHTDC_TI_PWRBTN=m +CONFIG_I2C_MULTI_INSTANTIATE=m CONFIG_PMC_ATOM=y CONFIG_CHROME_PLATFORMS=y CONFIG_CHROMEOS_LAPTOP=m CONFIG_CHROMEOS_PSTORE=m CONFIG_CHROMEOS_TBMC=m CONFIG_CROS_EC_CTL=m +CONFIG_CROS_EC_I2C=m +CONFIG_CROS_EC_SPI=m CONFIG_CROS_EC_LPC=m # CONFIG_CROS_EC_LPC_MEC is not set CONFIG_CROS_EC_PROTO=y @@ -7713,6 +7855,7 @@ CONFIG_COMMON_CLK=y # Common Clock Framework # CONFIG_COMMON_CLK_WM831X=m +CONFIG_COMMON_CLK_MAX9485=m CONFIG_COMMON_CLK_SI5351=m CONFIG_COMMON_CLK_SI544=m CONFIG_COMMON_CLK_CDCE706=m @@ -7738,6 +7881,8 @@ CONFIG_IOMMU_SUPPORT=y # # Generic IOMMU Pagetable Support # +# CONFIG_IOMMU_DEBUGFS is not set +# CONFIG_IOMMU_DEFAULT_PASSTHROUGH is not set CONFIG_IOMMU_IOVA=y CONFIG_AMD_IOMMU=y CONFIG_AMD_IOMMU_V2=m @@ -7776,6 +7921,10 @@ CONFIG_RPMSG_VIRTIO=m # # +# NXP/Freescale QorIQ SoC drivers +# + +# # i.MX SoC drivers # @@ -7943,6 +8092,9 @@ CONFIG_AD8366=m # Chemical Sensors # CONFIG_ATLAS_PH_SENSOR=m +CONFIG_BME680=m +CONFIG_BME680_I2C=m +CONFIG_BME680_SPI=m CONFIG_CCS811=m CONFIG_IAQCORE=m CONFIG_VZ89X=m @@ -7988,6 +8140,7 @@ CONFIG_AD5686=m CONFIG_AD5686_SPI=m CONFIG_AD5696_I2C=m CONFIG_AD5755=m +CONFIG_AD5758=m CONFIG_AD5761=m CONFIG_AD5764=m CONFIG_AD5791=m @@ -8114,6 +8267,7 @@ CONFIG_LV0104CS=m CONFIG_MAX44000=m CONFIG_OPT3001=m CONFIG_PA12203001=m +CONFIG_SI1133=m CONFIG_SI1145=m CONFIG_STK3310=m CONFIG_ST_UVIS25=m @@ -8219,6 +8373,7 @@ CONFIG_AS3935=m # # Proximity and distance sensors # +CONFIG_ISL29501=m CONFIG_LIDAR_LITE_V2=m CONFIG_RFD77402=m CONFIG_SRF04=m @@ -8309,6 +8464,7 @@ CONFIG_PHY_SAMSUNG_USB2=m CONFIG_PHY_TUSB1210=m CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m +# CONFIG_IDLE_INJECT is not set CONFIG_MCB=m CONFIG_MCB_PCI=m CONFIG_MCB_LPC=m @@ -8365,52 +8521,19 @@ CONFIG_FPGA_MGR_MACHXO2_SPI=m CONFIG_FPGA_BRIDGE=m CONFIG_XILINX_PR_DECOUPLER=m CONFIG_FPGA_REGION=m +CONFIG_FPGA_DFL=m +CONFIG_FPGA_DFL_FME=m +CONFIG_FPGA_DFL_FME_MGR=m +CONFIG_FPGA_DFL_FME_BRIDGE=m +CONFIG_FPGA_DFL_FME_REGION=m +CONFIG_FPGA_DFL_AFU=m +CONFIG_FPGA_DFL_PCI=m CONFIG_PM_OPP=y CONFIG_UNISYS_VISORBUS=m # CONFIG_SIOX is not set # CONFIG_SLIMBUS is not set # -# Firmware Drivers -# -CONFIG_EDD=y -CONFIG_EDD_OFF=y -CONFIG_FIRMWARE_MEMMAP=y -CONFIG_DELL_RBU=m -CONFIG_DCDBAS=m -CONFIG_DMIID=y -CONFIG_DMI_SYSFS=m -CONFIG_DMI_SCAN_MACHINE_NON_EFI_FALLBACK=y -CONFIG_ISCSI_IBFT_FIND=y -CONFIG_ISCSI_IBFT=m -CONFIG_FW_CFG_SYSFS=m -# CONFIG_FW_CFG_SYSFS_CMDLINE is not set -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# EFI (Extensible Firmware Interface) Support -# -CONFIG_EFI_VARS=y -CONFIG_EFI_ESRT=y -CONFIG_EFI_VARS_PSTORE=m -# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set -CONFIG_EFI_RUNTIME_MAP=y -# CONFIG_EFI_FAKE_MEMMAP is not set -CONFIG_EFI_RUNTIME_WRAPPERS=y -CONFIG_EFI_BOOTLOADER_CONTROL=m -# CONFIG_EFI_CAPSULE_LOADER is not set -# CONFIG_EFI_TEST is not set -CONFIG_APPLE_PROPERTIES=y -CONFIG_RESET_ATTACK_MITIGATION=y -CONFIG_UEFI_CPER=y -CONFIG_UEFI_CPER_X86=y -CONFIG_EFI_DEV_PATH_PARSER=y - -# -# Tegra firmware driver -# - -# # File systems # CONFIG_DCACHE_WORD_ACCESS=y @@ -8500,6 +8623,7 @@ CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set # CONFIG_OVERLAY_FS_INDEX is not set # CONFIG_OVERLAY_FS_XINO_AUTO is not set +# CONFIG_OVERLAY_FS_METACOPY is not set # # Caches @@ -8564,7 +8688,6 @@ CONFIG_ECRYPT_FS=y CONFIG_ECRYPT_FS_MESSAGING=y CONFIG_HFS_FS=m CONFIG_HFSPLUS_FS=m -CONFIG_HFSPLUS_FS_POSIX_ACL=y CONFIG_BEFS_FS=m # CONFIG_BEFS_DEBUG is not set CONFIG_BFS_FS=m @@ -8591,6 +8714,7 @@ CONFIG_UBIFS_FS=m CONFIG_UBIFS_FS_LZO=y CONFIG_UBIFS_FS_ZLIB=y CONFIG_UBIFS_ATIME_SUPPORT=y +CONFIG_UBIFS_FS_XATTR=y CONFIG_UBIFS_FS_ENCRYPTION=y CONFIG_UBIFS_FS_SECURITY=y CONFIG_CRAMFS=m @@ -8629,6 +8753,7 @@ CONFIG_PSTORE_DEFLATE_COMPRESS=m # CONFIG_PSTORE_LZ4_COMPRESS is not set # CONFIG_PSTORE_LZ4HC_COMPRESS is not set # CONFIG_PSTORE_842_COMPRESS is not set +# CONFIG_PSTORE_ZSTD_COMPRESS is not set CONFIG_PSTORE_COMPRESS=y CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" @@ -8688,8 +8813,8 @@ CONFIG_CEPH_FS=m CONFIG_CEPH_FSCACHE=y CONFIG_CEPH_FS_POSIX_ACL=y CONFIG_CIFS=m -CONFIG_CIFS_STATS=y # CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_ALLOW_INSECURE_LEGACY=y CONFIG_CIFS_WEAK_PW_HASH=y CONFIG_CIFS_UPCALL=y CONFIG_CIFS_XATTR=y @@ -8699,7 +8824,6 @@ CONFIG_CIFS_DEBUG=y # CONFIG_CIFS_DEBUG2 is not set # CONFIG_CIFS_DEBUG_DUMP_KEYS is not set CONFIG_CIFS_DFS_UPCALL=y -CONFIG_CIFS_SMB311=y # CONFIG_CIFS_SMB_DIRECT is not set CONFIG_CIFS_FSCACHE=y CONFIG_CODA_FS=m @@ -8765,276 +8889,6 @@ CONFIG_DLM=m # CONFIG_DLM_DEBUG is not set # -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y - -# -# printk and dmesg options -# -CONFIG_PRINTK_TIME=y -CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 -CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 -CONFIG_BOOT_PRINTK_DELAY=y -CONFIG_DYNAMIC_DEBUG=y - -# -# Compile-time checks and compiler options -# -# CONFIG_DEBUG_INFO is not set -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -CONFIG_UNUSED_SYMBOLS=y -# CONFIG_PAGE_OWNER is not set -CONFIG_DEBUG_FS=y -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_SECTION_MISMATCH_WARN_ONLY=y -CONFIG_FRAME_POINTER=y -CONFIG_STACK_VALIDATION=y -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -CONFIG_MAGIC_SYSRQ=y -CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 -CONFIG_MAGIC_SYSRQ_SERIAL=y -CONFIG_DEBUG_KERNEL=y - -# -# Memory Debugging -# -# CONFIG_PAGE_EXTENSION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -# CONFIG_PAGE_POISONING is not set -# CONFIG_DEBUG_PAGE_REF is not set -# CONFIG_DEBUG_RODATA_TEST is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SLUB_DEBUG_ON is not set -# CONFIG_SLUB_STATS is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_VM is not set -CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y -# CONFIG_DEBUG_VIRTUAL is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m -# CONFIG_DEBUG_PER_CPU_MAPS is not set -CONFIG_HAVE_DEBUG_STACKOVERFLOW=y -# CONFIG_DEBUG_STACKOVERFLOW is not set -CONFIG_HAVE_ARCH_KASAN=y -# CONFIG_KASAN is not set -CONFIG_ARCH_HAS_KCOV=y -CONFIG_CC_HAS_SANCOV_TRACE_PC=y -# CONFIG_KCOV is not set -# CONFIG_DEBUG_SHIRQ is not set - -# -# Debug Lockups and Hangs -# -CONFIG_LOCKUP_DETECTOR=y -CONFIG_SOFTLOCKUP_DETECTOR=y -# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 -CONFIG_HARDLOCKUP_DETECTOR_PERF=y -CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y -CONFIG_HARDLOCKUP_DETECTOR=y -# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 -CONFIG_DETECT_HUNG_TASK=y -CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 -# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set -CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 -# CONFIG_WQ_WATCHDOG is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -CONFIG_PANIC_TIMEOUT=0 -CONFIG_SCHED_DEBUG=y -CONFIG_SCHED_INFO=y -CONFIG_SCHEDSTATS=y -CONFIG_SCHED_STACK_END_CHECK=y -# CONFIG_DEBUG_TIMEKEEPING is not set - -# -# Lock Debugging (spinlocks, mutexes, etc...) -# -CONFIG_LOCK_DEBUGGING_SUPPORT=y -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set -# CONFIG_DEBUG_RWSEMS is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -CONFIG_LOCK_TORTURE_TEST=m -CONFIG_WW_MUTEX_SELFTEST=m -CONFIG_STACKTRACE=y -# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_BUGVERBOSE=y -# CONFIG_DEBUG_LIST is not set -# CONFIG_DEBUG_PI_LIST is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set - -# -# RCU Debugging -# -CONFIG_TORTURE_TEST=m -# CONFIG_RCU_PERF_TEST is not set -# CONFIG_RCU_TORTURE_TEST is not set -CONFIG_RCU_CPU_STALL_TIMEOUT=60 -# CONFIG_RCU_TRACE is not set -# CONFIG_RCU_EQS_DEBUG is not set -# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set -CONFIG_NOTIFIER_ERROR_INJECTION=m -CONFIG_PM_NOTIFIER_ERROR_INJECT=m -CONFIG_NETDEV_NOTIFIER_ERROR_INJECT=m -CONFIG_FUNCTION_ERROR_INJECTION=y -# CONFIG_FAULT_INJECTION is not set -# CONFIG_LATENCYTOP is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_NOP_TRACER=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_FENTRY=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACER_MAX_TRACE=y -CONFIG_TRACE_CLOCK=y -CONFIG_RING_BUFFER=y -CONFIG_EVENT_TRACING=y -CONFIG_CONTEXT_SWITCH_TRACER=y -CONFIG_RING_BUFFER_ALLOW_SWAP=y -CONFIG_TRACING=y -CONFIG_GENERIC_TRACER=y -CONFIG_TRACING_SUPPORT=y -CONFIG_FTRACE=y -CONFIG_FUNCTION_TRACER=y -CONFIG_FUNCTION_GRAPH_TRACER=y -# CONFIG_PREEMPTIRQ_EVENTS is not set -# CONFIG_IRQSOFF_TRACER is not set -CONFIG_SCHED_TRACER=y -# CONFIG_HWLAT_TRACER is not set -CONFIG_FTRACE_SYSCALLS=y -CONFIG_TRACER_SNAPSHOT=y -# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set -CONFIG_BRANCH_PROFILE_NONE=y -# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -CONFIG_STACK_TRACER=y -CONFIG_BLK_DEV_IO_TRACE=y -CONFIG_KPROBE_EVENTS=y -# CONFIG_UPROBE_EVENTS is not set -CONFIG_BPF_EVENTS=y -CONFIG_PROBE_EVENTS=y -CONFIG_DYNAMIC_FTRACE=y -CONFIG_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_FUNCTION_PROFILER=y -# CONFIG_BPF_KPROBE_OVERRIDE is not set -CONFIG_FTRACE_MCOUNT_RECORD=y -# CONFIG_FTRACE_STARTUP_TEST is not set -CONFIG_MMIOTRACE=y -# CONFIG_HIST_TRIGGERS is not set -# CONFIG_MMIOTRACE_TEST is not set -# CONFIG_TRACEPOINT_BENCHMARK is not set -# CONFIG_RING_BUFFER_BENCHMARK is not set -# CONFIG_RING_BUFFER_STARTUP_TEST is not set -# CONFIG_TRACE_EVAL_MAP_FILE is not set -CONFIG_TRACING_EVENTS_GPIO=y -# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set -# CONFIG_DMA_API_DEBUG is not set -CONFIG_RUNTIME_TESTING_MENU=y -# CONFIG_LKDTM is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_TEST_SORT is not set -# CONFIG_KPROBES_SANITY_TEST is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -CONFIG_RBTREE_TEST=m -CONFIG_INTERVAL_TREE_TEST=m -CONFIG_PERCPU_TEST=m -# CONFIG_ATOMIC64_SELFTEST is not set -CONFIG_ASYNC_RAID6_TEST=m -CONFIG_TEST_HEXDUMP=m -CONFIG_TEST_STRING_HELPERS=m -CONFIG_TEST_KSTRTOX=m -CONFIG_TEST_PRINTF=m -CONFIG_TEST_BITMAP=m -CONFIG_TEST_UUID=m -CONFIG_TEST_OVERFLOW=m -# CONFIG_TEST_RHASHTABLE is not set -CONFIG_TEST_HASH=m -CONFIG_TEST_PARMAN=m -CONFIG_TEST_LKM=m -CONFIG_TEST_USER_COPY=m -CONFIG_TEST_BPF=m -CONFIG_FIND_BIT_BENCHMARK=m -CONFIG_TEST_FIRMWARE=m -# CONFIG_TEST_SYSCTL is not set -CONFIG_TEST_UDELAY=m -CONFIG_TEST_STATIC_KEYS=m -# CONFIG_TEST_KMOD is not set -CONFIG_MEMTEST=y -# CONFIG_BUG_ON_DATA_CORRUPTION is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -CONFIG_KGDB=y -CONFIG_KGDB_SERIAL_CONSOLE=y -# CONFIG_KGDB_TESTS is not set -CONFIG_KGDB_LOW_LEVEL_TRAP=y -CONFIG_KGDB_KDB=y -CONFIG_KDB_DEFAULT_ENABLE=0x1 -CONFIG_KDB_KEYBOARD=y -CONFIG_KDB_CONTINUE_CATASTROPHIC=0 -CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y -# CONFIG_UBSAN is not set -CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y -CONFIG_STRICT_DEVMEM=y -CONFIG_IO_STRICT_DEVMEM=y -CONFIG_EARLY_PRINTK_USB=y -# CONFIG_X86_VERBOSE_BOOTUP is not set -CONFIG_EARLY_PRINTK=y -CONFIG_EARLY_PRINTK_DBGP=y -CONFIG_EARLY_PRINTK_EFI=y -# CONFIG_EARLY_PRINTK_USB_XDBC is not set -# CONFIG_X86_PTDUMP is not set -# CONFIG_EFI_PGT_DUMP is not set -# CONFIG_DEBUG_WX is not set -CONFIG_DOUBLEFAULT=y -# CONFIG_DEBUG_TLBFLUSH is not set -# CONFIG_IOMMU_DEBUG is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -# CONFIG_X86_DECODER_SELFTEST is not set -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -# CONFIG_IO_DELAY_0X80 is not set -CONFIG_IO_DELAY_0XED=y -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=1 -# CONFIG_DEBUG_BOOT_PARAMS is not set -# CONFIG_CPA_DEBUG is not set -CONFIG_OPTIMIZE_INLINING=y -# CONFIG_DEBUG_ENTRY is not set -# CONFIG_DEBUG_NMI_SELFTEST is not set -CONFIG_X86_DEBUG_FPU=y -CONFIG_PUNIT_ATOM_DEBUG=m -# CONFIG_UNWINDER_ORC is not set -CONFIG_UNWINDER_FRAME_POINTER=y -# CONFIG_UNWINDER_GUESS is not set - -# # Security options # CONFIG_KEYS=y @@ -9104,6 +8958,7 @@ CONFIG_IMA_DEFAULT_HASH="sha1" # CONFIG_IMA_WRITE_POLICY is not set # CONFIG_IMA_READ_POLICY is not set CONFIG_IMA_APPRAISE=y +# CONFIG_IMA_APPRAISE_BUILD_POLICY is not set CONFIG_IMA_APPRAISE_BOOTPARAM=y CONFIG_IMA_TRUSTED_KEYRING=y CONFIG_IMA_BLACKLIST_KEYRING=y @@ -9348,30 +9203,6 @@ CONFIG_SYSTEM_TRUSTED_KEYS="" # CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set # CONFIG_SECONDARY_TRUSTED_KEYRING is not set # CONFIG_SYSTEM_BLACKLIST_KEYRING is not set -CONFIG_HAVE_KVM=y -CONFIG_HAVE_KVM_IRQCHIP=y -CONFIG_HAVE_KVM_IRQFD=y -CONFIG_HAVE_KVM_IRQ_ROUTING=y -CONFIG_HAVE_KVM_EVENTFD=y -CONFIG_KVM_MMIO=y -CONFIG_KVM_ASYNC_PF=y -CONFIG_HAVE_KVM_MSI=y -CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y -CONFIG_KVM_VFIO=y -CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y -CONFIG_KVM_COMPAT=y -CONFIG_HAVE_KVM_IRQ_BYPASS=y -CONFIG_VIRTUALIZATION=y -CONFIG_KVM=m -CONFIG_KVM_INTEL=m -CONFIG_KVM_AMD=m -CONFIG_KVM_AMD_SEV=y -# CONFIG_KVM_MMU_AUDIT is not set -CONFIG_VHOST_NET=m -CONFIG_VHOST_SCSI=m -CONFIG_VHOST_VSOCK=m -CONFIG_VHOST=m -# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set CONFIG_BINARY_PRINTF=y # @@ -9398,6 +9229,7 @@ CONFIG_CRC32_SLICEBY8=y # CONFIG_CRC32_SLICEBY4 is not set # CONFIG_CRC32_SARWATE is not set # CONFIG_CRC32_BIT is not set +CONFIG_CRC64=m # CONFIG_CRC4 is not set CONFIG_CRC7=m CONFIG_LIBCRC32C=m @@ -9483,3 +9315,277 @@ CONFIG_ARCH_HAS_UACCESS_MCSAFE=y CONFIG_SBITMAP=y CONFIG_PARMAN=m # CONFIG_STRING_SELFTEST is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_CONSOLE_LOGLEVEL_QUIET=4 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +# CONFIG_DEBUG_INFO is not set +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_FRAME_WARN=1024 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +CONFIG_UNUSED_SYMBOLS=y +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_FRAME_POINTER=y +CONFIG_STACK_VALIDATION=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_PAGE_POISONING is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_DEBUG_STACKOVERFLOW=y +# CONFIG_DEBUG_STACKOVERFLOW is not set +CONFIG_HAVE_ARCH_KASAN=y +# CONFIG_KASAN is not set +CONFIG_ARCH_HAS_KCOV=y +CONFIG_CC_HAS_SANCOV_TRACE_PC=y +# CONFIG_KCOV is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_HARDLOCKUP_DETECTOR_PERF=y +CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y +CONFIG_HARDLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +CONFIG_LOCK_TORTURE_TEST=m +CONFIG_WW_MUTEX_SELFTEST=m +CONFIG_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +CONFIG_TORTURE_TEST=m +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=60 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +CONFIG_NETDEV_NOTIFIER_ERROR_INJECT=m +CONFIG_FUNCTION_ERROR_INJECTION=y +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_USER_STACKTRACE_SUPPORT=y +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_FENTRY=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_SCHED_TRACER=y +# CONFIG_HWLAT_TRACER is not set +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENTS=y +# CONFIG_KPROBE_EVENTS_ON_NOTRACE is not set +# CONFIG_UPROBE_EVENTS is not set +CONFIG_BPF_EVENTS=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_FUNCTION_PROFILER=y +# CONFIG_BPF_KPROBE_OVERRIDE is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +CONFIG_MMIOTRACE=y +# CONFIG_HIST_TRIGGERS is not set +# CONFIG_MMIOTRACE_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_PREEMPTIRQ_DELAY_TEST is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y +# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set +# CONFIG_DMA_API_DEBUG is not set +CONFIG_RUNTIME_TESTING_MENU=y +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +CONFIG_RBTREE_TEST=m +CONFIG_INTERVAL_TREE_TEST=m +CONFIG_PERCPU_TEST=m +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_ASYNC_RAID6_TEST=m +CONFIG_TEST_HEXDUMP=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_PRINTF=m +CONFIG_TEST_BITMAP=m +CONFIG_TEST_BITFIELD=m +CONFIG_TEST_UUID=m +CONFIG_TEST_OVERFLOW=m +# CONFIG_TEST_RHASHTABLE is not set +CONFIG_TEST_HASH=m +CONFIG_TEST_IDA=m +CONFIG_TEST_PARMAN=m +CONFIG_TEST_LKM=m +CONFIG_TEST_USER_COPY=m +CONFIG_TEST_BPF=m +CONFIG_FIND_BIT_BENCHMARK=m +CONFIG_TEST_FIRMWARE=m +# CONFIG_TEST_SYSCTL is not set +CONFIG_TEST_UDELAY=m +CONFIG_TEST_STATIC_KEYS=m +# CONFIG_TEST_KMOD is not set +CONFIG_MEMTEST=y +# CONFIG_BUG_ON_DATA_CORRUPTION is not set +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +CONFIG_KGDB=y +CONFIG_KGDB_SERIAL_CONSOLE=y +# CONFIG_KGDB_TESTS is not set +CONFIG_KGDB_LOW_LEVEL_TRAP=y +CONFIG_KGDB_KDB=y +CONFIG_KDB_DEFAULT_ENABLE=0x1 +CONFIG_KDB_KEYBOARD=y +CONFIG_KDB_CONTINUE_CATASTROPHIC=0 +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_STRICT_DEVMEM=y +CONFIG_IO_STRICT_DEVMEM=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_EARLY_PRINTK_USB=y +# CONFIG_X86_VERBOSE_BOOTUP is not set +CONFIG_EARLY_PRINTK=y +CONFIG_EARLY_PRINTK_DBGP=y +CONFIG_EARLY_PRINTK_EFI=y +# CONFIG_EARLY_PRINTK_USB_XDBC is not set +# CONFIG_X86_PTDUMP is not set +# CONFIG_EFI_PGT_DUMP is not set +# CONFIG_DEBUG_WX is not set +CONFIG_DOUBLEFAULT=y +# CONFIG_DEBUG_TLBFLUSH is not set +# CONFIG_IOMMU_DEBUG is not set +CONFIG_HAVE_MMIOTRACE_SUPPORT=y +# CONFIG_X86_DECODER_SELFTEST is not set +CONFIG_IO_DELAY_TYPE_0X80=0 +CONFIG_IO_DELAY_TYPE_0XED=1 +CONFIG_IO_DELAY_TYPE_UDELAY=2 +CONFIG_IO_DELAY_TYPE_NONE=3 +# CONFIG_IO_DELAY_0X80 is not set +CONFIG_IO_DELAY_0XED=y +# CONFIG_IO_DELAY_UDELAY is not set +# CONFIG_IO_DELAY_NONE is not set +CONFIG_DEFAULT_IO_DELAY_TYPE=1 +# CONFIG_DEBUG_BOOT_PARAMS is not set +# CONFIG_CPA_DEBUG is not set +CONFIG_OPTIMIZE_INLINING=y +# CONFIG_DEBUG_ENTRY is not set +# CONFIG_DEBUG_NMI_SELFTEST is not set +CONFIG_X86_DEBUG_FPU=y +CONFIG_PUNIT_ATOM_DEBUG=m +# CONFIG_UNWINDER_ORC is not set +CONFIG_UNWINDER_FRAME_POINTER=y +# CONFIG_UNWINDER_GUESS is not set diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 52afcbc676..a9d8286702 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,6 +31,7 @@ (define-module (gnu packages backup) #:use-module (guix packages) #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix git-download) #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) @@ -132,22 +134,18 @@ spying and/or modification by the server.") (name "par2cmdline") (version "0.8.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/Parchive/par2cmdline/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Parchive/par2cmdline.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1jpshmmcr81mxly0md2rr231qz9c8c680bbvcmhh100dg9i4a6s6")))) + "0f1jsd5sw2wynjzi7yjqjaf13yhyjfdid91p8yh0jn32y03kjyrz")))) (native-inputs `(("automake" ,automake) ("autoconf" ,autoconf))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ (invoke "autoreconf" "-vfi")))))) (synopsis "File verification and repair tools") (description "Par2cmdline uses Reed-Solomon error-correcting codes to generate and verify PAR2 recovery files. These files can be distributed @@ -493,15 +491,14 @@ detection, and lossless compression.") (define-public borg (package (name "borg") - (version "1.1.7") + (version "1.1.8") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) - (patches (search-patches "borg-respect-storage-quota.patch")) (sha256 (base32 - "1p3zia62vyg9vadkdjzzkzbj4dmgijr7ix5lmhfbxpwy5q9imdgp")) + "0qqvcscn1l4y83x4sh3izdpmr8zq38j8chjkpfq4q4d01i470hqb")) (modules '((guix build utils))) (snippet '(begin @@ -889,6 +886,7 @@ is like a time machine for your data. ") ,version) ;; Disable 'restic self-update'. It makes little sense in Guix. (substitute* "build.go" (("selfupdate") "")) + (setenv "HOME" (getcwd)) ; for $HOME/.cache/go-build (invoke "go" "run" "build.go")))) (replace 'check diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index a6ece07ad9..156399adbb 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -577,7 +577,9 @@ store.") (export make-ld-wrapper) -(define-public glibc/linux +(define-public glibc + ;; This is the GNU C Library, used on GNU/Linux and GNU/Hurd. Prior to + ;; version 2.28, GNU/Hurd used a different glibc branch. (package (name "glibc") ;; Note: Always use a dot after the minor version since various places rely @@ -609,8 +611,13 @@ store.") (build-system gnu-build-system) ;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc - ;; users should automatically pull Linux headers as well. - (propagated-inputs `(("kernel-headers" ,linux-libre-headers))) + ;; users should automatically pull Linux headers as well. On GNU/Hurd, + ;; libc provides <hurd.h>, which includes a bunch of Hurd and Mach headers, + ;; so both should be propagated. + (propagated-inputs + (if (hurd-target?) + `(("hurd-core-headers" ,hurd-core-headers)) + `(("kernel-headers" ,linux-libre-headers)))) (outputs '("out" "debug" "static")) ;9 MiB of .a files @@ -665,7 +672,13 @@ store.") ;; Use our Bash instead of /bin/sh. (string-append "BASH_SHELL=" (assoc-ref %build-inputs "bash") - "/bin/bash")) + "/bin/bash") + + ;; On GNU/Hurd we get discarded-qualifiers warnings for + ;; 'device_write_inband' among other things. Ignore them. + ,@(if (hurd-target?) + '("--disable-werror") + '())) #:tests? #f ; XXX #:phases (modify-phases %standard-phases @@ -770,7 +783,18 @@ store.") (filter linker-script? (map (cut string-append slib "/" <>) files))) - #t)))))) + #t))) + + ,@(if (hurd-target?) + '((add-after 'install 'augment-libc.so + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (substitute* (string-append out "/lib/libc.so") + (("/[^ ]+/lib/libc.so.0.3") + (string-append out "/lib/libc.so.0.3" + " libmachuser.so libhurduser.so")))) + #t))) + '())))) (inputs `(("static-bash" ,static-bash))) @@ -779,7 +803,12 @@ store.") (native-inputs `(("texinfo" ,texinfo) ("perl" ,perl) ("bison" ,bison) - ("gettext" ,gettext-minimal))) + ("gettext" ,gettext-minimal) + + ,@(if (hurd-target?) + `(("mig" ,mig) + ("perl" ,perl)) + '()))) (native-search-paths ;; Search path for packages that provide locale data. This is useful @@ -801,89 +830,6 @@ with the Linux kernel.") (license lgpl2.0+) (home-page "https://www.gnu.org/software/libc/"))) -(define-public glibc/hurd - ;; The Hurd's libc variant. - (package (inherit glibc/linux) - (name "glibc-hurd") - (version "2.23") - (source (origin - (method url-fetch) - (uri (string-append "http://alpha.gnu.org/gnu/hurd/glibc-" - version "-hurd+libpthread-20161218" ".tar.gz")) - (sha256 - (base32 - "0vpdv05j6j3ria5bw8gp468i64gij94cslxkxj9xkfgi6p615b8p")))) - - ;; Libc provides <hurd.h>, which includes a bunch of Hurd and Mach headers, - ;; so both should be propagated. - (propagated-inputs `(("hurd-core-headers" ,hurd-core-headers))) - (native-inputs - `(,@(package-native-inputs glibc/linux) - ("mig" ,mig) - ("perl" ,perl))) - - (arguments - (substitute-keyword-arguments (package-arguments glibc/linux) - ((#:phases original-phases) - ;; Add libmachuser.so and libhurduser.so to libc.so's search path. - ;; See <http://lists.gnu.org/archive/html/bug-hurd/2015-07/msg00051.html>. - `(modify-phases ,original-phases - (add-after 'install 'augment-libc.so - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out"))) - (substitute* (string-append out "/lib/libc.so") - (("/[^ ]+/lib/libc.so.0.3") - (string-append out "/lib/libc.so.0.3" " libmachuser.so" " libhurduser.so")))) - #t)) - (add-after 'pre-configure 'pre-configure-set-pwd - (lambda _ - ;; Use the right 'pwd'. - (substitute* "configure" - (("/bin/pwd") "pwd")) - #t)) - (replace 'build - (lambda _ - ;; Force mach/hurd/libpthread subdirs to build first in order to avoid - ;; linking errors. - ;; See <https://lists.gnu.org/archive/html/bug-hurd/2016-11/msg00045.html> - (let ((flags (list "-j" (number->string (parallel-job-count))))) - (define (make target) - (apply invoke "make" target flags)) - (make "mach/subdir_lib") - (make "hurd/subdir_lib") - (make "libpthread/subdir_lib") - (apply invoke "make" flags)))))) - ((#:configure-flags original-configure-flags) - `(append (list "--host=i586-pc-gnu" - - ;; We need this to get a working openpty() function. - "--enable-pt_chown" - - ;; <https://lists.gnu.org/archive/html/bug-hurd/2016-10/msg00033.html> - "--disable-werror" - - ;; nscd fails to build for GNU/Hurd: - ;; <https://lists.gnu.org/archive/html/bug-hurd/2014-07/msg00006.html>. - ;; Disable it. - "--disable-nscd") - (filter (lambda (flag) - (not (string-prefix? "--enable-kernel=" flag))) - ,original-configure-flags))))) - (synopsis "The GNU C Library (GNU Hurd variant)") - (supported-systems %hurd-systems))) - -(define* (glibc-for-target #:optional - (target (or (%current-target-system) - (%current-system)))) - "Return the glibc for TARGET, GLIBC/LINUX for a Linux host or -GLIBC/HURD for a Hurd host" - (match target - ((or "i586-pc-gnu" "i586-gnu") glibc/hurd) - (_ glibc/linux))) - -(define-syntax glibc - (identifier-syntax (glibc-for-target))) - ;; Below are old libc versions, which we use mostly to build locale data in ;; the old format (which the new libc cannot cope with.) @@ -1123,18 +1069,17 @@ command.") (license gpl3+))) ; some files are under GPLv2+ (define-public glibc/hurd-headers - (package (inherit glibc/hurd) + (package (inherit glibc) (name "glibc-hurd-headers") (outputs '("out")) (propagated-inputs `(("gnumach-headers" ,gnumach-headers) ("hurd-headers" ,hurd-headers))) (arguments - (substitute-keyword-arguments (package-arguments glibc/hurd) + (substitute-keyword-arguments (package-arguments glibc) ;; We just pass the flags really needed to build the headers. ((#:configure-flags _) `(list "--enable-add-ons" - "--host=i586-pc-gnu" - "--enable-obsolete-rpc")) + "--host=i586-pc-gnu")) ((#:phases _) '(modify-phases %standard-phases (replace 'install @@ -1149,13 +1094,7 @@ command.") (open-output-file (string-append out "/include/gnu/stubs.h")))) #t)) - (delete 'build) ; nothing to build - (add-before 'configure 'patch-configure-script - (lambda _ - ;; Use the right 'pwd'. - (substitute* "configure" - (("/bin/pwd") "pwd")) - #t)))))))) + (delete 'build))))))) ; nothing to build (define-public tzdata (package diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index be3662798b..9d792021bd 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -35,14 +35,14 @@ (define-public fio (package (name "fio") - (version "3.7") + (version "3.11") (source (origin (method url-fetch) (uri (string-append "http://brick.kernel.dk/snaps/" - "fio-" version ".tar.gz")) + "fio-" version ".tar.bz2")) (sha256 (base32 - "0rw9jf2ikm19lq4jizavdvvp3vfvlm3annq7jsxl2y5nf1pi2qr7")))) + "0s8m0wcz5j6sa1hblj80wk3syy5b4shg7y3gabvm9xa3wj0lzasa")))) (build-system gnu-build-system) (arguments '(#:test-target "test" diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 1b779855b2..e7f11dead3 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -201,14 +201,14 @@ genomes and gene ID formats, largely based on the UCSC table browser.") (define-public r-hpar (package (name "r-hpar") - (version "1.22.2") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hpar" version)) (sha256 (base32 - "1b72hvzasf6q739gmx6jblbzzyq22l7crrkbbfkihv3v7s94g388")))) + "1pm3k8apgynmdzv2d0chca3b636kcai3b1x861fyv1m3xs6msgxn")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/hpar/") (synopsis "Human Protein Atlas in R") @@ -219,23 +219,24 @@ the Human Protein Atlas project.") (define-public r-regioner (package (name "r-regioner") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "regioneR" version)) (sha256 (base32 - "09bzlaqdgy7wmzly3zc9y2da50d07mlixlnpaxdxpiwdk8qmhxsb")))) + "19la74swgzxp90z2nr3pzsgkxd7wp70zl6i2ipv3plg841f6k5zd")))) (properties `((upstream-name . "regioneR"))) (build-system r-build-system) (propagated-inputs - `(("r-memoise" ,r-memoise) - ("r-genomicranges" ,r-genomicranges) + `(("r-biostrings" ,r-biostrings) ("r-bsgenome" ,r-bsgenome) - ("r-rtracklayer" ,r-rtracklayer) ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) + ("r-memoise" ,r-memoise) + ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors))) (home-page "https://bioconductor.org/packages/regioneR/") (synopsis "Association analysis of genomic regions") @@ -247,14 +248,14 @@ region sets and other genomic features.") (define-public r-diffbind (package (name "r-diffbind") - (version "2.8.0") + (version "2.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DiffBind" version)) (sha256 (base32 - "1w1hybzd732ccg3q8zhirwfilq8sx3frv1x98zfyj3svzw98fish")))) + "0j8pal40lr1gv8sss96hhkj7l1qn9sy4q4l2kqd4rfwl7qrcnfw5")))) (properties `((upstream-name . "DiffBind"))) (build-system r-build-system) (inputs @@ -292,14 +293,14 @@ occupancy (overlap) analysis and plotting functions.") (define-public r-ripseeker (package (name "r-ripseeker") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RIPSeeker" version)) (sha256 (base32 - "0y9cvzqslfxj3z9mnp47mknff0pky2g5x8x1z1s5yjcx35q89xfi")))) + "1x2n1iyik4s67bxq0fl6fpf602k51g4pxjpjpxkgx1a5fsk61f2i")))) (properties `((upstream-name . "RIPSeeker"))) (build-system r-build-system) (propagated-inputs @@ -325,14 +326,14 @@ processing to visualization and annotation.") (define-public r-multtest (package (name "r-multtest") - (version "2.36.0") + (version "2.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "multtest" version)) (sha256 (base32 - "11949h2kglw13x8haaj4clg4jim1mwh5n98n9zxp9mmgn01z1lp0")))) + "0lq62jw81hz9k840969n5byj57pwd0jqga3hqvhb6abb3g10yz7k")))) (build-system r-build-system) (propagated-inputs `(("r-survival" ,r-survival) @@ -363,13 +364,13 @@ expressed genes in DNA microarray experiments.") (define-public r-graph (package (name "r-graph") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "graph" version)) (sha256 (base32 - "1zx445lk36g1s6i5dbhhf00nzzazyklfjxxjfax6q8hnhvgm9759")))) + "1kgnsm6f0vmb9qbkmmrnvxbwqc0gar17dq5gv1v10hrksw6mh64i")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics))) @@ -410,18 +411,19 @@ determining dependencies between variables, code improvement suggestions.") (define-public r-chippeakanno (package (name "r-chippeakanno") - (version "3.14.2") + (version "3.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPpeakAnno" version)) (sha256 (base32 - "13rksc65lxxzyw11galh6xzvgzp5ii0gwiwpvrm395v2r17rhwsc")))) + "09fhh1355diip3v3c0skmp1336vclipkm5nv02qvp5902v4262y3")))) (properties `((upstream-name . "ChIPpeakAnno"))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) + ("r-biocmanager" ,r-biocmanager) ("r-biostrings" ,r-biostrings) ("r-delayedarray" ,r-delayedarray) ("r-go-db" ,r-go-db) @@ -437,7 +439,6 @@ determining dependencies between variables, code improvement suggestions.") ("r-multtest" ,r-multtest) ("r-rbgl" ,r-rbgl) ("r-graph" ,r-graph) - ("r-biocinstaller" ,r-biocinstaller) ("r-regioner" ,r-regioner) ("r-dbi" ,r-dbi) ("r-ensembldb" ,r-ensembldb) @@ -465,12 +466,12 @@ enrichedGO (addGeneIDs).") (define-public r-marray (package (name "r-marray") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "marray" version)) (sha256 - (base32 "0539flh3y1qy5b1bamkfwbskis765c5s33v1y9j51n33mxb9h08d")))) + (base32 "1sh7l3c28x6zhdv99c9x05ii2yxmh9alkazp98kdi4fdb23rlzky")))) (build-system r-build-system) (propagated-inputs `(("r-limma" ,r-limma))) @@ -484,12 +485,12 @@ normalization and quality checking.") (define-public r-cghbase (package (name "r-cghbase") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHbase" version)) (sha256 - (base32 "1hf44vma3kgwr61kjbszvfxkava8bjqnam1mdncqvczbypb2xwaq")))) + (base32 "0ghxp49xdi09p3f2qwrdrq2p4qjafj4z1rr08ycgbf11gb22h1sc")))) (properties `((upstream-name . "CGHbase"))) (build-system r-build-system) (propagated-inputs @@ -504,12 +505,12 @@ the @code{arrayCGH} packages.") (define-public r-cghcall (package (name "r-cghcall") - (version "2.42.0") + (version "2.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHcall" version)) (sha256 - (base32 "0y71vfxv9x0am3xvv520yr95cb7m7y92dhdx1vkqki80jrmf12dz")))) + (base32 "1k65kaiqvjyllzbpa2367n6f6kkmsy463kpflzs66hqhx2fshsmi")))) (properties `((upstream-name . "CGHcall"))) (build-system r-build-system) (propagated-inputs @@ -527,12 +528,12 @@ the @code{arrayCGH} packages.") (define-public r-qdnaseq (package (name "r-qdnaseq") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "QDNAseq" version)) (sha256 - (base32 "1pj69mfyxwfd0d7h4kls9xq96sdc55y3rv20qpla50hw9libcwwd")))) + (base32 "04ff9nbckzrlb45mr2j0c3mlh1wcggq5bbl81zklhq203c5x1wc2")))) (properties `((upstream-name . "QDNAseq"))) (build-system r-build-system) (propagated-inputs @@ -559,14 +560,14 @@ respectively.") (define-public r-bayseq (package (name "r-bayseq") - (version "2.14.0") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "baySeq" version)) (sha256 (base32 - "0hbmm01a8libara9mbxknpk0wzarwfngnfwlmhpww91a0cmy5klg")))) + "0f6yckihm5cwh3dycv2g54hf7nddhcqya4yrqwbir96y5k1d1km5")))) (properties `((upstream-name . "baySeq"))) (build-system r-build-system) (propagated-inputs @@ -585,14 +586,14 @@ more complex hypotheses) via empirical Bayesian methods.") (define-public r-chipcomp (package (name "r-chipcomp") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPComp" version)) (sha256 (base32 - "0j9nif7z33qdxf347r9wa62hhz8qs09r2p96x3hg5yz30a10ahqs")))) + "1sypdsvwzssraanlhddhzpf9p0xs3qlflc0hp7yfbp0aplsifx85")))) (properties `((upstream-name . "ChIPComp"))) (build-system r-build-system) (propagated-inputs @@ -619,14 +620,14 @@ datasets.") (define-public r-riboprofiling (package (name "r-riboprofiling") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RiboProfiling" version)) (sha256 (base32 - "04yjklqdjkim7yxyk3cyvf0mmwyxyfvw2mmfzgwaaqbiyg29sli0")))) + "1njvkd1khmf3rbp3dkz5z63wp79z4wmk4kzd3p3amky3w5by070z")))) (properties `((upstream-name . "RiboProfiling"))) (build-system r-build-system) (propagated-inputs @@ -658,14 +659,14 @@ assessment, principal component analysis on codon coverage.") (define-public r-riboseqr (package (name "r-riboseqr") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "riboSeqR" version)) (sha256 (base32 - "0xavd1cdhi8qfjn9a1hjhflyg6jq1ydvv56z12gjz572pwz2knvn")))) + "1nacsbsz77fw4a10nqj2ncsf25q3aaa0gd5w1q0ray2prx7qmlqb")))) (properties `((upstream-name . "riboSeqR"))) (build-system r-build-system) (propagated-inputs @@ -686,14 +687,14 @@ parsing of genetic sequencing data from ribosome profiling experiments.") (define-public r-interactionset (package (name "r-interactionset") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "InteractionSet" version)) (sha256 (base32 - "0xngraq7ic80jr98i1wqp8bxdgidq6py60m2wfk82n1ixpcdck8n")))) + "0wirfhmpmkmnmhbqslw4bzvi2msqyqpjy1rrwr5qbd9k5rhx3bzb")))) (properties `((upstream-name . "InteractionSet"))) (build-system r-build-system) @@ -718,14 +719,14 @@ experiments.") (define-public r-genomicinteractions (package (name "r-genomicinteractions") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicInteractions" version)) (sha256 (base32 - "0cnagprxj0b7p6s29iyhqwxj7hgmrh75gj52y4dlil790d1bmq2q")))) + "0zy5isp2lqpjm0n0n1gly5bs4izn22yciibyqrnlrr60rmn5s67q")))) (properties `((upstream-name . "GenomicInteractions"))) (build-system r-build-system) @@ -757,14 +758,14 @@ information and producing various plots and statistics.") (define-public r-ctc (package (name "r-ctc") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ctc" version)) (sha256 (base32 - "0sadplm4n9n3z6inmn6y3d6qbr4hllljqh700x5fygrnfacnckk9")))) + "0yp7c0abk48jx1wf8n1gawh7dm15idahqc8va24v8cm0bzxgnmh2")))) (build-system r-build-system) (propagated-inputs `(("r-amap" ,r-amap))) (home-page "https://bioconductor.org/packages/ctc/") @@ -777,14 +778,14 @@ trees and clusters to other programs.") (define-public r-goseq (package (name "r-goseq") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "goseq" version)) (sha256 (base32 - "0xmbb8ma32lrfy810r82y34gkspq4fqiqxykic9j4rq9rg9n9x2l")))) + "1401x0jn5f8hqc12r3gd1wammp1nxir3is1k5ldd03ln97x00i7a")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -803,14 +804,14 @@ defined categories which are over/under represented in RNA-seq data.") (define-public r-glimma (package (name "r-glimma") - (version "1.8.2") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Glimma" version)) (sha256 (base32 - "0kfia60vrlys6amdchdix01iwbkwyb7nfjqn5hczsxp8rhmbg25s")))) + "0cbsi6g8k1whkh21jxfn22sj7wry2g3rshiracf5nyvrl2fnl947")))) (properties `((upstream-name . "Glimma"))) (build-system r-build-system) (propagated-inputs @@ -830,14 +831,14 @@ information.") (define-public r-rots (package (name "r-rots") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ROTS" version)) (sha256 (base32 - "12jvdqanyk86ihpcylp105zip22y0gkbksmyxy00q7iad0jhaqp3")))) + "137c06g5w7mjw3b1mly7b7n9iix4fcy23c7a9ym9iz8dazwhzwn5")))) (properties `((upstream-name . "ROTS"))) (build-system r-build-system) (propagated-inputs @@ -854,14 +855,14 @@ in omics data.") (define-public r-inspect (package (name "r-inspect") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "INSPEcT" version)) (sha256 (base32 - "1gk0pwyimkswrvgb2xr3c2zy4myi448a2shr5ap65rq9pcpp0l8p")))) + "0b671x5v2wyq5np2flq2m1fnjz32f303yjlw64a1inwc9k2w2pz2")))) (properties `((upstream-name . "INSPEcT"))) (build-system r-build-system) (propagated-inputs @@ -890,14 +891,14 @@ modeling the rates that determines changes in mature mRNA levels.") (define-public r-dnabarcodes (package (name "r-dnabarcodes") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNABarcodes" version)) (sha256 (base32 - "0xhna7f0kr7pp2hqwara5i57m9mdr65shflfxiyw6yy3g90pgb5x")))) + "0g6j7ish0fk9jcib94wssjgp1m8ldcp42hyyg1ypr945fa3xghx0")))) (properties `((upstream-name . "DNABarcodes"))) (build-system r-build-system) (propagated-inputs @@ -913,3 +914,157 @@ can be analyzed regarding their minimal, maximal and average distances between barcodes. Finally, reads that start with a (possibly mutated) barcode can be demultiplexed, i.e. assigned to their original reference barcode.") (license license:gpl2))) + +(define-public r-ruvseq + (package + (name "r-ruvseq") + (version "1.16.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "RUVSeq" version)) + (sha256 + (base32 + "0xb3bj3n06cb9xddkv77a8svhg4fl1azlfmibwrm9mq9464kgf0m")))) + (properties `((upstream-name . "RUVSeq"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-edaseq" ,r-edaseq) + ("r-edger" ,r-edger) + ("r-mass" ,r-mass))) + (home-page "https://github.com/drisso/RUVSeq") + (synopsis "Remove unwanted variation from RNA-Seq data") + (description + "This package implements methods to @dfn{remove unwanted variation} (RUV) +of Risso et al. (2014) for the normalization of RNA-Seq read counts between +samples.") + (license license:artistic2.0))) + +(define-public r-biocneighbors + (package + (name "r-biocneighbors") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "BiocNeighbors" version)) + (sha256 + (base32 + "1fsb96acidlxwf0h65xv7fnwdi58ckmq00gmwykrlawh88wgn1ll")))) + (properties `((upstream-name . "BiocNeighbors"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-rcpp" ,r-rcpp) + ("r-rcppannoy" ,r-rcppannoy) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://bioconductor.org/packages/BiocNeighbors") + (synopsis "Nearest Neighbor Detection for Bioconductor packages") + (description + "This package implements exact and approximate methods for nearest +neighbor detection, in a framework that allows them to be easily switched +within Bioconductor packages or workflows. The exact algorithm is implemented +using pre-clustering with the k-means algorithm. Functions are also provided +to search for all neighbors within a given distance. Parallelization is +achieved for all methods using the BiocParallel framework.") + (license license:gpl3))) + +(define-public r-destiny + (package + (name "r-destiny") + (version "2.12.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "destiny" version)) + (sha256 + (base32 + "1iay17mrhsfmpwl920rh1nip5b6ybva4h6bna0yld04paq5yva67")))) + (build-system r-build-system) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-fnn" ,r-fnn) + ("r-ggthemes" ,r-ggthemes) + ("r-hmisc" ,r-hmisc) + ("r-igraph" ,r-igraph) + ("r-matrix" ,r-matrix) + ("r-proxy" ,r-proxy) + ("r-rcpp" ,r-rcpp) + ("r-rcppeigen" ,r-rcppeigen) + ("r-scales" ,r-scales) + ("r-scatterplot3d" ,r-scatterplot3d) + ("r-smoother" ,r-smoother) + ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-vim" ,r-vim))) + (home-page "https://bioconductor.org/packages/destiny/") + (synopsis "Create and plot diffusion maps") + (description "This package provides tools to create and plot diffusion +maps.") + ;; Any version of the GPL + (license license:gpl3+))) + +(define-public r-savr + (package + (name "r-savr") + (version "1.20.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "savR" version)) + (sha256 + (base32 + "13bwq2a2pygdkmhrcmvz525wsi5i01j911711zgs6x93wj20b2w7")))) + (properties `((upstream-name . "savR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-reshape2" ,r-reshape2) + ("r-scales" ,r-scales) + ("r-xml" ,r-xml))) + (home-page "https://github.com/bcalder/savR") + (synopsis "Parse and analyze Illumina SAV files") + (description + "This package provides tools to parse Illumina Sequence Analysis +Viewer (SAV) files, access data, and generate QC plots.") + (license license:agpl3+))) + +(define-public r-chipexoqual + (package + (name "r-chipexoqual") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ChIPexoQual" version)) + (sha256 + (base32 + "1773bpiybn4g9jlv46z29x19q4dpcvn7lairr3lq5pdqbqmz5hnp")))) + (properties `((upstream-name . "ChIPexoQual"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocparallel" ,r-biocparallel) + ("r-biovizbase" ,r-biovizbase) + ("r-broom" ,r-broom) + ("r-data-table" ,r-data-table) + ("r-dplyr" ,r-dplyr) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-ggplot2" ,r-ggplot2) + ("r-hexbin" ,r-hexbin) + ("r-iranges" ,r-iranges) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-rmarkdown" ,r-rmarkdown) + ("r-rsamtools" ,r-rsamtools) + ("r-s4vectors" ,r-s4vectors) + ("r-scales" ,r-scales) + ("r-viridis" ,r-viridis))) + (home-page "https://github.com/keleslab/ChIPexoQual") + (synopsis "Quality control pipeline for ChIP-exo/nexus data") + (description + "This package provides a quality control pipeline for ChIP-exo/nexus +sequencing data.") + (license license:gpl2+))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1e04081ceb..e17c53675c 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -262,14 +262,14 @@ instance, it implements several methods to assess contig-wise read coverage.") (name "bamtools") (version "2.5.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/pezmaster31/bamtools/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/pezmaster31/bamtools.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1z3kg24qrwq13a88n9d86izngrar4fll7gr6phddb2faw75pdgaa")))) + "0nfb2ypcx9959xnbz6wxh6py3xfizgmg8nrknxl95c507m9hmq8b")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;no "check" target @@ -281,7 +281,8 @@ instance, it implements several methods to assess contig-wise read coverage.") (setenv "LDFLAGS" (string-append "-Wl,-rpath=" - (assoc-ref outputs "out") "/lib/bamtools"))))))) + (assoc-ref outputs "out") "/lib/bamtools")) + #t))))) (inputs `(("zlib" ,zlib))) (home-page "https://github.com/pezmaster31/bamtools") (synopsis "C++ API and command-line toolkit for working with BAM data") @@ -438,11 +439,11 @@ BED, GFF/GTF, VCF.") (source (origin (method url-fetch) (uri (string-append "https://github.com/arq5x/bedtools2/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + "releases/download/v" version + "/bedtools-" version ".tar.gz")) (sha256 (base32 - "05vrnr8yp7swfagshzpgqmzk1blnwnq8pq5pckzi1m26w98d63vf")))) + "11rvca19ncg03kxd0wzlfx5ws7r3nisd0z8s9j9n182d8ksp2pxz")))) (arguments '(#:test-target "test" #:phases @@ -496,7 +497,8 @@ BED, GFF/GTF, VCF.") '("create_annotations_files.bash" "create_metaplots.bash" "Ribotaper_ORF_find.sh" - "Ribotaper.sh")))))))) + "Ribotaper.sh"))) + #t))))) (inputs `(("bedtools" ,bedtools-2.18) ("samtools" ,samtools-0.1) @@ -520,13 +522,14 @@ provides the Ribotaper pipeline.") (version "0.2.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ratschlab/RiboDiff/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ratschlab/RiboDiff.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0wpbwmfv05wdjxv7ikm664f7s7p7cqr8jnw99zrda0q67rl50aaj")))) + "0x75nlp7qnmm64jasbi6l21f2cy99r2cjyl6b4hr8zf2bq22drnz")))) (build-system python-build-system) (arguments `(#:python ,python-2 @@ -563,12 +566,14 @@ independently with transcriptional regulation.") (name "bioawk") (version "1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/lh3/bioawk/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 "1daizxsk17ahi9n58fj8vpgwyhzrzh54bzqhanjanp88kgrz7gjw")))) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lh3/bioawk.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1pxc3zdnirxbf9a0az698hd8xdik7qkhypm7v6hn922x8y9qmspm")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) @@ -582,13 +587,14 @@ independently with transcriptional regulation.") (modify-phases %standard-phases (delete 'configure) ; There is no configure phase. (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (man (string-append out "/share/man/man1"))) - (mkdir-p man) - (copy-file "awk.1" (string-append man "/bioawk.1")) - (install-file "bioawk" bin))))))) + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man (string-append out "/share/man/man1"))) + (mkdir-p man) + (copy-file "awk.1" (string-append man "/bioawk.1")) + (install-file "bioawk" bin)) + #t))))) (home-page "https://github.com/lh3/bioawk") (synopsis "AWK with bioinformatics extensions") (description "Bioawk is an extension to Brian Kernighan's awk, adding the @@ -688,53 +694,77 @@ Python.") (define-public python-biom-format (package - (name "python-biom-format") - (version "2.1.6") - (source - (origin - (method url-fetch) - ;; Use GitHub as source because PyPI distribution does not contain - ;; test data: https://github.com/biocore/biom-format/issues/693 - (uri (string-append "https://github.com/biocore/biom-format/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "08cr7wpahk6zb31h4bs7jmzpvxcqv9s13xz40h6y2h656jvdvnpj")))) - (build-system python-build-system) - (propagated-inputs - `(("python-numpy" ,python-numpy) - ("python-scipy" ,python-scipy) - ("python-future" ,python-future) - ("python-click" ,python-click) - ("python-h5py" ,python-h5py) - ("python-pandas" ,python-pandas))) - (native-inputs - `(("python-nose" ,python-nose))) - (home-page "http://www.biom-format.org") - (synopsis "Biological Observation Matrix (BIOM) format utilities") - (description - "The BIOM file format is designed to be a general-use format for + (name "python-biom-format") + (version "2.1.7") + (source + (origin + (method git-fetch) + ;; Use GitHub as source because PyPI distribution does not contain + ;; test data: https://github.com/biocore/biom-format/issues/693 + (uri (git-reference + (url "https://github.com/biocore/biom-format.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rna16lyk5aqhnv0dp77wwaplias93f1vw28ad3jmyw6hwkai05v")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'use-cython + (lambda _ (setenv "USE_CYTHON" "1") #t)) + (add-after 'unpack 'disable-broken-test + (lambda _ + (substitute* "biom/tests/test_cli/test_validate_table.py" + (("^(.+)def test_invalid_hdf5" m indent) + (string-append indent + "@npt.dec.skipif(True, msg='Guix')\n" + m))) + #t)) + (add-before 'reset-gzip-timestamps 'make-files-writable + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each (lambda (file) (chmod file #o644)) + (find-files out "\\.gz")) + #t)))))) + (propagated-inputs + `(("python-numpy" ,python-numpy) + ("python-scipy" ,python-scipy) + ("python-flake8" ,python-flake8) + ("python-future" ,python-future) + ("python-click" ,python-click) + ("python-h5py" ,python-h5py) + ("python-pandas" ,python-pandas))) + (native-inputs + `(("python-cython" ,python-cython) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-nose" ,python-nose))) + (home-page "http://www.biom-format.org") + (synopsis "Biological Observation Matrix (BIOM) format utilities") + (description + "The BIOM file format is designed to be a general-use format for representing counts of observations e.g. operational taxonomic units, KEGG orthology groups or lipid types, in one or more biological samples e.g. microbiome samples, genomes, metagenomes.") - (license license:bsd-3) - (properties `((python2-variant . ,(delay python2-biom-format)))))) + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-biom-format)))))) (define-public python2-biom-format (let ((base (package-with-python2 (strip-python2-variant python-biom-format)))) (package (inherit base) (arguments - `(#:phases - (modify-phases %standard-phases - ;; Do not require the unmaintained pyqi library. - (add-after 'unpack 'remove-pyqi - (lambda _ - (substitute* "setup.py" - (("install_requires.append\\(\"pyqi\"\\)") "pass")) - #t))) - ,@(package-arguments base)))))) + (substitute-keyword-arguments (package-arguments base) + ((#:phases phases) + `(modify-phases ,phases + ;; Do not require the unmaintained pyqi library. + (add-after 'unpack 'remove-pyqi + (lambda _ + (substitute* "setup.py" + (("install_requires.append\\(\"pyqi\"\\)") "pass")) + #t))))))))) (define-public bioperl-minimal (let* ((inputs `(("perl-module-build" ,perl-module-build) @@ -1213,7 +1243,7 @@ confidence to have in an alignment.") '(#:tests? #f ;no "check" target #:make-flags (list (string-append "ZLIB=" - (assoc-ref %build-inputs "zlib") + (assoc-ref %build-inputs "zlib:static") "/lib/libz.a") (string-append "LDFLAGS=" (string-join '("-lboost_filesystem" @@ -1256,6 +1286,7 @@ confidence to have in an alignment.") ("boost" ,boost) ("sparsehash" ,sparsehash) ("pigz" ,pigz) + ("zlib:static" ,zlib "static") ("zlib" ,zlib))) (supported-systems '("x86_64-linux")) (home-page "https://sourceforge.net/p/bless-ec/wiki/Home/") @@ -1332,7 +1363,7 @@ gapped, local, and paired-end alignment modes.") (define-public tophat (package (name "tophat") - (version "2.1.0") + (version "2.1.1") (source (origin (method url-fetch) (uri (string-append @@ -1340,13 +1371,12 @@ gapped, local, and paired-end alignment modes.") version ".tar.gz")) (sha256 (base32 - "168zlzykq622zbgkh90a90f1bdgsxkscq2zxzbj8brq80hbjpyp7")) - (patches (search-patches "tophat-build-with-later-seqan.patch")) + "19add02kv2xhd6ihd779dr7x35ggym3jqr0m5c4315i1yfb0p11p")) (modules '((guix build utils))) (snippet '(begin ;; Remove bundled SeqAn and samtools - (delete-file-recursively "src/SeqAn-1.3") + (delete-file-recursively "src/SeqAn-1.4.2") (delete-file-recursively "src/samtools-0.1.18") #t)))) (build-system gnu-build-system) @@ -1383,7 +1413,7 @@ gapped, local, and paired-end alignment modes.") ("python" ,python-2) ("perl" ,perl) ("zlib" ,zlib) - ("seqan" ,seqan))) + ("seqan" ,seqan-1))) (home-page "http://ccb.jhu.edu/software/tophat/index.shtml") (synopsis "Spliced read mapper for RNA-Seq data") (description @@ -1450,13 +1480,14 @@ and more accurate. BWA-MEM also has better performance than BWA-backtrack for (name "bwa-pssm") (version "0.5.11") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/pkerpedjiev/bwa-pssm/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/pkerpedjiev/bwa-pssm.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "02p7mpbs4mlxmn84g2x4ghak638vbj4lqix2ipx5g84pz9bhdavg")))) + "076c4q0cdqz8jgylb067y9zmvxglppnzi3qiscn0xiypgc6lgb5r")))) (build-system gnu-build-system) (inputs `(("gdsl" ,gdsl) @@ -1474,40 +1505,38 @@ the original BWA alignment program and shares the genome index structure as well as many of the command line options.") (license license:gpl3+))) -(define-public python2-bx-python +(define-public python-bx-python (package - (name "python2-bx-python") - (version "0.7.3") + (name "python-bx-python") + (version "0.8.2") (source (origin (method url-fetch) (uri (pypi-uri "bx-python" version)) (sha256 (base32 - "15z2w3bvnc0n4qmb9bd6d8ylc2h2nj883x2w9iixf4x3vki9b22i")) - (modules '((guix build utils))) - (snippet - '(begin - (substitute* "setup.py" - ;; remove dependency on outdated "distribute" module - (("^from distribute_setup import use_setuptools") "") - (("^use_setuptools\\(\\)") "")) - #t)))) + "11kksg2rbzihpmcid823xvg42xi88m7sz58rzk29abybkxy0rszs")))) (build-system python-build-system) - (arguments - `(#:tests? #f ;tests fail because test data are not included - #:python ,python-2)) + ;; Tests fail because test data are not included + (arguments '(#:tests? #f)) + (propagated-inputs + `(("python-numpy" ,python-numpy) + ("python-six" ,python-six))) (inputs - `(("python-numpy" ,python2-numpy) - ("zlib" ,zlib))) + `(("zlib" ,zlib))) (native-inputs - `(("python-nose" ,python2-nose))) - (home-page "http://bitbucket.org/james_taylor/bx-python/") + `(("python-lzo" ,python-lzo) + ("python-nose" ,python-nose) + ("python-cython" ,python-cython))) + (home-page "https://github.com/bxlab/bx-python") (synopsis "Tools for manipulating biological data") (description "bx-python provides tools for manipulating biological data, particularly multiple sequence alignments.") (license license:expat))) +(define-public python2-bx-python + (package-with-python2 python-bx-python)) + (define-public python-pysam (package (name "python-pysam") @@ -1597,19 +1626,19 @@ also includes an interface for tabix.") (define-public python-twobitreader (package (name "python-twobitreader") - (version "3.1.4") + (version "3.1.6") (source (origin - (method url-fetch) - (uri (pypi-uri "twobitreader" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/benjschiller/twobitreader") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1q8wnj2kga9nz1lwc4w7qv52smfm536hp6mc8w6s53lhyj0mpi22")))) + "1qbxvv1h58cismbk1anpjrkpghsaiy64a11ir3lhy6qch6xf8n62")))) (build-system python-build-system) - (arguments - '(;; Tests are not distributed in the PyPi release. - ;; TODO Try building from the Git repo or asking the upstream maintainer - ;; to distribute the tests on PyPi. - #:tests? #f)) + ;; Tests are not included + (arguments '(#:tests? #f)) (native-inputs `(("python-sphinx" ,python-sphinx))) (home-page "https://github.com/benjschiller/twobitreader") @@ -1786,7 +1815,8 @@ databases.") (copy-recursively "QuarryFiles" (string-append out "/QuarryFiles")) (install-file "CodingQuarry" bin) - (install-file "CufflinksGTF_to_CodingQuarryGFF3.py" bin))))))) + (install-file "CufflinksGTF_to_CodingQuarryGFF3.py" bin)) + #t))))) (inputs `(("openmpi" ,openmpi))) (native-search-paths (list (search-path-specification @@ -1896,31 +1926,18 @@ time.") (define-public crossmap (package (name "crossmap") - (version "0.2.1") + (version "0.2.9") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/crossmap/CrossMap-" - version ".tar.gz")) + (uri (pypi-uri "CrossMap" version)) (sha256 (base32 - "07y179f63d7qnzdvkqcziwk9bs3k4zhp81q392fp1hwszjdvy22f")) - ;; This patch has been sent upstream already and is available - ;; for download from Sourceforge, but it has not been merged. - (patches (search-patches "crossmap-allow-system-pysam.patch")) - (modules '((guix build utils))) - (snippet '(begin - ;; remove bundled copy of pysam - (delete-file-recursively "lib/pysam") - #t)))) + "1byhclrqnqpvc1rqkfh4jwj6yhn0x9y7jk47i0qcjlhk0pjkw92p")))) (build-system python-build-system) - (arguments - `(#:python ,python-2 - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'set-env - (lambda _ (setenv "CROSSMAP_USE_SYSTEM_PYSAM" "1") #t))))) + (arguments `(#:python ,python-2)) (inputs - `(("python-numpy" ,python2-numpy) + `(("python-bx-python" ,python2-bx-python) + ("python-numpy" ,python2-numpy) ("python-pysam" ,python2-pysam) ("zlib" ,zlib))) (native-inputs @@ -1934,22 +1951,46 @@ files between different genome assemblies. It supports most commonly used file formats including SAM/BAM, Wiggle/BigWig, BED, GFF/GTF, VCF.") (license license:gpl2+))) +(define-public python-dnaio + (package + (name "python-dnaio") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "dnaio" version)) + (sha256 + (base32 + "0f16m7hdlm0fz1n7y5asy0v9ghyrq17ni1p9iybq22ddzyd49r27")))) + (build-system python-build-system) + (native-inputs + `(("python-cython" ,python-cython) + ("python-pytest" ,python-pytest) + ("python-xopen" ,python-xopen))) + (home-page "https://github.com/marcelm/dnaio/") + (synopsis "Read FASTA and FASTQ files efficiently") + (description + "dnaio is a Python library for fast parsing of FASTQ and also FASTA +files. The code was previously part of the cutadapt tool.") + (license license:expat))) + (define-public cutadapt (package (name "cutadapt") - (version "1.16") + (version "1.18") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/marcelm/cutadapt.git") (commit (string-append "v" version)))) - (file-name (string-append name "-" version "-checkout")) + (file-name (git-file-name name version)) (sha256 (base32 - "09pr02067jiks19nc0aby4xp70hhgvb554i2y1c04rv1m401w7q8")))) + "08bbfwyc0kvcd95jf2s95xiv9s3cbsxm39ydl0qck3fw3cviwxpg")))) (build-system python-build-system) (inputs - `(("python-xopen" ,python-xopen))) + `(("python-dnaio" ,python-dnaio) + ("python-xopen" ,python-xopen))) (native-inputs `(("python-cython" ,python-cython) ("python-pytest" ,python-pytest))) @@ -2044,15 +2085,15 @@ accessing bigWig files.") (version "4.4.0") (source (origin - (method url-fetch) + (method git-fetch) ;; Source from GitHub so that tests are included. - (uri - (string-append "https://github.com/jeetsukumaran/DendroPy/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (git-reference + (url "https://github.com/jeetsukumaran/DendroPy.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0v2fccny5xjaah546bsch1mw4kh61qq5frz2ibllxs9mp6ih9bsn")))) + "097hfyv2kaf4x92i4rjx0paw2cncxap48qivv8zxng4z7nhid0x9")))) (build-system python-build-system) (home-page "http://packages.python.org/DendroPy/") (synopsis "Library for phylogenetics and phylogenetic computing") @@ -2082,14 +2123,14 @@ trees (phylogenies) and characters.") (define-public python-py2bit (package (name "python-py2bit") - (version "0.2.1") + (version "0.3.0") (source (origin (method url-fetch) (uri (pypi-uri "py2bit" version)) (sha256 (base32 - "1cdf4qlmgwsh1f4k0wdv2sr8x9qn4366p0k3614vbd0fpqiarxrl")))) + "1vw2nvw1yrl7ikkqsqs1pg239yr5nspvd969r1x9arms1k25a1a5")))) (build-system python-build-system) (home-page "https://github.com/dpryan79/py2bit") (synopsis "Access 2bit files using lib2bit") @@ -2101,7 +2142,7 @@ with Python.") (define-public deeptools (package (name "deeptools") - (version "3.1.2") + (version "3.1.3") (source (origin (method git-fetch) (uri (git-reference @@ -2110,7 +2151,7 @@ with Python.") (file-name (git-file-name name version)) (sha256 (base32 - "06fdpp6cg3xiwryxjhixvfysl4z0ps1crjgia587qa9ikqpsa7fd")))) + "1vggnf52g6q2vifdl4cyi7s2fnfqq0ky2zrkj5zv2qfzsc3p3siw")))) (build-system python-build-system) (arguments `(#:phases @@ -2146,42 +2187,42 @@ identify enrichments with functional annotations of the genome.") (define-public delly (package (name "delly") - (version "0.7.7") + (version "0.7.9") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/tobiasrausch/delly/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dellytools/delly.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0dkwy3pyxmi6dhh1lpsr3698ri5sslw9qz67hfys0bz8dgrqwabj")) - (patches (search-patches "delly-use-system-libraries.patch")))) + (base32 "034jqsxswy9gqdh2zkgc1js99qkv75ks4xvzgmh0284sraagv61z")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "src/htslib") + #t)))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests to run. - #:make-flags '("PARALLEL=1") ; Allow parallel execution at run-time. + #:make-flags + (list "PARALLEL=1" ; Allow parallel execution at run-time. + (string-append "prefix=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure) ; There is no configure phase. - (replace 'install - (lambda _ - (let ((bin (string-append (assoc-ref %outputs "out") "/bin")) - (templates (string-append (assoc-ref %outputs "out") + (add-after 'install 'install-templates + (lambda* (#:key outputs #:allow-other-keys) + (let ((templates (string-append (assoc-ref outputs "out") "/share/delly/templates"))) - (mkdir-p bin) (mkdir-p templates) (copy-recursively "excludeTemplates" templates) - (install-file "src/cov" bin) - (install-file "src/delly" bin) - (install-file "src/dpe" bin))))))) - (native-inputs - `(("python" ,python-2))) + #t)))))) (inputs `(("boost" ,boost) ("htslib" ,htslib) ("zlib" ,zlib) ("bzip2" ,bzip2))) - (home-page "https://github.com/tobiasrausch/delly") + (home-page "https://github.com/dellytools/delly") (synopsis "Integrated structural variant prediction method") (description "Delly is an integrated structural variant prediction method that can discover and genotype deletions, tandem duplications, inversions and @@ -2195,14 +2236,14 @@ accurately delineate genomic rearrangements throughout the genome.") (name "diamond") (version "0.9.22") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/bbuchfink/diamond/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bbuchfink/diamond.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0adp87r9ak63frdrdmrdfhsn6g0jnnyq1lr2wibvqbxcl37iir9m")))) + "0bky78v79g3wmdpsd706cscckgw1v09fg8vdd0z8z0d5b97aj9zl")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no "check" target @@ -2230,13 +2271,14 @@ data and settings.") (version "1.6.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/maaskola/discrover/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/maaskola/discrover.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0rah9ja4m0rl5mldd6vag9rwrivw1zrqxssfq8qx64m7961fp68k")))) + "173fwi2vb6a5kp406hm3jj6j7v4whww796f2qcygp4rpvamh307y")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there are no tests @@ -2264,106 +2306,102 @@ of nucleic acid binding proteins.") (license license:gpl3+))) (define-public eigensoft - (let ((revision "1") - (commit "b14d1e202e21e532536ff8004f0419cd5e259dc7")) - (package - (name "eigensoft") - (version (string-append "6.1.2-" - revision "." - (string-take commit 9))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/DReichLab/EIG.git") - (commit commit))) - (file-name (string-append "eigensoft-" commit "-checkout")) - (sha256 - (base32 - "0f5m6k2j5c16xc3xbywcs989xyc26ncy1zfzp9j9n55n9r4xcaiq")) - (modules '((guix build utils))) - ;; Remove pre-built binaries. - (snippet '(begin - (delete-file-recursively "bin") - (mkdir "bin") - #t)))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ; There are no tests. - #:make-flags '("CC=gcc") - #:phases - (modify-phases %standard-phases - ;; There is no configure phase, but the Makefile is in a - ;; sub-directory. - (replace 'configure - (lambda _ - (chdir "src") - ;; The link flags are incomplete. - (substitute* "Makefile" - (("-lgsl") "-lgsl -lm -llapack -llapacke -lpthread")) - #t)) - ;; The provided install target only copies executables to - ;; the "bin" directory in the build root. - (add-after 'install 'actually-install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (for-each (lambda (file) - (install-file file bin)) - (find-files "../bin" ".*")) - #t)))))) - (inputs - `(("gsl" ,gsl) - ("lapack" ,lapack) - ("openblas" ,openblas) - ("perl" ,perl) - ("gfortran" ,gfortran "lib"))) - (home-page "https://github.com/DReichLab/EIG") - (synopsis "Tools for population genetics") - (description "The EIGENSOFT package provides tools for population + (package + (name "eigensoft") + (version "7.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/DReichLab/EIG.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1c141fqvhnzibmnf22sv23vbmzm20kjjyrib44cfh75wyndp2d9k")) + (modules '((guix build utils))) + ;; Remove pre-built binaries. + (snippet '(begin + (delete-file-recursively "bin") + (mkdir "bin") + #t)))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; There are no tests. + #:make-flags '("CC=gcc") + #:phases + (modify-phases %standard-phases + ;; There is no configure phase, but the Makefile is in a + ;; sub-directory. + (replace 'configure + (lambda _ (chdir "src") #t)) + ;; The provided install target only copies executables to + ;; the "bin" directory in the build root. + (add-after 'install 'actually-install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (for-each (lambda (file) + (install-file file bin)) + (find-files "../bin" ".*")) + #t)))))) + (inputs + `(("gsl" ,gsl) + ("lapack" ,lapack) + ("openblas" ,openblas) + ("perl" ,perl) + ("gfortran" ,gfortran "lib"))) + (home-page "https://github.com/DReichLab/EIG") + (synopsis "Tools for population genetics") + (description "The EIGENSOFT package provides tools for population genetics and stratification correction. EIGENSOFT implements methods commonly used in population genetics analyses such as PCA, computation of Tracy-Widom statistics, and finding related individuals in structured populations. It comes with a built-in plotting script and supports multiple file formats and quantitative phenotypes.") - ;; The license of the eigensoft tools is Expat, but since it's - ;; linking with the GNU Scientific Library (GSL) the effective - ;; license is the GPL. - (license license:gpl3+)))) + ;; The license of the eigensoft tools is Expat, but since it's + ;; linking with the GNU Scientific Library (GSL) the effective + ;; license is the GPL. + (license license:gpl3+))) (define-public edirect (package (name "edirect") - (version "4.10") + (version "10.2.20181018") (source (origin (method url-fetch) - (uri (string-append "ftp://ftp.ncbi.nlm.nih.gov/entrez/entrezdirect/" - "versions/2016-05-03/edirect.tar.gz")) + (uri (string-append "ftp://ftp.ncbi.nlm.nih.gov/entrez/entrezdirect" + "/versions/" version + "/edirect-" version ".tar.gz")) (sha256 (base32 - "15zsprak5yh8c1yrz4r1knmb5s8qcmdid4xdhkh3lqcv64l60hli")))) + "091f4aigzpbqih6h82nq566gkp3y07i72yqndmqskfgar1vwgci7")))) (build-system perl-build-system) (arguments - `(#:tests? #f ;no "check" target - #:phases + `(#:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) + (delete 'check) ; simple check after install (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((target (string-append (assoc-ref outputs "out") - "/bin"))) - (mkdir-p target) - (install-file "edirect.pl" target) - #t))) - (add-after - 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Make sure 'edirect.pl' finds all perl inputs at runtime. - (let* ((out (assoc-ref outputs "out")) - (path (getenv "PERL5LIB"))) - (wrap-program (string-append out "/bin/edirect.pl") - `("PERL5LIB" ":" prefix (,path))))))))) + (lambda* (#:key outputs #:allow-other-keys) + (install-file "edirect.pl" + (string-append (assoc-ref outputs "out") "/bin")) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key outputs #:allow-other-keys) + ;; Make sure 'edirect.pl' finds all perl inputs at runtime. + (let* ((out (assoc-ref outputs "out")) + (path (getenv "PERL5LIB"))) + (wrap-program (string-append out "/bin/edirect.pl") + `("PERL5LIB" ":" prefix (,path)))) + #t)) + (add-after 'wrap-program 'check + (lambda* (#:key outputs #:allow-other-keys) + (invoke (string-append (assoc-ref outputs "out") + "/bin/edirect.pl") + "-filter" "-help") + #t))))) (inputs `(("perl-html-parser" ,perl-html-parser) ("perl-encode-locale" ,perl-encode-locale) @@ -2379,6 +2417,7 @@ quantitative phenotypes.") ("perl-net-http" ,perl-net-http) ("perl-uri" ,perl-uri) ("perl-www-robotrules" ,perl-www-robotrules) + ("perl-xml-simple" ,perl-xml-simple) ("perl" ,perl))) (home-page "http://www.ncbi.nlm.nih.gov/books/NBK179288/") (synopsis "Tools for accessing the NCBI's set of databases") @@ -2474,17 +2513,16 @@ ChIP-Seq, and analysis of metagenomic data.") (define-public express-beta-diversity (package (name "express-beta-diversity") - (version "1.0.7") + (version "1.0.8") (source (origin - (method url-fetch) - (uri - (string-append - "https://github.com/dparks1134/ExpressBetaDiversity/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dparks1134/ExpressBetaDiversity.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1djvdlmqvjf6h0zq7w36y8cl5cli6rgj86x65znl48agnwmzxfxr")))) + "0s0yzg5c21349rh7x4w9266jsvnp7j1hp9cf8sk32hz8nvrj745x")))) (build-system gnu-build-system) (arguments `(#:phases @@ -2492,17 +2530,13 @@ ChIP-Seq, and analysis of metagenomic data.") (delete 'configure) (add-before 'build 'enter-source (lambda _ (chdir "source") #t)) (replace 'check - (lambda _ (zero? (system* "../bin/ExpressBetaDiversity" - "-u")))) - (add-after 'check 'exit-source (lambda _ (chdir "..") #t)) + (lambda _ (invoke "../bin/ExpressBetaDiversity" "-u") #t)) (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") - "/bin"))) - (mkdir-p bin) - (install-file "scripts/convertToEBD.py" bin) - (install-file "bin/ExpressBetaDiversity" bin) - #t)))))) + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (install-file "../scripts/convertToEBD.py" bin) + (install-file "../bin/ExpressBetaDiversity" bin) + #t)))))) (inputs `(("python" ,python-2))) (home-page "http://kiwi.cs.dal.ca/Software/ExpressBetaDiversity") @@ -2535,31 +2569,30 @@ similarity of community members.") (delete 'configure) (replace 'build (lambda* (#:key source #:allow-other-keys) - (and (zero? (system* "gcc" - "-O3" - "-finline-functions" - "-funroll-loops" - "-Wall" - "-o" - "FastTree" - source - "-lm")) - (zero? (system* "gcc" - "-DOPENMP" - "-fopenmp" - "-O3" - "-finline-functions" - "-funroll-loops" - "-Wall" - "-o" - "FastTreeMP" - source - "-lm"))))) + (invoke "gcc" + "-O3" + "-finline-functions" + "-funroll-loops" + "-Wall" + "-o" + "FastTree" + source + "-lm") + (invoke "gcc" + "-DOPENMP" + "-fopenmp" + "-O3" + "-finline-functions" + "-funroll-loops" + "-Wall" + "-o" + "FastTreeMP" + source + "-lm") + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") - "/bin"))) - (mkdir-p bin) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (install-file "FastTree" bin) (install-file "FastTreeMP" bin) #t)))))) @@ -2606,38 +2639,39 @@ results. The FASTX-Toolkit tools perform some of these preprocessing tasks.") (define-public flexbar (package (name "flexbar") - (version "2.5") + (version "3.4.0") (source (origin - (method url-fetch) - (uri - (string-append "mirror://sourceforge/flexbar/" - version "/flexbar_v" version "_src.tgz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/seqan/flexbar.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "13jaykc3y1x8y5nn9j8ljnb79s5y51kyxz46hdmvvjj6qhyympmf")))) + "1pq9sxvdnldl14libk234m72dqhwgzs3acgl943wchwdqlcsi5r2")))) (build-system cmake-build-system) (arguments - `(#:configure-flags (list - (string-append "-DFLEXBAR_BINARY_DIR=" - (assoc-ref %outputs "out") - "/bin/")) - #:phases + `(#:phases (modify-phases %standard-phases (replace 'check (lambda* (#:key outputs #:allow-other-keys) - (setenv "PATH" (string-append - (assoc-ref outputs "out") "/bin:" - (getenv "PATH"))) - (chdir "../flexbar_v2.5_src/test") - (zero? (system* "bash" "flexbar_validate.sh")))) - (delete 'install)))) + (setenv "PATH" (string-append (getcwd) ":" (getenv "PATH"))) + (with-directory-excursion "../source/test" + (invoke "bash" "flexbar_test.sh")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (string-append (assoc-ref outputs "out"))) + (bin (string-append out "/bin/"))) + (install-file "flexbar" bin)) + #t))))) (inputs `(("tbb" ,tbb) ("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config) ("seqan" ,seqan))) - (home-page "http://flexbar.sourceforge.net") + (home-page "https://github.com/seqan/flexbar") (synopsis "Barcode and adapter removal tool for sequencing platforms") (description "Flexbar preprocesses high-throughput nucleotide sequencing data @@ -2646,7 +2680,7 @@ Moreover, trimming and filtering features are provided. Flexbar increases read mapping rates and improves genome and transcriptome assemblies. It supports next-generation sequencing data in fasta/q and csfasta/q format from Illumina, Roche 454, and the SOLiD platform.") - (license license:gpl3))) + (license license:bsd-3))) (define-public fraggenescan (package @@ -2687,8 +2721,10 @@ Illumina, Roche 454, and the SOLiD platform.") (string-append " strcpy(train_dir, \"" share "/train/\");")))) #t)) (replace 'build - (lambda _ (and (zero? (system* "make" "clean")) - (zero? (system* "make" "fgs"))))) + (lambda _ + (invoke "make" "clean") + (invoke "make" "fgs") + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (string-append (assoc-ref outputs "out"))) @@ -2696,7 +2732,8 @@ Illumina, Roche 454, and the SOLiD platform.") (share (string-append out "/share/fraggenescan/train"))) (install-file "run_FragGeneScan.pl" bin) (install-file "FragGeneScan" bin) - (copy-recursively "train" share)))) + (copy-recursively "train" share)) + #t)) (delete 'check) (add-after 'install 'post-install-check ;; In lieu of 'make check', run one of the examples and check the @@ -2705,21 +2742,24 @@ Illumina, Roche 454, and the SOLiD platform.") (let* ((out (string-append (assoc-ref outputs "out"))) (bin (string-append out "/bin/")) (frag (string-append bin "run_FragGeneScan.pl"))) - (and (zero? (system* frag ; Test complete genome. - "-genome=./example/NC_000913.fna" - "-out=./test2" - "-complete=1" - "-train=complete")) - (file-exists? "test2.faa") - (file-exists? "test2.ffn") - (file-exists? "test2.gff") - (file-exists? "test2.out") - (zero? (system* ; Test incomplete sequences. - frag - "-genome=./example/NC_000913-fgs.ffn" - "-out=out" - "-complete=0" - "-train=454_30"))))))))) + ;; Test complete genome. + (invoke frag + "-genome=./example/NC_000913.fna" + "-out=./test2" + "-complete=1" + "-train=complete") + (unless (and (file-exists? "test2.faa") + (file-exists? "test2.ffn") + (file-exists? "test2.gff") + (file-exists? "test2.out")) + (error "Expected files do not exist.")) + ;; Test incomplete sequences. + (invoke frag + "-genome=./example/NC_000913-fgs.ffn" + "-out=out" + "-complete=0" + "-train=454_30") + #t)))))) (inputs `(("perl" ,perl) ("python" ,python-2))) ;not compatible with python 3. @@ -2739,16 +2779,14 @@ genes in incomplete assemblies or complete genomes.") (version "2.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/ctSkennerton/fxtract/archive/" - version ".tar.gz")) - (file-name (string-append "ctstennerton-util-" - (string-take util-commit 7) - "-checkout")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ctSkennerton/fxtract.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0275cfdhis8517hm01is62062swmi06fxzifq7mr3knbbxjlaiwj")))) + "0hab3gpwf4w9s87qlbswq6ws1qqybh4dcqk79q1ahyldzai5fgp5")))) (build-system gnu-build-system) (arguments `(#:make-flags (list @@ -2802,19 +2840,22 @@ comment or quality sections.") (define-public gemma (package (name "gemma") - (version "0.96") + (version "0.98") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/xiangzhou/GEMMA/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/xiangzhou/GEMMA.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "055ynn16gd12pf78n4vr2a9jlwsbwzajpdnf2y2yilg1krfff222")) - (patches (search-patches "gemma-intel-compat.patch")))) + "1s3ncnbn45r2hh1cvrqky1kbqq6546biypr4f5mkw1kqlrgyh0yg")))) (inputs - `(("gsl" ,gsl) + `(("eigen" ,eigen) + ("gfortran" ,gfortran "lib") + ("gsl" ,gsl) ("lapack" ,lapack) + ("openblas" ,openblas) ("zlib" ,zlib))) (build-system gnu-build-system) (arguments @@ -2829,6 +2870,15 @@ comment or quality sections.") #:phases (modify-phases %standard-phases (delete 'configure) + (add-after 'unpack 'find-eigen + (lambda* (#:key inputs #:allow-other-keys) + ;; Ensure that Eigen headers can be found + (setenv "CPLUS_INCLUDE_PATH" + (string-append (getenv "CPLUS_INCLUDE_PATH") + ":" + (assoc-ref inputs "eigen") + "/include/eigen3")) + #t)) (add-before 'build 'bin-mkdir (lambda _ (mkdir-p "bin") @@ -2852,16 +2902,16 @@ association studies (GWAS).") (define-public grit (package (name "grit") - (version "2.0.2") + (version "2.0.5") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/nboley/grit/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nboley/grit.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "157in84dj70wimbind3x7sy1whs3h57qfgcnj2s6lrd38fbrb7mj")))) + "1l5v8vfvfbrpmgnrvbrbv40d0arhxcnmxgv2f1mlcqfa3q6bkqm9")))) (build-system python-build-system) (arguments `(#:python ,python-2 @@ -2873,13 +2923,7 @@ association studies (GWAS).") (delete-file "grit/sparsify_support_fns.c") (delete-file "grit/call_peaks_support_fns.c") (substitute* "setup.py" - (("Cython.Setup") "Cython.Build") - ;; Add numpy include path to fix compilation - (("pyx\", \\]") - (string-append "pyx\", ], include_dirs = ['" - (assoc-ref inputs "python-numpy") - "/lib/python2.7/site-packages/numpy/core/include/" - "']"))) + (("Cython.Setup") "Cython.Build")) #t))))) (inputs `(("python-scipy" ,python2-scipy) @@ -2973,16 +3017,11 @@ particular, reads spanning multiple exons.") (source (origin (method url-fetch) - ;; FIXME: a better source URL is - ;; (string-append "ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2" - ;; "/downloads/hisat2-" version "-source.zip") - ;; with hash "0lywnr8kijwsc2aw10dwxic0n0yvip6fl3rjlvc8zzwahamy4x7g" - ;; but it is currently unavailable. - (uri "https://github.com/infphilo/hisat2/archive/cba6e8cb.tar.gz") - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2" + "/downloads/hisat2-" version "-source.zip")) (sha256 (base32 - "1mf2hdsyv7cd97xm9mp9a4qws02yrj95y6w6f6cdwnq0klp81r50")))) + "0lywnr8kijwsc2aw10dwxic0n0yvip6fl3rjlvc8zzwahamy4x7g")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -3089,14 +3128,14 @@ from high-throughput sequencing assays.") (name "java-htsjdk") (version "2.3.0") ; last version without build dependency on gradle (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/samtools/htsjdk/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/samtools/htsjdk.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ibhzzxsfc38nqyk9r8zqj6blfc1kh26iirypd4q6n90hs2m6nyq")) + "1b178ixcabanm834ydjl3jiakpyxdmki32hqfv2abrzn3rcwa28i")) (modules '((guix build utils))) (snippet ;; Delete pre-built binaries @@ -3443,26 +3482,28 @@ VCF.") (lambda* (#:key inputs #:allow-other-keys) (mkdir-p "lib/jni") (mkdir-p "jdk-src") - (and (zero? (system* "tar" "--strip-components=1" "-C" "jdk-src" - "-xf" (assoc-ref inputs "jdk-src"))) - (zero? (system* "javah" "-jni" - "-classpath" "classes" - "-d" "lib/" - "net.sf.samtools.util.zip.IntelDeflater")) - (with-directory-excursion "src/c/inteldeflater" - (zero? (system* "gcc" "-I../../../lib" "-I." - (string-append "-I" (assoc-ref inputs "jdk") - "/include/linux") - "-I../../../jdk-src/src/share/native/common/" - "-I../../../jdk-src/src/solaris/native/common/" - "-c" "-O3" "-fPIC" "IntelDeflater.c")) - (zero? (system* "gcc" "-shared" - "-o" "../../../lib/jni/libIntelDeflater.so" - "IntelDeflater.o" "-lz" "-lstdc++")))))) + (invoke "tar" "--strip-components=1" "-C" "jdk-src" + "-xf" (assoc-ref inputs "jdk-src")) + (invoke "javah" "-jni" + "-classpath" "classes" + "-d" "lib/" + "net.sf.samtools.util.zip.IntelDeflater") + (with-directory-excursion "src/c/inteldeflater" + (invoke "gcc" "-I../../../lib" "-I." + (string-append "-I" (assoc-ref inputs "jdk") + "/include/linux") + "-I../../../jdk-src/src/share/native/common/" + "-I../../../jdk-src/src/solaris/native/common/" + "-c" "-O3" "-fPIC" "IntelDeflater.c") + (invoke "gcc" "-shared" + "-o" "../../../lib/jni/libIntelDeflater.so" + "IntelDeflater.o" "-lz" "-lstdc++")) + #t)) ;; We can only build everything else after building the JNI library. (add-after 'build-jni 'build-rest (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* `("ant" "all" ,@make-flags))))) + (apply invoke `("ant" "all" ,@make-flags)) + #t)) (add-before 'build 'set-JAVA6_HOME (lambda _ (setenv "JAVA6_HOME" (getenv "JAVA_HOME")) @@ -3653,14 +3694,14 @@ data. It also provides the @command{bgzip}, @command{htsfile}, and (name "idr") (version "2.0.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/nboley/idr/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/nboley/idr.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1rjdly6daslw66r43g9md8znizlscn1sphycqyldzsidkc4vxqv3")) + "04j876h6z444v2q79drxx283d3k5snd72kj895wbalnl42206x9g")) ;; Delete generated C code. (snippet '(begin (delete-file "idr/inv_cdf.c") #t)))) @@ -3741,75 +3782,48 @@ command, or queried for specific k-mers with @code{jellyfish query}.") (define-public khmer (package (name "khmer") - (version "2.0") + (version "2.1.2") (source (origin - (method url-fetch) - (uri (pypi-uri "khmer" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dib-lab/khmer.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0wb05shqh77v00256qlm68vbbx3kl76fyzihszbz5nhanl4ni33a")) - (patches (search-patches "khmer-use-libraries.patch")))) + "02x38d9jw2r58y8dmnj4hffy9wxv1yc1jwbvdbhby9dxndv94r9m")) + (patches (search-patches "khmer-use-libraries.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete bundled libraries. We do not replace the bundled seqan + ;; as it is a modified subset of the old version 1.4.1. + ;; + ;; We do not replace the bundled MurmurHash as the canonical + ;; repository for this code 'SMHasher' is unsuitable for providing + ;; a library. See + ;; https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00977.html + (delete-file-recursively "third-party/zlib") + (delete-file-recursively "third-party/bzip2") + #t)))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'set-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Delete bundled libraries. - (delete-file-recursively "third-party/zlib") - (delete-file-recursively "third-party/bzip2") - ;; Replace bundled seqan. - (let* ((seqan-all "third-party/seqan") - (seqan-include (string-append - seqan-all "/core/include"))) - (delete-file-recursively seqan-all) - (copy-recursively (string-append (assoc-ref inputs "seqan") - "/include/seqan") - (string-append seqan-include "/seqan"))) - ;; We do not replace the bundled MurmurHash as the canonical - ;; repository for this code 'SMHasher' is unsuitable for - ;; providing a library. See - ;; https://lists.gnu.org/archive/html/guix-devel/2016-06/msg00977.html - #t)) (add-after 'unpack 'set-cc - (lambda _ - (setenv "CC" "gcc") - #t)) - ;; It is simpler to test after installation. - (delete 'check) - (add-after 'install 'post-install-check - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (setenv "PATH" - (string-append - (getenv "PATH") - ":" - (assoc-ref outputs "out") - "/bin")) - (setenv "PYTHONPATH" - (string-append - (getenv "PYTHONPATH") - ":" - out - "/lib/python" - (string-take (string-take-right - (assoc-ref inputs "python") 5) 3) - "/site-packages")) - (with-directory-excursion "build" - (zero? (system* "nosetests" "khmer" "--attr" - "!known_failing"))))))))) + (lambda _ (setenv "CC" "gcc") #t)) + ;; FIXME: This fails with "permission denied". + (delete 'reset-gzip-timestamps)))) (native-inputs - `(("seqan" ,seqan) - ("python-nose" ,python-nose))) + `(("python-cython" ,python-cython) + ("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) (inputs `(("zlib" ,zlib) ("bzip2" ,bzip2) ("python-screed" ,python-screed) - ("python-bz2file" ,python-bz2file) - ;; Tests fail when gcc-5 is used for compilation. Use gcc-4.9 at least - ;; until the next version of khmer (likely 2.1) is released. - ("gcc" ,gcc-4.9))) + ("python-bz2file" ,python-bz2file))) (home-page "https://khmer.readthedocs.org/") (synopsis "K-mer counting, filtering and graph traversal library") (description "The khmer software is a set of command-line tools for @@ -3825,16 +3839,16 @@ data.") (define-public kaiju (package (name "kaiju") - (version "1.6.2") + (version "1.6.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/bioinformatics-centre/kaiju/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bioinformatics-centre/kaiju") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1kdn4rxs0kr9ibmrgrfcci71aa6j6gr71dbc8pff7731rpab6kj7")))) + "119pzi0ddzv9mjg4wwa6han0cwr3k3ssn7kirvsjfcq05mi5ka0x")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -3848,8 +3862,7 @@ data.") (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (mkdir-p bin) (chdir "..") - (copy-recursively "bin" bin) - (copy-recursively "util" bin)) + (copy-recursively "bin" bin)) #t))))) (inputs `(("perl" ,perl) @@ -3977,16 +3990,16 @@ sequences).") (define-public mash (package (name "mash") - (version "2.0") + (version "2.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/marbl/mash/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/marbl/mash.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "00fx14vpmgsijwxd1xql3if934l82v8ckqgjjyyhnr36qb9qrskv")) + "049hwcc059p2fd9vwndn63laifvvsi0wmv84i6y1fr79k15dxwy6")) (modules '((guix build utils))) (snippet '(begin @@ -4012,8 +4025,14 @@ sequences).") (("^#include \"kseq\\.h\"") "#include \"htslib/kseq.h\"")) #t)) - (add-after 'fix-includes 'autoconf - (lambda _ (zero? (system* "autoconf"))))))) + (add-after 'fix-includes 'use-c++14 + (lambda _ + ;; capnproto 0.7 requires c++14 to build + (substitute* "configure.ac" + (("c\\+\\+11") "c++14")) + (substitute* "Makefile.in" + (("c\\+\\+11") "c++14")) + #t))))) (native-inputs `(("autoconf" ,autoconf) ;; Capnproto and htslib are statically embedded in the final @@ -4040,13 +4059,14 @@ form of assemblies or reads.") (version "2.12.1") (source (origin - (method url-fetch) - (uri (string-append "https://bitbucket.org/berkeleylab/metabat/get/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://bitbucket.org/berkeleylab/metabat.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1hmvdalz3zj5sqqklg0l4npjdv37cv2hsdi1al9iby2ndxjs1b73")) + "0hyg2smw1nz69mfvjpk45xyyychmda92c80a0cv7baji84ri4iyn")) (patches (search-patches "metabat-fix-compilation.patch")))) (build-system scons-build-system) (arguments @@ -4109,16 +4129,16 @@ probabilistic distances of genome abundance and tetranucleotide frequency.") (define-public minced (package (name "minced") - (version "0.2.0") + (version "0.3.2") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/ctSkennerton/minced/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ctSkennerton/minced.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0wxmlsapxfpxfd3ps9636h7i2xy6la8i42mwh0j2lsky63h63jp1")))) + "1f5h9him0gd355cnx7p6pnxpknhckd4g0v62mg8zyhfbx9as25fv")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -4147,7 +4167,8 @@ probabilistic distances of genome abundance and tetranucleotide frequency.") "#!" (assoc-ref inputs "bash") "/bin/sh\n\n" (assoc-ref inputs "jre") "/bin/java -jar " bin "/minced.jar \"$@\"\n")))) - (chmod wrapper #o555))))))) + (chmod wrapper #o555)) + #t))))) (native-inputs `(("jdk" ,icedtea "jdk"))) (inputs @@ -4230,12 +4251,13 @@ that a read originated from a particular isoform.") (delete 'configure) (replace 'check ;; There are no tests, so just test if it runs. - (lambda _ (zero? (system* "./muscle" "-version")))) + (lambda _ (invoke "./muscle" "-version") #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) - (install-file "muscle" bin))))))) + (install-file "muscle" bin) + #t)))))) (home-page "http://www.drive5.com/muscle") (synopsis "Multiple sequence alignment program") (description @@ -4260,11 +4282,6 @@ program for nucleotide and protein sequences.") (base32 "1hkw21rq1mwf7xp0rmbb2gqc0i6p11108m69i7mr7xcjl268pxnb")))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ (zero? (system* "autoreconf" "-vif"))))))) (inputs ;; XXX: TODO: Enable Lua and Guile bindings. ;; https://github.com/tjunier/newick_utils/issues/13 @@ -4309,19 +4326,20 @@ interrupted by stop codons. OrfM finds and prints these ORFs.") (license license:lgpl3+))) (define-public pplacer - (let ((commit "g807f6f3")) + (let ((commit "807f6f3")) (package (name "pplacer") ;; The commit should be updated with each version change. (version "1.1.alpha19") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/matsen/pplacer/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/matsen/pplacer.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0z1lnd2s8sh6kpzg106wzbh2szw7h0hvq8syd5a6wv4rmyyz6x0f")))) + (base32 "11ppbbbx20p2g9wj3ff64dhnarb12q79v7qh4rk0gj6lkbz4n7cn")))) (build-system ocaml-build-system) (arguments `(#:ocaml ,ocaml-4.01 @@ -4338,11 +4356,12 @@ interrupted by stop codons. OrfM finds and prints these ORFs.") (local-dir "cddlib_guix")) (mkdir local-dir) (with-directory-excursion local-dir - (system* "tar" "xvf" cddlib-src)) + (invoke "tar" "xvf" cddlib-src)) (let ((cddlib-src-folder (string-append local-dir "/" (list-ref (scandir local-dir) 2) "/lib-src"))) + (for-each make-file-writable (find-files "cdd_src" ".*")) (for-each (lambda (file) (copy-file file @@ -4404,10 +4423,9 @@ downstream analysis.") #:phases (modify-phases %standard-phases (add-after 'unpack 'enter-scripts-dir - (lambda _ (chdir "scripts"))) + (lambda _ (chdir "scripts") #t)) (replace 'check - (lambda _ - (zero? (system* "python" "-m" "unittest" "discover" "-v")))) + (lambda _ (invoke "python" "-m" "unittest" "discover" "-v") #t)) (add-after 'install 'wrap-executables (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -4667,13 +4685,14 @@ large-scale data and can be applied to hundreds of species at once.") (version "2.0.7") (source (origin - (method url-fetch) - (uri (string-append "https://bitbucket.org/regulatorygenomicsupf/" - "pyicoteo/get/v" version ".tar.bz2")) - (file-name (string-append name "-" version ".tar.bz2")) + (method git-fetch) + (uri (git-reference + (url "https://bitbucket.org/regulatorygenomicsupf/pyicoteo.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0d6087f29xp8wxwlj111c3sylli98n0l8ry58c51ixzq0zfm50wa")))) + "0hz5g8d25lbjy1wpscr490l0lmyvaix893hhax4fxnh1h9w34w8p")))) (build-system python-build-system) (arguments `(#:python ,python-2 ; does not work with Python 3 @@ -4704,14 +4723,14 @@ different command-line tools: (name "prodigal") (version "2.6.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/hyattpd/Prodigal/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/hyattpd/Prodigal.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "17srxkqd3jc77xk15pfbgg1a9xahqg7337w95mrsia7mpza4l2c9")))) + "1fs1hqk83qjbjhrvhw6ni75zakx5ki1ayy3v6wwkn3xvahc9hi5s")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;no check target @@ -4757,10 +4776,11 @@ partial genes, and identifies translation initiation sites.") (getenv "PATH"))) (setenv "PERL5LIB" (string-append (getcwd) "/lib" ":" (getenv "PERL5LIB"))) - (zero? (length (filter (lambda (file) - (display file)(display "\n") - (not (zero? (system* "perl" file)))) - (find-files "t" ".*\\.t$")))))) + (for-each (lambda (file) + (display file)(display "\n") + (invoke "perl" file)) + (find-files "t" ".*\\.t$")) + #t)) (replace 'install ;; There is no 'install' target in the Makefile. (lambda* (#:key outputs #:allow-other-keys) @@ -4849,18 +4869,17 @@ extremely diverse sets of genomes.") (define-public raxml (package (name "raxml") - (version "8.2.10") + (version "8.2.12") (source (origin - (method url-fetch) - (uri - (string-append - "https://github.com/stamatak/standard-RAxML/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/stamatak/standard-RAxML.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "13s7aspfdcfr6asynwdg1x6vznys6pzap5f8wsffbnnwpkkg9ya8")))) + "1jqjzhch0rips0vp04prvb8vmc20c5pdmsqn8knadcf91yy859fh")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -5053,21 +5072,24 @@ distribution, coverage uniformity, strand specificity, etc.") (modify-phases %standard-phases (replace 'bootstrap (lambda _ - (invoke "bash" "gen_auto"))) + (substitute* "gen_tools_am" + (("/usr/bin/env.*") (which "perl"))) + (invoke "bash" "gen_auto") + #t)) (add-after 'build 'build-additional-tools (lambda* (#:key make-flags #:allow-other-keys) - (every (lambda (dir) - (with-directory-excursion (string-append "tools/" dir) - (zero? (apply system* "make" make-flags)))) - dirs))) + (for-each (lambda (dir) + (with-directory-excursion (string-append "tools/" dir) + (apply invoke "make" make-flags))) + dirs) + #t)) (add-after 'install 'install-additional-tools (lambda* (#:key make-flags #:allow-other-keys) - (fold (lambda (dir result) - (with-directory-excursion (string-append "tools/" dir) - (and result - (zero? (apply system* - `("make" ,@make-flags "install")))))) - #t dirs))))))) + (for-each (lambda (dir) + (with-directory-excursion (string-append "tools/" dir) + (apply invoke `("make" ,@make-flags "install")))) + dirs) + #t)))))) (inputs `(("gsl" ,gsl) ("boost" ,boost) @@ -5215,6 +5237,7 @@ viewer.") #t)))))) (inputs `(("perl" ,perl) + ("zlib:static" ,zlib "static") ("zlib" ,zlib))) (supported-systems '("x86_64-linux")) (home-page "https://github.com/wanpinglee/MOSAIK") @@ -5233,17 +5256,16 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") (define-public ngs-sdk (package (name "ngs-sdk") - (version "1.3.0") - (source - (origin - (method url-fetch) - (uri - (string-append "https://github.com/ncbi/ngs/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1wiyf4c6nm2j87pv015cbi0qny5byf3pbvcw3likifz5dl56ag40")))) + (version "2.9.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ncbi/ngs.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "17c0v1nah3g3d2ib5bbi0vhma1ghd6vb9xycavqsh64lhp840rk3")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; not supported @@ -5259,9 +5281,10 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") ;; The 'configure' script doesn't recognize things like ;; '--enable-fast-install'. - (zero? (system* "./configure" - (string-append "--build-prefix=" (getcwd) "/build") - (string-append "--prefix=" out)))))) + (invoke "./configure" + (string-append "--build-prefix=" (getcwd) "/build") + (string-append "--prefix=" out)) + #t))) (add-after 'unpack 'enter-dir (lambda _ (chdir "ngs-sdk") #t))))) (native-inputs `(("perl" ,perl))) @@ -5299,23 +5322,24 @@ simultaneously.") (define-public ncbi-vdb (package (name "ncbi-vdb") - (version "2.8.2") - (source - (origin - (method url-fetch) - (uri - (string-append "https://github.com/ncbi/ncbi-vdb/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1acn4bv81mfl137qnbn9995mjjhwd36pm0b7qli1iw5skrxa9j8m")))) + (version "2.9.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ncbi/ncbi-vdb.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1l4ny67nxwv1lagk9wwjbrgm7ln7adci6dnpc7k1yaln6shj0qpm")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; not supported #:tests? #f ; no "check" target #:phases (modify-phases %standard-phases + (add-after 'unpack 'make-files-writable + (lambda _ (for-each make-file-writable (find-files "." ".*")) #t)) (add-before 'configure 'set-perl-search-path (lambda _ ;; Work around "dotless @INC" build failure. @@ -5349,8 +5373,7 @@ simultaneously.") ;; The 'configure' script doesn't recognize things like ;; '--enable-fast-install'. - (zero? (system* - "./configure" + (invoke "./configure" (string-append "--build-prefix=" (getcwd) "/build") (string-append "--prefix=" (assoc-ref outputs "out")) (string-append "--debug") @@ -5359,7 +5382,8 @@ simultaneously.") (string-append "--with-ngs-sdk-prefix=" (assoc-ref inputs "ngs-sdk")) (string-append "--with-hdf5-prefix=" - (assoc-ref inputs "hdf5"))))))) + (assoc-ref inputs "hdf5"))) + #t))) (add-after 'install 'install-interfaces (lambda* (#:key outputs #:allow-other-keys) ;; Install interface libraries. On i686 the interface libraries @@ -5464,12 +5488,13 @@ subsequent visualization, annotation and storage of results.") (version "1.90b4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/chrchang/plink-ng/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/chrchang/plink-ng.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "09ixrds009aczjswxr2alcb774mksq5g0v78dgjjn1h4dky0kf9a")))) + (base32 "02npdwgkpfkdnhw819rhj5kw02a5k5m90b14zq9zzya4hyg929c0")))) (build-system gnu-build-system) (arguments '(#:tests? #f ;no "check" target @@ -5551,14 +5576,14 @@ structures, classes for genomic regions, mapped sequencing reads, etc.") (define-public preseq (package (name "preseq") - (version "2.0") + (version "2.0.3") (source (origin (method url-fetch) - (uri (string-append "https://github.com/smithlabcode/" - "preseq/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "https://github.com/smithlabcode/preseq/" + "releases/download/v" version + "/preseq_v" version ".tar.bz2")) (sha256 - (base32 "08r684l50pnxjpvmhzjgqq56yv9rfw90k8vx0nsrnrzk8mf9hsdq")) + (base32 "149x9xmk1wy1gff85325yfzqc0qk4sgp1w6gbyj9cnji4x1dszbl")) (modules '((guix build utils))) (snippet '(begin ;; Remove bundled samtools. @@ -5601,25 +5626,38 @@ complexity samples.") (define-public python-screed (package (name "python-screed") - (version "0.9") + (version "1.0") (source (origin (method url-fetch) (uri (pypi-uri "screed" version)) (sha256 (base32 - "18czszp9fkx3j6jr7y5kp6dfialscgddk05mw1zkhh2zhn0jd8i0")))) + "148vcb7w2wr6a4w6vs2bsxanbqibxfk490zbcbg4m61s8669zdjx")))) (build-system python-build-system) (arguments - `(#:phases + '(#:phases (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "PYTHONPATH" - (string-append (getenv "PYTHONPATH") ":.")) - (zero? (system* "nosetests" "--attr" "!known_failing"))))))) + ;; Tests must be run after installation, as the "screed" command does + ;; not exist right after building. + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (setenv "PYTHONPATH" + (string-append out "/lib/python" + (string-take (string-take-right + (assoc-ref inputs "python") + 5) 3) + "/site-packages:" + (getenv "PYTHONPATH"))) + (setenv "PATH" (string-append out "/bin:" (getenv "PATH")))) + (invoke "python" "setup.py" "test") + #t))))) (native-inputs - `(("python-nose" ,python-nose))) + `(("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-runner" ,python-pytest-runner))) (inputs `(("python-bz2file" ,python-bz2file))) (home-page "https://github.com/dib-lab/screed/") @@ -5635,17 +5673,17 @@ sequence itself can be retrieved from these databases.") (define-public sra-tools (package (name "sra-tools") - (version "2.8.2-1") + (version "2.9.3") (source (origin - (method url-fetch) - (uri - (string-append "https://github.com/ncbi/sra-tools/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ncbi/sra-tools.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1camsijmvv2s45mb4iyf44ghl4gkd4rl0viphpcgl3ccchy32a0g")))) + "0663gcdxkziwsmlznjxysb00621rllpbz6jwsfifq7z3dj3lwm8b")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; not supported @@ -5695,8 +5733,7 @@ sequence itself can be retrieved from these databases.") ;; The 'configure' script doesn't recognize things like ;; '--enable-fast-install'. - (zero? (system* - "./configure" + (invoke "./configure" (string-append "--build-prefix=" (getcwd) "/build") (string-append "--prefix=" (assoc-ref outputs "out")) (string-append "--debug") @@ -5714,18 +5751,7 @@ sequence itself can be retrieved from these databases.") (string-append "--with-ngs-sdk-prefix=" (assoc-ref inputs "ngs-sdk")) (string-append "--with-hdf5-prefix=" - (assoc-ref inputs "hdf5")))))) - ;; This version of sra-tools fails to build with glibc because of a - ;; naming conflict. glibc-2.25/include/bits/mathcalls.h already - ;; contains a definition of "canonicalize", so we rename it. - ;; - ;; See upstream bug report: - ;; https://github.com/ncbi/sra-tools/issues/67 - (add-after 'unpack 'patch-away-glibc-conflict - (lambda _ - (substitute* "tools/bam-loader/bam.c" - (("canonicalize\\(" line) - (string-append "sra_tools_" line))) + (assoc-ref inputs "hdf5"))) #t))))) (native-inputs `(("perl" ,perl))) (inputs @@ -5746,14 +5772,15 @@ writing files into the .sra format.") (define-public seqan (package (name "seqan") - (version "1.4.2") + (version "2.4.0") (source (origin (method url-fetch) - (uri (string-append "http://packages.seqan.de/seqan-library/" - "seqan-library-" version ".tar.bz2")) + (uri (string-append "https://github.com/seqan/seqan/releases/" + "download/seqan-v" version + "/seqan-library-" version ".tar.xz")) (sha256 (base32 - "05s3wrrwn50f81aklfm65i4a749zag1vr8z03k21xm0pdxy47yvp")))) + "19a1rlxx03qy1i1iriicly68w64yjxbv24g9gdywnfmq998v35yx")))) ;; The documentation is 7.8MB and the includes are 3.6MB heavy, so it ;; makes sense to split the outputs. (outputs '("out" "doc")) @@ -5763,11 +5790,11 @@ writing files into the .sra format.") #:builder (begin (use-modules (guix build utils)) - (let ((tar (assoc-ref %build-inputs "tar")) - (bzip (assoc-ref %build-inputs "bzip2")) - (out (assoc-ref %outputs "out")) - (doc (assoc-ref %outputs "doc"))) - (setenv "PATH" (string-append tar "/bin:" bzip "/bin")) + (let ((tar (assoc-ref %build-inputs "tar")) + (xz (assoc-ref %build-inputs "xz")) + (out (assoc-ref %outputs "out")) + (doc (assoc-ref %outputs "doc"))) + (setenv "PATH" (string-append tar "/bin:" xz "/bin")) (invoke "tar" "xvf" (assoc-ref %build-inputs "source")) (chdir (string-append "seqan-library-" ,version)) (copy-recursively "include" (string-append out "/include")) @@ -5776,7 +5803,7 @@ writing files into the .sra format.") (native-inputs `(("source" ,source) ("tar" ,tar) - ("bzip2" ,bzip2))) + ("xz" ,xz))) (home-page "http://www.seqan.de") (synopsis "Library for nucleotide sequence analysis") (description @@ -5787,6 +5814,41 @@ manipulation, online and indexed string search, efficient I/O of bioinformatics file formats, sequence alignment, and more.") (license license:bsd-3))) +(define-public seqan-1 + (package (inherit seqan) + (name "seqan") + (version "1.4.2") + (source (origin + (method url-fetch) + (uri (string-append "http://packages.seqan.de/seqan-library/" + "seqan-library-" version ".tar.bz2")) + (sha256 + (base32 + "05s3wrrwn50f81aklfm65i4a749zag1vr8z03k21xm0pdxy47yvp")))) + ;; The documentation is 7.8MB and the includes are 3.6MB heavy, so it + ;; makes sense to split the outputs. + (outputs '("out" "doc")) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((tar (assoc-ref %build-inputs "tar")) + (bzip (assoc-ref %build-inputs "bzip2")) + (out (assoc-ref %outputs "out")) + (doc (assoc-ref %outputs "doc"))) + (setenv "PATH" (string-append tar "/bin:" bzip "/bin")) + (invoke "tar" "xvf" (assoc-ref %build-inputs "source")) + (chdir (string-append "seqan-library-" ,version)) + (copy-recursively "include" (string-append out "/include")) + (copy-recursively "share" (string-append doc "/share")) + #t)))) + (native-inputs + `(("source" ,source) + ("tar" ,tar) + ("bzip2" ,bzip2))))) + (define-public seqmagick (package (name "seqmagick") @@ -5816,24 +5878,16 @@ is one that takes arguments.") (define-public seqtk (package (name "seqtk") - (version "1.2") + (version "1.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/lh3/seqtk/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lh3/seqtk.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0ywdyzpmfiz2wp6ampbzqg4y8bj450nfgqarpamg045b8mk32lxx")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Remove extraneous header files, as is done in the seqtk - ;; master branch. - (for-each (lambda (file) (delete-file file)) - (list "ksort.h" "kstring.h" "kvec.h")) - #t)))) + "1bfzlqa84b5s1qi22blmmw2s8xdyp9h9ydcq22pfjhh5gab3yz6l")))) (build-system gnu-build-system) (arguments `(#:phases @@ -5841,11 +5895,12 @@ is one that takes arguments.") (delete 'configure) (replace 'check ;; There are no tests, so we just run a sanity check. - (lambda _ (zero? (system* "./seqtk" "seq")))) + (lambda _ (invoke "./seqtk" "seq") #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) - (install-file "seqtk" bin))))))) + (install-file "seqtk" bin) + #t)))))) (inputs `(("zlib" ,zlib))) (home-page "https://github.com/lh3/seqtk") @@ -5861,20 +5916,20 @@ optionally compressed by gzip.") (name "snap-aligner") (version "1.0beta.18") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/amplab/snap/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/amplab/snap.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1vnsjwv007k1fl1q7d681kbwn6bc66cgw6h16hym6gvyy71qv2ly")))) + "01w3qq4wm07z73vky0cfwlmrbf50n3w722cxrlzxfi99mnb808d8")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure) - (replace 'check (lambda _ (zero? (system* "./unit_tests")))) + (replace 'check (lambda _ (invoke "./unit_tests") #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -5903,14 +5958,14 @@ of these reads to align data quickly through a hash-based indexing scheme.") (version "2.1b") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/biocore/sortmerna/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/biocore/sortmerna.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ghaghvd82af9j5adavxh77g7hm247d1r69m3fbi6f1jdivj5ldk")))) + "0j3mbz4n25738yijmjbr5r4fyvkgm8v5vn3sshyfvmyqf5q9byqf")))) (build-system gnu-build-system) (outputs '("out" ;for binaries "db")) ;for sequence databases @@ -5980,7 +6035,8 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.") (lambda _ (substitute* "Makefile" (("(COMPILATION_TIME_PLACE=\")(.*)(\")" _ pre mid post) - (string-append pre "Built with Guix" post))))) + (string-append pre "Built with Guix" post))) + #t)) (add-after 'enter-source-dir 'do-not-use-bundled-htslib (lambda _ (substitute* "Makefile" @@ -6064,7 +6120,8 @@ sequences.") (lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) (mkdir-p bin) - (copy-recursively "../bin" bin)))) + (copy-recursively "../bin" bin)) + #t)) ;; no "configure" script (delete 'configure)))) (inputs `(("zlib" ,zlib))) @@ -6156,8 +6213,7 @@ Cuffdiff or Ballgown programs.") #:phases (modify-phases %standard-phases (replace 'check - (lambda _ - (zero? (system* "python" "-m" "unittest" "discover" "-v"))))))) + (lambda _ (invoke "python" "-m" "unittest" "discover" "-v") #t))))) (propagated-inputs `(("python-sqlalchemy" ,python2-sqlalchemy) ("python-decorator" ,python2-decorator) @@ -6268,14 +6324,14 @@ information as possible.") (define-public r-vegan (package (name "r-vegan") - (version "2.5-2") + (version "2.5-3") (source (origin (method url-fetch) (uri (cran-uri "vegan" version)) (sha256 (base32 - "13pyqvlpz64qibi8k5d109v7q09j06mbv6ndix3n4cn21mjx391c")))) + "023xznh0iy0496icpchadmp7a3rk3nj9s48fvwlvp3dssw58yp3c")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -6298,14 +6354,14 @@ data types as well.") (define-public r-annotate (package (name "r-annotate") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annotate" version)) (sha256 (base32 - "1qmncyvy147a1ll3iri45p822kcs3s7583jfnq9jf6sz9ilk8cjf")))) + "0p6c96lay23a67dyirgnwzm2yw22m592z780vy6p4nqwla8ha18n")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -6325,13 +6381,13 @@ microarrays.") (define-public r-copynumber (package (name "r-copynumber") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "copynumber" version)) (sha256 (base32 - "0y9nnwb0psphp3ix88wj2f8z5gr45r5znf55w892ysm27isdpmms")))) + "0ipwj9i5p1bwhg5d80jdjagm02krpj2v0j47qdgw41h8wncdyal3")))) (build-system r-build-system) (propagated-inputs `(("r-s4vectors" ,r-s4vectors) @@ -6348,14 +6404,14 @@ penalized least squares regression method.") (define-public r-geneplotter (package (name "r-geneplotter") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "geneplotter" version)) (sha256 (base32 - "055g28xgiazl4l0gkg8xiamks64f5yckjjyvw1abd6d6qjavwx0g")))) + "10khr0pznxf3m0f5gzck9ymljrwcv3vamfmpskd51yjh36lhllqz")))) (build-system r-build-system) (propagated-inputs `(("r-annotate" ,r-annotate) @@ -6373,14 +6429,14 @@ penalized least squares regression method.") (define-public r-genefilter (package (name "r-genefilter") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genefilter" version)) (sha256 (base32 - "14l0ff02spmjwxj0m1czhg5vlkgwcfi73cym8m2n9vn6i7bjdaqi")))) + "0p64s1n1627yafnp25wjr4b22p34lqw574fx2qg4s1m0lffh1z6i")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -6400,14 +6456,14 @@ high-throughput sequencing experiments.") (define-public r-deseq2 (package (name "r-deseq2") - (version "1.20.0") + (version "1.22.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq2" version)) (sha256 (base32 - "1wjnfpb41a9mmf9a22bz4zh7r1d4id50vpdc1mn5vfzrz7li9qik")))) + "1b2bmvcsfzvks47d7w46zplcwz0kgcdhx5xmx3x9lp2gvx2p84r5")))) (properties `((upstream-name . "DESeq2"))) (build-system r-build-system) (propagated-inputs @@ -6437,14 +6493,14 @@ distribution.") (define-public r-dexseq (package (name "r-dexseq") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DEXSeq" version)) (sha256 (base32 - "1mqb3mdxcsi3largsl7k27bvqrgps9ixv806xvmf29pw0xn05sg1")))) + "0jh1640cnzpk8x3155cqc8dvrs1rciw3d6nv2k70baw96bhrynp8")))) (properties `((upstream-name . "DEXSeq"))) (build-system r-build-system) (propagated-inputs @@ -6480,14 +6536,14 @@ exploration of the results.") (define-public r-annotationforge (package (name "r-annotationforge") - (version "1.22.2") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationForge" version)) (sha256 (base32 - "17kmy7nvpyyj6w5jyrjciw87rydmmmc8q6cnwqjv1j7li9bp09gr")))) + "13yvhf3yskmvhs8szs6rkw93h81h5xqa3h19h91pp6nprhc8s3ll")))) (properties `((upstream-name . "AnnotationForge"))) (build-system r-build-system) @@ -6510,14 +6566,14 @@ databases. Packages produced are intended to be used with AnnotationDbi.") (define-public r-rbgl (package (name "r-rbgl") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RBGL" version)) (sha256 (base32 - "0hj972mmqpyi5fx1rq33kysavdyz4nspi6gcffzi3rv339m0anhf")))) + "0jy95m38c4qp0a12097hhm2gg63k96k6ydhb11dy379h3ziapcar")))) (properties `((upstream-name . "RBGL"))) (build-system r-build-system) (propagated-inputs `(("r-graph" ,r-graph))) @@ -6531,14 +6587,14 @@ the graph algorithms contained in the Boost library.") (define-public r-gseabase (package (name "r-gseabase") - (version "1.42.0") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GSEABase" version)) (sha256 (base32 - "11bv92svik399q677jv96b71i4bq68xxyxn1yijpdik2lq4hgl7a")))) + "110al7x0ig8plzrprvhwc7xshi1jzpj2n8llhhg2fh6v6k0k6awr")))) (properties `((upstream-name . "GSEABase"))) (build-system r-build-system) (propagated-inputs @@ -6558,14 +6614,14 @@ Enrichment Analysis} (GSEA).") (define-public r-category (package (name "r-category") - (version "2.46.0") + (version "2.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Category" version)) (sha256 (base32 - "03wfqa8d1dgwsm327zl2mpkq7dq3mzhq12598qz3ylfhrwplbgx0")))) + "1jdm83bwdfhpfm1y6hwgvxzj6l83h1bdkqv23799kzywnwm016kv")))) (properties `((upstream-name . "Category"))) (build-system r-build-system) (propagated-inputs @@ -6589,14 +6645,14 @@ analysis.") (define-public r-gostats (package (name "r-gostats") - (version "2.46.0") + (version "2.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GOstats" version)) (sha256 (base32 - "1i5mydz5d95w2k28qr9j01hmbnl2id55jq94jvcpcyp1pvinkdq0")))) + "0wlqqgfynwqnqhckhsfjwg9zkj6hkmzwd5y76dhqz720vy21rcln")))) (properties `((upstream-name . "GOstats"))) (build-system r-build-system) (propagated-inputs @@ -6620,14 +6676,14 @@ testing and other simple calculations.") (define-public r-shortread (package (name "r-shortread") - (version "1.38.0") + (version "1.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ShortRead" version)) (sha256 (base32 - "038z3z7qaw5bpgjzy91sjkybsny6jwjjsrnnq4gdqdw9ss1qy1fb")))) + "0iks123i1adkb9i2q4wvfqdmmj9dy867jvngj9757y8gj6xbcpy1")))) (properties `((upstream-name . "ShortRead"))) (build-system r-build-system) (inputs @@ -6662,14 +6718,14 @@ ungapped alignment formats.") (define-public r-systempiper (package (name "r-systempiper") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "systemPipeR" version)) (sha256 (base32 - "1550pd63mmky0vgkmpni7zf14kqz1741wv63nfaw29kcmhh3m5lm")))) + "0l26q8zjdmzg84g7f25gv9z60sykybahlpg5bg9bmpbg5lzcsx04")))) (properties `((upstream-name . "systemPipeR"))) (build-system r-build-system) (propagated-inputs @@ -6708,14 +6764,14 @@ annotation infrastructure.") (define-public r-grohmm (package (name "r-grohmm") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "groHMM" version)) (sha256 (base32 - "1kjb14apyly44qdlx2ld6gr69wlazd4mbhs58l35hir12aphgrzp")))) + "1ph92fv44b90v7mk4b1mjvv0dlrhl8ba01klxbnd0vs4qn9zxplh")))) (properties `((upstream-name . "groHMM"))) (build-system r-build-system) (propagated-inputs @@ -6790,17 +6846,17 @@ SELECT or UPDATE queries to an end-point.") (define-public vsearch (package (name "vsearch") - (version "2.8.0") + (version "2.9.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/torognes/vsearch/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/torognes/vsearch.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "15pbirgzhvflj4pi5n82vybbzjy9mlb0lv5l3qhrmdkfzpbyahw3")) + "0vhrpjfdf75ba04b24xknp41790cvcgwl0vgpy7qbzj5xh2521ss")) (patches (search-patches "vsearch-unbundle-cityhash.patch")) (snippet '(begin @@ -6811,11 +6867,6 @@ SELECT or UPDATE queries to an end-point.") (delete-file "src/city.cc") #t)))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ (zero? (system* "autoreconf" "-vif"))))))) (inputs `(("zlib" ,zlib) ("bzip2" ,bzip2) @@ -7027,13 +7078,13 @@ barplots or heatmaps.") (define-public r-biocgenerics (package (name "r-biocgenerics") - (version "0.26.0") + (version "0.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocGenerics" version)) (sha256 (base32 - "19qxhy2cd3pykkhzbb5q3crgaxf65cpzf2mkfsz16gqhi8flj72p")))) + "0cvpsrhg7sn7lpqgxvqrsagv6j7xj5rafq5xdjfd8zc4gxrs5rb8")))) (properties `((upstream-name . "BiocGenerics"))) (build-system r-build-system) @@ -7047,13 +7098,13 @@ packages.") (define-public r-biocinstaller (package (name "r-biocinstaller") - (version "1.30.0") + (version "1.32.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocInstaller" version)) (sha256 (base32 - "1xg1gi1hf5vflp71ji21gnmr4kcjpx8a6c47cllpc7yqnjv5nfg0")))) + "1s1f9qhyf3mc73ir25x2zlgi9hf45a37lg4z8fbva4i21hqisgsl")))) (properties `((upstream-name . "BiocInstaller"))) (build-system r-build-system) @@ -7066,13 +7117,13 @@ Bioconductor, CRAN, and Github.") (define-public r-biocviews (package (name "r-biocviews") - (version "1.48.3") + (version "1.50.5") (source (origin (method url-fetch) (uri (bioconductor-uri "biocViews" version)) (sha256 (base32 - "1rxvwikqivsgxjjcazlszy8xgz346lfh5rw4llxw6fz38fjgb0k5")))) + "0rc1n89n04ylvy9gvsgvizcs77bh70jg1nkjjsjs7rqbr3zzdysz")))) (properties `((upstream-name . "biocViews"))) (build-system r-build-system) @@ -7116,19 +7167,20 @@ authoring books and technical documents with R Markdown.") (define-public r-biocstyle (package - (name "r-biocstyle") - (version "2.8.2") + (name "r-biocstyle") + (version "2.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocStyle" version)) (sha256 (base32 - "17m901ylz00w1a3nq5f910v55zixm1nr6rb3qrsbhqd94qzr0l2p")))) + "01lm8xljilj666fcl3wnw82dxkcxnlr294lddr553rm8xr5nwg31")))) (properties `((upstream-name . "BiocStyle"))) (build-system r-build-system) (propagated-inputs - `(("r-bookdown" ,r-bookdown) + `(("r-biocmanager" ,r-biocmanager) + ("r-bookdown" ,r-bookdown) ("r-knitr" ,r-knitr) ("r-rmarkdown" ,r-rmarkdown) ("r-yaml" ,r-yaml))) @@ -7142,13 +7194,13 @@ functionality.") (define-public r-bioccheck (package (name "r-bioccheck") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocCheck" version)) (sha256 (base32 - "1srp1g809f1nn0fyqknr7r6dq89bw1xpjvmygr7cw6ffknbc671s")))) + "0zamvs5jar38293ff27imvwy0ra25y64ls9z8w3q1y4jcp8p8pg7")))) (properties `((upstream-name . "BiocCheck"))) (build-system r-build-system) @@ -7175,8 +7227,9 @@ functionality.") `(("r-codetools" ,r-codetools) ("r-graph" ,r-graph) ("r-httr" ,r-httr) + ("r-knitr" ,r-knitr) ("r-optparse" ,r-optparse) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-biocviews" ,r-biocviews) ("r-stringdist" ,r-stringdist))) (home-page "https://bioconductor.org/packages/BiocCheck") @@ -7211,13 +7264,13 @@ that accept short and long options.") (define-public r-dnacopy (package (name "r-dnacopy") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNAcopy" version)) (sha256 (base32 - "03hfhmmc5y60r2gcgm367w2fr7qj115l74m9bp3h9qpn5yci0d8n")))) + "04cqdqxhva66xwh1s2vffi56b9fcrqd4slcrvqasj5lp2rkjli82")))) (properties `((upstream-name . "DNAcopy"))) (build-system r-build-system) @@ -7233,13 +7286,13 @@ abnormal copy number.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.18.3") + (version "0.20.1") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "02bps2rpjqx2npwxq3x62ncwi9ggr165cwi56h6hld28bw2gddy8")))) + "18whrw67nxn82xshckl2pjy7d14sa3c27h3n9naqyqwz88lr6dzg")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7285,13 +7338,13 @@ utilities for sequence data management under the ACNUC system.") (define-public r-iranges (package (name "r-iranges") - (version "2.14.11") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "0wz63hysspyjihqadg91dbvllc5a61zzjrsz0b9498lihqc6m1la")))) + "0ljppsk611xi72gc8mbdx1311b63b1ijd401jz5xmxk5frla1nc1")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) @@ -7314,7 +7367,7 @@ possible.") (define-public r-genomeinfodbdata (package (name "r-genomeinfodbdata") - (version "0.99.1") + (version "1.2.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -7324,7 +7377,7 @@ possible.") version ".tar.gz")) (sha256 (base32 - "0hipipvyvrh75n68hsjg35sxbcfzrghzxv547vnkk2f8ya99g01r")))) + "0di6nlqpsyqf693k2na65ayqldih563x3zfrczpqc5q2hl5kg35c")))) (properties `((upstream-name . "GenomeInfoDbData"))) (build-system r-build-system) @@ -7337,13 +7390,13 @@ ID and species. It is used by functions in the GenomeInfoDb package.") (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.16.0") + (version "1.18.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "0yhnqhaydmmq7ihmhj3rbal4afq5p993l2qqrd0n5wmbyg7glg2d")))) + "049pyzr8iszv3g7wdqf3pz7vg7bzd450c20ln6fgw4g5xnkkr10s")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) @@ -7365,13 +7418,13 @@ names in their natural, rather than lexicographic, order.") (define-public r-edger (package (name "r-edger") - (version "3.22.3") + (version "3.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "edgeR" version)) (sha256 (base32 - "0w3jv29n0kkaiig8dbbdqy2dkng8xfaihch82mj9ci5hphrx3nng")))) + "0ihihgzrgb4q3xc8xkzp1v76ndgihrj4gas00fa25vggfs1v6hvg")))) (properties `((upstream-name . "edgeR"))) (build-system r-build-system) (propagated-inputs @@ -7393,13 +7446,13 @@ CAGE.") (define-public r-variantannotation (package (name "r-variantannotation") - (version "1.26.1") + (version "1.28.1") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantAnnotation" version)) (sha256 (base32 - "1r55ki951dj81qvy73knfcy69ik5vzkd56wnk3f6vvf9vngqb8jr")))) + "0gvah258mkaafhbna81zwknx8qr3lidbcx5qvwk39q3yswr9mi49")))) (properties `((upstream-name . "VariantAnnotation"))) (inputs @@ -7431,13 +7484,13 @@ coding changes and predict coding outcomes.") (define-public r-limma (package (name "r-limma") - (version "3.36.3") + (version "3.38.2") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "0iiifszr6hcqih6kszdsbkx3gacfg3d7v8hdx0lbjqnjqgqz7pwk")))) + "1wkh362rmn24q7bkinb6nx62a31wl3r3myg5l326gx65wpwdnx97")))) (build-system r-build-system) (home-page "http://bioinf.wehi.edu.au/limma") (synopsis "Package for linear models for microarray and RNA-seq data") @@ -7450,13 +7503,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-xvector (package (name "r-xvector") - (version "0.20.0") + (version "0.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "XVector" version)) (sha256 (base32 - "1zjlhh9lsyhg0js1858csyw2389kbrzdqnqnha833wazkwxilp3f")))) + "01fph1ydd6g0rl5mcw54spx22glq2kqv7wyw8bqw0plmabzcwwdm")))) (properties `((upstream-name . "XVector"))) (build-system r-build-system) @@ -7486,13 +7539,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.32.6") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "0p58yk2i5gqvjlkx548mnrr49wvs0xfcl06l9rqj2hi6hkkbvnp3")))) + "0bgh14d15dpf2iy36qinw45r6n45rqkf0ghazrdl3jfva6vbrb29")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) @@ -7515,13 +7568,13 @@ manipulating genomic intervals and variables defined along a genome.") (define-public r-biobase (package (name "r-biobase") - (version "2.40.0") + (version "2.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biobase" version)) (sha256 (base32 - "1iwds2a5ir29k19dbpynlc7nn836cw2gamchhgpi2jf2xar9m9jz")))) + "10nr6nrkj5vlq8hsgbhbhv669z0dbpz4m3vz9k32rx1czbrrqwin")))) (properties `((upstream-name . "Biobase"))) (build-system r-build-system) @@ -7537,13 +7590,13 @@ on Bioconductor or which replace R functions.") (define-public r-annotationdbi (package (name "r-annotationdbi") - (version "1.42.1") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationDbi" version)) (sha256 (base32 - "0afkbzli08vq02r2pr9phrz3rxd6ilp1w7yw8y99nbjiz14f8b1c")))) + "1954vimkx5yb9irppq8vssq0f3yjkg36w38b9r0rqmijx1ps7x5d")))) (properties `((upstream-name . "AnnotationDbi"))) (build-system r-build-system) @@ -7564,13 +7617,13 @@ annotation data packages using SQLite data storage.") (define-public r-biomart (package (name "r-biomart") - (version "2.36.1") + (version "2.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biomaRt" version)) (sha256 (base32 - "0b70s350ffc74v3xz5c3jpazr9zxdb7gjmjfj7aghlsrizrspill")))) + "1lshkknp7dmr3p6dd2zbv86cc71h53ggh9ji83jcjym8sgbbspl2")))) (properties `((upstream-name . "biomaRt"))) (build-system r-build-system) @@ -7597,13 +7650,13 @@ powerful online queries from gene annotation to database mining.") (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.14.2") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "1llb5a62hn4yxpdgqdh2l7i5zd06mjkk8hagsna69cq65wv6iifm")))) + "0g16cy0vjapqkb188z63r1b6y96m9g8vx0a3v2qavzxc177k0cja")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) @@ -7622,13 +7675,13 @@ objects.") (define-public r-biostrings (package (name "r-biostrings") - (version "2.48.0") + (version "2.50.1") (source (origin (method url-fetch) (uri (bioconductor-uri "Biostrings" version)) (sha256 (base32 - "118b490jk87ydigm6ln25ms4kskzkw0akmh77clzznhzpqnxsi6j")))) + "1qyv1ps7vy6gy78pm2rcikg0bgf1mv7falahjp3pkwqq1272hrl8")))) (properties `((upstream-name . "Biostrings"))) (build-system r-build-system) @@ -7648,13 +7701,13 @@ biological sequences or sets of sequences.") (define-public r-rsamtools (package (name "r-rsamtools") - (version "1.32.3") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsamtools" version)) (sha256 (base32 - "1hpjr22h33pf4fgv0sj83rqzv6l5l7s6fpmmqvchh45ikks1mnhq")))) + "01v4bjhj2i126pwyk0v9lvmfp2ih495xsq903k3xa2z24bjxphbi")))) (properties `((upstream-name . "Rsamtools"))) (build-system r-build-system) @@ -7692,13 +7745,13 @@ files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.6.5") + (version "0.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "10b03zrnvz5isfh4z55hasya2m71lrfx10l5lm2sdmqs0gwkanrd")))) + "0cl5anqkjwvqx19snjhz0zj8cp8ibckiifl28h821h50g62nvb2f")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) @@ -7723,13 +7776,13 @@ array-like objects like @code{DataFrame} objects (typically with Rle columns), (define-public r-summarizedexperiment (package (name "r-summarizedexperiment") - (version "1.10.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SummarizedExperiment" version)) (sha256 (base32 - "0v3zxl9cqsv79ag5cnvzlhvgaz5cr8f4rn7flmwnwpqd508cznl1")))) + "07805572xhpj5mfwq6kw1ha21wgalqvhh4ydvafyl1bnf3r20vps")))) (properties `((upstream-name . "SummarizedExperiment"))) (build-system r-build-system) @@ -7754,13 +7807,13 @@ samples.") (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "00pi2cnkkbj2023fg2x2cmglkdalwzy1vr3glsikwz7ix9yylcaw")))) + "0a3zhwripfw2508fvgx3wzqa8nq8vnslg97a911znpwvxh53jl24")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) @@ -7787,13 +7840,13 @@ alignments.") (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.40.6") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "1wxxxlyps19dw3i0pw4mlm3kinnswsc35rgvlnbwvpnpjbca6w4l")))) + "0a4mhd926w9slkfil5xgngjsfdj024a4w57w2bm3d4r0pj8y5da7")))) (build-system r-build-system) (arguments `(#:phases @@ -7834,13 +7887,13 @@ as well as query and modify the browser state, such as the current viewport.") (define-public r-genomicfeatures (package (name "r-genomicfeatures") - (version "1.32.2") + (version "1.34.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "0kfyyg1ib8fkq2hxraal10z4bx3rg8figdskw4yhn1mbh6l42q5f")))) + "0slq6hv5bmc3bgrl824jzmr6db3fvaj6b7ihwmdn76pgqqbq2fq6")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) @@ -7875,7 +7928,7 @@ extracting the desired features in a convenient format.") (define-public r-go-db (package (name "r-go-db") - (version "3.5.0") + (version "3.7.0") (source (origin (method url-fetch) (uri (string-append "https://www.bioconductor.org/packages/" @@ -7883,7 +7936,7 @@ extracting the desired features in a convenient format.") version ".tar.gz")) (sha256 (base32 - "02d1mn1al3q7qvhx1ylrr3ar4w4iw0qyi5d89v2336rzwk9maq35")))) + "0i3wcf5h3n0dawzc1hy0kv74f06j80c47n4p3g3fmrcxlhi3jpa5")))) (properties `((upstream-name . "GO.db"))) (build-system r-build-system) @@ -7899,13 +7952,13 @@ information about the latest version of the Gene Ontologies.") (define-public r-topgo (package (name "r-topgo") - (version "2.32.0") + (version "2.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "topGO" version)) (sha256 (base32 - "05yxnkid8bgw9lkm90if9fg63djhgvbailfa3qsfqa5c0zjmixw1")))) + "1j1jcd16j564kr6qz28140fzmnh9xasi84v1c1fi98sqv30zq9bh")))) (properties `((upstream-name . "topGO"))) (build-system r-build-system) @@ -7932,13 +7985,13 @@ dependencies between GO terms can be implemented and applied.") (define-public r-bsgenome (package (name "r-bsgenome") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome" version)) (sha256 (base32 - "1rk2piqq5dppkd51ln3r872d7ng3rvq98071mnd0xdv2xwnyn5g8")))) + "07z4zxx0khrc86qqvc7vxww8df9fh6pyks9ajxkc9gdqr5nn79j7")))) (properties `((upstream-name . "BSgenome"))) (build-system r-build-system) @@ -7993,13 +8046,13 @@ genome data packages and support for efficient SNP representation.") (define-public r-impute (package (name "r-impute") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "impute" version)) (sha256 (base32 - "1d3cpfaqlq2gnb3hsc2yhxwkrnbd7m6ifif32yp0ya0jr5brl4hr")))) + "08z0pj1dz5iq967nwj67qyka7ir7m5an2ggv7bsrlz3apzfsla33")))) (inputs `(("gfortran" ,gfortran))) (build-system r-build-system) @@ -8013,13 +8066,13 @@ microarray data, using nearest neighbor averaging.") (define-public r-seqpattern (package (name "r-seqpattern") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqPattern" version)) (sha256 (base32 - "0dw0yldfcf0ibvpqxlpx1ijnjf9lma47w9w22siszzhw09i0wp3w")))) + "0di83qi83mrlw7i12khsq55d03hlazcywaa9m9pki1sfhafpq733")))) (properties `((upstream-name . "seqPattern"))) (build-system r-build-system) @@ -8040,13 +8093,13 @@ reference point and sorted by a user defined feature.") (define-public r-genomation (package (name "r-genomation") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genomation" version)) (sha256 (base32 - "1vdmdyrq0n7pf8cvy2950v7hrcrcbd9zl4fg7dcmyly3iiwdyirp")))) + "0g0v4alfpqlinqinjnyzl3mrjnpbdx9ri34mcaiqbvbvg8ic8wvg")))) (build-system r-build-system) (propagated-inputs `(("r-biostrings" ,r-biostrings) @@ -8086,7 +8139,7 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.") (define-public r-genomationdata (package (name "r-genomationdata") - (version "1.10.0") + (version "1.14.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8096,7 +8149,7 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.") "genomationData_" version ".tar.gz")) (sha256 (base32 - "0h7g5x3kyb50qlblz5hc85lfm6n6f5nb68i146way3ggs04sqvla")))) + "10xyb8akjrhmak2i0mnv1agny2ipy364q9nlibyplpzc7vdb6bw7")))) (build-system r-build-system) ;; As this package provides little more than large data files, it doesn't ;; make sense to build substitutes. @@ -8114,7 +8167,7 @@ downloaded from Encode.") (define-public r-org-hs-eg-db (package (name "r-org-hs-eg-db") - (version "3.5.0") + (version "3.7.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8124,7 +8177,7 @@ downloaded from Encode.") "org.Hs.eg.db_" version ".tar.gz")) (sha256 (base32 - "1v6wa5613cjq59xd7x1qz8lr9nb2abm9abl2cci1khrnrlpla927")))) + "1qxz9l80yg3qdqszs6dsscp7lrpfi1bgd0pxh9j7q34vprzwhdim")))) (properties `((upstream-name . "org.Hs.eg.db"))) (build-system r-build-system) @@ -8140,7 +8193,7 @@ on mapping using Entrez Gene identifiers.") (define-public r-org-ce-eg-db (package (name "r-org-ce-eg-db") - (version "3.5.0") + (version "3.7.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8150,7 +8203,7 @@ on mapping using Entrez Gene identifiers.") "org.Ce.eg.db_" version ".tar.gz")) (sha256 (base32 - "02ggchixlmzywhsbr0h2ms4dravv7m5964cjxqcjxqs16vjwlbk9")))) + "1w5br1ss4ha8wv4v2saj7cmbjc2jw0dyj2f2y269l078z31wcnaz")))) (properties `((upstream-name . "org.Ce.eg.db"))) (build-system r-build-system) @@ -8166,7 +8219,7 @@ annotations for the genome of the model worm Caenorhabditis elegans.") (define-public r-org-dm-eg-db (package (name "r-org-dm-eg-db") - (version "3.5.0") + (version "3.7.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8176,7 +8229,7 @@ annotations for the genome of the model worm Caenorhabditis elegans.") "org.Dm.eg.db_" version ".tar.gz")) (sha256 (base32 - "033qak1d3wwz17va0bh8z8p8arx0aw2va6gm1qfwsvdkj9cd9d7d")))) + "1pqjrzlyg72bjpy8zsxvaglc7jsv176bnyi87xdajmkvsgxpm7b3")))) (properties `((upstream-name . "org.Dm.eg.db"))) (build-system r-build-system) @@ -8192,7 +8245,7 @@ annotations for the genome of the model fruit fly Drosophila melanogaster.") (define-public r-org-mm-eg-db (package (name "r-org-mm-eg-db") - (version "3.5.0") + (version "3.7.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8202,7 +8255,7 @@ annotations for the genome of the model fruit fly Drosophila melanogaster.") "org.Mm.eg.db_" version ".tar.gz")) (sha256 (base32 - "11q21p3ki4bn4hb3aix0g775l45l66jmas6m94nfhqqnpjhv4d6g")))) + "1i3nvrd3wjigf1rmgxq1p5xxc3p8v02h5gwi62s30rkrsyjjfjxx")))) (properties `((upstream-name . "org.Mm.eg.db"))) (build-system r-build-system) @@ -8218,14 +8271,14 @@ annotations for the genome of the model mouse Mus musculus.") (define-public r-seqlogo (package (name "r-seqlogo") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqLogo" version)) (sha256 (base32 - "16xvqcdknix9vjm8mrixi6nyfsr45jm844jh1x90m8044lwrsic1")))) + "022vr9ydwcivs7rw7kwj73gfk5gc7ckwa1q66vhd4kw9ylh70v68")))) (properties `((upstream-name . "seqLogo"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/seqLogo") @@ -8333,7 +8386,7 @@ in Biostrings objects.") (define-public r-txdb-mmusculus-ucsc-mm10-knowngene (package (name "r-txdb-mmusculus-ucsc-mm10-knowngene") - (version "3.4.0") + (version "3.4.4") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8344,7 +8397,7 @@ in Biostrings objects.") version ".tar.gz")) (sha256 (base32 - "08gava9wsvpcqz51k2sni3pj03n5155v32d9riqbf305nbirqbkb")))) + "01lgxc1fx5nhlpbwjd5zqghkkbmh6axd98ikx4b0spv0jdg6gf39")))) (properties `((upstream-name . "TxDb.Mmusculus.UCSC.mm10.knownGene"))) (build-system r-build-system) @@ -8464,14 +8517,14 @@ Biostrings objects.") (define-public r-motifrg (package (name "r-motifrg") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "motifRG" version)) (sha256 (base32 - "0mxhyidkyd2zqahdbg69y20r550z78lvr1r3pbjymnwfg4hcfq1p")))) + "1wxww6i0jgyapqclcwy0zzf9kqjvrvylr89z7yhg1izi7jnw2fka")))) (properties `((upstream-name . "motifRG"))) (build-system r-build-system) (propagated-inputs @@ -8516,13 +8569,13 @@ two-dimensional genome scans.") (define-public r-zlibbioc (package (name "r-zlibbioc") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "zlibbioc" version)) (sha256 (base32 - "1rwr0mci8a712q0isavi4jmhm94gwivc4nr8j7r4kw05flp4g7gz")))) + "0bjvzy24kab7ank02cc1qk2ikcz4dllgf66wpsdl0d3zp4gn3l2h")))) (properties `((upstream-name . "zlibbioc"))) (build-system r-build-system) @@ -8558,14 +8611,14 @@ secondary structure and comparative analysis in R.") (define-public r-rhtslib (package (name "r-rhtslib") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhtslib" version)) (sha256 (base32 - "16ywnb8cmr2xabd1i21b92rfziw7xfbv25yv16ipw617p41wa39z")))) + "1h4q54f8za3aaxgy186zf2165sar5c3cgxkk44lq5hzx5pxkl5wn")))) (properties `((upstream-name . "Rhtslib"))) (build-system r-build-system) (propagated-inputs @@ -8585,14 +8638,14 @@ of other R packages who wish to make use of HTSlib.") (define-public r-bamsignals (package (name "r-bamsignals") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bamsignals" version)) (sha256 (base32 - "141q3p4lzwiqk1mfxi8q1q84axjl0gyiqg59xd3sp4viny4jqmgv")))) + "19irfx1y1izf903vq59wxsdbf88g143zy9l89gxqawh7jfxds8w8")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8615,41 +8668,33 @@ paired-end data.") (define-public r-rcas (package (name "r-rcas") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RCAS" version)) (sha256 (base32 - "0vmn7a0rm2ban0kaxrf5danhss2r4hfhnwh5889fjcgqy300fdd5")))) + "0ss5hcg2m7gjji6dd23zxa5bd5a7knwcnada4qs5q2l4clgk39ad")))) (build-system r-build-system) - (native-inputs - `(("r-testthat" ,r-testthat) - ;; During vignette building knitr checks that "pandoc-citeproc" - ;; is in the PATH. - ("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc))) (propagated-inputs - `(("r-biocgenerics" ,r-biocgenerics) + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocgenerics" ,r-biocgenerics) ("r-biomart" ,r-biomart) ("r-biostrings" ,r-biostrings) ("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19) - ("r-bsgenome-mmusculus-ucsc-mm9" ,r-bsgenome-mmusculus-ucsc-mm9) - ("r-bsgenome-celegans-ucsc-ce10" ,r-bsgenome-celegans-ucsc-ce10) - ("r-bsgenome-dmelanogaster-ucsc-dm3" ,r-bsgenome-dmelanogaster-ucsc-dm3) ("r-cowplot" ,r-cowplot) ("r-data-table" ,r-data-table) ("r-dbi" ,r-dbi) ("r-dt" ,r-dt) ("r-genomation" ,r-genomation) + ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) ("r-ggplot2" ,r-ggplot2) ("r-ggseqlogo" ,r-ggseqlogo) ("r-knitr" ,r-knitr) ("r-motifrg" ,r-motifrg) ("r-org-hs-eg-db" ,r-org-hs-eg-db) - ("r-org-ce-eg-db" ,r-org-ce-eg-db) - ("r-org-dm-eg-db" ,r-org-dm-eg-db) - ("r-org-mm-eg-db" ,r-org-mm-eg-db) ("r-pbapply" ,r-pbapply) ("r-pheatmap" ,r-pheatmap) ("r-plotly" ,r-plotly) @@ -8715,14 +8760,14 @@ library implementing most of the pipeline's features.") (define-public r-mutationalpatterns (package (name "r-mutationalpatterns") - (version "1.6.1") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MutationalPatterns" version)) (sha256 (base32 - "1yq7351j42mjxn8fd3c5bdxzb2l5s4lvqhjdvv4rwj4f600n6wj9")))) + "0w9lg1zs106h6rqvy8mhikq6q6q9syw6c1prcxr38ssh85rcih12")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8753,14 +8798,14 @@ in SNV base substitution data.") (define-public r-wgcna (package (name "r-wgcna") - (version "1.63") + (version "1.66") (source (origin (method url-fetch) (uri (cran-uri "WGCNA" version)) (sha256 (base32 - "1225dqm68bynkmklnsxdqdd3zqrpzbvqwyly8ibxmk75z33xz309")))) + "0rhnyhzfn93yp24jz9v6dzrmyizwzdw070a7idm0k33w1cm8sjqv")))) (properties `((upstream-name . "WGCNA"))) (build-system r-build-system) (propagated-inputs @@ -8831,13 +8876,14 @@ Sequences.") (version "1.1.4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ManuSetty/SeqGL/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ManuSetty/SeqGL.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0pnk1p3sci5yipyc8xnb6jbmydpl80fld927xgnbcv104hy8h8yh")))) + "1r6ywvhxl3ffv48lgj7sbd582mcc6dha3ksgc2qjlvjrnkbj3799")))) (build-system r-build-system) (propagated-inputs `(("r-biostrings" ,r-biostrings) @@ -8891,13 +8937,13 @@ kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.") (define-public r-tximport (package (name "r-tximport") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "tximport" version)) (sha256 (base32 - "1qjc7ah9dzccpvcjrp9k4qnaz13x6kvy1c1xpdj503km6k528lip")))) + "0za2js8hqjgz8ria09cglynffj4w9vrzg85nmn1xgpvmc1xk813h")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/tximport") (synopsis "Import and summarize transcript-level estimates for gene-level analysis") @@ -8913,13 +8959,13 @@ of gene-level counts.") (define-public r-rhdf5 (package (name "r-rhdf5") - (version "2.24.0") + (version "2.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rhdf5" version)) (sha256 (base32 - "15cmmchhk8bnp94gxg0zk9qyzdjx5kv16dzpbnb62mkq7ydmifx6")))) + "0xmpkfdsmgl79ffffj7cf9fx3zxki2rk0xn25k778kr3s0sbmhis")))) (build-system r-build-system) (propagated-inputs `(("r-rhdf5lib" ,r-rhdf5lib))) @@ -8940,13 +8986,13 @@ the available RAM.") (define-public r-annotationfilter (package (name "r-annotationfilter") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationFilter" version)) (sha256 (base32 - "1w8ypfdz4g7vnwfrvnhjcpm8waciqyq2cn883ajdwg4vv7a5mj9a")))) + "0wrr10cxjzmxx46vjzq2nsf6xlqz1sqwx4xm0sk3d77ff8wmph4x")))) (properties `((upstream-name . "AnnotationFilter"))) (build-system r-build-system) @@ -8999,7 +9045,7 @@ AM_CONDITIONAL(AMPNG, true)")) (("\\$\\(bindir\\)/embossupdate") "")) #t)) (add-after 'disable-update-check 'autogen - (lambda _ (zero? (system* "autoreconf" "-vif"))))))) + (lambda _ (invoke "autoreconf" "-vif") #t))))) (inputs `(("perl" ,perl) ("libpng" ,libpng) @@ -9172,12 +9218,14 @@ group or two ChIP groups run under different conditions.") (name "filevercmp") (version (string-append "0-1." (string-take commit 7))) (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ekg/filevercmp/archive/" - commit ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 "0yp5jswf5j2pqc6517x277s4s6h1ss99v57kxw9gy0jkfl3yh450")))) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ekg/filevercmp.git") + (commit commit))) + (file-name (git-file-name name commit)) + (sha256 + (base32 + "1j9vxsy0y050v59h0q1d6501fcw1kjvj0d18l1xk2zyg0jzj247c")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; There are no tests to run. @@ -9187,7 +9235,8 @@ group or two ChIP groups run under different conditions.") (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (install-file "filevercmp" bin))))))) + (install-file "filevercmp" bin) + #t)))))) (home-page "https://github.com/ekg/filevercmp") (synopsis "This program compares version strings") (description "This program compares version strings. It intends to be a @@ -9243,14 +9292,14 @@ common bioinformatics tools.") (define-public r-chipseq (package (name "r-chipseq") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "chipseq" version)) (sha256 (base32 - "09f8dgl5ni75qkf7nvvppwr3irpplv4xb3ks59ld7l8i2mplcrx7")))) + "1pp1rm5fs3hlar5x4dl3a3b4gara7qwf81dbvka6r1n78hrf9x1b")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -9295,14 +9344,14 @@ GenomicRanges Bioconductor package.") (define-public r-copywriter (package (name "r-copywriter") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CopywriteR" version)) (sha256 (base32 - "0b7xwq1va2zclb54f07c5ipmmq4iv2hrlph3j93jz5hmyayv50z3")))) + "0aamxafdk98n7s92jyqs65d6ljpnc2463vanvsw80p44qn6l6awn")))) (properties `((upstream-name . "CopywriteR"))) (build-system r-build-system) (propagated-inputs @@ -9335,13 +9384,13 @@ number detection tools.") (define-public r-methylkit (package (name "r-methylkit") - (version "1.6.1") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "methylKit" version)) (sha256 (base32 - "1hr2czi5ybdf7hdmqsv39d17f3mvmw94wa38bc14zzm9mgy9gfy7")))) + "0mz6lil1wax931incnw5byx0v9i8ryhwq9mv0nv8s48ai33ch3x6")))) (properties `((upstream-name . "methylKit"))) (build-system r-build-system) (propagated-inputs @@ -9381,14 +9430,14 @@ TAB-Seq.") (define-public r-sva (package (name "r-sva") - (version "3.28.0") + (version "3.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "sva" version)) (sha256 (base32 - "0a3jqbz0jp1jxrnjkqfpmca840yqcdwxprdl608bzzx2zb4jl52s")))) + "1xf0hlrqjxl0y3x13mrkxghiv39fd9v2g8gq3qzbf1wj7il6bph3")))) (build-system r-build-system) (propagated-inputs `(("r-genefilter" ,r-genefilter) @@ -9491,14 +9540,14 @@ as allowing spectra with different resolutions.") (define-public r-protgenerics (package (name "r-protgenerics") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ProtGenerics" version)) (sha256 (base32 - "05jbadw2aiwy8vi2ia0jxg06cmwhly2cq4dy1ag7kdxf1c5i9ccn")))) + "053mmxhzncqgigl2iqjlq56qzimlw2zzw31wpzw19rf7rld1vi3b")))) (properties `((upstream-name . "ProtGenerics"))) (build-system r-build-system) (home-page "https://github.com/lgatto/ProtGenerics") @@ -9511,14 +9560,14 @@ proteomics packages.") (define-public r-mzr (package (name "r-mzr") - (version "2.14.0") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzR" version)) (sha256 (base32 - "190m2bq5bqxhljaj4f7vz9wj5h5laaxd8zp5jampnql6xc4zmarg")) + "0li1y6p95ljiva4lvfmql9sipn4dq42sknbh60b36ycjppnf8lj5")) (modules '((guix build utils))) (snippet '(begin @@ -9540,11 +9589,11 @@ proteomics packages.") #t))))) (inputs `(("boost" ,boost) ; use this instead of the bundled boost sources - ("netcdf" ,netcdf) ("zlib" ,zlib))) (propagated-inputs `(("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) + ("r-ncdf4" ,r-ncdf4) ("r-protgenerics" ,r-protgenerics) ("r-rcpp" ,r-rcpp) ("r-rhdf5lib" ,r-rhdf5lib) @@ -9563,14 +9612,14 @@ previously been used in XCMS.") (define-public r-affyio (package (name "r-affyio") - (version "1.50.0") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affyio" version)) (sha256 (base32 - "0sh5wnnchyfpq5n6rchbqmb27byn7kdzn5rgran6i39c81i5z22n")))) + "1s4zp1211vf0krxzch9v3q3r6vs8hihqppq18i2fpvwlknfja7c1")))) (build-system r-build-system) (propagated-inputs `(("r-zlibbioc" ,r-zlibbioc))) @@ -9587,20 +9636,20 @@ CDF file formats.") (define-public r-affy (package (name "r-affy") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affy" version)) (sha256 (base32 - "0sxq875sigm21sf3qncrfrwfdz9nqw1vldxn3d3hj6aq64jg1ki6")))) + "0x8h4fk2igv7vykqfvf6v9whmx3344v5rf3gyfajd431xkjldz6k")))) (build-system r-build-system) (propagated-inputs `(("r-affyio" ,r-affyio) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-preprocesscore" ,r-preprocesscore) ("r-zlibbioc" ,r-zlibbioc))) (inputs @@ -9615,14 +9664,14 @@ analysis.") (define-public r-vsn (package (name "r-vsn") - (version "3.48.1") + (version "3.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "vsn" version)) (sha256 (base32 - "0k6mah3g3zqbfap31xmvig4fn452a18xwwa5y0mfj5mj8588p57h")))) + "1g6qkpykw99jm2wv2i61dg2ffwk0n8fm4s5pm2q4c024vw5c9b69")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -9649,14 +9698,14 @@ and specific in detecting differential transcription.") (define-public r-mzid (package (name "r-mzid") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzID" version)) (sha256 (base32 - "060k0xlhg8q802c6zsb4b8ps0ccd9ybyaz0gnsvqkxb786i2vk40")))) + "08jbq223viwknsmsi30hyxyxslvmb0l4wx3vmqlkl6qk4vfmxzjz")))) (properties `((upstream-name . "mzID"))) (build-system r-build-system) (propagated-inputs @@ -9679,14 +9728,14 @@ specific parser.") (define-public r-pcamethods (package (name "r-pcamethods") - (version "1.72.0") + (version "1.74.0") (source (origin (method url-fetch) (uri (bioconductor-uri "pcaMethods" version)) (sha256 (base32 - "0v99yf8m7ryh6z0r3z0ggpqfnflcq5bn1q1i1cl9b7q4p6b4sa07")))) + "0ik82s9bsdj4a1mmv0a3k6yisa92mxx7maf3dvip1r8gqlm3dyng")))) (properties `((upstream-name . "pcaMethods"))) (build-system r-build-system) (propagated-inputs @@ -9709,14 +9758,14 @@ structure (pcaRes) to provide a common interface to the PCA results.") (define-public r-msnbase (package (name "r-msnbase") - (version "2.6.3") + (version "2.8.1") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnbase" version)) (sha256 (base32 - "15jhqg02ypmznc0wxksw56yij02csy678vqy531fdv86fsmypwa0")))) + "0y658anh06vnvbkfs7r8q40gqgyqr2r8kj7jlpnp33fy1lvp1nv7")))) (properties `((upstream-name . "MSnbase"))) (build-system r-build-system) (propagated-inputs @@ -9752,14 +9801,14 @@ of mass spectrometry based proteomics data.") (define-public r-msnid (package (name "r-msnid") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnID" version)) (sha256 (base32 - "172q5chi44104iz4y0g42wrimfp7hlhrfa8vzybx6m0ccrkkhl17")))) + "0hgq4argllhh5hvxqi8vkf1blc3nibsslhx4zsv2mcv4yj75bv4n")))) (properties `((upstream-name . "MSnID"))) (build-system r-build-system) (propagated-inputs @@ -9854,14 +9903,14 @@ discovery of differentially expressed genes and markers.") (define-public r-aroma-light (package (name "r-aroma-light") - (version "3.10.0") + (version "3.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "aroma.light" version)) (sha256 (base32 - "1dxsiwsrwcq9mj573f9vpdzrhagdqzal328ma8076px4gg6khxkn")))) + "0vfifgpqxjjncbiv6gvlk9jmj14j90r9f30bqk3ks9v1csjnjhrb")))) (properties `((upstream-name . "aroma.light"))) (build-system r-build-system) (propagated-inputs @@ -9881,14 +9930,14 @@ classes.") (define-public r-deseq (package (name "r-deseq") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq" version)) (sha256 (base32 - "0ykxw8ksif026xy25wx50j2sdsrp156aqkmhcgfjkpgcw699glnm")))) + "1klv1xrh3173srywr6dnq6i7m9djn4gc9aflr1p3a6yjlqcq6fya")))) (properties `((upstream-name . "DESeq"))) (build-system r-build-system) (propagated-inputs @@ -9912,14 +9961,14 @@ distribution.") (define-public r-edaseq (package (name "r-edaseq") - (version "2.14.1") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EDASeq" version)) (sha256 (base32 - "0970w9d5ddqw1qxqqafdidkxh6hmcv9j5djwgnpz3fgl05kmysg8")))) + "1gjqzn1kg9qwyz2gwjyy9xzzr1lnc7xd5zwdyvzkadz97gckzxwf")))) (properties `((upstream-name . "EDASeq"))) (build-system r-build-system) (propagated-inputs @@ -9950,14 +9999,14 @@ global-scaling and full-quantile normalization.") (define-public r-interactivedisplaybase (package (name "r-interactivedisplaybase") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "interactiveDisplayBase" version)) (sha256 (base32 - "05w58z3i9vkma4jd6rhjaxls4yiq4kwrppgcdq9xrr1pxp99k575")))) + "04xz3dkwan2s5ic1mwkdfnggm0l41mgqfagx160bcsrpkw6z7ark")))) (properties `((upstream-name . "interactiveDisplayBase"))) (build-system r-build-system) @@ -9974,20 +10023,20 @@ Shiny-based display methods for Bioconductor objects.") (define-public r-annotationhub (package (name "r-annotationhub") - (version "2.12.1") + (version "2.14.1") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationHub" version)) (sha256 (base32 - "02ls279k1qlch147vw8kwvlhcqyzvi495bgv110m0xnnbpgbln6g")))) + "00288x3na0izpmbcvsqac1br1qwry86vwc2slj1l47crdfb7za6c")))) (properties `((upstream-name . "AnnotationHub"))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-curl" ,r-curl) ("r-httr" ,r-httr) ("r-interactivedisplaybase" ,r-interactivedisplaybase) @@ -10009,14 +10058,14 @@ by the user, helping with quick and reproducible access.") (define-public r-fastseg (package (name "r-fastseg") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "fastseg" version)) (sha256 (base32 - "1yw6hai6hb8qy7akdm4frfp6h4zy93zb68kdj094sanm7kgqmgik")))) + "1l8mdjpfpgwqdss2ywjkb8b4h55wf8v6kmyxdlvy04ds2hj16sb1")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -10039,14 +10088,14 @@ microarrays or GRanges for sequencing data.") (define-public r-keggrest (package (name "r-keggrest") - (version "1.20.1") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "KEGGREST" version)) (sha256 (base32 - "1ss0xd5570x570v01r6lp64rr1apjrzp0j62520pvm3g8knjhfvs")))) + "0blpd5a7whd2sswfhqd17h58hg06ymaf80gapdr9ja43hnnlj309")))) (properties `((upstream-name . "KEGGREST"))) (build-system r-build-system) (propagated-inputs @@ -10063,14 +10112,14 @@ microarrays or GRanges for sequencing data.") (define-public r-gage (package (name "r-gage") - (version "2.30.0") + (version "2.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gage" version)) (sha256 (base32 - "0j3cqxy97lpf146wkmdfaq9680gicmzxvhp6w5pxq3j7ipiy7262")))) + "07b098wvryxf0zd423nk6h52s3gyngwjcx2vplqybpbpgl8h2931")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10092,14 +10141,14 @@ analysis using other methods.") (define-public r-genomicfiles (package (name "r-genomicfiles") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFiles" version)) (sha256 (base32 - "0bhsq5czigrjyl9gkb2kpkpl367b3ac5g8s280adkcxggn9g7sxq")))) + "0qf2yj4lfnnk64fk125n8sqms01shfqiik04nasx2z3k129ykpxp")))) (properties `((upstream-name . "GenomicFiles"))) (build-system r-build-system) (propagated-inputs @@ -10125,14 +10174,14 @@ provide added flexibility for data combination and manipulation.") (define-public r-complexheatmap (package (name "r-complexheatmap") - (version "1.18.1") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ComplexHeatmap" version)) (sha256 (base32 - "0qjwz1hzpjnc90jiinjkikfnr0shi72q3zfdjjz7pxydy0mglq8n")))) + "0s01dzcfj1lmpqfpsbqw7r4858krfzy499lz4cwx4fq3mbyvy2aj")))) (properties `((upstream-name . "ComplexHeatmap"))) (build-system r-build-system) @@ -10155,14 +10204,14 @@ self-defined annotation graphics.") (define-public r-dirichletmultinomial (package (name "r-dirichletmultinomial") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DirichletMultinomial" version)) (sha256 (base32 - "0vcyp81b90in4ls5nbadc66cw2g9aydr94aqifq5j4b7diq74yfs")))) + "19bzn0a5jal1xv0ad6wikxc7wrk582hczqamlln0vb2ffwkj1z3f")))) (properties `((upstream-name . "DirichletMultinomial"))) (build-system r-build-system) @@ -10184,14 +10233,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2): (define-public r-ensembldb (package (name "r-ensembldb") - (version "2.4.1") + (version "2.6.2") (source (origin (method url-fetch) (uri (bioconductor-uri "ensembldb" version)) (sha256 (base32 - "1l2b4cxiycv05mz4z4f3dhx57r9ksha02psc114h30ldm5rxz8w6")))) + "0hdz1f34v7sas2v4225icwl3wd4sf17ykpd5dkbx1hc7wcy4w3np")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10227,21 +10276,21 @@ chromosome region or transcript models of lincRNA genes.") (define-public r-organismdbi (package (name "r-organismdbi") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "OrganismDbi" version)) (sha256 (base32 - "0hb9ni41bjfy5s5ryw2qmqs2sx3i7j47w1g0l8g1pvn7ppnxb6cv")))) + "11pyv56cy4iy095h40k6k0mpjdlh6gsb4ld3s57nfa9nd4ypx3yi")))) (properties `((upstream-name . "OrganismDbi"))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocinstaller" ,r-biocinstaller) + ("r-biocmanager" ,r-biocmanager) ("r-dbi" ,r-dbi) ("r-genomicfeatures" ,r-genomicfeatures) ("r-genomicranges" ,r-genomicranges) @@ -10259,14 +10308,14 @@ the fact that each of these packages implements a select methods.") (define-public r-biovizbase (package (name "r-biovizbase") - (version "1.28.2") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biovizBase" version)) (sha256 (base32 - "0wc45j3hfn01i44bkkxjj3n8b8xzbkkcdv35mrkzb1f9yprkf8gq")))) + "0v54mcn3rnnfx8dmcrms5z3rgq19n3hp4r23azlgzwq6hjw7cccx")))) (properties `((upstream-name . "biovizBase"))) (build-system r-build-system) (propagated-inputs @@ -10301,14 +10350,14 @@ effort and encourages consistency.") (define-public r-ggbio (package (name "r-ggbio") - (version "1.28.5") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ggbio" version)) (sha256 (base32 - "19s2v40fycwf44fl3lm791y635xzw67b30sq2g0qq4a6phjik42d")))) + "0wq49qqzkcn8s19xgaxf2s1j1a563d7pbhhvris6fhxfdjsz4934")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10354,14 +10403,14 @@ interval to data view, mismatch pileup, and several splicing summaries.") (define-public r-gprofiler (package (name "r-gprofiler") - (version "0.6.6") + (version "0.6.7") (source (origin (method url-fetch) (uri (cran-uri "gProfileR" version)) (sha256 (base32 - "1n6cj12j102b4x9vhyl4dljp1i0r43p23cnhqbx4als2xfxdlqgi")))) + "12nwidbnqmnfy5dnqga26byslvdnkrpz2fi19qfcby6xx0wbndk7")))) (properties `((upstream-name . "gProfileR"))) (build-system r-build-system) (propagated-inputs @@ -10378,14 +10427,14 @@ organisms via the @code{g:Profiler} toolkit.") (define-public r-gqtlbase (package (name "r-gqtlbase") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLBase" version)) (sha256 (base32 - "1m3ajpqjhw1nwwsn372r44xfxq0a9a0pzsnrprzdjp6mh52p9b5m")))) + "1lbk1m1mkvbk30flk5pf3pcrnm2s0sj5r48kbjgad39dsvd8zgqx")))) (properties `((upstream-name . "gQTLBase"))) (build-system r-build-system) (propagated-inputs @@ -10413,14 +10462,14 @@ and more.") (define-public r-snpstats (package (name "r-snpstats") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "snpStats" version)) (sha256 (base32 - "0iydgfnm053iw860qa1bbh4f6nwzlsf3vhgq92gvl2v4xsz1jbbs")))) + "1pplx4pf9bqi7v5v1l74yknc1s61carvbqkf327ky7vbvp0bck33")))) (properties `((upstream-name . "snpStats"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -10472,14 +10521,14 @@ several related annotation packages.") (define-public r-erma (package (name "r-erma") - (version "0.12.0") + (version "0.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "erma" version)) (sha256 (base32 - "1ka68n18yizlyvb8bpwwcl4hqbsasg8hw8jb3vgy3cd4szji87hh")))) + "0hj9iz904rr1y66442lkxjywkw1ydyxxlhmjirawbf09ic5ad4g9")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10510,14 +10559,14 @@ by Ernst and Kellis.") (define-public r-ldblock (package (name "r-ldblock") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ldblock" version)) (sha256 (base32 - "0c24zvnwsp39d3q0bps13sc441jj9ms2zi34xsb8c392lqmbypvd")))) + "0xbf4pmhrk5fnd1iz5wzjvdr75v114bwpznhcig4wiqmxc27sips")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -10542,14 +10591,14 @@ defining LD blocks.") (define-public r-gqtlstats (package (name "r-gqtlstats") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLstats" version)) (sha256 (base32 - "19g8qhfgngdc14cw9k4i44cxhs3qva87x56gjzmn25k1yj8qgsp1")))) + "1sg9kw59dlayj7qxql9pd93d4hmml504sa3kkfpzfh3xri7m5pxf")))) (properties `((upstream-name . "gQTLstats"))) (build-system r-build-system) (propagated-inputs @@ -10596,14 +10645,14 @@ family of feature/genome hypotheses.") (define-public r-gviz (package (name "r-gviz") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Gviz" version)) (sha256 (base32 - "1fhli7ahkl5r43j0hc89ib41mfadj6qyrg36i03ncz8zs6iqwpx4")))) + "05zk9hf30afg6rjg97lzn5v8xij90v8zm09y9vcz0asmc3c8xs0a")))) (properties `((upstream-name . "Gviz"))) (build-system r-build-system) (propagated-inputs @@ -10642,14 +10691,14 @@ with your data.") (define-public r-gwascat (package (name "r-gwascat") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gwascat" version)) (sha256 (base32 - "08ba9il4vbjjwlbwmqg4ai6ya1p09js9agn95sw0dhc9gqln42hx")))) + "1fnyjydhicq4ayrv0lqjv48h9bd72h40s6l82g1h2ng0icwz38g0")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10682,13 +10731,13 @@ EMBL-EBI GWAS catalog.") (define-public r-sushi (package (name "r-sushi") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Sushi" version)) (sha256 (base32 - "1m15hmg4k0qhshyn65xfj5hx7xbaf0kxqw70lxisak6pj1w00l41")))) + "0dv5di0hgbvk9cxnqhyf18mdjl50k6bk00a89r6zgp83rbxwr1r8")))) (properties `((upstream-name . "Sushi"))) (build-system r-build-system) (propagated-inputs @@ -10704,13 +10753,13 @@ visualizations for publication-quality multi-panel figures.") (define-public r-fithic (package (name "r-fithic") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "FitHiC" version)) (sha256 (base32 - "06w4q836bi1mvkbl1saghv4r5p4hxpjg8cp7kgad13ls450kqmyd")))) + "15xd8mz7660q4zr9p74mq1pqps4iz7pxp8f9ifn21gwg94aq1avn")))) (properties `((upstream-name . "FitHiC"))) (build-system r-build-system) (propagated-inputs @@ -10728,13 +10777,13 @@ assays such as Hi-C.") (define-public r-hitc (package (name "r-hitc") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HiTC" version)) (sha256 (base32 - "0qkk5139f51lwwy1yh7nbkflh5d69prirmhniwam34nlg9rzjm2z")))) + "11f96k1707g6milpjgnrjf3b5r42hsrxhb5d8znkcr3y3mrskdbj")))) (properties `((upstream-name . "HiTC"))) (build-system r-build-system) (propagated-inputs @@ -10757,14 +10806,14 @@ provided.") (define-public r-qvalue (package (name "r-qvalue") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "qvalue" version)) (sha256 (base32 - "1ndwkj0hh7v4lwylq1v0fkxqs7mfmbcj8kxbdpj1wkvf131z2ns8")))) + "03qxshqwwq1rj23p6pjrz08jm3ziikvy9badi4mz2rcwy2nz783a")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -10786,14 +10835,14 @@ problems in genomics, brain imaging, astrophysics, and data mining.") (define-public r-hdf5array (package (name "r-hdf5array") - (version "1.8.1") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HDF5Array" version)) (sha256 (base32 - "1s44zgm9jg82bk4b8k3dh7xw7mxychlfm3grs8516mxnw91zpvy5")))) + "1w7ad8cfsbh5xx82m3l4lc0vbmj9lcsqxxpiy3ana2ycgn1bqv3g")))) (properties `((upstream-name . "HDF5Array"))) (build-system r-build-system) (propagated-inputs @@ -10812,14 +10861,20 @@ block processing.") (define-public r-rhdf5lib (package (name "r-rhdf5lib") - (version "1.2.1") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhdf5lib" version)) (sha256 (base32 - "1y59acac6v8hrhv84gghn9ifsni9xxxacaj177rrl4frmkrz4x3c")))) + "01gpz780g850ql20b2ql6pvr678ydk4nq4sn5iiih94a4crb9lz1")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete bundled binaries + (delete-file-recursively "src/winlib/") + #t)))) (properties `((upstream-name . "Rhdf5lib"))) (build-system r-build-system) (arguments @@ -10836,7 +10891,7 @@ block processing.") "'%s/libhdf5.a %s/libhdf5.a -lz'")) (with-directory-excursion "src" (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source")) - (rename-file (string-append "hdf5-" ,(package-version hdf5)) + (rename-file (string-append "hdf5-" ,(package-version hdf5-1.10)) "hdf5") ;; Remove timestamp and host system information to make ;; the build reproducible. @@ -10865,9 +10920,9 @@ block processing.") (inputs `(("zlib" ,zlib))) (propagated-inputs - `(("hdf5" ,hdf5))) + `(("hdf5" ,hdf5-1.10))) (native-inputs - `(("hdf5-source" ,(package-source hdf5)))) + `(("hdf5-source" ,(package-source hdf5-1.10)))) (home-page "https://bioconductor.org/packages/Rhdf5lib") (synopsis "HDF5 library as an R package") (description "This package provides C and C++ HDF5 libraries for use in R @@ -10877,20 +10932,21 @@ packages.") (define-public r-beachmat (package (name "r-beachmat") - (version "1.2.1") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "beachmat" version)) (sha256 (base32 - "1w90v0jx1zgrfxzx99gdkk0dz2vi25hr51jml1bvq33i64rj7996")))) + "07zgmms0qg8gw7x0js46965bbhpfj2aa1h5ixdz9r332bxv9cdmr")))) (build-system r-build-system) (inputs `(("hdf5" ,hdf5) ("zlib" ,zlib))) (propagated-inputs - `(("r-delayedarray" ,r-delayedarray) + `(("r-biocgenerics" ,r-biocgenerics) + ("r-delayedarray" ,r-delayedarray) ("r-hdf5array" ,r-hdf5array) ("r-rcpp" ,r-rcpp) ("r-rhdf5" ,r-rhdf5) @@ -10905,14 +10961,14 @@ matrices.") (define-public r-singlecellexperiment (package (name "r-singlecellexperiment") - (version "1.2.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SingleCellExperiment" version)) (sha256 (base32 - "0mz3chia250v8v6q8r5cqv5fc4bpcw1hhrfr3p7l5i4xi85scpka")))) + "19r4r7djrn46qlijkj1g926vcklxzcrxjlxv6cg43m9j9jgfs3dj")))) (properties `((upstream-name . "SingleCellExperiment"))) (build-system r-build-system) @@ -10932,39 +10988,31 @@ libraries.") (define-public r-scater (package (name "r-scater") - (version "1.8.4") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "scater" version)) (sha256 (base32 - "173lfpas2fqsp4xxsw01wkxd4496c5p8himw9b4r9z4npxkfyv16")))) + "1kwa9n70c5j0xcj6nkmlkzjr63cnj78mp8nhg58n07fq1ijm4ns3")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) - ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-data-table" ,r-data-table) + ("r-biocparallel" ,r-biocparallel) ("r-delayedarray" ,r-delayedarray) ("r-delayedmatrixstats" ,r-delayedmatrixstats) ("r-dplyr" ,r-dplyr) - ("r-edger" ,r-edger) ("r-ggbeeswarm" ,r-ggbeeswarm) ("r-ggplot2" ,r-ggplot2) - ("r-limma" ,r-limma) ("r-matrix" ,r-matrix) ("r-plyr" ,r-plyr) ("r-rcpp" ,r-rcpp) ("r-reshape2" ,r-reshape2) - ("r-rhdf5" ,r-rhdf5) ("r-rhdf5lib" ,r-rhdf5lib) - ("r-rjson" ,r-rjson) ("r-s4vectors" ,r-s4vectors) - ("r-shiny" ,r-shiny) - ("r-shinydashboard" ,r-shinydashboard) ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-summarizedexperiment" ,r-summarizedexperiment) - ("r-tximport" ,r-tximport) ("r-viridis" ,r-viridis))) (home-page "https://github.com/davismcc/scater") (synopsis "Single-cell analysis toolkit for gene expression data in R") @@ -10976,26 +11024,24 @@ quality control.") (define-public r-scran (package (name "r-scran") - (version "1.8.4") + (version "1.10.1") (source (origin (method url-fetch) (uri (bioconductor-uri "scran" version)) (sha256 (base32 - "17vq9vb9ak7n4mcqpwnm9x3z91vmr7xnsgj8f45b8dbj7m0v126j")))) + "1viyzrwfm9vccsf54c6g7k1dn7skkfx4ml1jy12q67wa20sx8l03")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) ("r-biocgenerics" ,r-biocgenerics) + ("r-biocneighbors" ,r-biocneighbors) ("r-biocparallel" ,r-biocparallel) ("r-delayedarray" ,r-delayedarray) ("r-delayedmatrixstats" ,r-delayedmatrixstats) - ("r-dt" ,r-dt) ("r-dynamictreecut" ,r-dynamictreecut) ("r-edger" ,r-edger) - ("r-fnn" ,r-fnn) - ("r-ggplot2" ,r-ggplot2) ("r-igraph" ,r-igraph) ("r-limma" ,r-limma) ("r-matrix" ,r-matrix) @@ -11003,11 +11049,9 @@ quality control.") ("r-rhdf5lib" ,r-rhdf5lib) ("r-s4vectors" ,r-s4vectors) ("r-scater" ,r-scater) - ("r-shiny" ,r-shiny) ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-statmod" ,r-statmod) - ("r-summarizedexperiment" ,r-summarizedexperiment) - ("r-viridis" ,r-viridis))) + ("r-summarizedexperiment" ,r-summarizedexperiment))) (home-page "https://bioconductor.org/packages/scran") (synopsis "Methods for single-cell RNA-Seq data analysis") (description "This package implements a variety of low-level analyses of @@ -11019,19 +11063,21 @@ variable and significantly correlated genes.") (define-public r-delayedmatrixstats (package (name "r-delayedmatrixstats") - (version "1.2.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedMatrixStats" version)) (sha256 (base32 - "1dasghfy8x27zzmd0igag4mc1gxxxbchsl4hpc1050dj3wnw9w3y")))) + "03fk2avl1vyjv2wslczkc82qr0zmp1ra8iimd47pbmnnm839ly4w")))) (properties `((upstream-name . "DelayedMatrixStats"))) (build-system r-build-system) (propagated-inputs - `(("r-delayedarray" ,r-delayedarray) + `(("r-biocparallel" ,r-biocparallel) + ("r-delayedarray" ,r-delayedarray) + ("r-hdf5array" ,r-hdf5array) ("r-iranges" ,r-iranges) ("r-matrix" ,r-matrix) ("r-matrixstats" ,r-matrixstats) @@ -11130,7 +11176,7 @@ droplet sequencing. It has been particularly tailored for Drop-seq.") (define-public sambamba (package (name "sambamba") - (version "0.6.7-10-g223fa20") + (version "0.6.8") (source (origin (method git-fetch) @@ -11140,7 +11186,7 @@ droplet sequencing. It has been particularly tailored for Drop-seq.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1zb9hrxglxqh13ava9wwri30cvf85hjnbn8ccnr8l60a3k5avczn")))) + "0k0cz3qcv98p6cq09zlbgnjsggxcqbcmzxg5zikgcgbr2nfq4lry")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; there is no test target @@ -11151,9 +11197,10 @@ droplet sequencing. It has been particularly tailored for Drop-seq.") (add-after 'unpack 'fix-ldc-version (lambda _ (substitute* "gen_ldc_version_info.py" - (("/usr/bin/env.*") (which "python"))) + (("/usr/bin/env.*") (which "python3"))) (substitute* "Makefile" - (("\\$\\(shell which ldmd2\\)") (which "ldmd2"))) + ;; We use ldc2 instead of ldmd2 to compile sambamba. + (("\\$\\(shell which ldmd2\\)") (which "ldc2"))) #t)) (add-after 'unpack 'place-biod-and-undead (lambda* (#:key inputs #:allow-other-keys) @@ -11165,21 +11212,21 @@ droplet sequencing. It has been particularly tailored for Drop-seq.") (substitute* "Makefile" (("htslib/libhts.a lz4/lib/liblz4.a") "-L-lhts -L-llz4") - ((" htslib-static lz4-static") "")) + ((" lz4-static htslib-static") "")) #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (mkdir-p bin) - (install-file "build/sambamba" bin) + (install-file "bin/sambamba" bin) #t)))))) (native-inputs `(("ldc" ,ldc) ("rdmd" ,rdmd) - ("python" ,python2-minimal) + ("python" ,python-minimal) ("biod" - ,(let ((commit "c778e4f2d8bacea7499283ce39f5577b232732c6")) + ,(let ((commit "4f1a7d2fb7ef3dfe962aa357d672f354ebfbe42e")) (origin (method git-fetch) (uri (git-reference @@ -11190,20 +11237,20 @@ droplet sequencing. It has been particularly tailored for Drop-seq.") "-checkout")) (sha256 (base32 - "1z90562hg47i63gx042wb3ak2vqjg5z7hwgn9bp2pdxfg3nxrw37"))))) + "1k5pdjv1qvi0a3rwd1sfq6zbj37l86i7bf710m4c0y6737lxj426"))))) ("undead" - ,(let ((commit "92803d25c88657e945511f0976a0c79d8da46e89")) + ,(let ((commit "9be93876982b5f14fcca60832563b3cd767dd84d")) (origin (method git-fetch) (uri (git-reference - (url "https://github.com/dlang/undeaD.git") + (url "https://github.com/biod/undeaD.git") (commit commit))) (file-name (string-append "undead-" (string-take commit 9) "-checkout")) (sha256 (base32 - "0vq6n81vzqvgphjw54lz2isc1j8lcxwjdbrhqz1h5gwrvw9w5138"))))))) + "1xfarj0nqlmi5jd1vmcmm7pabzaf9hxyvk6hp0d6jslb5k9r8r3d"))))))) (inputs `(("lz4" ,lz4) ("htslib" ,htslib-for-sambamba))) @@ -11219,16 +11266,16 @@ sort, markdup, and depth.") (define-public ritornello (package (name "ritornello") - (version "1.0.0") + (version "2.0.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/KlugerLab/" - "Ritornello/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/KlugerLab/Ritornello.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "02nik86gq9ljjriv6pamwlmqnfky3ads1fpklx6mc3hx6k40pg38")))) + "1xahvq215qld7x1w8vpa5zbrsj6p9crb9shqa2x89sb0aaxa02jk")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; there are no tests @@ -11237,7 +11284,7 @@ sort, markdup, and depth.") (add-after 'unpack 'patch-samtools-references (lambda* (#:key inputs #:allow-other-keys) (substitute* '("src/SamStream.h" - "src/BufferedGenomeReader.h") + "src/FLD.cpp") (("<sam.h>") "<samtools/sam.h>")) #t)) (delete 'configure) @@ -11463,15 +11510,16 @@ applications for tackling some common problems in a user-friendly way.") (define-public tadbit (package (name "tadbit") - (version "0.2") + (version "0.2.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/3DGenomes/TADbit/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/3DGenomes/TADbit.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1cnfqrl4685zar4nnw94j94nhvl2h29jm448nadqi1h05z6fdk4f")))) + "07g3aj648prmsvxp9caz5yl41k0y0647vxh0f5p3w8376mfiljd0")))) (build-system python-build-system) (arguments `(;; Tests are included and must be run after installation, but @@ -11526,13 +11574,14 @@ models. TADbit is complemented by TADkit for visualizing 3D models.") (version "302.0.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ENCODE-DCC/kentUtils/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/ENCODE-DCC/kentUtils.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "134aja3k1cj32kbk1nnw0q9gxjb2krr15q6sga8qldzvc0585rmm")) + "0n1wbyjpzii2b9qhyp9r1q76j623cggpg3y8fmw78ld3z4y7ivha")) (modules '((guix build utils) (srfi srfi-26) (ice-9 ftw))) @@ -11583,6 +11632,8 @@ models. TADbit is complemented by TADkit for visualizing 3D models.") #:tests? #f #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-permissions + (lambda _ (make-file-writable "src/inc/localEnvironment.mk") #t)) (add-after 'unpack 'fix-paths (lambda _ (substitute* "Makefile" @@ -11878,14 +11929,14 @@ accurate as existing quantification tools.") (name "libgff") (version "1.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/Kingsford-Group/" - "libgff/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Kingsford-Group/libgff.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0vc4nxyhlm6g9vvmx5l4lfs5pnvixsv1hiiy4kddf2y3p6jna8ls")))) + "0n6vfjnq7a2mianipscbshrvbncss8z4zkgkbjw754p9043nfkps")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests included (home-page "https://github.com/Kingsford-Group/libgff") @@ -11930,14 +11981,14 @@ bytes of memory space, where n is the length of the string.") (name "sailfish") (version "0.10.1") (source (origin - (method url-fetch) - (uri - (string-append "https://github.com/kingsfordgroup/" - "sailfish/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/kingsfordgroup/sailfish.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1inn60dxiwsz8g9w7kvfhjxj4bwfb0r12dyhpzzhfbig712dkmm0")) + "1amcc5hqvsl42hg4x19bi9vy47cl874s0lw1fmi0hwsdk9i8c03v")) (modules '((guix build utils))) (snippet '(begin @@ -11974,27 +12025,30 @@ bytes of memory space, where n is the length of the string.") (add-after 'unpack 'do-not-look-for-boost (lambda* (#:key inputs #:allow-other-keys) (substitute* "CMakeLists.txt" - (("find_package\\(Boost 1\\.53\\.0") "#")))) + (("find_package\\(Boost 1\\.53\\.0") "#")) + #t)) (add-after 'unpack 'do-not-assign-to-macro (lambda _ (substitute* "include/spdlog/details/format.cc" - (("const unsigned CHAR_WIDTH = 1;") "")))) + (("const unsigned CHAR_WIDTH = 1;") "")) + #t)) (add-after 'unpack 'prepare-rapmap (lambda* (#:key inputs #:allow-other-keys) (let ((src "external/install/src/rapmap/") (include "external/install/include/rapmap/") (rapmap (assoc-ref inputs "rapmap"))) (mkdir-p "/tmp/rapmap") - (system* "tar" "xf" - (assoc-ref inputs "rapmap") - "-C" "/tmp/rapmap" - "--strip-components=1") + (invoke "tar" "xf" + (assoc-ref inputs "rapmap") + "-C" "/tmp/rapmap" + "--strip-components=1") (mkdir-p src) (mkdir-p include) (for-each (lambda (file) (install-file file src)) (find-files "/tmp/rapmap/src" "\\.(c|cpp)")) - (copy-recursively "/tmp/rapmap/include" include)))) + (copy-recursively "/tmp/rapmap/include" include)) + #t)) (add-after 'unpack 'use-system-libraries (lambda* (#:key inputs #:allow-other-keys) (substitute* '("src/SailfishIndexer.cpp" @@ -12034,7 +12088,8 @@ bytes of memory space, where n is the length of the string.") (string-append (getenv "CPLUS_INCLUDE_PATH") ":" (assoc-ref inputs "eigen") - "/include/eigen3"))))))) + "/include/eigen3")) + #t))))) (inputs `(("boost" ,boost) ("eigen" ,eigen) @@ -12220,11 +12275,13 @@ performance as its primary goal.") (add-after 'unpack 'do-not-look-for-boost (lambda* (#:key inputs #:allow-other-keys) (substitute* "CMakeLists.txt" - (("find_package\\(Boost 1\\.53\\.0") "#")))) + (("find_package\\(Boost 1\\.53\\.0") "#")) + #t)) (add-after 'unpack 'do-not-phone-home (lambda _ (substitute* "src/Salmon.cpp" - (("getVersionMessage\\(\\)") "\"\"")))) + (("getVersionMessage\\(\\)") "\"\"")) + #t)) (add-after 'unpack 'prepare-rapmap (lambda* (#:key inputs #:allow-other-keys) (let ((src "external/install/src/rapmap/") @@ -12241,7 +12298,8 @@ performance as its primary goal.") "external/install/include/rapmap/concurrentqueue.h" "external/install/include/rapmap/FastxParserThreadUtils.hpp" "external/install/src/rapmap/FastxParser.cpp" - "external/install/src/rapmap/xxhash.c"))))) + "external/install/src/rapmap/xxhash.c"))) + #t)) (add-after 'unpack 'use-system-libraries (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/CMakeLists.txt" @@ -12352,8 +12410,7 @@ variational inference.") (propagated-inputs `(("python-h5py" ,python-h5py) ("python-numpy" ,python-numpy) - ("python-scipy" ,python-scipy) - ("python-typing" ,python-typing))) + ("python-scipy" ,python-scipy))) (home-page "https://github.com/linnarsson-lab/loompy") (synopsis "Work with .loom files for single-cell RNA-seq data") (description "The loom file format is an efficient format for very large @@ -12908,7 +12965,7 @@ once. This package provides tools to perform Drop-seq analyses.") (define-public pigx-rnaseq (package (name "pigx-rnaseq") - (version "0.0.4") + (version "0.0.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_rnaseq/" @@ -12916,7 +12973,7 @@ once. This package provides tools to perform Drop-seq analyses.") "/pigx_rnaseq-" version ".tar.gz")) (sha256 (base32 - "16gla23rmziimqan7w494q0nr7vfbp42zzkrl9fracmr4k7b1kzr")))) + "05gn658zpj9xki5dbs728z9zxq1mcm25hkwr5vzwqxsfi15l5f2l")))) (build-system gnu-build-system) (arguments `(#:parallel-tests? #f ; not supported @@ -12932,7 +12989,7 @@ once. This package provides tools to perform Drop-seq analyses.") #t))))) (inputs `(("gzip" ,gzip) - ("snakemake" ,snakemake-4) + ("snakemake" ,snakemake) ("fastqc" ,fastqc) ("multiqc" ,multiqc) ("star" ,star) @@ -13026,7 +13083,7 @@ expression report comparing samples in an easily configurable manner.") ("fastqc" ,fastqc) ("bowtie" ,bowtie) ("idr" ,idr) - ("snakemake" ,snakemake-4) + ("snakemake" ,snakemake) ("samtools" ,samtools) ("bedtools" ,bedtools) ("kentutils" ,kentutils))) @@ -13087,7 +13144,7 @@ in an easily configurable manner.") ("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc) ("python-wrapper" ,python-wrapper) ("python-pyyaml" ,python-pyyaml) - ("snakemake" ,snakemake-4) + ("snakemake" ,snakemake) ("bismark" ,bismark) ("fastqc" ,fastqc) ("bowtie" ,bowtie) @@ -13137,7 +13194,7 @@ methylation and segmentation.") ("ghc-pandoc" ,ghc-pandoc) ("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc) ("samtools" ,samtools) - ("snakemake" ,snakemake-4) + ("snakemake" ,snakemake) ("star" ,star) ("r-minimal" ,r-minimal) ("r-argparser" ,r-argparser) @@ -14086,6 +14143,85 @@ enrichment analysis (GSEA) calculation with or without the absolute filtering. absolute GSEA.") (license license:gpl2))) +(define-public jamm + (package + (name "jamm") + (version "1.0.7.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mahmoudibrahim/JAMM.git") + (commit (string-append "JAMMv" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ls889jcma1ch9h21jjhnkadgszgqj41842hhcjh6cg88f85qf3i")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are none + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "JAMM.sh" + (("^sPath=.*") + (string-append ""))) + #t)) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (libexec (string-append out "/libexec/jamm")) + (bin (string-append out "/bin"))) + (substitute* '("JAMM.sh" + "SignalGenerator.sh") + (("^sPath=.*") + (string-append "sPath=\"" libexec "\"\n"))) + (for-each (lambda (file) + (install-file file libexec)) + (list "bincalculator.r" + "peakfinder.r" + "peakhelper.r" + "signalmaker.r" + "xcorr.r" + "xcorrhelper.r" + ;; Perl scripts + "peakfilter.pl" + "readshifter.pl")) + + (for-each + (lambda (script) + (chmod script #o555) + (install-file script bin) + (wrap-program (string-append bin "/" script) + `("PATH" ":" prefix + (,(string-append (assoc-ref inputs "coreutils") "/bin") + ,(string-append (assoc-ref inputs "gawk") "/bin") + ,(string-append (assoc-ref inputs "perl") "/bin") + ,(string-append (assoc-ref inputs "r-minimal") "/bin"))) + `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB"))) + `("R_LIBS_SITE" ":" prefix (,(getenv "R_LIBS_SITE"))))) + (list "JAMM.sh" "SignalGenerator.sh"))) + #t))))) + (inputs + `(("bash" ,bash) + ("coreutils" ,coreutils) + ("gawk" ,gawk) + ("perl" ,perl) + ("r-minimal" ,r-minimal) + ;;("r-parallel" ,r-parallel) + ("r-signal" ,r-signal) + ("r-mclust" ,r-mclust))) + (home-page "https://github.com/mahmoudibrahim/JAMM") + (synopsis "Peak finder for NGS datasets") + (description + "JAMM is a peak finder for next generation sequencing datasets (ChIP-Seq, +ATAC-Seq, DNase-Seq, etc.) that can integrate replicates and assign peak +boundaries accurately. JAMM is applicable to both broad and narrow +datasets.") + (license license:gpl3+))) + (define-public ngless (package (name "ngless") @@ -14108,9 +14244,30 @@ absolute GSEA.") #:phases (modify-phases %standard-phases (add-after 'unpack 'create-cabal-file - (lambda _ (invoke "hpack") #t))))) + (lambda _ (invoke "hpack") #t)) + ;; These tools are expected to be installed alongside ngless. + (add-after 'install 'link-tools + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) + (symlink (string-append (assoc-ref inputs "prodigal") + "/bin/prodigal") + (string-append bin "ngless-" ,version "-prodigal")) + (symlink (string-append (assoc-ref inputs "minimap2") + "/bin/minimap2") + (string-append bin "ngless-" ,version "-minimap2")) + (symlink (string-append (assoc-ref inputs "samtools") + "/bin/samtools") + (string-append bin "ngless-" ,version "-samtools")) + (symlink (string-append (assoc-ref inputs "bwa") + "/bin/bwa") + (string-append bin "ngless-" ,version "-bwa")) + #t)))))) (inputs - `(("ghc-aeson" ,ghc-aeson) + `(("prodigal" ,prodigal) + ("bwa" ,bwa) + ("samtools" ,samtools) + ("minimap2" ,minimap2) + ("ghc-aeson" ,ghc-aeson) ("ghc-ansi-terminal" ,ghc-ansi-terminal) ("ghc-async" ,ghc-async) ("ghc-atomic-write" ,ghc-atomic-write) @@ -14229,3 +14386,77 @@ both read length (longer is better) and read identity (higher is better) when choosing which reads pass the filter.") (license (list license:gpl3 ;filtlong license:asl2.0))))) ;histogram.py + +(define-public nanopolish + ;; The recommended way to install is to clone the git repository + ;; <https://github.com/jts/nanopolish#installing-a-particular-release>. + ;; Also, the differences between release and current version seem to be + ;; significant. + (let ((commit "50e8b5cc62f9b46f5445f5c5e8c5ab7263ea6d9d") + (revision "1")) + (package + (name "nanopolish") + (version (git-version "0.10.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jts/nanopolish.git") + (commit commit) + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 "09j5gz57yr9i34a27vbl72i4g8syv2zzgmsfyjq02yshmnrvkjs6")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + `("HDF5=noinstall" "EIGEN=noinstall" "HTS=noinstall" "CC=gcc") + #:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'find-eigen + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CPATH" + (string-append (assoc-ref inputs "eigen") + "/include/eigen3")) + #t)) + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (scripts (string-append out "/share/nanopolish/scripts"))) + + (install-file "nanopolish" bin) + (for-each (lambda (file) (install-file file scripts)) + (find-files "scripts" ".*")) + #t))) + (add-after 'install 'wrap-programs + (lambda* (#:key outputs #:allow-other-keys) + (for-each (lambda (file) + (wrap-program file `("PYTHONPATH" ":" prefix (,path)))) + (find-files "/share/nanopolish/scripts" "\\.py")) + (for-each (lambda (file) + (wrap-program file `("PERL5LIB" ":" prefix (,path)))) + (find-files "/share/nanopolish/scripts" "\\.pl")) + #t))))) + (inputs + `(("eigen" ,eigen) + ("hdf5" ,hdf5) + ("htslib" ,htslib) + ("perl" ,perl) + ("python" ,python) + ("python-biopython" ,python-biopython) + ("python-numpy" ,python-numpy) + ("python-pysam" ,python-pysam) + ("python-scikit-learn" , python-scikit-learn) + ("python-scipy" ,python-scipy) + ("zlib" ,zlib))) + (home-page "https://github.com/jts/nanopolish") + (synopsis "Signal-level analysis of Oxford Nanopore sequencing data") + (description + "This package analyses the Oxford Nanopore sequencing data at signal-level. +Nanopolish can calculate an improved consensus sequence for a draft genome +assembly, detect base modifications, call SNPs (Single nucleotide +polymorphisms) and indels with respect to a reference genome and more.") + (license license:expat)))) diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index 59fbd6906b..e834ba3d2a 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -1,13 +1,14 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name> -;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> +;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org> ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> +;;; Copyright © 2018 Nam Nguyen <namn@berkeley.edu> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,6 +43,7 @@ #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages databases) #:use-module (gnu packages file) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) @@ -54,6 +56,7 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages python-crypto) #:use-module (gnu packages qt) #:use-module (gnu packages ssh) #:use-module (gnu packages tls) @@ -214,14 +217,14 @@ Transmission BitTorrent daemon.") (name "transmission-remote-cli") (version "1.7.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/fagga/" - "transmission-remote-cli/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/fagga/transmission-remote-cli.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1y0hkpcjf6jw9xig8yf484hbhy63nip0pkchx401yxj81m25l4z9")))) + "09w9f8vrm61lapin8fmq4rgahr95y3c6wss10g0fgd0kl16f895v")))) (build-system python-build-system) (arguments `(#:python ,python-2 ; only supports Python 2 @@ -338,13 +341,14 @@ downloads, download scheduling, download rate limiting.") (name "mktorrent") (version "1.1") (source (origin - (method url-fetch) - (file-name (string-append name "-" version ".tar.gz")) - (uri (string-append "https://github.com/Rudde/mktorrent/archive/v" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Rudde/mktorrent.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1j9qc4fxa9isnaygqk6jazsiklqywl2wcs95b8dx01963407bx6h")))) + "17pdc5mandl739f8q26n5is8ga56s83aqcrwhlnnplbxwx2inidr")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -371,17 +375,17 @@ and will take advantage of multiple processor cores where possible.") (define-public libtorrent-rasterbar (package (name "libtorrent-rasterbar") - (version "1.1.8") + (version "1.1.11") (source (origin (method url-fetch) (uri (string-append - "https://github.com/arvidn/libtorrent/releases/download/libtorrent-" + "https://github.com/arvidn/libtorrent/releases/download/libtorrent_" (string-join (string-split version #\.) "_") "/libtorrent-rasterbar-" version ".tar.gz")) (sha256 (base32 - "0pcdy26l5ivcs78y2bqh2qca83ikzjfchw5815xh69qf8g88zgvb")))) + "0isqidr11fnhybr0wvk0qxd97jaikmh8fx9h89b84yd2gyxdw8vw")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -393,7 +397,18 @@ and will take advantage of multiple processor cores where possible.") "CXXFLAGS=-std=c++11") ; Use std::chrono instead of boost #:make-flags (list (string-append "LDFLAGS=-Wl,-rpath=" - (assoc-ref %outputs "out") "/lib")))) + (assoc-ref %outputs "out") "/lib")) + #:phases (modify-phases %standard-phases + (add-after 'unpack 'compile-python-c++11 + (lambda _ + ;; Make sure the Python bindings are compiled in C++ mode to + ;; avoid undefined references as mentioned in + ;; <https://github.com/qbittorrent/qBittorrent/issues/638>. + ;; XXX: This can be removed for 1.2+. + (substitute* "bindings/python/setup.py" + (("\\+ target_specific\\(\\)\\,") + "+ target_specific() + ['-std=c++11'],")) + #t))))) (inputs `(("boost" ,boost) ("openssl" ,openssl))) (native-inputs `(("python" ,python-2) @@ -448,3 +463,40 @@ It aims to be a good alternative to all other BitTorrent clients out there. qBittorrent is fast, stable and provides unicode support as well as many features.") (license l:gpl2+))) + +(define-public deluge + (package + (name "deluge") + (version "1.3.15") + (source + (origin + (method url-fetch) + (uri (string-append + "http://download.deluge-torrent.org/source/deluge-" + version ".tar.xz")) + (sha256 + (base32 + "0b7rri4x0wrcj7rjghrnw1kfrsd5i7i6aq85dsg5dg1w1qa0ar59")))) + (build-system python-build-system) + (inputs + `(("libtorrent" ,libtorrent-rasterbar) + ("python2-chardet" ,python2-chardet) + ("python2-pygtk" ,python2-pygtk) + ("python2-pyopenssl" ,python2-pyopenssl) + ("python2-pyxdg" ,python2-pyxdg) + ("python2-service-identity" ,python2-service-identity) + ("python2-twisted" ,python2-twisted))) + (native-inputs + `(("intltool" ,intltool))) + (arguments + `(#:python ,python-2)) + (home-page "https://www.deluge-torrent.org/") + (synopsis "Fully-featured cross-platform BitTorrent client") + (description + "Deluge contains the common features to BitTorrent clients such as +Protocol Encryption, DHT, Local Peer Discovery (LSD), Peer Exchange +(PEX), UPnP, NAT-PMP, Proxy support, Web seeds, global and per-torrent +speed limits. Deluge heavily utilises the libtorrent library. It is +designed to run as both a normal standalone desktop application and as a +client-server.") + (license l:gpl3+))) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index 897987f71c..f9108b3ad6 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -122,6 +122,16 @@ across a broad spectrum of applications.") (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt" "Some components have other similar licences.")))) +;; Some programs need Boost to be built with C++14 support. +(define-public boost-cxx14 + (package (inherit boost) + (arguments + (substitute-keyword-arguments (package-arguments boost) + ((#:make-flags flags) + `(append ,flags + '("cxxflags=-std=c++14"))))) + (properties '((hidden? . #t))))) + (define-public boost-for-mysql ;; Older version for MySQL 5.7.23. (package @@ -182,14 +192,14 @@ Boost.Thread.") (define-public mdds (package (name "mdds") - (version "1.3.1") + (version "1.4.3") (source (origin (method url-fetch) (uri (string-append "http://kohei.us/files/mdds/src/mdds-" version ".tar.bz2")) (sha256 (base32 - "18g511z1lgfxrga2ld9yr95phmyfbd3ymbv4q5g5lyjn4ljcvf6w")))) + "10cw6irdm6d15nxnys2v5akp8yz52qijpcjvw0frwq7nz5d3vki5")))) (build-system gnu-build-system) (propagated-inputs `(("boost" ,boost))) ; inclusion of header files diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 8038c18326..2a595fafab 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -34,6 +34,7 @@ #:use-module (gnu packages bison) #:use-module (gnu packages cdrom) #:use-module (gnu packages check) + #:use-module (gnu packages compression) #:use-module (gnu packages cross-base) #:use-module (gnu packages disk) #:use-module (gnu packages firmware) @@ -316,6 +317,8 @@ menu to select one of the installed operating systems.") (home-page "https://www.syslinux.org") (synopsis "Lightweight Linux bootloader") (description "Syslinux is a lightweight Linux bootloader.") + ;; The Makefile specifically targets i386 and x86_64 using nasm. + (supported-systems '("i686-linux" "x86_64-linux")) (license (list license:gpl2+ license:bsd-3 ; gnu-efi/* license:bsd-4 ; gnu-efi/inc/* gnu-efi/lib/* @@ -361,7 +364,7 @@ tree binary files. These are board description files used by Linux and BSD.") (define u-boot (package (name "u-boot") - (version "2018.09") + (version "2018.11") (source (origin (method url-fetch) (uri (string-append @@ -369,12 +372,13 @@ tree binary files. These are board description files used by Linux and BSD.") "u-boot-" version ".tar.bz2")) (sha256 (base32 - "0s122kyz1svvs2yjzj4j9qravl3ra4vn0fjqgski7rlczqyg56w3")))) + "0znkwljfwwn4y7j20pzz4ilqw8znphrfxns0x1lwdzh3xbr96z3k")))) (native-inputs `(("bc" ,bc) ("bison" ,bison) ("dtc" ,dtc) ("flex" ,flex) + ("lz4" ,lz4) ("openssl" ,openssl) ("python-2" ,python-2) ("python2-coverage" ,python2-coverage) @@ -553,8 +557,8 @@ board-independent tools."))) (define-public u-boot-beagle-bone-black (make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf")) -(define-public u-boot-pine64-plus - (let ((base (make-u-boot-package "pine64_plus" "aarch64-linux-gnu"))) +(define-public (make-u-boot-sunxi64-package board triplet) + (let ((base (make-u-boot-package board triplet))) (package (inherit base) (arguments @@ -572,9 +576,28 @@ board-independent tools."))) ) #t)))))) (native-inputs - `(("firmware" ,arm-trusted-firmware-pine64-plus) + `(("firmware" ,arm-trusted-firmware-sun50i-a64) ,@(package-native-inputs base)))))) +(define-public u-boot-pine64-plus + (make-u-boot-sunxi64-package "pine64_plus" "aarch64-linux-gnu")) + +(define-public u-boot-pinebook + (let ((base (make-u-boot-sunxi64-package "pinebook" "aarch64-linux-gnu"))) + (package + (inherit base) + (source (origin + (inherit (package-source u-boot)) + (patches (search-patches + ;; Add patches to enable Pinebook support from sunxi + ;; maintainer tree: git://git.denx.de/u-boot-sunxi.git + "u-boot-pinebook-a64-update-dts.patch" + "u-boot-pinebook-syscon-node.patch" + "u-boot-pinebook-mmc-calibration.patch" + "u-boot-pinebook-video-bridge.patch" + "u-boot-pinebook-r_i2c-controller.patch" + "u-boot-pinebook-dts.patch"))))))) + (define-public u-boot-bananapi-m2-ultra (make-u-boot-package "Bananapi_M2_Ultra" "arm-linux-gnueabihf")) diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 8fcf128135..a34e7ebff4 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -4,6 +4,8 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org> +;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +31,7 @@ #:use-module (guix build-system cmake) #:use-module (gnu packages) #:use-module (gnu packages compression) + #:use-module (gnu packages lua) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) @@ -39,33 +42,30 @@ (define-public bam (package (name "bam") - (version "0.4.0") + (version "0.5.1") (source (origin - (method url-fetch) - (uri (string-append "http://github.com/downloads/matricks/" - "bam/bam-" version ".tar.bz2")) + ;; do not use auto-generated tarballs + (method git-fetch) + (uri (git-reference + (url "https://github.com/matricks/bam.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0z90wvyd4nfl7mybdrv9dsd4caaikc6fxw801b72gqi1m9q0c0sn")))) + "13br735ig7lygvzyfd15fc2rdygrqm503j6xj5xkrl1r7w2wipq6")))) (build-system gnu-build-system) (arguments - `(#:phases + `(#:make-flags `("CC=gcc" + ,(string-append "INSTALL_PREFIX=" + (assoc-ref %outputs "out"))) + #:test-target "test" + #:phases (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda _ - (zero? (system* "bash" "make_unix.sh")))) - (replace 'check - (lambda _ - (zero? (system* "python" "scripts/test.py")))) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) - (mkdir-p bin) - (install-file "bam" bin) - #t)))))) + (delete 'configure)))) (native-inputs `(("python" ,python-2))) + (inputs + `(("lua" ,lua))) (home-page "https://matricks.github.io/bam/") (synopsis "Fast and flexible build system") (description "Bam is a fast and flexible build system. Bam uses Lua to @@ -98,6 +98,63 @@ it is easy to re-run the compilation with alternate programs. Bear is used to generate such a compilation database.") (license license:gpl3+))) +(define-public gn + (let ((commit "f73698ebb33e26a0bf120e2b55d12528fd1dbe7d") + (revision "1481")) ;as returned by `git describe`, used below + (package + (name "gn") + (version (git-version "0.0" revision commit)) + (home-page "https://gn.googlesource.com/gn") + (source (origin + (method git-fetch) + (uri (git-reference (url home-page) (commit commit))) + (sha256 + (base32 + "078ydwak4424bkqh3hd7q955zxp2c3qlw44lsb29i8jqap140f9d")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ;FIXME: How to run? + #:phases (modify-phases %standard-phases + (add-before 'configure 'set-build-environment + (lambda _ + (setenv "CC" "gcc") (setenv "CXX" "g++") + (setenv "AR" "ar") + #t)) + (replace 'configure + (lambda _ + (invoke "python" "build/gen.py" "--no-sysroot" + "--no-last-commit-position"))) + (add-after 'configure 'create-last-commit-position + (lambda _ + ;; Create "last_commit_position.h" to avoid a dependency + ;; on 'git' (and the checkout..). + (call-with-output-file "out/last_commit_position.h" + (lambda (port) + (format port + "#define LAST_COMMIT_POSITION \"~a (~a)\"\n" + ,revision ,(string-take commit 8)) + #t)))) + (replace 'build + (lambda _ + (invoke "ninja" "-C" "out" "gn" + "-j" (number->string (parallel-job-count))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "out/gn" (string-append out "/bin")) + #t)))))) + (native-inputs + `(("ninja" ,ninja) + ("python" ,python-2))) + (synopsis "Generate Ninja build files") + (description + "GN is a tool that collects information about a project from @file{.gn} +files and generates build instructions for the Ninja build system.") + ;; GN is distributed as BSD-3, but bundles some files from ICU using the + ;; X11 license. + (license (list license:bsd-3 license:x11))))) + (define-public meson (package (name "meson") diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index e6df1d23c7..c5141451f0 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; @@ -160,8 +160,7 @@ standard.") `(#:phases (modify-phases %standard-phases (replace 'check - (lambda _ - (zero? (system* "make" "-C" "cc/cpp" "test"))))))) + (lambda _ (invoke "make" "-C" "cc/cpp" "test") #t))))) (native-inputs `(("bison" ,bison) ("flex" ,flex))) @@ -178,16 +177,53 @@ compiler while still keeping it small, simple, fast and understandable.") (define-public libbytesize (package (name "libbytesize") - (version "1.3") + (version "1.4") (source (origin (method url-fetch) (uri (string-append - "https://github.com/storaged-project/libbytesize/releases/download/1.3/libbytesize-" - version ".tar.gz")) + "https://github.com/storaged-project/libbytesize/releases/" + "download/" version "/libbytesize-" version ".tar.gz")) (sha256 (base32 - "1l7mxm2vq2h6137fyfa46v9r4lydp9dvmsixkd64xr3ylqk1g6fi")))) + "0bbqzln1nhjxl71aydq9k4jg3hvki9lqsb4w10s1i27jgibxqkdv")) + (modules '((guix build utils))) + (snippet + '(begin + ;; This Makefile hard-codes MSGMERGE et al. instead of + ;; honoring what 'configure' detected. Fix that. + (substitute* "po/Makefile.in" + (("^MSGMERGE = msgmerge") + "MSGMERGE = @MSGMERGE@\n")) + #t)))) (build-system gnu-build-system) + (arguments + ;; When running "make", the POT files are built with the build time as + ;; their "POT-Creation-Date". Later on, "make" notices that .pot + ;; files were updated and goes on to run "msgmerge"; as a result, the + ;; non-deterministic POT-Creation-Date finds its way into .po files, + ;; and then in .gmo files. To avoid that, simply make sure 'msgmerge' + ;; never runs. See <https://bugs.debian.org/792687>. + '(#:configure-flags '("ac_cv_path_MSGMERGE=true") + + #:phases (modify-phases %standard-phases + (add-after 'configure 'create-merged-po-files + (lambda _ + ;; Create "merged PO" (.mpo) files so that 'msgmerge' + ;; doesn't need to run. + (for-each (lambda (po-file) + (let ((merged-po + (string-append (dirname po-file) "/" + (basename po-file + ".po") + ".mpo"))) + (copy-file po-file merged-po))) + (find-files "po" "\\.po$")) + #t))) + + ;; One test fails because busctl (systemd only?) and python2-pocketlint + ;; are missing. Should we fix it, we would need the "python-2" , + ;; "python2-polib" and "python2-six" native-inputs. + #:tests? #f)) (native-inputs `(("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config) @@ -195,10 +231,6 @@ compiler while still keeping it small, simple, fast and understandable.") (inputs `(("mpfr" ,mpfr) ("pcre" ,pcre))) - ;; One test fails because busctl (systemd only?) and python2-pocketlint - ;; are missing. Should we fix it, we would need the "python-2" , - ;; "python2-polib" and "python2-six" native-inputs. - (arguments `(#:tests? #f)) (home-page "https://github.com/storaged-project/libbytesize") (synopsis "Tiny C library for working with arbitrary big sizes in bytes") (description diff --git a/gnu/packages/calcurse.scm b/gnu/packages/calcurse.scm index 8ee5d86e3c..22b54d47ac 100644 --- a/gnu/packages/calcurse.scm +++ b/gnu/packages/calcurse.scm @@ -34,7 +34,7 @@ (source (origin (method url-fetch) - (uri (string-append "http://calcurse.org/files/calcurse-" + (uri (string-append "https://calcurse.org/files/calcurse-" version ".tar.gz")) (sha256 (base32 @@ -57,7 +57,7 @@ (setenv "TZDIR" ;for test/ical-007.sh (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))))))) - (home-page "http://www.calcurse.org") + (home-page "https://www.calcurse.org") (synopsis "Text-based calendar and scheduling") (description "Calcurse is a text-based calendar and scheduling application. It helps diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index 24e19b472c..a5c677bd4d 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -128,7 +128,9 @@ data units.") ;; running in a TTY: ;; https://github.com/pimutils/khal/issues/683 "not test_printics_read_from_stdin " - "and not test_import_from_stdin"))))))) + "and not test_import_from_stdin " + ;; https://github.com/pimutils/khal/issues/825 + "and not test_description_and_location_and_categories"))))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-pytest-cov" ,python-pytest-cov) diff --git a/gnu/packages/ccache.scm b/gnu/packages/ccache.scm index af29cee565..0a1112c310 100644 --- a/gnu/packages/ccache.scm +++ b/gnu/packages/ccache.scm @@ -30,7 +30,7 @@ (define-public ccache (package (name "ccache") - (version "3.4.3") + (version "3.5") (source (origin (method url-fetch) @@ -38,9 +38,9 @@ version ".tar.xz")) (sha256 (base32 - "0jjzq5340qw3jm5gkajjkkb5wd0yqqy1dyjw3mf3jy15cakmazi9")))) + "04n0xram2416pv98qrd7pi5lfsk0bjqyz7zgvvia41j5mrr4pm5x")))) (build-system gnu-build-system) - (native-inputs `(("perl" ,perl) ; for test.sh + (native-inputs `(("perl" ,perl) ; for test/run ("which" ,(@ (gnu packages base) which)))) (inputs `(("zlib" ,zlib))) (arguments diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index d8dc9ee6f9..d94636ba4c 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ (define-module (gnu packages cdrom) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module ((guix licenses) #:select (lgpl2.1+ gpl2 gpl2+ gpl3+ cddl1.0)) #:use-module (guix build-system cmake) @@ -291,17 +293,26 @@ images.") `(#:tests? #f ; No tests. #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-glibc-compatability + (lambda* (#:key inputs #:allow-other-keys) + ;; We use sed --in-place because substitute* cannot handle the + ;; character encoding used by growisofs.c. + (invoke "sed" "-i" "-e" + (string-append + "s,<sys/stat.h>," + "<sys/stat.h>\\\n#include <sys/sysmacros.h>,") + "growisofs.c"))) (replace 'configure (lambda _ (setenv "prefix" (assoc-ref %outputs "out")) #t)) (add-before 'build 'embed-mkisofs - (lambda* (#:key inputs #:allow-other-keys) + (lambda* (#:key inputs #:allow-other-keys) ;; We use sed --in-place because substitute* cannot handle the ;; character encoding used by growisofs.c. - (zero? (system* "sed" "-i" "-e" - (string-append - "s,\"mkisofs\"," - "\"" (which "mkisofs") "\",") - "growisofs.c"))))))) + (invoke "sed" "-i" "-e" + (string-append + "s,\"mkisofs\"," + "\"" (which "mkisofs") "\",") + "growisofs.c")))))) (home-page "http://fy.chalmers.se/~appro/linux/DVD+RW/") (synopsis "DVD and Blu-ray Disc burning tools") (description "dvd+rw-tools, mostly known for its command @@ -421,14 +432,14 @@ graphical interface.") (name "libcue") (version "2.2.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/lipnitsk/libcue/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lipnitsk/libcue.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "000j5xqp7cc7njwlixr9byahz9kn8pcfdgm76afwv4p8nbmw6yzj")))) + "1iqw4n01rv2jyk9lksagyxj8ml0kcfwk67n79zy1r6zv1xfp5ywm")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 1ae6355a93..937e4e094c 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -26,7 +26,7 @@ ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com> -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> ;;; ;;; This file is part of GNU Guix. @@ -51,6 +51,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages llvm) #:use-module (gnu packages golang) + #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages time) @@ -250,7 +251,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.") ;; the build environment. Hence assuming-failure test fails. (delete-file "yarn.tests/assuming-failure.script") (delete-file "yarn.tests/assuming-failure.stdout") - (zero? (system* "python" "setup.py" "check"))))))) + (invoke "python" "setup.py" "check")))))) (native-inputs `(("python2-coverage-test-runner" ,python2-coverage-test-runner))) (propagated-inputs @@ -293,13 +294,13 @@ format.") (define-public cppcheck (package (name "cppcheck") - (version "1.84") + (version "1.85") (source (origin (method url-fetch) (uri (string-append "https://github.com/danmar/cppcheck/archive/" version ".tar.gz")) (sha256 - (base32 "1ibz07dgs1dpfb8bmjh3qsma37wl5p6s6b4qlv5ccpshj4yjk9ma")) + (base32 "18qlddf1i9bk5nnvy1v2nfxjd46y8wvp3rqz2hrfxjxsyvrfq5yw")) (file-name (string-append name "-" version ".tar.gz")))) (build-system cmake-build-system) (home-page "http://cppcheck.sourceforge.net") @@ -715,8 +716,8 @@ and many external plugins.") ;; options taken from tox.ini ;; TODO: make "--restructuredtext" tests pass. They currently fail ;; with "Duplicate implicit target name" - (zero? (system* "python" "./setup.py" "check" - "--strict" "--metadata"))))))) + (invoke "python" "./setup.py" "check" + "--strict" "--metadata")))))) (propagated-inputs `(("python-coverage" ,python-coverage) ("python-pytest" ,python-pytest))) @@ -1100,8 +1101,8 @@ python-fixtures package instead.") (modify-phases %standard-phases (replace 'check (lambda _ - (zero? (system* "python" "-m" "testtools.run" - "fixtures.test_suite"))))))) + (invoke "python" "-m" "testtools.run" + "fixtures.test_suite")))))) (propagated-inputs ;; Fixtures uses pbr at runtime to check versions, etc. `(("python-pbr" ,python-pbr) @@ -1341,20 +1342,20 @@ the last py.test invocation.") (define-public python-pytest-localserver (package (name "python-pytest-localserver") - (version "0.4.1") + (version "0.5.0") (source (origin - (method url-fetch) - (uri (pypi-uri "pytest-localserver" version)) - (sha256 - (base32 - "08f06rvj31wqf0vgmd1waya87r7vy6x8ck48lxl3dxy83q5gcam7")))) + (method url-fetch) + (uri (pypi-uri "pytest-localserver" version)) + (sha256 + (base32 + "1hpgpxrpfq5c731ndnsay2lc0y9nh2wy9fn1f83s3z8xkn82fm1s")))) (build-system python-build-system) (arguments - `(#:phases (modify-phases %standard-phases + '(#:phases + (modify-phases %standard-phases (replace 'check (lambda _ - (zero? (system* "py.test" "--genscript=runtests.py")) - (zero? (system* "py.test"))))))) + (invoke "py.test" "-v")))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-requests" ,python-requests) @@ -1425,7 +1426,8 @@ normally the case.") "1rshs1japfmwgar98yrkq4hg4z2q76hlnq7w2n3lfbjnscn1jd9b")))) (build-system python-build-system) (native-inputs - `(("python-flake8" ,python-flake8) + `(;; FIXME: Change to python-flake8 in the next rebuild cycle. + ("python-flake8" ,python-flake8-3.5) ("python-pytest" ,python-pytest-bootstrap))) (propagated-inputs `(("python-attrs" ,python-attrs-bootstrap) @@ -1522,7 +1524,7 @@ failures.") ;; It's easier to run tests after install. ;; Make installed package available for running the tests (add-installed-pythonpath inputs outputs) - (zero? (system* "py.test" "-vv"))))))) + (invoke "py.test" "-vv")))))) (native-inputs `(("python-coverage" ,python-coverage) ("python-pytest" ,python-pytest) @@ -1559,7 +1561,7 @@ failures.") (modify-phases %standard-phases (replace 'check (lambda _ - (zero? (system* "./testrun"))))))) + (invoke "./testrun")))))) (propagated-inputs `(("python2-coverage" ,python2-coverage))) (home-page "https://liw.fi/coverage-test-runner/") @@ -1605,9 +1607,9 @@ statements in the module it tests.") (string-append (getenv "PYTHONPATH") ":" work)) (copy-recursively "." work) (with-directory-excursion "/tmp" - (zero? (system* "python" "-m" "unittest" "discover" - "-s" (string-append work "/pylint/test") - "-p" "*test_*.py"))))))))) + (invoke "python" "-m" "unittest" "discover" + "-s" (string-append work "/pylint/test") + "-p" "*test_*.py")))))))) (home-page "https://github.com/PyCQA/pylint") (synopsis "Python source code analyzer which looks for coding standard errors") @@ -1840,7 +1842,8 @@ tests written in a natural language style, backed up by Python code.") (lambda _ (substitute* "setup.py" (("'wheel'") "") ; We don't use it. - (("'ordereddict==1.1'") ""))))))) ; Python >= 2.7 has it built-in. + (("'ordereddict==1.1'") "")) ; Python >= 2.7 has it built-in. + #t))))) (propagated-inputs `(("behave" ,behave) ("python-requests" ,python-requests))) @@ -2086,3 +2089,42 @@ aspects of UnitTest++. UnitTest++ is mostly standard C++ and makes minimal use of advanced library and language features, which means it should be easily portable to just about any platform.") (license license:expat))) + +(define-public libfaketime + (package + (name "libfaketime") + (version "0.9.7") + (home-page "https://github.com/wolfcw/libfaketime") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (sha256 + (base32 + "1cin1pqwpsswcv7amiwijirvcg3x1zf2l00s1x84nxc5602fzr5c")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (setenv "CC" "gcc") + (setenv "PREFIX" out) + #t))) + (add-before 'check 'pre-check + (lambda _ + (substitute* "test/functests/test_exclude_mono.sh" + (("/bin/bash") (which "bash"))) + #t))) + #:test-target "test")) + (native-inputs + `(("perl" ,perl))) ;for tests + (synopsis "Fake the system time for single applications") + (description + "The libfaketime library allows users to modify the system time that an +application \"sees\". It is meant to be loaded using the dynamic linker's +@code{LD_PRELOAD} environment variable. The @command{faketime} command +provides a simple way to achieve this.") + (license license:gpl2))) diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index 1cac8b9fb4..30d86bd09f 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -186,8 +186,8 @@ their dependencies.") (license l:gpl3+)))) (define-public cuirass - (let ((commit "fe2b73c2353d106431ed0659345391f14ed64600") - (revision "20")) + (let ((commit "0b40dca734468e8b12b3ff58e3e779679f17d38e") + (revision "21")) (package (name "cuirass") (version (string-append "0.0.1-" revision "." (string-take commit 7))) @@ -199,7 +199,7 @@ their dependencies.") (file-name (string-append name "-" version)) (sha256 (base32 - "00ldbig2p14qpwrl2i2hnhb9idgbbf0kqnlh4n79rmz96blm7463")))) + "1kdxs8dzdyldfs4wsz5hb64hprkbrnq5ljdll631f3bj8pbvvvc1")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) diff --git a/gnu/packages/clojure.scm b/gnu/packages/clojure.scm new file mode 100644 index 0000000000..1dba4cef87 --- /dev/null +++ b/gnu/packages/clojure.scm @@ -0,0 +1,293 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> +;;; +;;; 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 clojure) + #:use-module (gnu packages) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system ant) + #:use-module (guix build-system clojure) + #:use-module (ice-9 match)) + +(define-public clojure + (let* ((lib (lambda (prefix version hash) + (origin (method url-fetch) + (uri (string-append "https://github.com/clojure/" + prefix version ".tar.gz")) + (sha256 (base32 hash))))) + ;; The libraries below are needed to run the tests. + (libraries + `(("core-specs-alpha-src" + ,(lib "core.specs.alpha/archive/core.specs.alpha-" + "0.1.24" + "0v2a0svf1ar2y42ajxwsjr7zmm5j7pp2zwrd2jh3k7xzd1p9x1fv")) + ("data-generators-src" + ,(lib "data.generators/archive/data.generators-" + "0.1.2" + "0kki093jp4ckwxzfnw8ylflrfqs8b1i1wi9iapmwcsy328dmgzp1")) + ("spec-alpha-src" + ,(lib "spec.alpha/archive/spec.alpha-" + "0.1.143" + "00alf0347licdn773w2jarpllyrbl52qz4d8mw61anjksacxylzz")) + ("test-check-src" + ,(lib "test.check/archive/test.check-" + "0.9.0" + "0p0mnyhr442bzkz0s4k5ra3i6l5lc7kp6ajaqkkyh4c2k5yck1md")) + ("test-generative-src" + ,(lib "test.generative/archive/test.generative-" + "0.5.2" + "1pjafy1i7yblc7ixmcpfq1lfbyf3jaljvkgrajn70sws9xs7a9f8")) + ("tools-namespace-src" + ,(lib "tools.namespace/archive/tools.namespace-" + "0.2.11" + "10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0")))) + (library-names (match libraries + (((library-name _) ...) + library-name)))) + + (package + (name "clojure") + (version "1.9.0") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/clojure/clojure/archive/clojure-" + version ".tar.gz")) + (sha256 + (base32 "0xjbzcw45z32vsn9pifp7ndysjzqswp5ig0jkjpivigh2ckkdzha")))) + (build-system ant-build-system) + (arguments + `(#:imported-modules ((guix build clojure-utils) + (guix build guile-build-system) + ,@%ant-build-system-modules) + #:modules ((guix build ant-build-system) + (guix build clojure-utils) + (guix build java-utils) + (guix build utils) + (srfi srfi-26)) + #:test-target "test" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-library-sources + (lambda* (#:key inputs #:allow-other-keys) + (define (extract-library name) + (mkdir-p name) + (with-directory-excursion name + (invoke "tar" + "--extract" + "--verbose" + "--file" (assoc-ref inputs name) + "--strip-components=1")) + (copy-recursively (string-append name "/src/main/clojure/") + "src/clj/")) + (for-each extract-library ',library-names) + #t)) + (add-after 'unpack-library-sources 'fix-manifest-classpath + (lambda _ + (substitute* "build.xml" + (("<attribute name=\"Class-Path\" value=\".\"/>") "")) + #t)) + (add-after 'build 'build-javadoc ant-build-javadoc) + (replace 'install (install-jars "./")) + (add-after 'install-license-files 'install-doc + (cut install-doc #:doc-dirs '("doc/clojure/") <...>)) + (add-after 'install-doc 'install-javadoc + (install-javadoc "target/javadoc/"))))) + (native-inputs libraries) + (home-page "https://clojure.org/") + (synopsis "Lisp dialect running on the JVM") + (description "Clojure is a dynamic, general-purpose programming language, +combining the approachability and interactive development of a scripting +language with an efficient and robust infrastructure for multithreaded +programming. Clojure is a compiled language, yet remains completely dynamic +– every feature supported by Clojure is supported at runtime. Clojure +provides easy access to the Java frameworks, with optional type hints and type +inference, to ensure that calls to Java can avoid reflection. + +Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy +and a powerful macro system. Clojure is predominantly a functional programming +language, and features a rich set of immutable, persistent data structures. +When mutable state is needed, Clojure offers a software transactional memory +system and reactive Agent system that ensure clean, correct, multithreaded +designs.") + ;; Clojure is licensed under EPL1.0 + ;; ASM bytecode manipulation library is licensed under BSD-3 + ;; Guava Murmur3 hash implementation is licensed under APL2.0 + ;; src/clj/repl.clj is licensed under CPL1.0 + + ;; See readme.html or readme.txt for details. + (license (list license:epl1.0 + license:bsd-3 + license:asl2.0 + license:cpl1.0))))) + +(define-public clojure-algo-generic + (package + (name "clojure-algo-generic") + (version "0.1.3") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/clojure/algo.generic/archive" + "/algo.generic-" version ".tar.gz")) + (sha256 + (base32 "12w9681i545gp1af4576z1qbixwps1j13c16fmcc7zsb0bd1zr7w")))) + (build-system clojure-build-system) + (arguments + '(#:source-dirs '("src/main/clojure/") + #:test-dirs '("src/test/clojure/") + #:doc-dirs '())) + (synopsis "Generic versions of common functions") + (description + "Generic versions of commonly used functions, implemented as multimethods +that can be implemented for any data type.") + (home-page "https://github.com/clojure/algo.generic") + (license license:epl1.0))) + +(define-public clojure-algo-monads + (package + (name "clojure-algo-monads") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/clojure/algo.monads/archive" + "/algo.monads-" version ".tar.gz")) + (sha256 + (base32 "14gbvfgmrda990h45yn7zag83vp1kdkz4f4yzmyvkr0sjihlgdmq")))) + (build-system clojure-build-system) + (arguments + '(#:source-dirs '("src/main/clojure/") + #:test-dirs '("src/test/clojure/") + #:doc-dirs '())) + (native-inputs + `(("clojure-tools-macro" ,clojure-tools-macro))) + (synopsis + "Monad Macros and Definitions") + (description + "This library contains the most commonly used monads as well as macros for +defining and using monads and useful monadic functions.") + (home-page "https://github.com/clojure/algo.monads") + (license license:epl1.0))) + +(define-public clojure-core-match + (let ((commit "1837ffbd4a150e8f3953b2d9ed5cf4a4ad3720a7") + (revision "1")) ; this is the 1st commit buildable with clojure 1.9 + (package + (name "clojure-core-match") + (version (git-version "0.3.0-alpha5" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/clojure/core.match.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "04bdlp5dgkrqzrz0lw3mfwmygj2218qnm1cz3dkb9wy4m0238s4d")))) + (build-system clojure-build-system) + (arguments + '(#:source-dirs '("src/main/clojure") + #:test-dirs '("src/test/clojure") + #:doc-dirs '())) + (synopsis "Optimized pattern matching for Clojure") + (description + "An optimized pattern matching library for Clojure. +It supports Clojure 1.5.1 and later as well as ClojureScript.") + (home-page "https://github.com/clojure/core.match") + (license license:epl1.0)))) + +(define-public clojure-instaparse + (let ((commit "dcfffad5b065e750f0f5835f017cdd8188b8ca2e") + (version "1.4.9")) ; upstream forget to tag this release + (package + (name "clojure-instaparse") + (version version) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Engelberg/instaparse.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "002mrgin4z3dqy88r1lak7smd0m7x8d22vmliw0m6w6mh5pa17lk")))) + (build-system clojure-build-system) + (arguments + '(#:doc-dirs '("docs/"))) + (synopsis "No grammar left behind") + (description + "Instaparse aims to be the simplest way to build parsers in Clojure. + +@itemize +@item Turns @emph{standard EBNF or ABNF notation} for context-free grammars +into an executable parser that takes a string as an input and produces a parse +tree for that string. + +@item @dfn{No Grammar Left Behind}: Works for @emph{any} context-free grammar, +including @emph{left-recursive}, @emph{right-recursive}, and @emph{ambiguous} +grammars. + +@item Extends the power of context-free grammars with PEG-like syntax for +lookahead and negative lookahead. + +@item Supports both of Clojure's most popular tree formats (hiccup and enlive) +as output targets + +@item Detailed reporting of parse errors. + +@item Optionally produces lazy sequence of all parses (especially useful for +diagnosing and debugging ambiguous grammars). + +@item ``Total parsing'' mode where leftover string is embedded in the parse +tree. + +@item Optional combinator library for building grammars programmatically. + +@item Performant. +@end itemize") + (home-page "https://github.com/Engelberg/instaparse") + (license license:epl1.0)))) + +(define-public clojure-tools-macro + (package + (name "clojure-tools-macro") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/clojure/tools.macro/archive" + "/tools.macro-" version ".tar.gz")) + (sha256 + (base32 "0fs64a0g63xx6g7sj6vrsqknhl90s0isf6k053nw8vv5prfzc7v6")))) + (build-system clojure-build-system) + (arguments + '(#:source-dirs '("src/main/clojure/") + #:test-dirs '("src/test/clojure/") + #:doc-dirs '())) + (synopsis "Utilities for macro writers") + (description "Tools for writing macros.") + (home-page "https://github.com/clojure/tools.macro") + (license license:epl1.0))) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 98a86b763f..86070acdf0 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -211,16 +211,16 @@ COCOMO model or user-provided parameters.") (define-public cloc (package (name "cloc") - (version "1.78") + (version "1.80") (source (origin (method url-fetch) (uri (string-append - "https://github.com/AlDanial/cloc/releases/download/" version + "https://github.com/AlDanial/cloc/releases/download/v" version "/cloc-" version ".tar.gz")) (sha256 (base32 - "1j9lwy9xf43kpv1csqdxzch6y1hnsv881ddqd357f8v58dhr4s68")))) + "0rqxnaskg5b736asyzfda1113zvpkajyqjf49vl9wgzf1r9m6bq8")))) (build-system gnu-build-system) (inputs `(("coreutils" ,coreutils) @@ -231,8 +231,8 @@ COCOMO model or user-provided parameters.") ("perl-regexp-common" ,perl-regexp-common))) (arguments `(#:phases (modify-phases %standard-phases - (delete 'configure) - (delete 'build) + (delete 'configure) ; nothing to configure + (delete 'build) ; nothing to build (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))) @@ -540,18 +540,20 @@ independent targets.") (define-public uncrustify (package (name "uncrustify") - (version "0.67") + (version "0.68.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/uncrustify/uncrustify/archive/" - "uncrustify-" version ".zip")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/uncrustify/uncrustify/") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0n13kq0nsm35fxhdp0f275n4x0w88hdv3bdjy0hgvv42x0dx5zyp")))) + "0gf6vjcfy8pl7idvwsd500ffj9hri62q0n79kpb6cnfprrqpbgf4")))) (build-system cmake-build-system) (native-inputs - `(("unzip" ,unzip))) + `(("unzip" ,unzip) + ("python" ,python-wrapper))) (arguments `(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 44d1fd4bb5..e8a50c676c 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -133,10 +133,7 @@ in compression.") `(#:phases (modify-phases %standard-phases (add-after 'unpack 'enter-source - (lambda _ (chdir "contrib/minizip") #t)) - (add-after 'enter-source 'autoreconf - (lambda _ - (invoke "autoreconf" "-vif")))))) + (lambda _ (chdir "contrib/minizip") #t))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -188,12 +185,7 @@ utility. Instead of being written in Java, FastJar is written in C.") "02cihzl77ia0dcz7z2cga2412vyhhs5pa2355q4wpwbyga2lrwjh")) (patches (search-patches "libtar-CVE-2013-4420.patch")))) (build-system gnu-build-system) - (arguments - `(#:tests? #f ;no "check" target - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ (invoke "sh" "autoreconf" "-vfi")))))) + (arguments `(#:tests? #f)) ; no "check" target (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -363,7 +355,20 @@ decompression.") version ".tar.gz")) (sha256 (base32 - "1sahaqc5bw4i0iyri05syfza4ncf5cml89an033fspn97klmxis6")))) + "1sahaqc5bw4i0iyri05syfza4ncf5cml89an033fspn97klmxis6")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* (find-files "lib" "\\.c$") + (("#if defined _IO_ftrylockfile") + "#if defined _IO_EOF_SEEN")) + (substitute* "lib/stdio-impl.h" + (("^/\\* BSD stdio derived implementations") + (string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n" + "# define _IO_IN_BACKUP 0x100\n" + "#endif\n\n" + "/* BSD stdio derived implementations"))) + #t)))) (build-system gnu-build-system) (synopsis "Parallel bzip2 compression utility") (description @@ -585,22 +590,19 @@ decompressors when faced with corrupted input.") (sha256 (base32 "16isapn8f39lnffc3dp4dan05b7x6mnc76v6q5nn8ysxvvvwy19b")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Adjust the bundled gnulib to work with glibc 2.28. See e.g. - ;; "m4-gnulib-libio.patch". This is a phase rather than patch - ;; or snippet to work around <https://bugs.gnu.org/32347>. - (substitute* (find-files "lib" "\\.c$") - (("#if defined _IO_ftrylockfile") - "#if defined _IO_EOF_SEEN")) - (substitute* "lib/stdio-impl.h" - (("^/\\* BSD stdio derived implementations") - (string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n" - "# define _IO_IN_BACKUP 0x100\n" - "#endif\n\n" - "/* BSD stdio derived implementations"))) - #t)))) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* (find-files "lib" "\\.c$") + (("#if defined _IO_ftrylockfile") + "#if defined _IO_EOF_SEEN")) + (substitute* "lib/stdio-impl.h" + (("^/\\* BSD stdio derived implementations") + (string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n" + "# define _IO_IN_BACKUP 0x100\n" + "#endif\n\n" + "/* BSD stdio derived implementations"))) + #t)))) (build-system gnu-build-system) (inputs `(("which" ,which))) @@ -694,13 +696,13 @@ sfArk file format to the uncompressed sf2 format.") (package (name "libmspack") (home-page "https://cabextract.org.uk/libmspack/") - (version "0.7.1") + (version "0.9.1") (source (origin (method url-fetch) (uri (string-append home-page name "-" version "alpha.tar.gz")) (sha256 - (base32 "0zn4vwzk5ankgd0l88cipan19pzbzv0sm3fba17lvqwka3dp1acp")))) + (base32 "0h1f5w8rjnq7dcqpqm1mpx5m8q80691kid6f7npqlqwqqzckd8v2")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-static"))) @@ -758,7 +760,8 @@ INCLUDE = ~a/include LIB = ~:*~a/lib OLD_ZLIB = False GZIP_OS_CODE = AUTO_DETECT" - (assoc-ref inputs "zlib"))))))))) + (assoc-ref inputs "zlib")))) + #t))))) (home-page "https://metacpan.org/release/Compress-Raw-Zlib") (synopsis "Low-level interface to zlib compression library") (description "This module provides a Perl interface to the zlib @@ -1082,13 +1085,13 @@ smaller than those produced by @code{Xdelta}.") (package (name "cabextract") (home-page "https://cabextract.org.uk/") - (version "1.7") + (version "1.9") (source (origin (method url-fetch) (uri (string-append home-page name "-" version ".tar.gz")) (sha256 (base32 - "1g86wmb8lkjiv2jarfz979ngbgg7d3si8x5il4g801604v406wi9")) + "1hf4zhjxfdgq9x172r5zfdnafma9q0zf7372syn8hcn7hcypkg0v")) (modules '((guix build utils))) (snippet '(begin @@ -1096,11 +1099,27 @@ smaller than those produced by @code{Xdelta}.") (delete-file-recursively "mspack") #t)))) (build-system gnu-build-system) - (arguments '(#:configure-flags '("--with-external-libmspack"))) + (arguments + '(#:configure-flags '("--with-external-libmspack") + #:phases + (modify-phases %standard-phases + ;; cabextract needs some of libmspack's header files. + ;; These are located in the "mspack" directory of libmspack. + (add-before 'build 'unpack-libmspack + (lambda* (#:key inputs #:allow-other-keys) + (let ((dir-name "libmspack-src")) + (mkdir dir-name) + (invoke "tar" "-xvf" (assoc-ref inputs "libmspack-source") + "-C" dir-name "--strip-components" "1") + (rename-file (string-append dir-name "/mspack") + "mspack") + (delete-file-recursively dir-name) + #t)))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("libmspack" ,libmspack))) + `(("libmspack" ,libmspack) + ("libmspack-source" ,(package-source libmspack)))) (synopsis "Tool to unpack Cabinet archives") (description "Extracts files out of Microsoft Cabinet (.cab) archives") ;; Some source files specify gpl2+, lgpl2+, however COPYING is gpl3. @@ -1112,13 +1131,14 @@ smaller than those produced by @code{Xdelta}.") (version "3.1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/jmacd/xdelta/archive/v" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/jmacd/xdelta.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "17g2pbbqy6h20qgdjq7ykib7kg5ajh8fwbsfgyjqg8pwg19wy5bm")) - (file-name (string-append name "-" version ".tar.gz")) + "09mmsalc7dwlvgrda56s2k927rpl3a5dzfa88aslkqcjnr790wjy")) (snippet ;; This file isn't freely distributable and has no effect on building. '(begin @@ -1132,9 +1152,7 @@ smaller than those produced by @code{Xdelta}.") `(#:phases (modify-phases %standard-phases (add-after 'unpack 'enter-build-directory - (lambda _ (chdir "xdelta3") #t)) - (add-after 'enter-build-directory 'autoconf - (lambda _ (invoke "autoreconf" "-vfi")))))) + (lambda _ (chdir "xdelta3") #t))))) (home-page "http://xdelta.org") (synopsis "Delta encoder for binary files") (description "xdelta encodes only the differences between two binary files @@ -1184,16 +1202,30 @@ well as bzip2.") (define-public bitshuffle (package (name "bitshuffle") - (version "0.3.4") + (version "0.3.5") (source (origin (method url-fetch) (uri (pypi-uri "bitshuffle" version)) (sha256 (base32 - "0ydawb01ghsvmw0lraczhrgvkjj97bpg98f1qqs1cnfp953mdd5v")))) + "1823x61kyax4dc2hjmc1xraskxi1193y8lvxd03vqv029jrj8cjy")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove generated Cython files. + (delete-file "bitshuffle/h5.c") + (delete-file "bitshuffle/ext.c") + #t)))) (build-system python-build-system) (arguments - `(#:tests? #f)) ; fail: https://github.com/h5py/h5py/issues/769 + `(#:tests? #f ; fail: https://github.com/h5py/h5py/issues/769 + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'dont-build-native + (lambda _ + (substitute* "setup.py" + (("'-march=native', ") "")) + #t))))) (inputs `(("numpy" ,python-numpy) ("h5py" ,python-h5py) @@ -1329,7 +1361,8 @@ install: libbitshuffle.so (add-after 'build-jni 'copy-jni (lambda _ (copy-recursively "src/main/resources/org/xerial/snappy/native" - "build/classes/org/xerial/snappy/native"))) + "build/classes/org/xerial/snappy/native") + #t)) (add-before 'check 'fix-failing (lambda _ (with-directory-excursion "src/test/java/org/xerial/snappy" @@ -1447,7 +1480,8 @@ compressor/decompressor.") class)) (invoke "ant" "compile-tests") (test "org.iq80.snappy.SnappyFramedStreamTest") - (test "org.iq80.snappy.SnappyStreamTest"))) + (test "org.iq80.snappy.SnappyStreamTest") + #t)) (add-before 'build 'remove-hadoop-dependency (lambda _ ;; We don't have hadoop @@ -1752,14 +1786,14 @@ or junctions, and always follows hard links.") (define-public zstd (package (name "zstd") - (version "1.3.6") + (version "1.3.7") (source (origin (method url-fetch) (uri (string-append "https://github.com/facebook/zstd/releases/download/" "v" version "/zstd-" version ".tar.gz")) (sha256 - (base32 "1525b31jmbiczjj1n58nckdzky4cdnbwcsil3zgy4cx03v0a0cp8")))) + (base32 "0gapsdzqfsfqqddzv22592iwa0008xjyi15f06pfv9hcvwvg4xrj")))) (build-system gnu-build-system) (arguments `(#:phases @@ -1802,7 +1836,7 @@ speed.") `(#:phases (modify-phases %standard-phases (add-after 'unpack 'enter-subdirectory - (lambda _ (chdir "contrib/pzstd"))) + (lambda _ (chdir "contrib/pzstd") #t)) (delete 'configure) ; no configure script (add-before 'check 'compile-tests (lambda* (#:key make-flags #:allow-other-keys) @@ -2084,14 +2118,16 @@ type by using either Perl modules, or command-line tools on your system.") (lambda _ ;; Our build system enters the first directory in the archive, but ;; the package is not contained in a subdirectory - (chdir ".."))) + (chdir "..") + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) ;; Do we want to install *Demo.jar? (install-file "build/jar/xz.jar" (string-append (assoc-ref outputs "out") - "/share/java/xz.jar"))))))) + "/share/java/xz.jar")) + #t))))) (native-inputs `(("unzip" ,unzip))) (home-page "https://tukaani.org") @@ -2227,7 +2263,7 @@ single-member files which can't be decompressed in parallel.") (build-system cmake-build-system) (arguments `(#:tests? #f)) ;; No tests available. - (inputs `(("boost" ,boost) + (inputs `(("boost" ,boost-cxx14) ("libiconv" ,libiconv) ("xz" ,xz))) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index efcc2dccb5..423bb5b54f 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018 Charlie Ritter <chewzeirta@posteo.net> ;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net> ;;; Copyright © 2018 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de> +;;; Copyright © 2018 Laura Lazzati <laura.lazzati.15@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,10 +32,15 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system r) + #:use-module (gnu packages base) #:use-module (gnu packages compression) + #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) + #:use-module (gnu packages gl) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) + #:use-module (gnu packages haskell) + #:use-module (gnu packages image) #:use-module (gnu packages machine-learning) #:use-module (gnu packages maths) #:use-module (gnu packages mpi) @@ -43,7 +49,8 @@ #:use-module (gnu packages python) #:use-module (gnu packages statistics) #:use-module (gnu packages tls) - #:use-module (gnu packages web)) + #:use-module (gnu packages web) + #:use-module (gnu packages xorg)) (define-public r-clipr (package @@ -164,19 +171,19 @@ package is a port of the Python package @code{cssselect}.") (define-public r-reprex (package (name "r-reprex") - (version "0.2.0") + (version "0.2.1") (source (origin (method url-fetch) (uri (cran-uri "reprex" version)) (sha256 (base32 - "1l44pxjiz3g0jkk3v6rg5jps3llihfiah0qyv40s0bxvxa6gm8v9")))) + "1ws5gds453xgfili87r35rz1wn2i7jbqissq98csbiddpkgls8sx")))) (build-system r-build-system) (propagated-inputs `(("r-callr" ,r-callr) ("r-clipr" ,r-clipr) - ("r-knitr" ,r-knitr) + ("r-fs" ,r-fs) ("r-rlang" ,r-rlang) ("r-rmarkdown" ,r-rmarkdown) ("r-whisker" ,r-whisker) @@ -318,14 +325,14 @@ component analysis (with robust methods, and parallelized functions).") (define-public r-ape (package (name "r-ape") - (version "5.1") + (version "5.2") (source (origin (method url-fetch) (uri (cran-uri "ape" version)) (sha256 (base32 - "0vm2065993wf4hdqarxqykhfz9aaj0rrb98alhkq4qw1d2kdrmdp")))) + "05b4yka5cirdgxd4d7iiaqvr428pk3j6n9q6dvg5j38kdj2h5sr7")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice) @@ -490,13 +497,13 @@ print, summary, plot, update, etc. (define-public r-ps (package (name "r-ps") - (version "1.1.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (cran-uri "ps" version)) (sha256 - (base32 "1zm9qkyvy1fvcjvmgw51iqw8x1xzkpy7rx7xnchwfj0xpzal0ljx")))) + (base32 "1zxylcb0nr4qb5v6j199mc2pfgf2bpf00jrw47jajmv59qb0fwmx")))) (build-system r-build-system) (home-page "http://ps.r-lib.org") (synopsis "List, query, and manipulate system processes") @@ -508,19 +515,21 @@ processes. Most of its code is based on the @code{psutil} Python package.") (define-public r-pkgbuild (package (name "r-pkgbuild") - (version "1.0.0") + (version "1.0.2") (source (origin (method url-fetch) (uri (cran-uri "pkgbuild" version)) (sha256 (base32 - "10iz8057mixl9j73pq2cbp4ib6dadfsgi3fcsjjm7l3wwb9issd9")))) + "1i1rrax7x7r2bplig5cfc50lx85jc4n9a3qmvbdviaj22wr2lghs")))) (build-system r-build-system) (propagated-inputs `(("r-callr" ,r-callr) + ("r-cli" ,r-cli) ("r-crayon" ,r-crayon) ("r-desc" ,r-desc) + ("r-prettyunits" ,r-prettyunits) ("r-r6" ,r-r6) ("r-rprojroot" ,r-rprojroot) ("r-withr" ,r-withr))) @@ -535,14 +544,14 @@ is configured appropriately so R can use them.") (define-public r-pkgload (package (name "r-pkgload") - (version "1.0.0") + (version "1.0.2") (source (origin (method url-fetch) (uri (cran-uri "pkgload" version)) (sha256 (base32 - "1rjj229nq9fsl4ki4m75ybsavjgpqqhsr1zjzapwicsrxv6212px")))) + "0z7jvharafahi2gv5547mk1n499isjzw06kfwymmxc0gd575d1ii")))) (build-system r-build-system) (propagated-inputs `(("r-desc" ,r-desc) @@ -562,14 +571,16 @@ you to rapidly iterate while developing a package.") (define-public r-rcpp (package (name "r-rcpp") - (version "0.12.18") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "Rcpp" version)) (sha256 - (base32 "006kpg2ph109rh1l13lqk26pp4as4fvl5661vrcczjygacgd1v7w")))) + (base32 "1hlbw4k79q9ich4w27b01gsvwrsnrflii8zjlcmgfzm1vpq8ndxp")))) (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) ; for vignettes (home-page "http://www.rcpp.org") (synopsis "Seamless R and C++ integration") (description @@ -788,14 +799,14 @@ rows, dropping names) to see if the modified versions are identical.") (define-public r-dendextend (package (name "r-dendextend") - (version "1.8.0") + (version "1.9.0") (source (origin (method url-fetch) (uri (cran-uri "dendextend" version)) (sha256 (base32 - "1virn3c232xwcq3d0hhkgjh5gpzl01s39iwii5gxcm9mnsxjzdrh")))) + "1jiani6zwfajky2vafvay2hq158nh99rdrk3j00lycspds9v35fd")))) (build-system r-build-system) (propagated-inputs `(("r-fpc" ,r-fpc) @@ -887,14 +898,14 @@ in main memory.") (define-public r-ffbase (package (name "r-ffbase") - (version "0.12.3") + (version "0.12.7") (source (origin (method url-fetch) (uri (cran-uri "ffbase" version)) (sha256 (base32 - "1nz97bndxxkzp8rq6va8ff5ky9vkaib1jybm6j852awwb3n9had5")))) + "04kxx2f3f0743c5nvpb7x1x0pcd220dazpd5ag1pidxbz3xa85nw")))) (build-system r-build-system) (propagated-inputs `(("r-bit" ,r-bit) @@ -932,14 +943,14 @@ quantities.") (define-public r-reshape (package (name "r-reshape") - (version "0.8.7") + (version "0.8.8") (source (origin (method url-fetch) (uri (cran-uri "reshape" version)) (sha256 (base32 - "14ir3w4bb3bsz8jsak27nj7kpn227pdgr9653gjq5wc93rywi9ig")))) + "0s6i0sqxg1vldxs6miv8mi0zydxbqzgpmzfiwkj8y7jix3yrfmad")))) (build-system r-build-system) (propagated-inputs `(("r-plyr" ,r-plyr) @@ -1346,17 +1357,18 @@ functions from LINPACK.") (define-public r-fitdistrplus (package (name "r-fitdistrplus") - (version "1.0-9") + (version "1.0-11") (source (origin (method url-fetch) (uri (cran-uri "fitdistrplus" version)) (sha256 (base32 - "18x9454g598d54763k3hvi33iszifk7sxvhd1zg5r8z1vpixx3z6")))) + "12hckg3y5j3zh9q1gwxkc27q813p2r42iqp7wdfiq6nj55jrh6w6")))) (build-system r-build-system) (propagated-inputs `(("r-mass" ,r-mass) + ("r-npsurv" ,r-npsurv) ("r-survival" ,r-survival))) (home-page "http://riskassessment.r-forge.r-project.org") (synopsis "Fitting a parametric distribution from data") @@ -1581,14 +1593,14 @@ the Kaplan-Meier and Aalen-Johansen methods.") (define-public r-dimred (package (name "r-dimred") - (version "0.1.0") + (version "0.2.2") (source (origin (method url-fetch) (uri (cran-uri "dimRed" version)) (sha256 (base32 - "0fasca5fsbrxdwv30hch7vb9snb844l7l8p5fjf239dq45xfy37v")))) + "0ssy2qriiy6zdawriqcbl67qiq68ipml3frq7aqlq70r2fqyyw48")))) (properties `((upstream-name . "dimRed"))) (build-system r-build-system) (propagated-inputs `(("r-drr" ,r-drr))) @@ -1624,14 +1636,14 @@ calendar objects.") (define-public r-magic (package (name "r-magic") - (version "1.5-8") + (version "1.5-9") (source (origin (method url-fetch) (uri (cran-uri "magic" version)) (sha256 (base32 - "083cgpp3v03li0h8597b3g21pd9lkbmn9pyssblnhc800mpc52vz")))) + "0snmdh6vk0p6ar1swsihisinxrx7l8371dri5lk0z24ysgr5w7gs")))) (build-system r-build-system) (propagated-inputs `(("r-abind" ,r-abind))) @@ -1757,14 +1769,14 @@ provided.") (define-public r-ipred (package (name "r-ipred") - (version "0.9-7") + (version "0.9-8") (source (origin (method url-fetch) (uri (cran-uri "ipred" version)) (sha256 (base32 - "0q53cqs46501wsd4cmfsmr78l8nv1hkbamk9m0ns5qy02df5r254")))) + "01xcg3c121ndfpz9dirqxszknh4yb1p222p7f1wbwwhdrg1i27cw")))) (build-system r-build-system) (propagated-inputs `(("r-class" ,r-class) @@ -1784,14 +1796,14 @@ problems as well as resampling based estimators of prediction error.") (define-public r-psych (package (name "r-psych") - (version "1.8.4") + (version "1.8.10") (source (origin (method url-fetch) (uri (cran-uri "psych" version)) (sha256 (base32 - "1kzv9nc7rwn1sj1zxd8xrbs6c7qlka7j2c8lsr4f20znkd3qx8gf")))) + "0n3frgzsfmnan6cp3yyq5h6c28v5pd7q5a42pp6byaa7n7d1v478")))) (build-system r-build-system) (propagated-inputs `(("r-foreign" ,r-foreign) @@ -1852,14 +1864,14 @@ provides a one-row summary of model-level statistics.") (define-public r-recipes (package (name "r-recipes") - (version "0.1.3") + (version "0.1.4") (source (origin (method url-fetch) (uri (cran-uri "recipes" version)) (sha256 (base32 - "1vqh3pxs4n1azhnd1lzg91vasya6g323kllhbrw177j7kdxqyimy")))) + "0bwijw4427v2k5z3qci2kyr5dyzql8b3lvf88rwy16p741jckjsn")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -2037,17 +2049,18 @@ Laplace approximation and adaptive Gauss-Hermite quadrature.") (define-public r-jomo (package (name "r-jomo") - (version "2.6-4") + (version "2.6-5") (source (origin (method url-fetch) (uri (cran-uri "jomo" version)) (sha256 (base32 - "05g2rj9g7rgyb22b0gybw042nydyqsqsb31v05hifzavri8ij01x")))) + "109q5m69clrvvialxdxznd0wdb54ajhx84nj8slx8bf909a427mj")))) (build-system r-build-system) (propagated-inputs `(("r-lme4" ,r-lme4) + ("r-mass" ,r-mass) ("r-ordinal" ,r-ordinal) ("r-survival" ,r-survival))) (home-page "https://cran.r-project.org/web/packages/jomo/") @@ -2224,14 +2237,14 @@ acceptance regions, log-ratio plots and Q-Q plots.") (define-public r-sm (package (name "r-sm") - (version "2.2-5.5") + (version "2.2-5.6") (source (origin (method url-fetch) (uri (cran-uri "sm" version)) (sha256 (base32 - "1rw2mxygxsmk8mn4wag1ppjgzk0rlvh6zd8q02qrhjrn9jhi5qj3")))) + "0c4whcx879gb4lwvqnzxl5n9xgpcqh2c54ip9ami3mwfprzcv45q")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (home-page "http://www.stats.gla.ac.uk/~adrian/sm/") @@ -2314,14 +2327,14 @@ training models for classification or ranking.") (define-public r-xts (package (name "r-xts") - (version "0.11-0") + (version "0.11-2") (source (origin (method url-fetch) (uri (cran-uri "xts" version)) (sha256 (base32 - "1v50yn4bsjzdyk7r90isn6dxmpkapillrhpx3gqsshd180vwzqk9")))) + "1f0kxrvn13py3hk2gh2m56cqm39x3bqp1i350r5viddacrm2yxqj")))) (build-system r-build-system) (propagated-inputs `(("r-zoo" ,r-zoo))) (home-page "https://github.com/joshuaulrich/xts") @@ -2499,14 +2512,14 @@ plotting. a three dimensional point cloud.") (define-public r-ggridges (package (name "r-ggridges") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) (uri (cran-uri "ggridges" version)) (sha256 (base32 - "1znvsbl3px8dddpjgdrygnpz4s685wizi0jnjvx2hrz58i0chjqj")))) + "0dhwcpy785ac2ny5bjp284595nnybi3554wd0yffsli0vzf7ry01")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -2546,14 +2559,14 @@ plots in @code{ggplot2}.") (define-public r-cli (package (name "r-cli") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (cran-uri "cli" version)) (sha256 (base32 - "07as3dr7vwx02p3qgzlmxz1dlrd3x3lysrzp222ip9jcjpydp8wg")))) + "1r2yih4c0bdmbx0qrarlf0m1p5z30sri755zmdazsq2pw76zp07g")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -2701,20 +2714,19 @@ of merit, ordering functions, and enhanced versions of @code{pairs} and (define-public r-webshot (package (name "r-webshot") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) (uri (cran-uri "webshot" version)) (sha256 (base32 - "07r71zzmggp4jf92x4ws4wg6v1x98vaj01lsar85bnb30n5vx8gh")))) + "08sb1xi376pfy1vwilk2d68zljsg9yiv04n2dkqz383gdhh0sxdr")))) (build-system r-build-system) (propagated-inputs - `(("r-jsonlite" ,r-jsonlite) - ("r-magrittr" ,r-magrittr) - ("r-processx" ,r-processx) - ("r-withr" ,r-withr))) + `(("r-callr" ,r-callr) + ("r-jsonlite" ,r-jsonlite) + ("r-magrittr" ,r-magrittr))) (home-page "https://github.com/wch/webshot/") (synopsis "Take screenshots of web pages") (description @@ -2761,14 +2773,14 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.3") + (version "0.4") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 (base32 - "1r11dd49ngmjgbjdv28a9c1jp8cg1l50x0acbsamzz576p8i2wl9")))) + "0991ywgc2dsraba91kkj37akhfzhzn02cnz7c88hhdis9kag3pwv")))) (build-system r-build-system) (home-page "https://github.com/yihui/xfun") (synopsis "Miscellaneous functions") @@ -2845,14 +2857,14 @@ terminals.") (define-public r-tinytex (package (name "r-tinytex") - (version "0.8") + (version "0.9") (source (origin (method url-fetch) (uri (cran-uri "tinytex" version)) (sha256 (base32 - "1bgpr5i5399jf9n6pg2mm4aamisbhppg082ad0wv1j4g0rlxf1gy")))) + "08w5hyq3ysh631d5whgcfv1bb007cdc0bjhb83vwmhazs6rgvyjy")))) (build-system r-build-system) (propagated-inputs `(("r-xfun" ,r-xfun))) @@ -2960,14 +2972,14 @@ generation, and 2D/3D network visualization.") (define-public r-ttr (package (name "r-ttr") - (version "0.23-3") + (version "0.23-4") (source (origin (method url-fetch) (uri (cran-uri "TTR" version)) (sha256 (base32 - "07r62ngyzjl4aszdxnr3n6bnbcgcap32yhd430jsilicg8n06di1")))) + "18mzyv6cmxmqyqsfwlx2b2k055887mfgc2jgj8xkn8c6m56n05zb")))) (properties `((upstream-name . "TTR"))) (build-system r-build-system) (propagated-inputs @@ -3067,6 +3079,26 @@ Analysis for Physical Applications, Donald B. Percival and Andrew T. Walden, Cambridge University Press, 1993.") (license license:gpl2))) +(define-public r-aggregation + (package + (name "r-aggregation") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "aggregation" version)) + (sha256 + (base32 + "0j9g604m2ccc7hcy02539yja9cf3xcbl25gvp838bp4x8w18my46")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/aggregation/") + (synopsis "Methods for p-value aggregation") + (description + "This package contains functionality for performing the following methods +of p-value aggregation: Fisher's method, the Lancaster method (weighted +Fisher's method), and Sidak correction.") + (license license:gpl3))) + (define-public r-quantmod (package (name "r-quantmod") @@ -3168,14 +3200,14 @@ Cryer and Kung-Sik Chan.") (define-public r-extradistr (package (name "r-extradistr") - (version "1.8.9") + (version "1.8.10") (source (origin (method url-fetch) (uri (cran-uri "extraDistr" version)) (sha256 (base32 - "1fg8vjpal33y51iqzglk1yvy46d7js0l0wfbdy698lq8a06hq19p")))) + "00lvqp5bb3iak5myiz4rqm887bkq9sdh7aybmz84mmfni6q01m28")))) (properties `((upstream-name . "extraDistr"))) (build-system r-build-system) (propagated-inputs @@ -3238,14 +3270,14 @@ applied econometric analysis.") (define-public r-cubature (package (name "r-cubature") - (version "1.4") + (version "1.4-1") (source (origin (method url-fetch) (uri (cran-uri "cubature" version)) (sha256 (base32 - "1hd23b8v2kpqp5gr0va8p2q7j8w9rik6ks7zrr4b8mb2mwrakk74")))) + "10jl5l3xnigiq95829ssq69xbim97k851187dghc30awszcx4clh")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) @@ -3294,14 +3326,14 @@ sample Robust Rank-Order Distributional Test.") (define-public r-expm (package (name "r-expm") - (version "0.999-2") + (version "0.999-3") (source (origin (method url-fetch) (uri (cran-uri "expm" version)) (sha256 (base32 - "1mihl67kvv1xv0figp25jkmwfn4iwkcx15cng2348y8gm6zybw9q")))) + "04k4a6g071jkjc0d30ncmf713dj16brcs9m6pj43hnycc1caq6si")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix))) (native-inputs `(("gfortran" ,gfortran))) @@ -3359,14 +3391,14 @@ creation and manipulation of WAVE audio files.") (define-public r-np (package (name "r-np") - (version "0.60-8") + (version "0.60-9") (source (origin (method url-fetch) (uri (cran-uri "np" version)) (sha256 (base32 - "17h67a510wh83800ri6g02wvznrlhigxni8shyijz1iaxcpk8k4j")))) + "1z4jcpx8bbgwslv42wrphfd1qfq965qjn0kmfxm5f6hbbycahcgy")))) (build-system r-build-system) (propagated-inputs `(("r-boot" ,r-boot) @@ -3448,6 +3480,36 @@ dendrograms.") ;; Either version of the license. (license (list license:gpl2 license:gpl3)))) +(define-public r-h5 + (package + (name "r-h5") + (version "0.9.9") + (source + (origin + (method url-fetch) + (uri (cran-uri "h5" version)) + (sha256 + (base32 + "14p7i1sj24ky87kd7qr3n9fc9l64s0bp0rwbyl6i2x69xn75gpsx")))) + (build-system r-build-system) + (inputs + `(("zlib" ,zlib) + ("hdf5" ,hdf5))) + (native-inputs + `(("which" ,which))) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/mannau/h5") + (synopsis "Interface to the HDF5 Library") + (description + "This package provides an S4 interface to the HDF5 library supporting +fast storage and retrieval of R-objects like vectors, matrices and arrays to +binary files in a language independent format. The HDF5 format can therefore +be used as an alternative to R's save/load mechanism. Since h5 is able to +access only subsets of stored data it can also handle data sets which do not +fit into memory.") + (license license:bsd-2))) + (define-public r-cgdsr (package (name "r-cgdsr") @@ -3498,14 +3560,14 @@ files.") (define-public r-shinyace (package (name "r-shinyace") - (version "0.3.1") + (version "0.3.2") (source (origin (method url-fetch) (uri (cran-uri "shinyAce" version)) (sha256 (base32 - "1hqgszbiv99dibhwr21v21ll4s2hjn3ccqdicsm0z3gk77bh8iyb")))) + "1fbk5i6w6cpam8s3acf4bgdp8hajn4digjjix3i6i4q3p2rvn6zx")))) (properties `((upstream-name . "shinyAce"))) (build-system r-build-system) (propagated-inputs @@ -3521,14 +3583,14 @@ environment within Shiny.") (define-public r-radiant-data (package (name "r-radiant-data") - (version "0.9.5") + (version "0.9.7") (source (origin (method url-fetch) (uri (cran-uri "radiant.data" version)) (sha256 (base32 - "0mbxfqn79nphii4hb6kxl2wc0w0ra16y378rp2yw9a9926zdb7mb")) + "1f98ahki0kyb27gl55a859zb0lsvk9gddd9f54y767xfs6h89cgk")) (modules '((guix build utils))) (snippet '(begin @@ -3562,7 +3624,9 @@ environment within Shiny.") ("r-rstudioapi" ,r-rstudioapi) ("r-scales" ,r-scales) ("r-shiny" ,r-shiny) + ("r-shinyfiles" ,r-shinyfiles) ("r-shinyace" ,r-shinyace) + ("r-summarytools" ,r-summarytools) ("r-tibble" ,r-tibble) ("r-tidyr" ,r-tidyr) ("r-writexl" ,r-writexl))) @@ -4057,14 +4121,14 @@ simple method for converting between file types.") (define-public r-maptools (package (name "r-maptools") - (version "0.9-3") + (version "0.9-4") (source (origin (method url-fetch) (uri (cran-uri "maptools" version)) (sha256 (base32 - "0hxbv01im9zk1qrwgigpc510w6x0kzdzip4gx2jzfqmmwr8m17r8")))) + "1753kgyc4kmbb5h6knz5wgvvvj8v77kzm8lz0kwz05m5k3spa24k")))) (build-system r-build-system) (propagated-inputs `(("r-foreign" ,r-foreign) @@ -4085,14 +4149,14 @@ exchanging spatial objects with other R packages.") (define-public r-later (package (name "r-later") - (version "0.7.4") + (version "0.7.5") (source (origin (method url-fetch) (uri (cran-uri "later" version)) (sha256 (base32 - "125zc499gj702x2bch95lsfzk2qb4dzv3604x9afym2i3ylrmm64")))) + "0xhwn37makzm85zb6w5acc7svzibxcnz69rks0kxw22vapkxwz1i")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -4234,14 +4298,14 @@ quizzes to create self-paced tutorials for learning about R and R packages.") (define-public r-analytics (package (name "r-analytics") - (version "2.0") + (version "3.0") (source (origin (method url-fetch) (uri (cran-uri "analytics" version)) (sha256 (base32 - "1jkdjqc3fnvvsgi6x9ncf36rxzq0a55cmgkcv92mfmpcramg2lk6")))) + "0js3c8lwj3knccb55nq03cbjlf4w390p9aid2mi5x80l3ayd9in1")))) (build-system r-build-system) (propagated-inputs `(("r-car" ,r-car) @@ -4254,7 +4318,8 @@ quizzes to create self-paced tutorials for learning about R and R packages.") ("r-robust" ,r-robust) ("r-trend" ,r-trend) ("r-tsa" ,r-tsa) - ("r-urca" ,r-urca))) + ("r-urca" ,r-urca) + ("r-vim" ,r-vim))) (home-page "https://cran.r-project.org/web/packages/analytics/") (synopsis "Collection of data analysis tools") (description @@ -4385,14 +4450,14 @@ and adds the annotation to the plot.") (define-public r-ggpubr (package (name "r-ggpubr") - (version "0.1.8") + (version "0.2") (source (origin (method url-fetch) (uri (cran-uri "ggpubr" version)) (sha256 (base32 - "0psl2zndm4wk6nnj1nv305islpxfvfgd87gjh2ph8yqn4mxpnfi1")))) + "0rkpcjb1x7lvhj68aam5airbi534jqyiq12x5xk40a25iifhghq6")))) (build-system r-build-system) (propagated-inputs `(("r-cowplot" ,r-cowplot) @@ -4534,14 +4599,14 @@ steps and provides ggplot2-based elegant data visualization.") (define-public r-fansi (package (name "r-fansi") - (version "0.3.0") + (version "0.4.0") (source (origin (method url-fetch) (uri (cran-uri "fansi" version)) (sha256 (base32 - "135qj7bcc3mwn0vg55hiiadf66lx6zaxvkicfmfw9x0zr7ah2r6x")))) + "02f2rx7v7wz6w97m2slwky2i5y8f9iafycmkyr3siy3z3k8fj171")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) ; for vignettes @@ -4576,14 +4641,14 @@ results to the user.") (define-public r-hdf5r (package (name "r-hdf5r") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (cran-uri "hdf5r" version)) (sha256 (base32 - "1s6p4cj909kc635fh5xpl87bqlcdj3dn3r1wk5g40abimk2b0pva")))) + "0h222q80li8rs3cv4c5lvv3g91ygd51w43ay6fwyk9q9d315vwrj")))) (build-system r-build-system) (inputs `(("hdf5" ,hdf5) @@ -4663,17 +4728,43 @@ Extract argument descriptions and other parts of the help pages of functions.") (license license:gpl2+))) +(define-public r-rjags + (package + (name "r-rjags") + (version "4-8") + (source + (origin + (method url-fetch) + (uri (cran-uri "rjags" version)) + (sha256 + (base32 + "17xmjksj69f9wk4x71jxk4cgiqhaf2fj6bjm0mgzp4qln5x84a8m")))) + (build-system r-build-system) + (propagated-inputs + `(("r-coda" ,r-coda))) + (inputs + `(("jags" ,jags))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://mcmc-jags.sourceforge.net") + (synopsis "Bayesian graphical models using MCMC") + (description + "This package provides an R interface to the JAGS MCMC library. JAGS is +Just Another Gibbs Sampler. It is a program for analysis of Bayesian +hierarchical models using Markov Chain Monte Carlo (MCMC) simulation.") + (license license:gpl2))) + (define-public r-rdpack (package (name "r-rdpack") - (version "0.9-0") + (version "0.10-1") (source (origin (method url-fetch) (uri (cran-uri "Rdpack" version)) (sha256 (base32 - "067w0w6kza0hkzcnx58danl83yfvl9yjacr47mnid2bg856gdd1b")))) + "0bbjnw88h54v40hzim00i8yd3p4rk9i84zfdmgcbnylscwvsf0av")))) (properties `((upstream-name . "Rdpack"))) (build-system r-build-system) (propagated-inputs @@ -4725,6 +4816,112 @@ be added or removed. When working with Word documents, a cursor can be used to help insert or delete content at a specific location in the document.") (license license:gpl3))) +(define-public r-abn + (package + (name "r-abn") + (version "1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "abn" version)) + (sha256 + (base32 + "00k0razgdb5y5f62622fm7rxkcxrxg470nyyb02dvpfp60254kvs")))) + (build-system r-build-system) + (inputs + `(("gsl" ,gsl))) + (propagated-inputs + `(("r-cairo" ,r-cairo) + ("r-lme4" ,r-lme4) + ("r-mass" ,r-mass) + ("r-nnet" ,r-nnet) + ("r-rcpp" ,r-rcpp) + ("r-rcpparmadillo" ,r-rcpparmadillo) + ("r-rjags" ,r-rjags))) + (home-page "http://www.r-bayesian-networks.org") + (synopsis "Modelling multivariate data with additive bayesian networks") + (description + "Bayesian network analysis is a form of probabilistic graphical models +which derives from empirical data a directed acyclic graph, DAG, describing +the dependency structure between random variables. An additive Bayesian +network model consists of a form of a DAG where each node comprises a +@dfn{generalized linear model} (GLM). Additive Bayesian network models are +equivalent to Bayesian multivariate regression using graphical modelling, they +generalises the usual multivariable regression, GLM, to multiple dependent +variables. This package provides routines to help determine optimal Bayesian +network models for a given data set, where these models are used to identify +statistical dependencies in messy, complex data.") + (license license:gpl2+))) + +(define-public r-acd + (package + (name "r-acd") + (version "1.5.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "ACD" version)) + (sha256 + (base32 + "1a67bi3hklq8nlc50r0qnyr4k7m9kpvijy8sqqpm54by5hsysfd6")))) + (properties `((upstream-name . "ACD"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/ACD/") + (synopsis "Categorical data analysis with complete or missing responses") + (description + "This package provides tools for categorical data analysis with complete +or missing responses.") + (license license:gpl2+))) + +(define-public r-acdm + (package + (name "r-acdm") + (version "1.0.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "ACDm" version)) + (sha256 + (base32 + "0b4f02ga5ra66mbrm79g0bnlzmii82rks9kmxixxqgf18yhlyjil")))) + (properties `((upstream-name . "ACDm"))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-plyr" ,r-plyr) + ("r-rsolnp" ,r-rsolnp) + ("r-zoo" ,r-zoo))) + (home-page "https://cran.r-project.org/web/packages/ACDm/") + (synopsis "Tools for Autoregressive Conditional Duration Models") + (description + "ACDm is a package for Autoregressive Conditional Duration (ACD, Engle +and Russell, 1998) models. It creates trade, price or volume durations from +transactions (tic) data, performs diurnal adjustments, fits various ACD models +and tests them.") + (license license:gpl2+))) + +(define-public r-overlap + (package + (name "r-overlap") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "overlap" version)) + (sha256 + (base32 + "1j3m6ir1chdz0si2fhcw6gs7c9h09bv0chz18rpzxsywww6d4rzy")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/overlap/") + (synopsis "Estimates of coefficient of overlapping for animal activity patterns") + (description + "This package provides functions to fit kernel density functions to data +on temporal activity patterns of animals; estimate coefficients of overlapping +of densities for two species; and calculate bootstrap estimates of confidence +intervals.") + (license license:gpl3+))) + (define-public r-snakecase (package (name "r-snakecase") @@ -4774,14 +4971,14 @@ other add-on packages.") (define-public r-sjlabelled (package (name "r-sjlabelled") - (version "1.0.13") + (version "1.0.14") (source (origin (method url-fetch) (uri (cran-uri "sjlabelled" version)) (sha256 (base32 - "0xizj7mrhnbn8kwjgm076si9w68a7lgrx4vj1sbqmv9jx055h8wv")))) + "0ayfzhm9bwjfaarq5z0gvn9kapjwj3532azgin97nr5fnjdhvgaw")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -4807,14 +5004,14 @@ vice versa), or to deal with multiple declared missing values.") (define-public r-sjmisc (package (name "r-sjmisc") - (version "2.7.4") + (version "2.7.6") (source (origin (method url-fetch) (uri (cran-uri "sjmisc" version)) (sha256 (base32 - "11cy09k1d2y5wwqvafqxr01hzk4x68ji2pqlwj7fnpw27i3ap4q4")))) + "1jhrigikjpkdar3jxvi7qhqsg6lgjkjqhqll9vaay98b88rfc2im")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -4822,15 +5019,12 @@ vice versa), or to deal with multiple declared missing values.") ("r-dplyr" ,r-dplyr) ("r-haven" ,r-haven) ("r-magrittr" ,r-magrittr) - ("r-pillar" ,r-pillar) ("r-purrr" ,r-purrr) ("r-rlang" ,r-rlang) ("r-sjlabelled" ,r-sjlabelled) ("r-stringdist" ,r-stringdist) ("r-stringr" ,r-stringr) - ("r-tibble" ,r-tibble) - ("r-tidyr" ,r-tidyr) - ("r-tidyselect" ,r-tidyselect))) + ("r-tidyr" ,r-tidyr))) (home-page "https://github.com/strengejacke/sjmisc") (synopsis "Data and variable transformation functions") (description @@ -4892,14 +5086,14 @@ functions.") (define-public r-flextable (package (name "r-flextable") - (version "0.4.5") + (version "0.4.6") (source (origin (method url-fetch) (uri (cran-uri "flextable" version)) (sha256 (base32 - "09j2y0z7rkc0w1cl9pp1cpk6fnzzfr6245mxa3ca42z9k2cy2jfl")))) + "0fa42dvf0wyl91w4v0rywm3xgw9n03cfyl28ficrv8iabz4k4382")))) (build-system r-build-system) (propagated-inputs `(("r-gdtools" ,r-gdtools) @@ -5217,14 +5411,14 @@ containing one or more SNPs that evolved under directional selection.") (define-public r-proc (package (name "r-proc") - (version "1.12.1") + (version "1.13.0") (source (origin (method url-fetch) (uri (cran-uri "pROC" version)) (sha256 (base32 - "05ad69a6fxy9k903cw3h4q59ch2jv6qfg9yjdbw3cgiiazcafrlj")))) + "0ain17clympkx09ym7gydylcd93096dxzqx1qzci310yq2l7fknm")))) (properties `((upstream-name . "pROC"))) (build-system r-build-system) (propagated-inputs @@ -5855,13 +6049,13 @@ detection.") (define-public r-abps (package (name "r-abps") - (version "0.2") + (version "0.3") (source (origin (method url-fetch) (uri (cran-uri "ABPS" version)) (sha256 - (base32 "1k3f5i34f4w2khkszb4qhwwcpiy7gsfh82vjr6rypwg6rx5rjclq")))) + (base32 "0n3f66nmfi5v94il1mxy026mi84w01ph2aljk60vn3mrz8kwf2ll")))) (properties `((upstream-name . "ABPS"))) (build-system r-build-system) (propagated-inputs `(("r-kernlab" ,r-kernlab))) @@ -6160,6 +6354,52 @@ representing one simulated time step. Various mutation events are possible at each time step, contributing to a diverse final repertoire.") (license license:gpl2))) +(define-public r-quic + (package + (name "r-quic") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "QUIC" version)) + (sha256 + (base32 "021bp9xbaih60qmss015ycblbv6d1dvb1z89y93zpqqnc2qhpv3c")))) + (properties `((upstream-name . "QUIC"))) + (build-system r-build-system) + (home-page "https://www.cs.utexas.edu/users/sustik/QUIC/") + (synopsis "Regularized sparse inverse covariance matrix estimation") + (description + "This package implements the regularized Gaussian maximum likelihood +estimation of the inverse of a covariance matrix. It uses Newton's method and +coordinate descent to solve the regularized inverse covariance matrix +estimation problem.") + ;; The project home page states that the release is under GPLv3 or later. + ;; The CRAN page only says GPL-3. + (license license:gpl3+))) + +(define-public r-abundant + (package + (name "r-abundant") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "abundant" version)) + (sha256 + (base32 "1m76qdmqvwpgm0sihazi2dna7cgsz9rljal18vgffb5wamwmg9k7")))) + (build-system r-build-system) + (propagated-inputs + `(("r-quic" ,r-quic))) + (home-page "https://cran.r-project.org/web/packages/abundant/") + (synopsis "Abundant regression and high-dimensional principal fitted components") + (description + "This package provides tools to fit and predict with the high-dimensional +principal fitted components model. This model is described by Cook, Forzani, +and Rothman (2012) @url{doi:10.1214/11-AOS962}.") + ;; The DESCRIPTION file states GPL-2, but since it directly depends on a + ;; GPLv3+ package (QUIC) this likely means GPLv2+. + (license license:gpl2+))) + (define-public r-ac3net (package (name "r-ac3net") @@ -6256,3 +6496,1282 @@ a header row or not. The dataset should contain only one independent variable (x) and one dependent variable (y) and can contain a weight for each observation.") (license license:gpl2))) + +(define-public r-aspi + (package + (name "r-aspi") + (version "0.2.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "aspi" version)) + (sha256 + (base32 "0rhvxw243vvdv3hxa6pi343gcjc2cbxq1jzqirl9k1l4i3897l87")))) + (build-system r-build-system) + (home-page + "https://cran.r-project.org/web/packages/aspi/") + (synopsis + "Analysis of symmetry of parasitic infections") + (description + "This package provides tools for the analysis and visualization of bilateral + asymmetry in parasitic infections.") + (license license:gpl3+))) + +(define-public r-sandwich + (package + (name "r-sandwich") + (version "2.5-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "sandwich" version)) + (sha256 + (base32 + "168kq5kk34xbhfsxsanard9zriyp6cw0s09ralzb57kk42pl9hbc")))) + (build-system r-build-system) + (propagated-inputs + `(("r-zoo" ,r-zoo))) + (home-page "https://cran.r-project.org/web/packages/sandwich/") + (synopsis "Robust Covariance Matrix Estimators") + (description + "This package provides model-robust standard error estimators for +cross-sectional, time series, clustered, panel, and longitudinal data.") + ;; Either version of the license. + (license (list license:gpl2 license:gpl3)))) + +(define-public r-th-data + (package + (name "r-th-data") + (version "1.0-9") + (source + (origin + (method url-fetch) + (uri (cran-uri "TH.data" version)) + (sha256 + (base32 + "03xfvww0krw0fn76qmmvrj7dx4shin57qafwhkrggfg25hbqlcfq")))) + (properties `((upstream-name . "TH.data"))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass) + ("r-survival" ,r-survival))) + (home-page "https://cran.r-project.org/web/packages/TH.data/") + (synopsis "Shared data sets") + (description + "This package contains supporting data sets that are used in other +packages maintained by Torsten Hothorn.") + (license license:gpl3))) + +(define-public r-multcomp + (package + (name "r-multcomp") + (version "1.4-8") + (source + (origin + (method url-fetch) + (uri (cran-uri "multcomp" version)) + (sha256 + (base32 + "0fm78g4zjc6ank316qfw977864shmy890znn4fahwc8jjdhpc252")))) + (build-system r-build-system) + (propagated-inputs + `(("r-codetools" ,r-codetools) + ("r-mvtnorm" ,r-mvtnorm) + ("r-sandwich" ,r-sandwich) + ("r-survival" ,r-survival) + ("r-th-data" ,r-th-data))) + (home-page "https://cran.r-project.org/web/packages/multcomp/") + (synopsis "Simultaneous inference in general parametric models") + (description + "Simultaneous tests and confidence intervals for general linear +hypotheses in parametric models, including linear, generalized linear, linear +mixed effects, and survival models. The package includes demos reproducing +analyzes presented in the book \"Multiple Comparisons Using R\" (Bretz, +Hothorn, Westfall, 2010, CRC Press).") + (license license:gpl2))) + +(define-public r-emmeans + (package + (name "r-emmeans") + (version "1.3.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "emmeans" version)) + (sha256 + (base32 + "0kdyy4qp332c4yyvp1cnh48h6ks6ffir5rjcv0py0vm3m8c3hh61")))) + (build-system r-build-system) + (propagated-inputs + `(("r-estimability" ,r-estimability) + ("r-mvtnorm" ,r-mvtnorm) + ("r-plyr" ,r-plyr) + ("r-xtable" ,r-xtable))) + (home-page "https://github.com/rvlenth/emmeans") + (synopsis "Estimated marginal means, aka least-squares means") + (description + "This package provides tools to obtain @dfn{estimated marginal +means} (EMMs) for many linear, generalized linear, and mixed models. It can +be used to compute contrasts or linear functions of EMMs, trends, and +comparisons of slopes.") + ;; Either version of the license. + (license (list license:gpl2 license:gpl3)))) + +(define-public r-pwr + (package + (name "r-pwr") + (version "1.2-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "pwr" version)) + (sha256 + (base32 + "0r5g781lr677vp3zyhgmi7r68c87l8gd05l1s3ffnxgn5wf043sm")))) + (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/heliosdrm/pwr") + (synopsis "Basic functions for power analysis") + (description + "This package provides power analysis functions along the lines of +Cohen (1988).") + (license license:gpl3+))) + +(define-public r-coin + (package + (name "r-coin") + (version "1.2-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "coin" version)) + (sha256 + (base32 + "1fq58793bymzig1syjg2lvn6hsxfwkhh00jfrchh3c0y7rfhc66m")))) + (build-system r-build-system) + (propagated-inputs + `(("r-modeltools" ,r-modeltools) + ("r-multcomp" ,r-multcomp) + ("r-mvtnorm" ,r-mvtnorm) + ("r-survival" ,r-survival))) + (home-page "http://coin.r-forge.r-project.org") + (synopsis "Conditional inference procedures in a permutation test framework") + (description + "This package provides conditional inference procedures for the general +independence problem including two-sample, K-sample (non-parametric ANOVA), +correlation, censored, ordered and multivariate problems.") + (license license:gpl2))) + +(define-public r-bayesplot + (package + (name "r-bayesplot") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "bayesplot" version)) + (sha256 + (base32 + "0in9cq2ybpa7njrwqx4l6nc8i01cjswsvzwlyiw465pi74aapr57")))) + (build-system r-build-system) + (inputs + `(("pandoc" ,ghc-pandoc) + ("pandoc-citeproc" ,ghc-pandoc-citeproc))) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-ggridges" ,r-ggridges) + ("r-reshape2" ,r-reshape2) + ("r-rlang" ,r-rlang))) + (home-page "http://mc-stan.org/bayesplot") + (synopsis "Plotting for Bayesian models") + (description + "This package provides plotting functions for posterior analysis, model +checking, and MCMC diagnostics. The package is designed not only to provide +convenient functionality for users, but also a common set of functions that +can be easily used by developers working on a variety of R packages for +Bayesian modeling.") + (license license:gpl3+))) + +(define-public r-tmb + (package + (name "r-tmb") + (version "1.7.15") + (source + (origin + (method url-fetch) + (uri (cran-uri "TMB" version)) + (sha256 + (base32 + "1r2d8c5iazihba42sn33yarv0dcfiy989sx64zcf14zr8k6cgjzs")))) + (properties `((upstream-name . "TMB"))) + (build-system r-build-system) + (propagated-inputs + `(("r-matrix" ,r-matrix) + ("r-rcppeigen" ,r-rcppeigen))) + (home-page "http://tmb-project.org") + (synopsis "Template model builder: a general random effect tool") + (description + "With this tool, a user should be able to quickly implement complex +random effect models through simple C++ templates. The package combines +@code{CppAD} (C++ automatic differentiation), @code{Eigen} (templated +matrix-vector library) and @code{CHOLMOD} (sparse matrix routines available +from R) to obtain an efficient implementation of the applied Laplace +approximation with exact derivatives. Key features are: Automatic sparseness +detection, parallelism through BLAS and parallel user templates.") + (license license:gpl2))) + +(define-public r-sjstats + (package + (name "r-sjstats") + (version "0.17.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "sjstats" version)) + (sha256 + (base32 + "0c7g35vn7r9rylhp0gj1yfslg7jybwrhpqpp7vdcd90xfccih24r")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bayesplot" ,r-bayesplot) + ("r-broom" ,r-broom) + ("r-coin" ,r-coin) + ("r-crayon" ,r-crayon) + ("r-dplyr" ,r-dplyr) + ("r-emmeans" ,r-emmeans) + ("r-glmmtmb" ,r-glmmtmb) + ("r-lme4" ,r-lme4) + ("r-magrittr" ,r-magrittr) + ("r-mass" ,r-mass) + ("r-matrix" ,r-matrix) + ("r-modelr" ,r-modelr) + ("r-nlme" ,r-nlme) + ("r-purrr" ,r-purrr) + ("r-pwr" ,r-pwr) + ("r-rlang" ,r-rlang) + ("r-sjlabelled" ,r-sjlabelled) + ("r-sjmisc" ,r-sjmisc) + ("r-tidyr" ,r-tidyr))) + (home-page "https://github.com/strengejacke/sjstats") + (synopsis "Functions for common statistical computations") + (description + "This package provides a collection of convenient functions for common +statistical computations, which are not directly provided by R's @code{base} +or @code{stats} packages. This package aims at providing, first, shortcuts +for statistical measures, which otherwise could only be calculated with +additional effort. Second, these shortcut functions are generic, and can be +applied not only to vectors, but also to other objects as well. The focus of +most functions lies on summary statistics or fit measures for regression +models, including generalized linear models, mixed effects models and Bayesian +models.") + (license license:gpl3))) + +(define-public r-glmmtmb + (package + (name "r-glmmtmb") + (version "0.2.2.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "glmmTMB" version)) + (sha256 + (base32 + "1clpkjlmsjmn3m1z5jqv8cgw6bvpqsy4nx6k947r0jya017ny5y5")))) + (properties `((upstream-name . "glmmTMB"))) + (build-system r-build-system) + (propagated-inputs + `(("r-lme4" ,r-lme4) + ("r-matrix" ,r-matrix) + ("r-nlme" ,r-nlme) + ("r-rcppeigen" ,r-rcppeigen) + ("r-tmb" ,r-tmb))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/glmmTMB") + (synopsis "Generalized linear mixed models") + (description + "Fit linear and generalized linear mixed models with various extensions, +including zero-inflation. The models are fitted using maximum likelihood +estimation via the Template Model Builder. Random effects are assumed to be +Gaussian on the scale of the linear predictor and are integrated out using the +Laplace approximation. Gradients are calculated using automatic +differentiation.") + (license license:agpl3+))) + +(define-public r-ggeffects + (package + (name "r-ggeffects") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "ggeffects" version)) + (sha256 + (base32 + "070c3fxmzajq2fy816s5pfqdyjlnzkabj97z7fcsva4h5rnqi9d6")))) + (build-system r-build-system) + (propagated-inputs + `(("r-crayon" ,r-crayon) + ("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-lme4" ,r-lme4) + ("r-magrittr" ,r-magrittr) + ("r-mass" ,r-mass) + ("r-prediction" ,r-prediction) + ("r-purrr" ,r-purrr) + ("r-rlang" ,r-rlang) + ("r-scales" ,r-scales) + ("r-sjlabelled" ,r-sjlabelled) + ("r-sjmisc" ,r-sjmisc) + ("r-sjstats" ,r-sjstats) + ("r-tidyr" ,r-tidyr))) + (home-page "https://github.com/strengejacke/ggeffects") + (synopsis "Create tidy data frames of marginal effects for ggplot") + (description + "This package provides tools to compute marginal effects from statistical +models and return the result as tidy data frames. These data frames are ready +to use with the @code{ggplot2} package. Marginal effects can be calculated +for many different models. Interaction terms, splines and polynomial terms +are also supported. The two main functions are @code{ggpredict()} and +@code{ggeffect()}. There is a generic @code{plot()} method to plot the +results using @code{ggplot2}.") + (license license:gpl3))) + +(define-public r-sjplot + (package + (name "r-sjplot") + (version "2.6.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "sjPlot" version)) + (sha256 + (base32 + "13qvw2s3r96qfi8kfsn76m050ccnmckl31a9qv94xws8da99v2fk")))) + (properties `((upstream-name . "sjPlot"))) + (build-system r-build-system) + (propagated-inputs + `(("r-broom" ,r-broom) + ("r-dplyr" ,r-dplyr) + ("r-forcats" ,r-forcats) + ("r-ggeffects" ,r-ggeffects) + ("r-ggplot2" ,r-ggplot2) + ("r-glmmtmb" ,r-glmmtmb) + ("r-knitr" ,r-knitr) + ("r-lme4" ,r-lme4) + ("r-magrittr" ,r-magrittr) + ("r-mass" ,r-mass) + ("r-modelr" ,r-modelr) + ("r-nlme" ,r-nlme) + ("r-psych" ,r-psych) + ("r-purrr" ,r-purrr) + ("r-rlang" ,r-rlang) + ("r-scales" ,r-scales) + ("r-sjlabelled" ,r-sjlabelled) + ("r-sjmisc" ,r-sjmisc) + ("r-sjstats" ,r-sjstats) + ("r-tidyr" ,r-tidyr))) + (home-page "https://strengejacke.github.io/sjPlot/") + (synopsis "Data visualization for statistics in social science") + (description + "This package represents a collection of plotting and table output +functions for data visualization. Results of various statistical +analyses (that are commonly used in social sciences) can be visualized using +this package, including simple and cross tabulated frequencies, histograms, +box plots, (generalized) linear models, mixed effects models, principal +component analysis and correlation matrices, cluster analyses, scatter plots, +stacked scales, effects plots of regression models (including interaction +terms) and much more. This package supports labelled data.") + (license license:gpl3))) + +(define-public r-ini + (package + (name "r-ini") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "ini" version)) + (sha256 + (base32 + "04yqij344dwm0xqgara8xia42mlmij3i8711qbb5534w05a1l6bv")))) + (build-system r-build-system) + (home-page "https://github.com/dvdscripter/ini") + (synopsis "Read and write configuration files") + (description + "This package provides tools to parse simple @code{.ini} configuration +files to an structured list. Users can manipulate this resulting list with +@code{lapply()} functions. This same structured list can be used to write +back to file after modifications.") + (license license:gpl3))) + +(define-public r-gh + (package + (name "r-gh") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "gh" version)) + (sha256 + (base32 + "1llinfajb0g7006jd2w1hpskxpmkjhnqarcjb71r1qvsccb2ph7k")))) + (build-system r-build-system) + (propagated-inputs + `(("r-httr" ,r-httr) + ("r-ini" ,r-ini) + ("r-jsonlite" ,r-jsonlite))) + (home-page "https://github.com/r-lib/gh#readme") + (synopsis "Access the GitHub API via R") + (description + "This package provides a minimal R client to access the GitHub API.") + (license license:expat))) + +(define-public r-fs + (package + (name "r-fs") + (version "1.2.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "fs" version)) + (sha256 + (base32 + "0kqqaqqml8x3r1mdld40iwns0ylj2f52qsdh1vcn39f7w7c2ka8j")))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://fs.r-lib.org") + (synopsis "Cross-platform file system operations based on libuv") + (description + "This package provides a cross-platform interface to file system +operations, built on top of the libuv C library.") + (license license:gpl3))) + +(define-public r-clisymbols + (package + (name "r-clisymbols") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "clisymbols" version)) + (sha256 + (base32 + "1q7gi2zmykhzas9v8fdnbpdq7pzdcpbhim1yxvd2062l777g4j86")))) + (build-system r-build-system) + (home-page "https://github.com/gaborcsardi/clisymbols") + (synopsis "Unicode symbols at the R prompt") + (description + "This package provides a small subset of Unicode symbols, that are useful +when building command line applications. They fall back to alternatives on +terminals that do not support Unicode.") + (license license:expat))) + +(define-public r-usethis + (package + (name "r-usethis") + (version "1.4.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "usethis" version)) + (sha256 + (base32 + "1gadckx3sxz9gxvpkprj9x7zcgg2nz5m4q0vi76ya9li1v03rwwn")))) + (build-system r-build-system) + (propagated-inputs + `(("r-clipr" ,r-clipr) + ("r-clisymbols" ,r-clisymbols) + ("r-crayon" ,r-crayon) + ("r-curl" ,r-curl) + ("r-desc" ,r-desc) + ("r-fs" ,r-fs) + ("r-gh" ,r-gh) + ("r-git2r" ,r-git2r) + ("r-glue" ,r-glue) + ("r-rlang" ,r-rlang) + ("r-rprojroot" ,r-rprojroot) + ("r-rstudioapi" ,r-rstudioapi) + ("r-whisker" ,r-whisker))) + (home-page "https://github.com/r-lib/usethis") + (synopsis "Automate R package and project setup") + (description + "This package helps you to automate R package and project setup tasks +that are otherwise performed manually. This includes setting up unit testing, +test coverage, continuous integration, Git, GitHub integration, licenses, +Rcpp, RStudio projects, and more.") + (license license:gpl3))) + +(define-public r-sessioninfo + (package + (name "r-sessioninfo") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "sessioninfo" version)) + (sha256 + (base32 + "0j5f3l58fynxx3v0w62vqpii7miabszgljpja36xx9s8hikh8sqn")))) + (build-system r-build-system) + (propagated-inputs + `(("r-cli" ,r-cli) + ("r-withr" ,r-withr))) + (home-page "https://github.com/r-lib/sessioninfo#readme") + (synopsis "R session information") + (description + "This package provides tools to query and print information about the +current R session. It is similar to @code{utils::sessionInfo()}, but includes +more information about packages, and where they were installed from.") + (license license:gpl2))) + +(define-public r-remotes + (package + (name "r-remotes") + (version "2.0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "remotes" version)) + (sha256 + (base32 + "0rsjxmhwpr51ilsdjfqn06mj8yr2d7nckcn3arv1ljn23qfkpcxa")))) + (build-system r-build-system) + (home-page "https://github.com/r-lib/remotes#readme") + (synopsis "R package installation from remote repositories") + (description + "Download and install R packages stored in GitHub, BitBucket, or plain +subversion or git repositories. This package is a lightweight replacement of +the @code{install_*} functions in the @code{devtools} package. Indeed most of +the code was copied over from @code{devtools}.") + (license license:gpl2+))) + +(define-public r-xopen + (package + (name "r-xopen") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "xopen" version)) + (sha256 + (base32 + "1vrvgdika1d63dwygynbv2wmd87ll8dji5dy89hj576n8hw601z2")))) + (build-system r-build-system) + (propagated-inputs + `(("r-processx" ,r-processx))) + (home-page "https://github.com/r-lib/xopen#readme") + (synopsis "Open system files, URLs, anything") + (description + "This package provides a cross-platform solution to open files, +directories or URLs with their associated programs.") + (license license:expat))) + +(define-public r-rcmdcheck + (package + (name "r-rcmdcheck") + (version "1.3.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "rcmdcheck" version)) + (sha256 + (base32 + "0ys1nd7690mhwzslyzg8fq1wxr28nz8g6av5iykkrshb8lkxg7ly")))) + (build-system r-build-system) + (propagated-inputs + `(("r-callr" ,r-callr) + ("r-cli" ,r-cli) + ("r-crayon" ,r-crayon) + ("r-desc" ,r-desc) + ("r-digest" ,r-digest) + ("r-pkgbuild" ,r-pkgbuild) + ("r-prettyunits" ,r-prettyunits) + ("r-r6" ,r-r6) + ("r-rprojroot" ,r-rprojroot) + ("r-sessioninfo" ,r-sessioninfo) + ("r-withr" ,r-withr) + ("r-xopen" ,r-xopen))) + (home-page "https://github.com/r-Lib/rcmdcheck#readme") + (synopsis "Run R CMD check from R and capture results") + (description + "Run @code{R CMD check} from R programmatically, and capture the results +of the individual checks.") + (license license:expat))) + +(define-public r-rapportools + (package + (name "r-rapportools") + (version "1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "rapportools" version)) + (sha256 + (base32 + "1sgv4sc737i12arh5dc3263kjsz3dzg06qihfmrqyax94mv2d01b")))) + (build-system r-build-system) + (propagated-inputs + `(("r-pander" ,r-pander) + ("r-plyr" ,r-plyr) + ("r-reshape" ,r-reshape))) + (home-page "https://cran.r-project.org/web/packages/rapportools/") + (synopsis "Miscellaneous helper functions with sane defaults for reporting") + (description + "This package provides helper functions that act as wrappers to more +advanced statistical methods with the advantage of having sane defaults for +quick reporting.") + (license license:agpl3+))) + +(define-public r-pander + (package + (name "r-pander") + (version "0.6.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "pander" version)) + (sha256 + (base32 + "1bd9sdghlsppmff18k5fg3i0visq9f4wc82rlhwq5m82bmgdgnyi")))) + (build-system r-build-system) + (propagated-inputs + `(("r-digest" ,r-digest) + ("r-rcpp" ,r-rcpp))) + (home-page "https://rapporter.github.io/pander") + (synopsis "Render R objects into Pandoc's markdown") + (description + "The main aim of the pander R package is to provide a minimal and easy +tool for rendering R objects into Pandoc's markdown. The package is also +capable of exporting/converting complex Pandoc documents (reports) in various +ways.") + ;; This package is licensed under either the AGPLv3+ or the very rarely + ;; used OSL 3.0. + (license license:agpl3+))) + +(define-public r-summarytools + (package + (name "r-summarytools") + (version "0.8.8") + (source + (origin + (method url-fetch) + (uri (cran-uri "summarytools" version)) + (sha256 + (base32 + "0z836m6ib9bznwcawn6xf8gck05ydxwi3bx4jbrbyqql4kci8zwb")))) + (build-system r-build-system) + (propagated-inputs + `(("r-htmltools" ,r-htmltools) + ("r-lubridate" ,r-lubridate) + ("r-matrixstats" ,r-matrixstats) + ("r-pander" ,r-pander) + ("r-pryr" ,r-pryr) + ("r-rapportools" ,r-rapportools) + ("r-rcurl" ,r-rcurl))) + (home-page "https://github.com/dcomtois/summarytools") + (synopsis "Tools to quickly and neatly summarize data") + (description + "This package provides tools for data frame summaries, cross-tabulations, +weight-enabled frequency tables and common univariate statistics in concise +tables available in a variety of formats (plain ASCII, Markdown and HTML). A +good point-of-entry for exploring data, both for experienced and new R +users.") + (license license:gpl2))) + +(define-public r-lsei + (package + (name "r-lsei") + (version "1.2-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "lsei" version)) + (sha256 + (base32 + "1xl06fb3is744pxlh42wx5hn1h0ab1k31wnmsmh0524kxzcyp0a7")))) + (build-system r-build-system) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "https://www.stat.auckland.ac.nz/~yongwang") + (synopsis "Solve regression problems under equality/inequality constraints") + (description + "It contains functions that solve least squares linear regression +problems under linear equality/inequality constraints. Functions for solving +quadratic programming problems are also available, which transform such +problems into least squares ones first.") + (license license:gpl2+))) + +(define-public r-npsurv + (package + (name "r-npsurv") + (version "0.4-0") + (source + (origin + (method url-fetch) + (uri (cran-uri "npsurv" version)) + (sha256 + (base32 + "1wq4c9yfha5azjhrn40iiqkshmvh611sa90jp3lh82n4bl9zfk20")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lsei" ,r-lsei))) + (home-page "https://www.stat.auckland.ac.nz/~yongwang") + (synopsis "Nonparametric survival analysis") + (description + "This package contains functions for non-parametric survival analysis of +exact and interval-censored observations.") + (license license:gpl2+))) + +(define-public r-clusteval + (package + (name "r-clusteval") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "clusteval" version)) + (sha256 + (base32 + "1ld0bdl4fy8dsfzm3k7a37cyxc6pfc9qs31x4pxd3z5rslghz7rj")))) + (build-system r-build-system) + (propagated-inputs + `(("r-mvtnorm" ,r-mvtnorm) + ("r-rcpp" ,r-rcpp))) + (home-page "https://cran.r-project.org/web/packages/clusteval/") + (synopsis "Evaluation of clustering algorithms") + (description + "This R package provides a suite of tools to evaluate clustering +algorithms, clusterings, and individual clusters.") + (license license:expat))) + +(define-public r-tweedie + (package + (name "r-tweedie") + (version "2.3.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "tweedie" version)) + (sha256 + (base32 + "10fv998qjxsyx0h94fi0xbh6xbf24nwgh254n9zfnmix9vk2cqls")))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/tweedie/") + (synopsis "Evaluation of Tweedie exponential family models") + (description + "Maximum likelihood computations for Tweedie families, including the +series expansion (Dunn and Smyth, 2005; <doi10.1007/s11222-005-4070-y>) and +the Fourier inversion (Dunn and Smyth, 2008; <doi:10.1007/s11222-007-9039-6>), +and related methods.") + (license license:gpl2+))) + +(define-public r-rcppgsl + (package + (name "r-rcppgsl") + (version "0.3.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "RcppGSL" version)) + (sha256 + (base32 + "16pdapq31729db53agnb48jkvdm97167n3bigy5zazc3q3isis1m")))) + (properties `((upstream-name . "RcppGSL"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp) + ("gsl" ,gsl))) + (native-inputs + `(("r-knitr" ,r-knitr))) ; for vignettes + (home-page "https://cran.r-project.org/web/packages/RcppGSL/") + (synopsis "Rcpp integration for GSL vectors and matrices") + (description + "The GNU Scientific Library (or GSL) is a collection of numerical +routines for scientific computing. It is particularly useful for C and C++ +programs as it provides a standard C interface to a wide range of mathematical +routines. There are over 1000 functions in total with an extensive test +suite. The RcppGSL package provides an easy-to-use interface between GSL data +structures and R using concepts from Rcpp which is itself a package that eases +the interfaces between R and C++.") + (license license:gpl2+))) + +(define-public r-mvabund + (package + (name "r-mvabund") + (version "3.13.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "mvabund" version)) + (sha256 + (base32 + "1z8bj9zbc8h7w1xki9sc2p2rq6lv8gbcmiy9819z54d7lx1i9cnj")))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass) + ("r-rcpp" ,r-rcpp) + ("r-rcppgsl" ,r-rcppgsl) + ("r-statmod" ,r-statmod) + ("r-tweedie" ,r-tweedie))) + (home-page "https://cran.r-project.org/web/packages/mvabund/") + (synopsis "Statistical methods for analysing multivariate abundance data") + (description + "This package provides a set of tools for displaying, modeling and +analysing multivariate abundance data in community ecology.") + (license license:lgpl2.1+))) + +(define-public r-afex + (package + (name "r-afex") + (version "0.22-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "afex" version)) + (sha256 + (base32 + "065wbxljl77zqvc2c4gpfpfyc6mbnnrf24q399q9bxmrz3sapj8n")))) + (build-system r-build-system) + (propagated-inputs + `(("r-car" ,r-car) + ("r-lme4" ,r-lme4) + ("r-lmertest" ,r-lmertest) + ("r-pbkrtest" ,r-pbkrtest) + ("r-reshape2" ,r-reshape2))) + (home-page "https://afex.singmann.science/") + (synopsis "Analysis of factorial experiments") + (description + "This package provides convenience functions for analyzing factorial +experiments using ANOVA or mixed models.") + (license license:gpl2+))) + +(define-public r-lmertest + (package + (name "r-lmertest") + (version "3.0-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "lmerTest" version)) + (sha256 + (base32 + "0pia69sc8bn37mkiprdf91iilziqb865f94k6x6c26i33fg7rq4m")))) + (properties `((upstream-name . "lmerTest"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-lme4" ,r-lme4) + ("r-mass" ,r-mass) + ("r-numderiv" ,r-numderiv))) + (home-page "https://github.com/runehaubo/lmerTestR") + (synopsis "Tests in linear mixed effects models") + (description + "This package provides p-values in type I, II or III anova and summary +tables for @code{lmer} model fits via Satterthwaite's degrees of freedom +method. A Kenward-Roger method is also available via the @code{pbkrtest} +package. Model selection methods include step, drop1 and anova-like tables +for random effects (ranova). Methods for Least-Square means (LS-means) and +tests of linear contrasts of fixed effects are also available.") + (license license:gpl2+))) + +(define-public r-r2glmm + (package + (name "r-r2glmm") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "r2glmm" version)) + (sha256 + (base32 + "0iim92blpa59vgz97c2pi05yhbjjmaffdbkbmk5kplfb2vmazgiy")))) + (build-system r-build-system) + (propagated-inputs + `(("r-afex" ,r-afex) + ("r-data-table" ,r-data-table) + ("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-lmertest" ,r-lmertest) + ("r-mass" ,r-mass) + ("r-matrix" ,r-matrix) + ("r-mgcv" ,r-mgcv) + ("r-pbkrtest" ,r-pbkrtest))) + (home-page "https://github.com/bcjaeger/r2glmm") + (synopsis "Compute R squared for mixed (multilevel) models") + (description + "This package computes model and semi partial R squared with confidence +limits for the linear and generalized linear mixed model (LMM and GLMM). The +R squared measure from L. J. Edwards et al. (2008) is extended to the GLMM +using @dfn{penalized quasi-likelihood} (PQL) estimation (see Jaeger et +al. (2016)).") + (license license:gpl2))) + +(define-public r-weights + (package + (name "r-weights") + (version "1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "weights" version)) + (sha256 + (base32 + "0186bfpkhxngrshac6bpg37alp6slwhwd43inrm8hqg0vhpfgc4c")))) + (build-system r-build-system) + (propagated-inputs + `(("r-gdata" ,r-gdata) + ("r-hmisc" ,r-hmisc) + ("r-mice" ,r-mice))) + (home-page + "https://cran.r-project.org/web/packages/weights/") + (synopsis "Weighting and weighted statistics") + (description "This package Provides a variety of functions for producing +simple weighted statistics, such as weighted Pearson's correlations, partial +correlations, Chi-Squared statistics, histograms, and t-tests. Also now +includes some software for quickly recoding survey data and plotting point +estimates from interaction terms in regressions (and multiply imputed +regressions). NOTE: Weighted partial correlation calculations pulled to +address a bug.") + (license license:gpl2+))) + +(define-public r-rcppannoy + (package + (name "r-rcppannoy") + (version "0.0.11") + (source + (origin + (method url-fetch) + (uri (cran-uri "RcppAnnoy" version)) + (sha256 + (base32 + "1ik50ancfgcvh03n4jsqwjk8lf056rbgd70q4l4didmvh5kcyjd1")))) + (properties `((upstream-name . "RcppAnnoy"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (native-inputs + `(("r-knitr" ,r-knitr))) ; for vignettes + (home-page "https://cran.r-project.org/web/packages/RcppAnnoy/") + (synopsis "Rcpp bindings for Annoy, a library for Approximate Nearest Neighbors") + (description + "Annoy is a small C++ library for Approximate Nearest Neighbors written +for efficient memory usage as well an ability to load from and save to disk. +This package provides an R interface.") + ;; Annoy is released under ASL 2.0, but this wrapper is released under + ;; GPLv2+. + (license (list license:gpl2+ license:asl2.0)))) + +(define-public r-ncdf4 + (package + (name "r-ncdf4") + (version "1.16") + (source + (origin + (method url-fetch) + (uri (cran-uri "ncdf4" version)) + (sha256 + (base32 + "0lwjjis0b83c4l3xvqai4ckzrskd6mychck1iwxcxgjvh0d77mgd")))) + (build-system r-build-system) + (inputs + `(("netcdf" ,netcdf) + ("zlib" ,zlib))) + (home-page "https://cran.r-project.org/web/packages/ncdf4/index.html") + (synopsis "R interface to Unidata netCDF format data files") + (description + "This package provides a high-level R interface to data files written +using Unidata's netCDF library (version 4 or earlier), which are binary data +files that are portable across platforms and include metadata information in +addition to the data sets. Using this package, netCDF files can be opened and +data sets read in easily. It is also easy to create new netCDF dimensions, +variables, and files, in either version 3 or 4 format, and manipulate existing +netCDF files.") + (license license:gpl3+))) + +(define-public r-biocmanager + (package + (name "r-biocmanager") + (version "1.30.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "BiocManager" version)) + (sha256 + (base32 + "0kxs76pixk1d2lpvkyrq6nnvv1rqf55ph5f7igkadyyqirf3y2ah")))) + (properties `((upstream-name . "BiocManager"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/BiocManager/") + (synopsis "Access the Bioconductor project package repository") + (description + "This package provides a convenient tool to install and update +Bioconductor packages.") + (license license:artistic2.0))) + +(define-public r-rgl + (package + (name "r-rgl") + (version "0.99.16") + (source + (origin + (method url-fetch) + (uri (cran-uri "rgl" version)) + (sha256 + (base32 + "0q8sg8fr0140ilssqhscaxkjc29w1rpp6f4k50amw3zzs9g58ak9")))) + (build-system r-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("freetype" ,freetype) + ("libpng" ,libpng) + ("glu" ,glu) + ("libx11" ,libx11) + ("ghc-pandoc" ,ghc-pandoc) + ("zlib" ,zlib))) + (propagated-inputs + `(("r-crosstalk" ,r-crosstalk) + ("r-htmltools" ,r-htmltools) + ("r-htmlwidgets" ,r-htmlwidgets) + ("r-jsonlite" ,r-jsonlite) + ("r-knitr" ,r-knitr) + ("r-magrittr" ,r-magrittr) + ("r-manipulatewidget" ,r-manipulatewidget) + ("r-shiny" ,r-shiny))) + (home-page "https://r-forge.r-project.org/projects/rgl/") + (synopsis "3D visualization using OpenGL") + (description + "This package provides medium to high level functions for 3D interactive graphics, +including functions modelled on base graphics (@code{plot3d()}, etc.) as well +as functions for constructing representations of geometric +objects (@code{cube3d()}, etc.). Output may be on screen using OpenGL, or to +various standard 3D file formats including WebGL, PLY, OBJ, STL as well as 2D +image formats, including PNG, Postscript, SVG, PGF.") + ;; Any version of the GPL. + (license (list license:gpl2+ license:gpl3+)))) + +(define-public r-multicool + (package + (name "r-multicool") + (version "0.1-10") + (source + (origin + (method url-fetch) + (uri (cran-uri "multicool" version)) + (sha256 + (base32 + "1ybg9piya9psqg42w9i3zsnavbxhkfklfwl7cb420i5nkq6wpc2v")))) + (build-system r-build-system) + (propagated-inputs `(("r-rcpp" ,r-rcpp))) + (home-page "https://cran.r-project.org/web/packages/multicool/") + (synopsis "Permutations of multisets in cool-lex order") + (description + "This package provides a set of tools to permute multisets without loops +or hash tables and to generate integer partitions. Cool-lex order is similar +to colexicographical order.") + (license license:gpl2))) + +(define-public r-misc3d + (package + (name "r-misc3d") + (version "0.8-4") + (source + (origin + (method url-fetch) + (uri (cran-uri "misc3d" version)) + (sha256 + (base32 + "0qjzpw3h09qi2gfz52b7nhzd95p7yyxsd03fldc9wzzn6wi3vpkm")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/misc3d/") + (synopsis "Miscellaneous 3D Plots") + (description + "This package provides a collection of miscellaneous 3d plots, including +isosurfaces.") + ;; Any version of the GPL. + (license (list license:gpl2+ license:gpl3+)))) + +(define-public r-ks + (package + (name "r-ks") + (version "1.11.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "ks" version)) + (sha256 + (base32 + "0z749c3xzpf6n0g7xcfplrhap1di8k7kcfr7vigh95ywnigyhs8d")))) + (build-system r-build-system) + (propagated-inputs + `(("r-fnn" ,r-fnn) + ("r-kernlab" ,r-kernlab) + ("r-kernsmooth" ,r-kernsmooth) + ("r-matrix" ,r-matrix) + ("r-mclust" ,r-mclust) + ("r-mgcv" ,r-mgcv) + ("r-misc3d" ,r-misc3d) + ("r-multicool" ,r-multicool) + ("r-mvtnorm" ,r-mvtnorm))) + (home-page "http://www.mvstat.net/tduong/") + (synopsis "Kernel smoothing") + (description + "This package provides kernel smoothers for univariate and multivariate +data, including density functions, density derivatives, cumulative +distributions, modal clustering, discriminant analysis, and two-sample +hypothesis testing.") + ;; Either version of the GPL. + (license (list license:gpl2 license:gpl3)))) + +(define-public r-feature + (package + (name "r-feature") + (version "1.2.13") + (source + (origin + (method url-fetch) + (uri (cran-uri "feature" version)) + (sha256 + (base32 + "07hkw0bv38naj2hdsx4xxrm2dngi6w3rbvgr7s50bjic8hlgy1ra")))) + (build-system r-build-system) + (propagated-inputs + `(("r-ks" ,r-ks) + ("r-misc3d" ,r-misc3d) + ("r-rgl" ,r-rgl))) + (home-page "http://www.mvstat.net/tduong/") + (synopsis "Inferential feature significance for kernel density estimation") + (description + "The feature package contains functions to display and compute kernel +density estimates, significant gradient and significant curvature regions. +Significant gradient and/or curvature regions often correspond to significant +features (e.g. local modes).") + ;; Either version of the GPL. + (license (list license:gpl2 license:gpl3)))) + +(define-public r-arm + (package + (name "r-arm") + (version "1.10-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "arm" version)) + (sha256 + (base32 + "0vvp90jygajd6ydky57z66wqjq9msfbl88irj5jbsray574mh4bg")))) + (build-system r-build-system) + (propagated-inputs + `(("r-abind" ,r-abind) + ("r-coda" ,r-coda) + ("r-lme4" ,r-lme4) + ("r-mass" ,r-mass) + ("r-matrix" ,r-matrix) + ("r-nlme" ,r-nlme))) + (home-page "https://cran.r-project.org/web/packages/arm/") + (synopsis "Data analysis using regression and multilevel/hierarchical models") + (description + "This package provides functions to accompany A. Gelman and J. Hill, +Data Analysis Using Regression and Multilevel/Hierarchical Models, Cambridge +University Press, 2007.") + (license license:gpl3+))) + +(define-public r-circular + (package + (name "r-circular") + (version "0.4-93") + (source + (origin + (method url-fetch) + (uri (cran-uri "circular" version)) + (sha256 + (base32 + "0hki85rs8wc5950pjaw28q54rly2napfbcrx3pchlfap6wwy5kkn")))) + (build-system r-build-system) + (propagated-inputs + `(("r-boot" ,r-boot) + ("r-mvtnorm" ,r-mvtnorm))) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/circular/") + (synopsis "Circular statistics") + (description + "This package provides tools for circular statistics, from \"Topics in +circular Statistics\" (2001) S. Rao Jammalamadaka and A. SenGupta, World +Scientific.") + (license license:gpl2+))) + +(define-public r-activity + (package + (name "r-activity") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "activity" version)) + (sha256 + (base32 + "1lqajgxfps2h6amz1791vp3f52rs9ghmanq1nqfxqd2jmk3idkrx")))) + (build-system r-build-system) + (propagated-inputs + `(("r-circular" ,r-circular) + ("r-overlap" ,r-overlap) + ("r-pbapply" ,r-pbapply))) + (home-page "https://cran.r-project.org/web/packages/activity/") + (synopsis "Animal activity statistics") + (description + "This package provides functions to fit kernel density functions to +animal activity time data; plot activity distributions; quantify overall +levels of activity; statistically compare activity metrics through +bootstrapping; and evaluate variation in linear variables with time (or other +circular variables).") + (license license:gpl3))) + +(define-public r-ouch + (package + (name "r-ouch") + (version "2.11-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "ouch" version)) + (sha256 + (base32 + "0xkwwi62vdahlcg3k32zb1nfwsx87zdssk79mvcxgfsw9bw4gahx")))) + (build-system r-build-system) + (propagated-inputs `(("r-subplex" ,r-subplex))) + (home-page "http://kingaa.github.io/ouch/") + (synopsis "Ornstein-Uhlenbeck models for phylogenetic comparative hypotheses") + (description + "This package provides tools to fit and compare Ornstein-Uhlenbeck models +for evolution along a phylogenetic tree.") + (license license:gpl2+))) + +(define-public r-fmsb + (package + (name "r-fmsb") + (version "0.6.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "fmsb" version)) + (sha256 + (base32 + "1n29bnyp20pvpk2lsa9fblsj5w7amp14snc74pk5w3yr5y6rj0s5")))) + (build-system r-build-system) + (home-page "http://minato.sip21c.org/msb/") + (synopsis "Functions for medical statistics book with demographic data") + (description + "This package provides several utility functions for the book entitled +\"Practices of Medical and Health Data Analysis using R\" (Pearson Education +Japan, 2007) with Japanese demographic data and some demographic analysis +related functions.") + (license license:gpl2+))) diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index bbd779ae4e..2fcb7fb36b 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> @@ -356,7 +356,7 @@ target that libc." ,@(package-arguments glibc/hurd-headers)) ((#:phases phases) `(modify-phases ,phases - (add-before 'pre-configure 'set-cross-headers-path + (add-after 'unpack 'set-cross-headers-path (lambda* (#:key inputs #:allow-other-keys) (let* ((mach (assoc-ref inputs "gnumach-headers")) (hurd (assoc-ref inputs "hurd-headers")) @@ -426,17 +426,9 @@ target that libc." (xheaders (cross-kernel-headers target))) "Return a libc cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS and the cross tool chain." - (define (cross-libc-for-target target) - "Return libc depending on TARGET." - (match target - ((or "i586-pc-gnu" "i586-gnu") glibc/hurd) - (_ glibc/linux))) - - ;; Use (cross-libc-for-target ...) to determine the correct libc to use. - (if (cross-newlib? target) (native-libc target) - (let ((libc (cross-libc-for-target target))) + (let ((libc glibc)) (package (inherit libc) (name (string-append "glibc-cross-" target)) (arguments @@ -457,7 +449,9 @@ XBINUTILS and the cross tool chain." ,@(package-arguments libc)) ((#:configure-flags flags) `(cons ,(string-append "--host=" target) - ,flags)) + ,(if (hurd-triplet? target) + `(cons "--disable-werror" ,flags) + flags))) ((#:phases phases) `(modify-phases ,phases (add-before 'configure 'set-cross-kernel-headers-path diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 77b4dba6d4..e8062f0e1f 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 David Thompson <davet@gnu.org> -;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox> ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -94,7 +94,7 @@ communication, encryption, decryption, signatures, etc.") (define-public libmd (package (name "libmd") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri @@ -105,7 +105,7 @@ communication, encryption, decryption, signatures, etc.") version ".tar.xz"))) (sha256 (base32 - "1iv45npzv0gncjgcpx5m081861zdqxw667ysghqb8721yrlyl6pj")))) + "0waclg2d5qin3r26gy5jvy4584ik60njc8pqbzwk0lzq3j9ynkp1")))) (build-system gnu-build-system) (synopsis "Message Digest functions from BSD systems") (description @@ -164,34 +164,31 @@ OpenBSD tool of the same name.") "See base64.c in the distribution for the license from IBM."))))) - (define-public opendht (package (name "opendht") (version "0.6.1") - (source - (origin - (method url-fetch) - (uri - (string-append - "https://github.com/savoirfairelinux/" name - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (modules '((guix build utils))) - (snippet - '(begin - (delete-file-recursively "src/argon2") - (substitute* "src/Makefile.am" - (("./argon2/libargon2.la") "") - (("SUBDIRS = argon2") "")) - (substitute* "src/crypto.cpp" - (("argon2/argon2.h") "argon2.h")) - (substitute* "configure.ac" - (("src/argon2/Makefile") "")) - #t)) - (sha256 - (base32 - "09yvkmbqbym3b5md4n96qc1s9sf2n8ji404hagih45rmsj49599x")))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/savoirfairelinux/opendht.git") + (commit version))) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "src/argon2") + (substitute* "src/Makefile.am" + (("./argon2/libargon2.la") "") + (("SUBDIRS = argon2") "")) + (substitute* "src/crypto.cpp" + (("argon2/argon2.h") "argon2.h")) + (substitute* "configure.ac" + (("src/argon2/Makefile") "")) + #t)) + (sha256 + (base32 + "1akk613f18rc8kqs0cxdm34iq7wwc9kffhgp5rng09arwlw8gw3w")))) (build-system gnu-build-system) (inputs `(("gnutls" ,gnutls) @@ -206,11 +203,7 @@ OpenBSD tool of the same name.") ("automake" ,automake) ("libtool" ,libtool))) (arguments - `(#:configure-flags '("--disable-tools" "--disable-python") - #:phases (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + `(#:configure-flags '("--disable-tools" "--disable-python"))) (home-page "https://github.com/savoirfairelinux/opendht/") (synopsis "Distributed Hash Table (DHT) library") (description "OpenDHT is a Distributed Hash Table (DHT) library. It may diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 0655e8f393..4343910d59 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -382,23 +382,27 @@ device-specific programs to convert and print many types of files.") (define-public hplip (package (name "hplip") - (version "3.18.6") + (version "3.18.9") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/hplip/hplip/" version "/hplip-" version ".tar.gz")) (sha256 (base32 - "0zbv6cp9n3xypf2fg4j6fpz8zkvl0z08lyc1vq1gd04ln1l3xkqf")) + "0g3q5mm2crjyc1z4z6gv4lam6sc5d3diz704djrnpqadk4q3h290")) (modules '((guix build utils))) + (patches (search-patches "hplip-remove-imageprocessor.patch")) (snippet - ;; Fix type mismatch. '(begin + ;; Delete non-free blobs + (for-each delete-file (find-files "." "\\.so$")) + (delete-file "prnt/hpcups/ImageProcessor.h") + ;; Fix type mismatch. (substitute* "prnt/hpcups/genPCLm.cpp" (("boolean") "bool")) #t)))) (build-system gnu-build-system) - (home-page "http://hplipopensource.com/") + (home-page "https://developers.hp.com/hp-linux-imaging-and-printing") (synopsis "HP printer drivers") (description "Hewlett-Packard printer drivers and PostScript Printer Descriptions @@ -414,6 +418,8 @@ device-specific programs to convert and print many types of files.") `("--disable-network-build" ,(string-append "--prefix=" (assoc-ref %outputs "out")) ,(string-append "--sysconfdir=" (assoc-ref %outputs "out") "/etc") + ,(string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib") ;; Disable until mime.types merging works (FIXME). "--disable-fax-build" "--enable-hpcups-install" diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index b09afe328e..61313af7d2 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -51,6 +51,7 @@ (package (name "curl") (version "7.61.1") + (replacement curl-7.62.0) (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" @@ -141,6 +142,19 @@ tunneling, and so on.") "See COPYING in the distribution.")) (home-page "https://curl.haxx.se/"))) +(define-public curl-7.62.0 + (package + (inherit curl) + (version "7.62.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://curl.haxx.se/download/curl-" + version ".tar.xz")) + (sha256 + (base32 + "1hbm29r3pirhn4gkcnd94ylc4jzgn3v3v7qbay9awxg7bwx69dfs")))))) + (define-public kurly (package (name "kurly") diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index a7c406dc25..0fa6d451ed 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -153,7 +153,7 @@ (modify-phases %standard-phases (add-after 'unpack 'generate-configure (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) ;; http://www.4store.org has been down for a while now. (home-page "https://github.com/4store/4store") (synopsis "Clustered RDF storage and query engine") @@ -207,14 +207,16 @@ and provides interfaces to the traditional file format.") (delete 'reset-gzip-timestamps) (add-before 'check 'start-mongodb (lambda* (#:key tests? #:allow-other-keys) - (or (not tests?) - (with-directory-excursion "src/gopkg.in/mgo.v2" - (invoke "make" "startdb"))))) + (when tests? + (with-directory-excursion "src/gopkg.in/mgo.v2" + (invoke "make" "startdb"))) + #t)) (add-after 'check 'stop'mongodb (lambda* (#:key tests? #:allow-other-keys) - (or (not tests?) - (with-directory-excursion "src/gopkg.in/mgo.v2" - (invoke "make" "stopdb")))))))) + (when tests? + (with-directory-excursion "src/gopkg.in/mgo.v2" + (invoke "make" "stopdb"))) + #t))))) (native-inputs `(("go-gopkg.in-check.v1" ,go-gopkg.in-check.v1) ("mongodb" ,mongodb) @@ -503,37 +505,35 @@ applications.") #t)) (replace 'build (lambda _ - (zero? (apply system* - `("scons" + (apply invoke `("scons" ,@common-options - "mongod" "mongo" "mongos"))))) + "mongod" "mongo" "mongos")))) (replace 'check (lambda* (#:key tests? inputs #:allow-other-keys) (setenv "TZDIR" (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo")) - (or (not tests?) - ;; Note that with the tests, especially the unittests, the - ;; build can take up to ~45GB of space, as many tests are - ;; individual executable files, with some being hundreds of - ;; megabytes in size. - (begin - (apply - invoke `("scons" ,@common-options "dbtest" "unittests")) - (substitute* "build/unittests.txt" - ;; TODO: Don't run the async_stream_test, as it hangs - (("^build\\/opt\\/mongo\\/executor\\/async\\_stream\\_test\n$") - "") - ;; TODO: This test fails - ;; Expected 0UL != disks.size() (0 != 0) @src/mongo/util/procparser_test.cpp:476 - (("^build\\/opt\\/mongo\\/util\\/procparser\\_test\n$") - "")) - (invoke "python" "buildscripts/resmoke.py" - "--suites=dbtest,unittests" - (format #f "--jobs=~a" (parallel-job-count))))))) + (when tests? + ;; Note that with the tests, especially the unittests, the + ;; build can take up to ~45GB of space, as many tests are + ;; individual executable files, with some being hundreds of + ;; megabytes in size. + (apply invoke `("scons" ,@common-options "dbtest" "unittests")) + (substitute* "build/unittests.txt" + ;; TODO: Don't run the async_stream_test, as it hangs + (("^build\\/opt\\/mongo\\/executor\\/async\\_stream\\_test\n$") + "") + ;; TODO: This test fails + ;; Expected 0UL != disks.size() (0 != 0) @src/mongo/util/procparser_test.cpp:476 + (("^build\\/opt\\/mongo\\/util\\/procparser\\_test\n$") + "")) + (invoke "python" "buildscripts/resmoke.py" + "--suites=dbtest,unittests" + (format #f "--jobs=~a" (parallel-job-count)))) + #t)) (replace 'install - (lambda _ - (let ((bin (string-append (assoc-ref %outputs "out") "/bin"))) + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (install-file "mongod" bin) (install-file "mongos" bin) (install-file "mongo" bin)) @@ -621,7 +621,7 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.36") + (version "10.1.37") (source (origin (method url-fetch) (uri (string-append "https://downloads.mariadb.org/f/" @@ -629,7 +629,7 @@ Language.") name "-" version ".tar.gz")) (sha256 (base32 - "0n5aj76mn9rxc21l2kjmfrg10bmsyy4cic68khjr94iby262wx5d")) + "0ijdmdn9mcciwv361zfmja6b1h6qpbdqgrnnq6kkdapplyq1dmcc")) (patches (search-patches "mariadb-client-test-32bit.patch")) (modules '((guix build utils))) (snippet @@ -804,14 +804,14 @@ as a drop-in replacement of MySQL.") (define-public postgresql (package (name "postgresql") - (version "10.5") + (version "10.6") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "04a07jkvc5s6zgh6jr78149kcjmsxclizsqabjw44ld4j5n633kc")))) + "0jv26y3f10svrjxzsgqxg956c86b664azyk2wppzpa5x11pjga38")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-uuid=e2fs") @@ -849,14 +849,14 @@ pictures, sounds, or video.") (package (inherit postgresql) (name "postgresql") - (version "9.6.9") + (version "9.6.11") (source (origin (method url-fetch) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "0biy8j69dbvdmrag55pdszpc0702agzqhhcwdx21xp02mzim4ydr")))))) + "0c55akrkzqd6p6a8hr0338wk246hl76r9j16p4zn3s51d7f0l99q")))))) (define-public python-pymysql (package @@ -989,15 +989,16 @@ types are supported, as is encryption.") (define-public rocksdb (package (name "rocksdb") - (version "5.12.4") + (version "5.15.10") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/facebook/rocksdb" - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/facebook/rocksdb") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1jcwgsjhk4hdfr2wf549blkgb89vwcdb5i2ahhqs6zf3mm20i3bf")) + "0q26frbj9pykarcfa0yxgwncxlvsqhjkby0jrbfs1a8srja688r4")) (modules '((guix build utils))) (snippet '(begin @@ -1118,7 +1119,8 @@ data in a single database. RocksDB is partially based on @code{LevelDB}.") (lambda _ (substitute* "Makefile" (("^gitrev :=.*$") - (string-append "gitrev = \"v" ,version "\""))))) + (string-append "gitrev = \"v" ,version "\""))) + #t)) ;; The install phase of the Makefile assumes $PREFIX/usr/local/bin. ;; This replacement does the same thing, except for using $PREFIX/bin ;; instead. @@ -1127,14 +1129,13 @@ data in a single database. RocksDB is partially based on @code{LevelDB}.") (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (install-file "sparql-query" bin) - (system* "ln" "--symbolic" - (string-append bin "/sparql-query") - (string-append bin "/sparql-update"))))) + (symlink (string-append bin "/sparql-query") + (string-append bin "/sparql-update"))) + #t)) (replace 'check (lambda* (#:key make-flags #:allow-other-keys) - (and - (zero? (apply system* "make" `(,@make-flags "scan-test"))) - (zero? (system "./scan-test")))))))) + (apply invoke "make" `(,@make-flags "scan-test")) + (invoke "./scan-test")))))) (home-page "https://github.com/tialaramex/sparql-query/") (synopsis "Command-line tool for accessing SPARQL endpoints over HTTP") (description "Sparql-query is a command-line tool for accessing SPARQL @@ -1227,6 +1228,18 @@ is in the public domain.") ((#:configure-flags flags) `(cons "--enable-fts5" ,flags)))))) +;; This is used by Qt. +(define-public sqlite-with-column-metadata + (package (inherit sqlite) + (name "sqlite-with-column-metadata") + (arguments + (substitute-keyword-arguments (package-arguments sqlite) + ((#:configure-flags flags) + `(list (string-append "CFLAGS=-O2 -DSQLITE_SECURE_DELETE " + "-DSQLITE_ENABLE_UNLOCK_NOTIFY " + "-DSQLITE_ENABLE_DBSTAT_VTAB " + "-DSQLITE_ENABLE_COLUMN_METADATA"))))))) + (define-public tdb (package (name "tdb") @@ -1247,8 +1260,8 @@ is in the public domain.") (let ((out (assoc-ref outputs "out"))) ;; The 'configure' script is a wrapper for Waf and ;; doesn't recognize things like '--enable-fast-install'. - (zero? (system* "./configure" - (string-append "--prefix=" out))))))))) + (invoke "./configure" + (string-append "--prefix=" out)))))))) (native-inputs `(;; TODO: Build the documentation. ;; ("docbook-xsl" ,docbook-xsl) @@ -1967,14 +1980,14 @@ can autogenerate peewee models using @code{pwiz}, a model generator.") (define-public sqlcipher (package (name "sqlcipher") - (version "3.3.1") + (version "3.4.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/sqlcipher/" name "/archive/v" version ".tar.gz")) (sha256 - (base32 "1gv58dlbpzrmznly52yqbxgvii0ib88zr3aszla1bsypwjr6flff")) + (base32 "1nxarwbci8jx99f1d0y1ivxcv25s78l1p7q6qy28lkpkcx8pm2b9")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (inputs @@ -1997,8 +2010,7 @@ can autogenerate peewee models using @code{pwiz}, a model generator.") (assoc-ref %standard-phases 'check)) (replace 'check (lambda _ - (zero? - (system* "./testfixture" "test/crypto.test"))))))) + (invoke "./testfixture" "test/crypto.test")))))) (home-page "https://www.zetetic.net/sqlcipher/") (synopsis "Library providing transparent encryption of SQLite database files") @@ -2075,13 +2087,14 @@ for ODBC.") (version "0.7.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/brianb/mdbtools/archive/" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/brianb/mdbtools.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "05hbmxcq173kzb899gdi3bz2qcc1vi3n1qbbkwpsvrq7ggf11wyw")) - (file-name (string-append name "-" version ".tar.gz")))) + "0gwcpp9y09xhs21g7my2fs8ncb8i6ahlyixcx8jd3q97jbzj441l")))) (build-system gnu-build-system) (inputs `(("glib" ,glib))) @@ -2092,12 +2105,6 @@ for ODBC.") ("pkg-config" ,pkg-config) ("txt2man" ,txt2man) ("which" ,which))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) (home-page "http://mdbtools.sourceforge.net/") (synopsis "Read Microsoft Access databases") (description "MDB Tools is a set of tools and applications to read the @@ -2412,14 +2419,14 @@ You might also want to install the following optional dependencies: (define-public python-alembic (package (name "python-alembic") - (version "0.9.6") + (version "1.0.2") (source (origin (method url-fetch) (uri (pypi-uri "alembic" version)) (sha256 (base32 - "0cm73vabrqj92v7a0wwvldj8j7bc7dwv358kvkk7p87gx7mm2a04")))) + "0asqz9mwc4w8bsar1icv3ik9jslxrj3gv3yxgmhc6nc6r9qbkg04")))) (build-system python-build-system) (native-inputs `(("python-mock" ,python-mock) @@ -2737,13 +2744,13 @@ reasonable substitute.") (define-public python-rq (package (name "python-rq") - (version "0.7.1") + (version "0.12.0") (source (origin (method url-fetch) (uri (pypi-uri "rq" version)) (sha256 - (base32 "0gaq5pnh0zy46r8jvygi0ifbvz3pq6i7xla78ijcgjw0x77qzsdh")))) + (base32 "16d8kni57xlnah2hawy4xgw21xrv3f64j5q5shyp3zxx4yd9iibs")))) (build-system python-build-system) (propagated-inputs `(("python-click" ,python-click) @@ -2798,7 +2805,7 @@ is designed to have a low barrier to entry.") `(#:phases (modify-phases %standard-phases (replace 'check - (lambda _ (zero? (system* "py.test"))))))) + (lambda _ (invoke "py.test")))))) (native-inputs `(("python-pytest" ,python-pytest))) (home-page "https://github.com/andialbrecht/sqlparse") @@ -2861,45 +2868,58 @@ transforms idiomatic python function calls to well-formed SQL queries.") (delete-file-recursively "src/github.com/mongodb/mongo-tools/vendor") #t)) + (add-after 'delete-bundled-source-code 'patch-source + (lambda _ + ;; Remove a redundant argument that causes compilation to fail. + (substitute* + "src/github.com/mongodb/mongo-tools/mongorestore/filepath.go" + (("skipping restore of system.profile collection\", db)") + "skipping restore of system.profile collection\")")) + #t)) ;; We don't need to install the source code for end-user applications (delete 'install-source) (replace 'build (lambda _ - (every (lambda (tool) - (let ((command - `("go" "build" - ;; This is where the tests expect to find the - ;; executables - "-o" ,(string-append - "src/github.com/mongodb/mongo-tools/bin/" - tool) - "-v" - "-tags=\"ssl sasl\"" - "-ldflags" - "-extldflags=-Wl,-z,now,-z,relro" - ,(string-append - "src/github.com/mongodb/mongo-tools/" - tool "/main/" tool ".go")))) - (simple-format #t "build: running ~A\n" - (string-join command)) - (apply invoke command))) - all-tools))) + (for-each (lambda (tool) + (let ((command + `("go" "build" + ;; This is where the tests expect to find the + ;; executables + "-o" ,(string-append + "src/github.com/mongodb/mongo-tools/bin/" + tool) + "-v" + "-tags=\"ssl sasl\"" + "-ldflags" + "-extldflags=-Wl,-z,now,-z,relro" + ,(string-append + "src/github.com/mongodb/mongo-tools/" + tool "/main/" tool ".go")))) + (simple-format #t "build: running ~A\n" + (string-join command)) + (apply invoke command))) + all-tools) + #t)) (replace 'check (lambda _ (with-directory-excursion "src" - (every (lambda (tool) - (invoke - "go" "test" "-v" - (string-append "github.com/mongodb/mongo-tools/" tool))) - all-tools)))) + (for-each (lambda (tool) + (invoke + "go" "test" "-v" + (string-append "github.com/mongodb/mongo-tools/" + tool))) + all-tools)) + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (for-each (lambda (tool) (install-file - (string-append "src/github.com/mongodb/mongo-tools/bin/" tool) + (string-append "src/github.com/mongodb/mongo-tools/bin/" + tool) (string-append (assoc-ref outputs "out") "/bin"))) - all-tools))))))) + all-tools) + #t)))))) (native-inputs `(("go-github.com-howeyc-gopass" ,go-github.com-howeyc-gopass) ("go-github.com-jessevdk-go-flags" ,go-github.com-jessevdk-go-flags) diff --git a/gnu/packages/datastructures.scm b/gnu/packages/datastructures.scm index 8517654def..4e5e59a2e3 100644 --- a/gnu/packages/datastructures.scm +++ b/gnu/packages/datastructures.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -48,6 +49,29 @@ binary trees, binary search trees, red-black trees, 2D arrays, permutations and heaps.") (license license:gpl2+))) +(define-public marisa + (package + (name "marisa") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/s-yata/marisa-trie" + "/releases/download/v" version "/" name "-" + version ".tar.gz")) + (sha256 + (base32 "19ifrcmnbr9whaaf4ly3s9ndyiq9sjqhnfkrxbz9zsb44w2n36hf")))) + (build-system gnu-build-system) + (home-page "https://github.com/s-yata/marisa-trie") + (synopsis "Trie data structure C++ library") + (description "Matching Algorithm with Recursively Implemented +StorAge (MARISA) is a static and space-efficient trie data structure C++ +library.") + + ;; Dual-licensed, according to docs/readme.en.html (source files lack + ;; copyright/license headers.) + (license (list license:bsd-2 license:lgpl2.1+)))) + (define-public sparsehash (package (name "sparsehash") diff --git a/gnu/packages/dav.scm b/gnu/packages/dav.scm index 1a154ea351..e937d59358 100644 --- a/gnu/packages/dav.scm +++ b/gnu/packages/dav.scm @@ -30,13 +30,13 @@ (define-public radicale (package (name "radicale") - (version "1.1.2") + (version "1.1.6") (source (origin (method url-fetch) (uri (pypi-uri "Radicale" version)) (sha256 (base32 - "1g20p3998f46ywda7swv0py63wjbrhvk0nrafajlbb6wgzxjmqpb")))) + "0ay90nj6fmr2aq8imi0mbjl4m2rzq7a83ikj8qs9gxsylj71j1y0")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; The tests are not distributed in the PyPi release. diff --git a/gnu/packages/debian.scm b/gnu/packages/debian.scm index 5ea263149e..ba19547898 100644 --- a/gnu/packages/debian.scm +++ b/gnu/packages/debian.scm @@ -27,21 +27,22 @@ #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages gnupg) - #:use-module (gnu packages perl) - #:use-module (gnu packages wget)) + #:use-module (gnu packages perl)) (define-public debian-archive-keyring (package (name "debian-archive-keyring") - (version "2017.7") + (version "2018.1") (source (origin - (method url-fetch) - (uri (string-append "mirror://debian/pool/main/d/" name "/" - name "_" version ".tar.xz")) + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/release-team/debian-archive-keyring.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1pdwgipfi0y4svhxlw8arhq792f1g3vlmw4raphizy7sa65vd4ca")))) + "136vr5dj7w0dz563qdghsndcfcqm2m8d4j1dyiq9dzx5vd0rcpcw")))) (build-system gnu-build-system) (arguments '(#:test-target "verify-results" @@ -116,7 +117,7 @@ contains the archive keys used for that.") (define-public debootstrap (package (name "debootstrap") - (version "1.0.106") + (version "1.0.111") (source (origin (method git-fetch) @@ -126,7 +127,7 @@ contains the archive keys used for that.") (file-name (git-file-name name version)) (sha256 (base32 - "1fm5bgllcwgwizrqi4sn8p4fpbzhbzgwprrfppfq9hqdzbmlfmnv")))) + "1b8s00a2kvaajqhjlms3q2dk3gqv6g4yq9h843jal1pm66zsx19n")))) (build-system gnu-build-system) (arguments `(#:phases @@ -135,46 +136,57 @@ contains the archive keys used for that.") (add-after 'unpack 'patch-source (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) - (coreutils (assoc-ref inputs "coreutils")) - (wget (assoc-ref inputs "wget")) + (tzdata (assoc-ref inputs "tzdata")) (debian (assoc-ref inputs "debian-keyring")) (ubuntu (assoc-ref inputs "ubuntu-keyring"))) (substitute* "Makefile" (("/usr") "") (("-o root -g root") "") (("chown root.*") "\n")) - (substitute* "scripts/sid" + (substitute* '("scripts/etch" + "scripts/potato" + "scripts/sarge" + "scripts/sid" + "scripts/woody" + "scripts/woody.buildd") (("/usr") debian)) (substitute* "scripts/gutsy" (("/usr") ubuntu)) (substitute* "debootstrap" - (("chroot ") (string-append coreutils "/bin/chroot ")) (("=/usr") (string-append "=" out))) - (substitute* "functions" - (("wget ") (string-append wget "/bin/wget "))) + (substitute* (find-files "scripts" ".") + (("/usr/share/zoneinfo") (string-append tzdata "/share/zoneinfo"))) #t))) (add-after 'install 'install-man-file (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (install-file "debootstrap.8" (string-append out "/share/man/man8")) + #t))) + (add-after 'install 'wrap-executable + (lambda* (#:key outputs #:allow-other-keys) + (let ((debootstrap (string-append (assoc-ref outputs "out") + "/sbin/debootstrap")) + (path (getenv "PATH"))) + (wrap-program debootstrap + `("PATH" ":" prefix (,path))) #t)))) #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))) #:tests? #f)) ; no tests (inputs - `(("coreutils" ,coreutils) - ("debian-keyring" ,debian-archive-keyring) + `(("debian-keyring" ,debian-archive-keyring) ("ubuntu-keyring" ,ubuntu-keyring) - ("wget" ,wget))) - ;; The following are required for debootstrap to work correctly - (propagated-inputs - `(("binutils" ,binutils) - ("gnupg" ,gnupg) - ("perl" ,perl))) + ("tzdata" ,tzdata))) + (native-inputs + `(("perl" ,perl))) (home-page "https://tracker.debian.org/pkg/debootstrap") (synopsis "Bootstrap a basic Debian system") (description "Debootstrap is used to create a Debian base system from scratch, without requiring the availability of @code{dpkg} or @code{apt}. It does this by downloading .deb files from a mirror site, and carefully -unpacking them into a directory which can eventually be chrooted into.") +unpacking them into a directory which can eventually be chrooted into. + +It is recommended to run @code{debootstrap --foreign --arch=...} and then +@code{chroot} into the directory, set the PATH and run @code{debootstrap +--second-stage} after.") (license license:gpl2))) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index ce7ef1cf75..039ec45965 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> +;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,22 +23,29 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages dictionaries) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages curl) #:use-module (gnu packages emacs) + #:use-module (gnu packages flex) #:use-module (gnu packages fribidi) #:use-module (gnu packages linux) + #:use-module (gnu packages pcre) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages texinfo) #:use-module (gnu packages compression) - #:use-module (gnu packages tcl)) + #:use-module (gnu packages tcl) + #:use-module (gnu packages xml)) (define-public vera @@ -87,7 +95,7 @@ (description "V.E.R.A. (Virtual Entity of Relevant Acronyms) is a list of computing acronyms distributed as an info document.") - (license fdl1.3+))) + (license license:fdl1.3+))) (define-public gcide (package @@ -125,7 +133,7 @@ acronyms distributed as an info document.") be used via the GNU Dico program or accessed online at http://gcide.gnu.org.ua/") (home-page "http://gcide.gnu.org.ua/") - (license gpl3+))) + (license license:gpl3+))) (define-public diction ;; Not quite a dictionary, not quite a spell checker either… @@ -147,7 +155,7 @@ Diction is used to identify wordy and commonly misused phrases in a body of text. Style instead analyzes surface aspects of a written work, such as sentence length and other readability measures.") (home-page "https://www.gnu.org/software/diction/") - (license gpl3+))) + (license license:gpl3+))) (define-public ding (package @@ -207,7 +215,7 @@ work, such as sentence length and other readability measures.") (description "Ding is a dictionary lookup program for the X window system. It comes with a German-English dictionary with approximately 270,000 entries.") (home-page "http://www-user.tu-chemnitz.de/~fri/ding/") - (license gpl2+))) + (license license:gpl2+))) (define-public grammalecte (package @@ -222,7 +230,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.") (base32 "11byjs3ggdhia5f4vyfqfvbbczsfqimll98h98g7hlsrm7vrifb0")))) (build-system python-build-system) - (home-page "https://www.dicollecte.org") + (home-page "https://grammalecte.net") (synopsis "French spelling and grammar checker") (description "Grammalecte is a grammar checker dedicated to the French language, derived from Lightproof. @@ -234,7 +242,7 @@ a dubious expression is wrong, it will keep silent. The package provides the command line interface, along with a server and a Python library.") - (license gpl3+))) + (license license:gpl3+))) (define-public translate-shell (package @@ -283,4 +291,87 @@ and a Python library.") translator powered by Google Translate (default), Bing Translator, Yandex.Translate and Apertium. It gives you easy access to one of these translation engines from your terminal.") - (license public-domain))) + (license license:public-domain))) + +(define-public lttoolbox + (package + (name "lttoolbox") + (version "3.5.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/apertium/lttoolbox/releases/download/v" + version "/lttoolbox-" version ".tar.gz")) + (sha256 + (base32 + "08y6pf1hl7prwygy1g8h6ndqww18pmb9f3r5988q0pcrp8w6xz6b")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system gnu-build-system) + (inputs + `(("libxml2" ,libxml2))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://wiki.apertium.org/wiki/Lttoolbox") + (synopsis "Lexical processing toolbox") + (description "Lttoolbox is a toolbox for lexical processing, morphological +analysis and generation of words. Analysis is the process of splitting a +word (e.g. cats) into its lemma \"cat\" and the grammatical information +@code{<n><pl>}. Generation is the opposite process.") + (license (list license:gpl2 ; main license + license:expat)))) ; utf8/* + +(define-public apertium + (package + (name "apertium") + (version "3.5.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/apertium/apertium/releases/download/v" + version "/apertium-" version ".tar.gz")) + (sha256 + (base32 + "0lrx58ipx2kzh1pd3xm1viz05dqyrq38jbnj9dnk92c9ckkwkp4h")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system gnu-build-system) + (inputs + `(("libxml2" ,libxml2) + ("libxslt" ,libxslt) + ("lttoolbox" ,lttoolbox) + ("pcre" ,pcre))) + (native-inputs + `(("apertium-get" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/apertium/apertium-get") + (commit "692d030e68008fc123089cf2446070fe8c6e3a3b"))) + (sha256 + (base32 + "0kgp68azvds7yjwfz57z8sa5094fyk5yr0qxzblrw7bisrrihnav")))) + ("flex" ,flex) + ("pkg-config" ,pkg-config) + ;; python is only required for running the test suite + ("python-minimal" ,python-minimal))) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; If apertium-get does not exist in the source tree, the build tries + ;; to download it using an svn checkout. To avoid this, copy + ;; apertium-get into the source tree. + (add-after 'unpack 'unpack-apertium-get + (lambda* (#:key inputs #:allow-other-keys) + (copy-recursively (assoc-ref inputs "apertium-get") + "apertium/apertium-get") + #t))))) + (home-page "https://www.apertium.org/") + (synopsis "Rule based machine translation system") + (description "Apertium is a rule based machine translation system +featuring a shallow-transfer machine translation engine. The design of the +system makes translations fast (translating tens of thousands of words per +second on ordinary desktop computers) and, in spite of the errors, reasonably +intelligible and easily correctable.") + (license (list license:gpl2 ; main license + license:expat)))) ; utf8/* diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index dea925e568..ea2e65a588 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -37,13 +37,13 @@ (define-public python-django (package (name "python-django") - (version "1.11.15") + (version "1.11.17") (source (origin (method url-fetch) (uri (pypi-uri "Django" version)) (sha256 (base32 - "0h2sl02x2mxr3rl3dy750pzm5kvmx77116fys8rrgw164kc3b0mi")))) + "10xlpm21ll8mgz5py41sz9vrd603qv7an736agbqxkxlyikfx1x7")))) (build-system python-build-system) (arguments '(#:modules ((srfi srfi-1) @@ -265,6 +265,41 @@ account authentication.") (define-public python2-django-allauth (package-with-python2 python-django-allauth)) +(define-public python-django-debug-toolbar + (package + (name "python-django-debug-toolbar") + (version "1.10.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/jazzband/django-debug-toolbar/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1rww056hyzks8spbgf4h7kf6ybxlc5p08a2b6gn1nqrrzs4yx9sy")))) + (build-system python-build-system) + (propagated-inputs + `(("python-sqlparse" ,python-sqlparse) + ("python-django" ,python-django))) + (native-inputs + `(("python-django-jinja" ,python-django-jinja) + ("python-html5lib" ,python-html5lib))) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "make" "test")))))) + (home-page + "https://github.com/jazzband/django-debug-toolbar") + (synopsis "Toolbar to help with developing Django applications") + (description + "A configurable set of panels that display information about the current +request and response as a toolbar on the rendered page.") + (license license:bsd-3))) + (define-public python-django-gravatar2 (package (name "python-django-gravatar2") @@ -338,6 +373,47 @@ merging, minifying and compiling CSS and Javascript files.") (define-public python2-django-assets (package-with-python2 python-django-assets)) +(define-public python-django-jinja + (package + (name "python-django-jinja") + (version "2.4.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/niwinz/django-jinja/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0bzrb4m6wx9ph5cpvz7wpvg5k6ksvj0dnxlg0nhhqskhvp46brs1")))) + (build-system python-build-system) + (propagated-inputs + `(("python-django" ,python-django) + ("python-jinja2" ,python-jinja2) + ("python-pytz" ,python-pytz) + ("python-django-pipeline" ,python-django-pipeline))) + (arguments + '(;; TODO Tests currently fail due to issues with the configuration for + ;; django-pipeline + #:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (or + (not tests?) + (with-directory-excursion "testing" + (invoke "python" "runtests.py")))))))) + (home-page + "https://niwinz.github.io/django-jinja/latest/") + (synopsis "Simple jinja2 templating backend for Django") + (description + "This package provides a templating backend for Django, using Jinja2. It +provides certain advantages over the builtin Jinja2 backend in Django, for +example, explicit calls to callables from templates and better performance.") + (license license:bsd-3))) + (define-public python-django-jsonfield (package (name "python-django-jsonfield") @@ -518,6 +594,46 @@ project.") (define-public python2-django-overextends (package-with-python2 python-django-overextends)) +(define-public python-django-pipeline + (package + (name "python-django-pipeline") + (version "1.6.14") + (source + (origin + (method url-fetch) + (uri (pypi-uri "django-pipeline" version)) + (sha256 + (base32 + "1a207y71r7za033ira0qmh2yrgp5rq0l04gw2fg9b8jri7sslrzg")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* "tests/tests/test_compiler.py" + (("\\/usr\\/bin\\/env") + (which "env"))))) + (replace 'check + (lambda*(#:key tests? #:allow-other-keys) + (or + (not tests?) + (begin + (setenv "DJANGO_SETTINGS_MODULE" "tests.settings") + (invoke "django-admin" "test" "tests")))))))) + (propagated-inputs + `(("python-django" ,python-django) + ("python-slimit" ,python-slimit) + ("python-jsmin" ,python-jsmin))) + (home-page + "https://github.com/jazzband/django-pipeline") + (synopsis "Asset packaging library for Django") + (description + "Pipeline is an asset packaging library for Django, providing both CSS +and JavaScript concatenation and compression, built-in JavaScript template +support, and optional data-URI image and font embedding.") + (license license:expat))) + (define-public python-django-redis (package (name "python-django-redis") diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index ad1a8638bc..c7b630364d 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -58,6 +58,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial)) @@ -65,7 +66,7 @@ (define-public dnsmasq (package (name "dnsmasq") - (version "2.79") + (version "2.80") (source (origin (method url-fetch) (uri (string-append @@ -73,7 +74,7 @@ version ".tar.xz")) (sha256 (base32 - "07w6cw706yyahwvbvslhkrbjf2ynv567cgy9pal8bz8lrbsp9bbq")))) + "1fv3g8vikj3sn37x1j6qsywn09w1jipvlv34j3q5qrljbrwa5ayd")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -363,7 +364,7 @@ to result in system-wide compromise.") (define-public unbound (package (name "unbound") - (version "1.8.0") + (version "1.8.1") (source (origin (method url-fetch) @@ -371,7 +372,7 @@ to result in system-wide compromise.") version ".tar.gz")) (sha256 (base32 - "0gxqc4ynd2g1a5dwaazqh9n8injh49a7dz0l9bbxqgv47dnrvxvq")))) + "0p9w6spar5dfi7fplxjcq4394wldabaws0ns30cqq6sxqfwv6qn3")))) (build-system gnu-build-system) (outputs '("out" "python")) (native-inputs @@ -569,14 +570,14 @@ Extensions} (DNSSEC).") (define-public knot (package (name "knot") - (version "2.7.2") + (version "2.7.3") (source (origin (method url-fetch) (uri (string-append "https://secure.nic.cz/files/knot-dns/" name "-" version ".tar.xz")) (sha256 (base32 - "0cc4wgb02ch09x99a1fnr7vsdik8k920q7jafzcamjvy3kpb4w6b")) + "1pwjcv7hzhqawisibybma160k77a6f1v94xw6ay9c7j49vrw05w7")) (modules '((guix build utils))) (snippet '(begin @@ -727,3 +728,56 @@ The client supports both dynamic and (near) static services, as well as MX record and alternative name management. It caches the address, and only attempts the update when it has changed.") (license license:gpl2+))) + +(define-public hnsd + ;; There have been no releases yet, hence this commit. + (let ((revision "0") + (commit "895d89c25d316d18df9d374fe78aae3902bc89fb")) + (package + (name "hnsd") + (version (git-version "0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/handshake-org/hnsd") + (commit commit))) + (sha256 + (base32 + "0704y73sddn24jga9csw4gxyfb3pnrfnk0vdcph84n1h38490l16")) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet + '(begin + ;; Delete the bundled copy of libuv. + (delete-file-recursively "uv") + (substitute* "configure.ac" + (("AC_CONFIG_SUBDIRS\\(\\[uv\\]\\)") "")) + (substitute* "Makefile.am" + (("SUBDIRS = uv") "\n") + (("\\$\\(top_builddir\\)/uv/libuv.la") "-luv") + + ;; Make sure the 'hnsd' binary is installed and + ;; dynamically-linked. + (("noinst_PROGRAMS") "bin_PROGRAMS") + (("hnsd_LDFLAGS = -static") "")) + + ;; This script tries to chdir to "uv" and doesn't do more + ;; than "autoreconf" so remove it. + (delete-file "autogen.sh") + #t)))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags '("--disable-static"))) ;no need for libhsk.a + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (inputs + `(("unbound" ,unbound) + ("libuv" ,libuv))) + (home-page "https://www.handshake.org/") + (synopsis "Resolver daemon for the Handshake naming protocol") + (description + "@command{hnsd} is a @dfn{host name resolver} for the Handshake Naming +System (HNS) peer-to-peer network.") + (license license:expat)))) diff --git a/gnu/packages/easyrpg.scm b/gnu/packages/easyrpg.scm new file mode 100644 index 0000000000..05fd2b11a0 --- /dev/null +++ b/gnu/packages/easyrpg.scm @@ -0,0 +1,121 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.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 packages easyrpg) + #:use-module (guix packages) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages audio) + #:use-module (gnu packages compression) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages gtk) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages image) + #:use-module (gnu packages mp3) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages sdl) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xiph) + #:use-module (gnu packages xml)) + +(define-public liblcf + (package + (name "liblcf") + (version "0.5.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://easyrpg.org/downloads/player/" version + "/liblcf-" version ".tar.gz")) + (sha256 + (base32 + "1k99bcw5c23801jk3mbz5sj5h18x46w1qxrkknhwhfgqzpvxhwrs")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs + ;; Required by 'liblcf.pc'. + `(("expat" ,expat) + ("icu" ,icu4c))) + (home-page "https://easyrpg.org/") + (synopsis "Library to handle RPG Maker 2000 and 2003 game data") + (description + "@code{liblcf} is a library to handle RPG Maker 2000 and 2003 game data. +It can read and write LCF and XML files.") + ;; It includes a copy of Boost Preprocessor Cat and Stringize (boost-1.0): + ;; src/boost/preprocessor/config.hpp + ;; src/boost/preprocessor/cat.hpp + ;; src/boost/preprocessor/stringize.hpp + ;; and a copy of inih (bsd-3): + ;; src/ini.h + ;; src/ini.cpp + ;; src/inireader.h + ;; src/inireader.cpp + ;; TODO: Unbundle them. + (license license:expat))) + +(define-public easyrpg-player + (package + (name "easyrpg-player") + (version "0.5.4") + (source (origin + (method url-fetch) + (uri (string-append + "https://easyrpg.org/downloads/player/" version + "/easyrpg-player-" version ".tar.gz")) + (sha256 + (base32 + "0w0idr61slg5828j1q31c1kh1h0ryp8psc006y06jph5pp3qgm48")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags + (list (string-append "--with-bash-completion-dir=" + %output "/etc/bash_completion.d/")))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("freetype" ,freetype) + ("harfbuzz" ,harfbuzz) + ("liblcf" ,liblcf) + ("libpng" ,libpng) + ("libsndfile" ,libsndfile) + ("libvorbis" ,libvorbis) + ("libxmp" ,libxmp) + ("mpg123" ,mpg123) + ("opusfile" ,opusfile) + ("pixman" ,pixman) + ("sdl2-mixer" ,sdl2-mixer) + ("sdl2" ,sdl2) + ("speexdsp" ,speexdsp) + ;; ("wildmidi" ,wildmidi) ; TODO: package it + ("zlib" ,zlib))) + (home-page "https://easyrpg.org/") + (synopsis "Play RPG Maker 2000 and 2003 games") + (description + "EasyRPG Player is a game interpreter to play RPG Maker 2000, 2003 and +EasyRPG games. It uses the LCF parser library (liblcf) to read RPG Maker game +data.") + ;; It bundles FMMidi YM2608 FM synthesizer emulator (bsd-3): + ;; src/midisynth.h + ;; src/midisynth.cpp + ;; and PicoJSON JSON parser/serializer (bsd-2): + ;; src/picojson.h + ;; TODO: Unbundle them. + (license license:gpl3+))) diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index a78e3e871f..e750c6cac8 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -75,7 +75,7 @@ (define-public calibre (package (name "calibre") - (version "3.28.0") + (version "3.35.0") (source (origin (method url-fetch) @@ -84,7 +84,7 @@ version ".tar.xz")) (sha256 (base32 - "0b3vv03c6m6972sk8zj3zc5sq6b9837irnfgjlqhv9z5i75m0414")) + "1gd15wjz4fhcra6d44xiy3hwbyk0miwb66a1pq5yldyy0hlb271z")) ;; Remove non-free or doubtful code, see ;; https://lists.gnu.org/archive/html/guix-devel/2015-02/msg00478.html (modules '((guix build utils))) diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index 8b02adc182..b333bb9d35 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -243,17 +243,17 @@ easy.") (define-public snap (package (name "snap") - (version "4.2.1.4") + (version "4.2.2.2") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/jmoenig/Snap--Build-Your-Own-Blocks.git") + (url "https://github.com/jmoenig/Snap.git") (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "0yc0w0cdhvi0nwqqrann2v3y0n7shxh7irgixqvlavp4k49d7aqj")))) + "0bay08yr58qj8wzpjg33gdj78rfhyskfzidknpdl3cr1jrj6i4p9")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) @@ -265,7 +265,7 @@ easy.") (share (string-append out "/share/snap"))) (copy-recursively source share) ;; Replace the sole minified file in the package. - (with-directory-excursion share + (with-directory-excursion (string-append share "/src") (delete-file "FileSaver.min.js") (symlink (string-append (assoc-ref %build-inputs "js-filesaver") "/share/javascript/FileSaver.min.js") diff --git a/gnu/packages/electronics.scm b/gnu/packages/electronics.scm index d13f220b84..bc30e619ec 100644 --- a/gnu/packages/electronics.scm +++ b/gnu/packages/electronics.scm @@ -123,7 +123,7 @@ as simple logic analyzer and/or oscilloscope hardware.") (define-public libsigrok (package (name "libsigrok") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) (uri (string-append @@ -131,19 +131,17 @@ as simple logic analyzer and/or oscilloscope hardware.") version ".tar.gz")) (sha256 (base32 - "197kr5ip98lxn7rv10zs35d1w0j7265s0xvckx0mq2l8kdvqd32c")))) + "171b553dir5gn6w4f7n37waqk62nq2kf1jykx4ifjacdz5xdw3z4")))) (outputs '("out" "doc")) (arguments - `(#:tests? #f ; tests need usb access + `(#:tests? #f ; tests need USB access #:phases (modify-phases %standard-phases (add-before 'configure 'change-udev-group (lambda _ - (let ((file "contrib/z60_libsigrok.rules")) - (substitute* file - (("plugdev") "dialout")) - (rename-file file "contrib/60-libsigrok.rules") - #t))) + (substitute* (find-files "contrib" "\\.rules$") + (("plugdev") "dialout")) + #t)) (add-after 'build 'build-doc (lambda _ (invoke "doxygen"))) @@ -155,11 +153,12 @@ as simple logic analyzer and/or oscilloscope hardware.") #t)) (add-after 'install-doc 'install-udev-rules (lambda* (#:key outputs #:allow-other-keys) - (install-file "contrib/60-libsigrok.rules" - (string-append - (assoc-ref outputs "out") - "/lib/udev/rules.d/")) - #t)) + (let* ((out (assoc-ref outputs "out")) + (rules (string-append out "/lib/udev/rules.d/"))) + (for-each (lambda (file) + (install-file file rules)) + (find-files "contrib" "\\.rules$")) + #t))) (add-after 'install-udev-rules 'install-fw (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((fx2lafw (assoc-ref inputs "sigrok-firmware-fx2lafw")) @@ -167,7 +166,6 @@ as simple logic analyzer and/or oscilloscope hardware.") (dir-suffix "/share/sigrok-firmware/") (input-dir (string-append fx2lafw dir-suffix)) (output-dir (string-append out dir-suffix))) - (mkdir-p output-dir) (for-each (lambda (file) (install-file file output-dir)) @@ -204,7 +202,7 @@ format support.") (define-public sigrok-cli (package (name "sigrok-cli") - (version "0.7.0") + (version "0.7.1") (source (origin (method url-fetch) (uri (string-append @@ -212,7 +210,7 @@ format support.") version ".tar.gz")) (sha256 (base32 - "072ylscp0ppgii1k5j07hhv7dfmni4vyhxnsvxmgqgfyq9ldjsan")))) + "15vpn1psriadcbl6v9swwgws7dva85ld03yv6g1mgm27kx11697m")))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs @@ -228,7 +226,7 @@ format support.") (define-public pulseview (package (name "pulseview") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) (uri (string-append @@ -236,9 +234,20 @@ format support.") version ".tar.gz")) (sha256 (base32 - "1f8f2342d5yam98mmcb8f9g2vslcwv486bmi4x45pxn68l82ky3q")))) + "0bvgmkgz37n2bi9niskpl05hf7rsj1lj972fbrgnlz25s4ywxrwy")))) + (build-system cmake-build-system) (arguments - `(#:configure-flags '("-DCMAKE_CXX_FLAGS=-fext-numeric-literals"))) + `(#:configure-flags '("-DENABLE_TESTS=y") + #:phases + (modify-phases %standard-phases + (add-after 'install 'remove-empty-doc-directory + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (with-directory-excursion (string-append out "/share") + ;; Use RMDIR to never risk silently deleting files. + (rmdir "doc/pulseview") + (rmdir "doc")) + #t)))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs @@ -249,7 +258,6 @@ format support.") ("libsigrokdecode" ,libsigrokdecode) ("qtbase" ,qtbase) ("qtsvg" ,qtsvg))) - (build-system cmake-build-system) (home-page "https://www.sigrok.org/wiki/PulseView") (synopsis "Qt based logic analyzer, oscilloscope and MSO GUI for sigrok") (description "PulseView is a Qt based logic analyzer, oscilloscope and MSO GUI diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index d8d7546e3c..2ad868ddc7 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -95,14 +95,14 @@ Executable and Linkable Format (@dfn{ELF}). This includes @command{ld}, (package (name "libabigail") (home-page "https://sourceware.org/libabigail/") - (version "1.4") + (version "1.5") (source (origin (method url-fetch) (uri (string-append "https://sourceware.org/pub/" name "/" name "-" version ".tar.gz")) (sha256 (base32 - "17r8i60lxykvdd9pdidmnvkzgf9k8zman0c1czl3zbx0znhlx497")))) + "0srfnkbm386sl2n85686nl28da6ksbs7jgnfks9k0n61c772aas4")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-static" diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 1069b9e3c3..358f32cabd 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018 Chris Marusich <cmmarusich@gmail.com> -;;; Copyright © 2015, 2016 Christopher Allan Webber <cwebber@dustycloud.org> +;;; Copyright © 2015, 2016, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 David Thompson <davet@gnu.org> @@ -40,6 +40,7 @@ ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; Copyright © 2018 Alex Branham <alex.branham@gmail.com> ;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de> +;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -70,6 +71,7 @@ #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages admin) #:use-module (gnu packages audio) #:use-module (gnu packages bash) #:use-module (gnu packages cmake) @@ -654,6 +656,33 @@ Gitlab APIs from Emacs packages. It abstracts access to API resources using only a handful of functions that are not resource-specific.") (license license:gpl3+))) +(define-public emacs-scribble-mode + (let ((commit "34e9e5edb921813b6483e0fefa848efb6ee4b314") + (version "0.0") + (revision 0)) + (package + (name "emacs-scribble-mode") + (version (if (zero? revision) + version + (string-append version "-" + (number->string revision) + "." (string-take commit 7)))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-pe/scribble-mode.git") + (commit commit))) + (sha256 + (base32 + "0598byqpz2q6yi2q4dwd77jj9z3n99z34d3an51s9m2za0nh1qvp")))) + (build-system emacs-build-system) + (home-page "https://github.com/emacs-pe/scribble-mode") + (synopsis "Emacs mode for editing the Scribble documentation syntax.") + (description + "This package provides basic syntax highlighting and editing support +for editing Racket's Scribble documentation syntax in Emacs.") + (license license:gpl3+)))) + (define-public emacs-haskell-mode (package (name "emacs-haskell-mode") @@ -783,6 +812,29 @@ different tools. It highlights errors and warnings inline in the buffer, and provides an optional IDE-like error list.") (license license:gpl3+))) ;+GFDLv1.3+ for the manual +(define-public emacs-a + (package + (name "emacs-a") + (version "0.1.1") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/plexus/a.el.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "00v9w6qg3bkwdhypq0ssf0phdh0f4bcq59c20lngd6vhk0204dqi")))) + (build-system emacs-build-system) + (home-page "https://github.com/plexus/a.el/") + (synopsis + "Emacs library for dealing with association lists and hash tables") + (description "@code{emacs-a} provides Emacs Lisp functions for dealing +with associative structures in a uniform and functional way. These functions +can take association lists, hash tables, and in some cases vectors (where the +index is considered the key).") + (license license:gpl3+))) + ;;; ;;; Web browsing. @@ -929,14 +981,14 @@ provides an optional IDE-like error list.") (define-public emacs-emms (package (name "emacs-emms") - (version "5.0") + (version "5.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/emms/emms-" version ".tar.gz")) (sha256 (base32 - "08f9lj77jlk96grqgjsv63s2i8ywvp4wvnmgmhnslwyx2lsdxza3")) + "149ddczyx6x10zn4mn8g0rll1rwf4yciv8x6j0qdnlbwszblx2x6")) (modules '((guix build utils))) (snippet '(begin @@ -1309,7 +1361,7 @@ a set of simplified face specifications and a user-supplied color palette") (guix build emacs-utils)) #:phases (modify-phases %standard-phases - (add-after 'rename-lispdir 'make-autoloads + (add-after 'install 'make-autoloads (assoc-ref emacs:%standard-phases 'make-autoloads))))) (home-page "http://howm.osdn.jp/") (synopsis "Note-taking tool for Emacs") @@ -1321,7 +1373,7 @@ searches. Unlike code@{emacs-wiki.el}, it can be combined with any format.") (define-public emacs-calfw (package (name "emacs-calfw") - (version "1.5") + (version "1.6") (source (origin (method url-fetch) @@ -1331,7 +1383,7 @@ searches. Unlike code@{emacs-wiki.el}, it can be combined with any format.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "17ssg8gx66yp63nhygjq2r6kgl4h45cacmrxsxs9f0lrfcx37k0l")))) + "1zr91xr0f1xfcv78yxka8vs5ximmq2ixmqf2pkb57kwwnxlypq4i")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-howm" ,emacs-howm))) @@ -1423,14 +1475,22 @@ current match, total matches and exit status. (name "emacs-go-mode") (version "1.5.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/dominikh/go-mode.el/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dominikh/go-mode.el.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1adngbjyb8qnwg7n6r2y31djw9j6qf3b9fi63zd85035q7x4ljnm")))) + "1nd2h50yb0493wvf1h7fzplq45rmqn2w7kxpgnlxzhkvq99v8vzf")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-writable + (lambda _ + (for-each make-file-writable (find-files "." "\\.el$")) + #t))))) (home-page "https://github.com/dominikh/go-mode.el") (synopsis "Go mode for Emacs") (description @@ -1565,15 +1625,16 @@ filters, new key bindings and faces. It can be enabled by (package (name "emacs-pdf-tools") (version "0.80") + (home-page "https://github.com/politza/pdf-tools") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/politza/pdf-tools/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "06imydn3a92vr57azpn1zhqc14kxyyslmyi9ldsyphan9b724gb6")))) + "1i4647vax5na73basc5dz4lh9kprir00fh8ps4i0l1y3ippnjs2s")) + (patches (search-patches "emacs-pdf-tools-poppler.patch")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; there are no tests @@ -1598,6 +1659,8 @@ filters, new key bindings and faces. It can be enabled by (lambda _ (chdir "../lisp") #t)) (add-after 'enter-lisp-dir 'emacs-patch-variables (lambda* (#:key outputs #:allow-other-keys) + (for-each make-file-writable (find-files ".")) + ;; Set path to epdfinfo program. (emacs-substitute-variables "pdf-info.el" ("pdf-info-epdfinfo-program" @@ -1631,7 +1694,6 @@ filters, new key bindings and faces. It can be enabled by files. The key difference is that pages are not pre-rendered by e.g. ghostscript and stored in the file-system, but rather created on-demand and stored in memory.") - (home-page "https://github.com/politza/pdf-tools") (license license:gpl3+))) (define-public emacs-dash @@ -2603,14 +2665,14 @@ source code using IPython.") (define-public emacs-debbugs (package (name "emacs-debbugs") - (version "0.15") + (version "0.16") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/debbugs-" version ".tar")) (sha256 (base32 - "1x7jw2ldgkknyxg7x9fhnqkary691icnysmi3xw0g2fjrvllzhqw")))) + "0y3bq803c7820h15g66d1648skxfhlfa2v6vincj6xk5ssp44s9p")))) (build-system emacs-build-system) (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$"))) (propagated-inputs @@ -2720,7 +2782,7 @@ build jobs.") (define-public emacs-company (package (name "emacs-company") - (version "0.9.6") + (version "0.9.7") (source (origin (method url-fetch) @@ -2729,7 +2791,7 @@ build jobs.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0a7zvmfvxh9w67myvcj2511ayk0fvkm06cdg38y8khnsx63jrr4k")))) + "19flv38f2qhxda8lbk2ckywvibd72vbzmn4hchqz6d8acsknh4sb")))) (build-system emacs-build-system) (arguments `(#:phases @@ -2760,11 +2822,13 @@ These are distributed in separate files and can be used individually.") (version "1.2.0") (home-page "https://github.com/Sarcasm/irony-mode") (source (origin - (method url-fetch) - (uri (string-append home-page "/archive/v" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url (string-append home-page ".git")) + (commit (string-append "v" version)))) (sha256 (base32 - "1f68zi0glkg2aly66s07rx3w0b0hdi1znxan02h6dbabaadylk99")) + "0nhjrnlmss535jbshjjd30vydbr8py21vkx4p294w6d8vg2rssf8")) (file-name (string-append name "-" version ".tar.gz")))) (build-system emacs-build-system) (arguments '()) @@ -2797,6 +2861,72 @@ described on the homepage.") (build-system cmake-build-system) (synopsis "Server for the Emacs @dfn{irony mode}"))) +(define-public emacs-company-irony + (package + (name "emacs-company-irony") + (version "1.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Sarcasm/company-irony.git") + (commit (string-append "v" version)))) + (sha256 (base32 + "1qgyam2vyjw90kpxns5cd6bq3qiqjhzpwrlvmi18vyb69qcgqd8a")) + (file-name (git-file-name name version)))) + (build-system emacs-build-system) + (inputs + `(("emacs-irony-mode" ,emacs-irony-mode) + ("emacs-company" ,emacs-company))) + (synopsis "C++ completion backend for Company using irony-mode") + (description "This backend for company-mode allows for C++ code completion +with irony-mode using clang-tooling.") + (home-page "https://github.com/Sarcasm/company-irony") + (license license:gpl3+))) + +(define-public emacs-flycheck-irony + (package + (name "emacs-flycheck-irony") + (version "0.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Sarcasm/flycheck-irony.git") + (commit (string-append "v" version)))) + (sha256 + (base32 "0qa5a8wzvzxwqql92ibc9s43k8sj3vwn7skz9hfr8av0skkhx996")) + (file-name (string-append name "-" version)))) + (build-system emacs-build-system) + (inputs + `(("irony-mode" ,emacs-irony-mode) + ("flycheck-mode" ,emacs-flycheck) + ("emacs-company" ,emacs-company))) + (synopsis "Live syntax checking frontend for Flycheck using irony-mode") + (description "This package provides a frontend for Flycheck that lets +irony-mode do the syntax checking.") + (home-page "https://github.com/Sarcasm/flycheck-irony") + (license license:gpl3+))) + +(define-public emacs-irony-eldoc + (package + (name "emacs-irony-eldoc") + (version (package-version emacs-irony-mode)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ikirill/irony-eldoc.git") + (commit "0df5831eaae264a25422b061eb2792aadde8b3f2"))) + (sha256 (base32 "1l5qpr66v1l12fb50yh73grb2rr85xxmbj19mm33b5rdrq2bqmmd")) + (file-name (string-append name "-" version)))) + (build-system emacs-build-system) + (inputs + `(("irony-mode" ,emacs-irony-mode))) + (synopsis "Eldoc integration for irony-mode") + (description "Irony-eldoc is an eldoc extension that shows documentation +for the current function or variable in the minibuffer.") + (home-page "https://github.com/ikirill/irony-eldoc") + (license license:gpl3+))) + (define-public emacs-company-quickhelp (package (name "emacs-company-quickhelp") @@ -3340,7 +3470,7 @@ organizer.") (define-public emacs-zenburn-theme (package (name "emacs-zenburn-theme") - (version "2.5") + (version "2.6") (source (origin (method url-fetch) (uri (string-append @@ -3349,7 +3479,7 @@ organizer.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "03kfhzgbbbl8ivpzzky6qxw4j9mmp452m1sk7wikxmcalfnix0gn")))) + "0qc9d1rwq55yzh8shbppyd6izy1grpyr8kqh5zdgm7c5jccngpr4")))) (build-system emacs-build-system) (home-page "https://github.com/bbatsov/zenburn-emacs") (synopsis "Low contrast color theme for Emacs") @@ -3631,7 +3761,11 @@ after buffer changes.") version ".tar")) (sha256 (base32 - "108wgxg7fb4byaiasgvbxv2hq7b00biq9f0mh9hy6vw4160y5w24")))) + "108wgxg7fb4byaiasgvbxv2hq7b00biq9f0mh9hy6vw4160y5w24")) + (patches + ;; Patch awaiting inclusion upstream (see: + ;; https://github.com/realgud/realgud/pull/226). + (search-patches "emacs-realgud-fix-configure-ac.patch")))) (build-system emacs-build-system) (arguments `(#:tests? #t @@ -3793,10 +3927,11 @@ expression.") (license license:gpl3+))) (define-public emacs-ivy-yasnippet - (let ((commit "59b32cf8cfb63df906822a17f6f5e8545dac38d4")) + (let ((commit "32580b4fd23ebf9ca7dde96704f7d53df6e253cd") + (revision "2")) (package (name "emacs-ivy-yasnippet") - (version (git-version "0.1" "1" commit)) + (version (git-version "0.1" revision commit)) (source (origin (method git-fetch) @@ -3806,7 +3941,7 @@ expression.") (file-name (git-file-name name version)) (sha256 (base32 - "0hghdlxkfwrglvc1nql2ikgp6jj0qdbfwc3yvpb19mrf26hwgp13")))) + "1wfg6mmd5gl1qgvayyzpxlkh9s7jgn20y8l1vh1zbj1czvv51xp8")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-ivy" ,emacs-ivy) @@ -3821,6 +3956,31 @@ use it, call @code{M-x ivy-yasnippet} (but make sure you have enabled @code{yas-minor-mode} first).") (license license:gpl3+)))) +(define-public emacs-ivy-rich + (package + (name "emacs-ivy-rich") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Yevgnen/ivy-rich/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "14r3mx5rkd4wz0ls5pv5w6c7la3z9iy93d3jfind3xyg4kywy95c")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy))) + (home-page "https://github.com/Yevgnen/ivy-rich") + (synopsis "More friendly interface for @code{ivy}") + (description + "This package extends @code{ivy} by showing more information in the +minibuffer for each candidate. It adds columns showing buffer modes, file +sizes, docstrings, etc. If @code{emacs-all-the-icons} is installed, it can +show icons as well.") + (license license:gpl3+))) + (define-public emacs-avy (package (name "emacs-avy") @@ -4284,7 +4444,7 @@ to all the other commands, too.") (define-public emacs-js2-mode (package (name "emacs-js2-mode") - (version "20150909") + (version "20180301") (source (origin (method url-fetch) (uri (string-append "https://github.com/mooz/js2-mode/archive/" @@ -4292,7 +4452,7 @@ to all the other commands, too.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1nsm36c4kwb473p13i58fgrnlk8fbn3rdhj47d9xz70az4ra44q0")))) + "13aghgwaqrmbf3pbifcry52kya454wnh1gbdh5805n1n6xgjm5w3")))) (build-system emacs-build-system) (home-page "https://github.com/mooz/js2-mode/") (synopsis "Improved JavaScript editing mode for Emacs") @@ -4639,7 +4799,7 @@ indentation (space indentation only). (define-public emacs-elpy (package (name "emacs-elpy") - (version "1.24.0") + (version "1.27.0") (source (origin (method git-fetch) (uri (git-reference @@ -4648,7 +4808,7 @@ indentation (space indentation only). (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0rsg8a9nwqfkv0xcs11jzfp10ij7jm0v2ikx19zv2v7awqy0q5wf")))) + "1b76y0kzk7s9ya8k9bpsgn31i9l0rxs4iz6lg7snhjgh03k0ssgv")))) (build-system emacs-build-system) (arguments `(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include) @@ -5046,26 +5206,28 @@ target will call @code{compile} on it.") (define-public emacs-cider (package (name "emacs-cider") - (version "0.15.1") - (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/clojure-emacs/cider/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1j5hlmi14ypszv1f9nvq0jjlz7i742flg0ny3055l7i4x089xx6g")))) + (version "0.18.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/clojure-emacs/cider.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1m9kc88vga3q5d731qnpngnsa0n57pf21k3hll20rw8rggrx4vdn")))) (build-system emacs-build-system) (arguments '(#:exclude ; Don't exclude 'cider-test.el'. '("^\\.dir-locals\\.el$" "^test/"))) (propagated-inputs `(("emacs-clojure-mode" ,emacs-clojure-mode) + ("emacs-sesman" ,emacs-sesman) ("emacs-spinner" ,emacs-spinner) ("emacs-pkg-info" ,emacs-pkg-info) ("emacs-queue" ,emacs-queue))) - (home-page "https://cider.readthedocs.org/") + (home-page "https://cider.readthedocs.io/") (synopsis "Clojure development environment for Emacs") (description "CIDER (Clojure Interactive Development Environment that Rocks) aims to @@ -6627,7 +6789,7 @@ It should enable you to implement low-level X11 applications.") (define-public emacs-exwm (package (name "emacs-exwm") - (version "0.20") + (version "0.21") (synopsis "Emacs X window manager") (source (origin (method url-fetch) @@ -6635,7 +6797,7 @@ It should enable you to implement low-level X11 applications.") version ".tar")) (sha256 (base32 - "0nhhzbkm0mkj7sd1dy2c19cmn56gyaj9nl8kgy86h4fp63hjaz04")))) + "07ng1pgsnc3isfsyzh2gfc7391p9il8lb5xqf1z6yqn20w7k6xzj")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-xelb" ,emacs-xelb))) @@ -7661,17 +7823,17 @@ value of the access token.") (define-public emacs-circe (package (name "emacs-circe") - (version "2.6") + (version "2.10") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/jorgenschaefer/circe.git") (commit (string-append "v" version)))) - (file-name (string-append name "-" version "-checkout")) + (file-name (git-file-name name version)) (sha256 (base32 - "19h3983zy3f15cgs86irvbdzz55qyjm48qd7gjlzcxplr7vnnh0j")))) + "10gi14kwxd81blddpvqh95lgmpbfgp0m955naxix3bs3r6a75n4s")))) (build-system emacs-build-system) ;; In order to securely connect to an IRC server using TLS, Circe requires ;; the GnuTLS binary. @@ -7685,25 +7847,42 @@ activity in channels in the status bar so it stays out of your way unless you want to use it.") (license license:gpl3+))) +(define-public emacs-tracking + (package + (inherit emacs-circe) + (name "emacs-tracking") + (arguments + ;; "tracking.el" is a library extracted from Circe package. It requires + ;; "shorten.el". + `(#:include '("^shorten.el$" "^tracking.el$") + #:tests? #f)) ;tests require buttercup + (home-page "https://github.com/jorgenschaefer/circe/wiki/Tracking") + (synopsis "Buffer tracking library") + (description "@code{tracking.el} provides a way for different modes to +notify the user that a buffer needs attention. The user then can cycle +through them using @key{C-c C-SPC}.") + (license license:gpl3+))) + (define-public emacs-slack - (let ((commit "d90395482d26175ce38fd935e978c428be8af9a0") - (revision "4")) + (let ((commit "99a57501629a0329a9ca090c1ea1296462eda02d") + (revision "5")) (package (name "emacs-slack") - (version (string-append "0-" revision "." (string-take commit 7))) + (version (git-version "0.0.2" revision commit)) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/yuya373/emacs-slack.git") (commit commit))) - (file-name (string-append name "-" version "-checkout")) + (file-name (git-file-name name commit)) (sha256 (base32 - "14f6wjcbl09cfd3yngr6m1k1d4nr764im666mbnqbk9nmqf50nib")))) + "0jw1diypfw8pmzkq0napgxmfc0gqka7zcccgnw359604lr30k2z2")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-alert" ,emacs-alert) ("emacs-emojify" ,emacs-emojify) + ("emacs-helm" ,emacs-helm) ("emacs-request" ,emacs-request) ("emacs-websocket" ,emacs-websocket) ("emacs-oauth2" ,emacs-oauth2) @@ -7818,38 +7997,64 @@ contexts. (license license:gpl3+))) (define-public emacs-polymode - ;; There hasn't been a proper release. - (let ((commit "0340f5e7e55235832e59673f027cc79a23cbdcd6") - (revision "1")) - (package - (name "emacs-polymode") - (version (string-append "1.0-" revision "." (string-take commit 7))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/vspinu/polymode.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "057cybkq3cy07n5s332k071sjiky3mziy003lza4rh75mgqkwhmh")))) - (build-system emacs-build-system) - (arguments - `(#:include (cons* "^modes/.*\\.el$" %default-include) - #:phases - (modify-phases %standard-phases - (add-after 'set-emacs-load-path 'add-modes-subdir-to-load-path - (lambda _ - (setenv "EMACSLOADPATH" - (string-append (getenv "EMACSLOADPATH") - ":" (getcwd) "/modes" ":"))))))) - (home-page "https://github.com/vspinu/polymode") - (synopsis "Framework for multiple Emacs modes based on indirect buffers") - (description "Polymode is an Emacs package that offers generic support + (package + (name "emacs-polymode") + (version "0.1.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vspinu/polymode.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0wwphs54jx48a3ca6x1qaz56j3j9bg4mv8g2akkffrzbdcb8sbc7")))) + (build-system emacs-build-system) + (arguments + `(#:include (cons* "^modes/.*\\.el$" %default-include) + #:phases + (modify-phases %standard-phases + (add-after 'set-emacs-load-path 'add-modes-subdir-to-load-path + (lambda _ + (setenv "EMACSLOADPATH" + (string-append (getenv "EMACSLOADPATH") + ":" (getcwd) "/modes" ":"))))))) + (home-page "https://github.com/vspinu/polymode") + (synopsis "Framework for multiple Emacs modes based on indirect buffers") + (description "Polymode is an Emacs package that offers generic support for multiple major modes inside a single Emacs buffer. It is lightweight, object oriented and highly extensible. Creating a new polymode typically takes only a few lines of code. Polymode also provides extensible facilities for external literate programming tools for exporting, weaving and tangling.") + (license license:gpl3+))) + +(define-public emacs-polymode-ansible + (let ((commit "b26094d029e25dc797b94254f797e7807a57e4c8")) + (package + (name "emacs-polymode-ansible") + ;; No upstream version release yet. + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/mavit/poly-ansible") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "055shddqibib3hx2ykwdz910nrqws40cd407mq946l2bf6v87gj6")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ansible-doc" ,emacs-ansible-doc) + ("emacs-jinja2-mode" ,emacs-jinja2-mode) + ("emacs-polymode" ,emacs-polymode) + ("emacs-yaml-mode" ,emacs-yaml-mode))) + (properties '((upstream-name . "poly-ansible"))) + (home-page "https://gitlab.com/mavit/poly-ansible/") + (synopsis "Polymode for Ansible - Jinja2 in YAML") + (description + "Edit YAML files for Ansible containing embedded Jinja2 templating.") (license license:gpl3+)))) (define-public eless @@ -8173,7 +8378,7 @@ the format.") (define-public emacs-nov-el (package (name "emacs-nov-el") - (version "0.2.2") + (version "0.2.6") (source (origin (method git-fetch) (uri (git-reference @@ -8182,7 +8387,7 @@ the format.") (file-name (git-file-name name version)) (sha256 (base32 - "03s0qjvwk1f7y3i4wh2p5y3z4hdv00adgz8za3vphzc0q8i1kjzb")))) + "188h5gzn1zf443g0b7q5bpmvvpr6ds5h8aci8vxc92py56rhyrvc")))) (build-system emacs-build-system) (arguments `(#:phases @@ -11358,7 +11563,7 @@ the GIF result.") (define-public emacs-google-translate (package (name "emacs-google-translate") - (version "0.11.15") + (version "0.11.16") (source (origin (method url-fetch) @@ -11367,7 +11572,7 @@ the GIF result.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1zxvfagbaf5mxi528mz33c8vxdk86wj0xx5y2jfy97wi8dzrwn3g")))) + "01n9spj1d0gjfj39x526rl3m9c28wnx9afipmf5s8y77cx3mfwhl")))) (build-system emacs-build-system) (home-page "https://github.com/atykhonov/google-translate") (synopsis "Emacs interface to Google Translate") @@ -11377,10 +11582,10 @@ on-line service.") (license license:gpl3+))) (define-public emacs-helm-company - (let ((commit "acc9c7901e094c1591327a0db1ec7a439f67a84d")) + (let ((commit "d3fc093a0e833b4dee6561c00d6df3d62aa50f3f")) (package (name "emacs-helm-company") - (version (git-version "0.2.2" "1" commit)) + (version (git-version "0.2.3" "1" commit)) (source (origin (method git-fetch) @@ -11390,7 +11595,7 @@ on-line service.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1d4q9clp0q56br80c21a4wz1gc4jw3mdy97z9mq07x9i8rhlppzs")))) + "1ciirsanhajdqm5iwl8k9ywf4jha1wdv4sc4d9kslyrfr9zn4q6k")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-helm" ,emacs-helm) @@ -11678,8 +11883,8 @@ file.") (license license:gpl3+)))) (define-public emacs-picpocket - (let ((version "20180610.1059") ; taken from melpa - (commit "ce4b6ed088384f2414af82e8e4eae5b92c2874bf")) + (let ((version "40") + (commit "6fd88b8711c4370662c0f9c462170187d092a046")) (package (name "emacs-picpocket") (version version) @@ -11691,7 +11896,7 @@ file.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "15vpbcv83mc4j1pvrk7xic0klh2bl9gzg2xxs7c2lmnix52hy8mv")))) + (base32 "1mdzzxf7xm7zwrpnqqxa27d1cr31pd72d7ilbwljv13qp177a3yw")))) (build-system emacs-build-system) (arguments ; needed for running tests `(#:tests? #t @@ -11719,10 +11924,10 @@ file.") (deprecated-package "emacs-wgrep-helm" emacs-wgrep)) (define-public emacs-mu4e-conversation - (let ((commit "223cc66e99c7665326e3d991d6d383cb0d7512bb")) + (let ((commit "e7d4bfcb0d392b0aed1f705ccac2419a168d1f5e")) (package (name "emacs-mu4e-conversation") - (version (git-version "20180722" "2" commit)) + (version (git-version "20181126" "4" commit)) (source (origin (method url-fetch) @@ -11733,7 +11938,7 @@ file.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1ivy7pihhma465hi25p1y45dyi8h52nsm2m0cvizj5sw36jw0n81")))) + "0b52hf9rm2afba9pvgink9bwqm705sk0y5qikp0ff5sk53wqvy29")))) (build-system emacs-build-system) (propagated-inputs `(("mu" ,mu))) @@ -11985,7 +12190,7 @@ was called.") (define-public emacs-dired-du (package (name "emacs-dired-du") - (version "0.5") + (version "0.5.1") (source (origin (method url-fetch) @@ -11994,7 +12199,7 @@ was called.") version ".tar")) (sha256 (base32 - "09yj37p2fa5f81fqrzwghjkyy2ydsf4rbkfwpn2yyvzd5nd97bpl")))) + "1091scnrjh0a4gja4z6jxic6ghy1yryv46qk9c76pmh50cpw6766")))) (build-system emacs-build-system) (home-page "http://elpa.gnu.org/packages/dired-du.html") (synopsis "Dired with recursive directory sizes") @@ -12386,3 +12591,169 @@ have special meaning. It is also handy for aligning text across long vertical distances. Multi-column characters, such as @kbd{TAB} are treated correctly.") (license license:gpl2+))) + +(define-public emacs-slime-repl-ansi-color + (let ((commit "ad03263f5d4de473bc173b64a6fc3dc1106393d7")) + (package + (name "emacs-slime-repl-ansi-color") + (version (git-version "0.0.0" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/deadtrickster/slime-repl-ansi-color") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0bpg7gxz310x7bnlg324c507sxc5gxwwz6h64h6kdq141r73vbi4")))) + (build-system emacs-build-system) + (home-page "https://github.com/deadtrickster/slime-repl-ansi-color") + (synopsis "Color ANSI codes in the REPL of SLIME") + (description "Color ANSI codes in the REPL of SLIME") + (license license:gpl2+)))) + +(define-public emacs-helm-slime + (let ((commit "9980925f3e5f6ac5a30369d2a544e82006a79c76")) + (package + (name "emacs-helm-slime") + (version (git-version "0.0.0" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-helm/helm-slime") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xa07gpfkzwn522x9573mq5mfxvbawdgd0m93gqj6w5a14wk8zzh")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-slime" ,emacs-slime))) + (home-page "https://github.com/emacs-helm/helm-slime") + (synopsis "Helm for SLIME, the Superior Lisp Interaction Mode for Emacs") + (description "Helm-SLIME defines a few new commands: + +@itemize +@item helm-slime-complete: Select a symbol from the SLIME completion systems. +@item helm-slime-list-connections: Yet another slime-list-connections with Helm. +@item: helm-slime-apropos: Yet another slime-apropos with Helm. +@item helm-slime-repl-history: Select an input from the SLIME REPL history and insert it. +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-gtk-look + (package + (name "emacs-gtk-look") + (version "29") + (source (origin + (method url-fetch) + (uri "https://download.tuxfamily.org/user42/gtk-look.el") + (sha256 + (base32 + "14p2nwrd51cr1v06fxbjjn6jdrkf9d6vcxhmscm0kl677s25ypsp")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda _ + ;; File is read-only. + (chmod "gtk-look.el" #o644) + (emacs-substitute-variables "gtk-look.el" + ("gtk-lookup-devhelp-indices" + '(list (expand-file-name "~/.guix-profile/share/gtk-doc/html/*/*.devhelp*")))) + #t))))) + (home-page "http://user42.tuxfamily.org/gtk-look/index.html") + (synopsis "Find and display HTML documentation for GTK, GNOME and Glib") + (description "@command{gtk-look} finds and displays HTML documentation for +GTK, GNOME and Glib functions and variables in Emacs, similar to what +info-lookup-symbol does for info files (C-h S). The documentation is expected +to be devhelp indexes with HTML files. The location of the indexes can be +customized. In addition to C code development @command{gtk-look} is good for + +@itemize +@item @command{perl-gtk2}, recognising class funcs like +@command{Gtk2::Label->new} and bare method names like @command{set_text}. +@item @command{guile-gnome}, recognising methods like @command{set-text} and +classes like @command{<gtk-window>}. +@end itemize\n") + (license license:gpl3+))) + +(define-public emacs-ov + (package + (name "emacs-ov") + (version "1.0.6") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ShingoFukuyama/ov.el.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0qxk2rf84j86syxi8xknsq252irwg7sz396v3bb4wqz4prpj0kzc")))) + (build-system emacs-build-system) + (home-page "https://github.com/ShingoFukuyama/ov.el") + (synopsis "Overlay library for Emacs Lisp") + (description "@code{ov.el} provides a simple way to manipulate overlays in +Emacs.") + (license license:gpl3+))) + +(define-public emacs-matrix-client + (let ((commit "3eab4c28280feff18ee1ddd7db66ada4f135cbf8")) + (package + (name "emacs-matrix-client") + (version (git-version "0.0.0" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jgkamat/matrix-client-el.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1k6721jz0m22vpb78881k087mpx8hf3s2219ic75v5mhgx355f7m")))) + (build-system emacs-build-system) + (propagated-inputs + `(("a" ,emacs-a) + ("dash" ,emacs-dash) + ("esxml" ,emacs-esxml) + ("f" ,emacs-f) + ("ht" ,emacs-ht) + ("ov" ,emacs-ov) + ("request" ,emacs-request) + ("s" ,emacs-s) + ("tracking" ,emacs-tracking))) + (home-page "https://github.com/jgkamat/matrix-client-el") + (synopsis "Matrix client for Emacs") + (description "@code{matrix-client} is a simple chat UI to Matrix.org +rooms. It also provides an API which allows Emacs to seamlessly create +RPC channels with users and other software.") + (license license:gpl3+)))) + +(define-public emacs-sesman + (package + (name "emacs-sesman") + (version "0.3.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/vspinu/sesman.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0r32f8ma9ddczxrrdz0nadp14j3zmk10q1ch02gb82synkx3xdra")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("make" "test"))) + (home-page "https://github.com/vspinu/sesman") + (synopsis "Session manager for Emacs based IDEs") + (description "Sesman provides facilities for session management and +interactive session association with the current contexts (project, directory, +buffers). While sesman can be used to manage arbitrary sessions, it primary +targets the Emacs based IDEs (CIDER, ESS, Geiser, Robe, SLIME etc.)") + (license license:gpl3+))) diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index 38c76cd737..f20d1e17c7 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -321,12 +321,6 @@ languages are C and C++.") ("pkg-config" ,pkg-config))) (inputs `(("libusb" ,libusb))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) (home-page "http://repo.or.cz/w/libjaylink.git") (synopsis "Library to interface Segger J-Link devices") (description "libjaylink is a shared library written in C to access @@ -404,9 +398,9 @@ language.") "presto" "openjtag"))) #:phases (modify-phases %standard-phases + ;; Required because of patched sources. (add-before 'configure 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi")))) + (lambda _ (invoke "autoreconf" "-vfi") #t)) (add-after 'autoreconf 'change-udev-group (lambda _ (substitute* "contrib/60-openocd.rules" @@ -417,7 +411,8 @@ language.") (install-file "contrib/60-openocd.rules" (string-append (assoc-ref outputs "out") - "/lib/udev/rules.d/"))))))) + "/lib/udev/rules.d/")) + #t))))) (home-page "http://openocd.org") (synopsis "On-Chip Debugger") (description "OpenOCD provides on-chip programming and debugging support diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 438e9df1fc..795595e447 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -117,8 +117,8 @@ ;; Building from recent Git because the official 5.0 release no longer builds. (define-public dolphin-emu - (let ((commit "5f0d825f40b8aabe13eaef32d44ab667ff8e8c28") - (revision "3")) + (let ((commit "2c57e709d0f9e4010a4415de4192de887e37f187") + (revision "5")) (package (name "dolphin-emu") (version (git-version "5.0" revision commit)) @@ -144,7 +144,7 @@ #t)) (sha256 (base32 - "0dh7mih16aif9ynbgcsn7n10f89g8d232i86xqfp2rijsdggcmzl")))) + "0aszfdfvs7yg4bmrd3qxwsiz7hx3mrj29f4aw86bz7h9j7hkh57f")))) (build-system cmake-build-system) (arguments '(#:tests? #f @@ -153,7 +153,8 @@ (add-before 'configure 'fixgcc7 (lambda _ (unsetenv "C_INCLUDE_PATH") - (unsetenv "CPLUS_INCLUDE_PATH"))) + (unsetenv "CPLUS_INCLUDE_PATH") + #t)) (add-before 'configure 'generate-fonts&hardcore-libvulkan-path (lambda* (#:key inputs outputs #:allow-other-keys) (let ((fontfile @@ -195,7 +196,7 @@ ("bluez" ,bluez) ("curl" ,curl) ("eudev" ,eudev) - ("ffmpeg" ,ffmpeg-3.4) + ("ffmpeg" ,ffmpeg) ("font-wqy-microhei" ,font-wqy-microhei) ("freetype" ,freetype) ("glew" ,glew) @@ -1185,7 +1186,7 @@ play them on systems for which they were never designed!") (define-public mame (package (name "mame") - (version "0.202") + (version "0.203") (source (origin (method git-fetch) @@ -1195,7 +1196,7 @@ play them on systems for which they were never designed!") (file-name (git-file-name name version)) (sha256 (base32 - "1v9gm124p65nbj678gfkcvwphp9qc15ky2p12ca6g3rllma94di5")) + "19ccqc00024fbjyk0k5d9xljhwq7wsrp7phwm2jmn0h77mgdj844")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 0080356494..308501f882 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -717,6 +717,13 @@ language.") "-DBUILD_GITHUB_PLUGIN=OFF") #:phases (modify-phases %standard-phases + (add-after 'unpack 'adjust-boost-include + (lambda _ + ;; The location of this header changed in Boost 1.66. + (substitute* "3d-viewer/3d_cache/3d_cache.cpp" + (("boost/uuid/sha1\\.hpp") + "boost/uuid/detail/sha1.hpp")) + #t)) (add-after 'install 'wrap-program ;; Ensure correct Python at runtime. (lambda* (#:key inputs outputs #:allow-other-keys) @@ -1702,7 +1709,7 @@ parallel computing platforms. It also supports serial execution.") ("gcc-toolchain" ,gcc-toolchain) ("iverilog" ,iverilog) ("libtool" ,libtool) - ("octave" ,octave) + ("octave" ,octave-cli) ("qt4" ,qt-4) ("sed" ,sed))) (home-page "http://qucs.sourceforge.net/") @@ -1832,7 +1839,7 @@ simulations are also supported.") ("libtool" ,libtool) ("mpi" ,openmpi) ("ngspice" ,ngspice) - ("octave" ,octave) + ("octave" ,octave-cli) ("qt4" ,qt-4) ("qucs" ,qucs) ("sed" ,sed) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 1a0ebba304..9989e2f5a8 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -58,7 +58,8 @@ #:use-module (gnu packages tls) #:use-module (gnu packages video) #:use-module (gnu packages xdisorg) - #:use-module (gnu packages xorg)) + #:use-module (gnu packages xorg) + #:use-module (ice-9 match)) (define-public efl (package @@ -139,12 +140,16 @@ (arguments `(#:configure-flags '("--disable-silent-rules" "--disable-systemd" + "--with-profile=release" "--enable-liblz4" "--enable-xinput22" "--enable-image-loader-webp" "--enable-multisense" - "--with-opengl=es" - "--enable-egl" + ,@(match (%current-system) + ("armhf-linux" + '("--with-opengl=es" "--with-egl")) + (_ + '("--with-opengl=full"))) "--enable-harfbuzz" ;; for wayland "--enable-wayland" @@ -178,7 +183,7 @@ removable devices or support for multimedia.") (define-public terminology (package (name "terminology") - (version "1.2.1") + (version "1.3.0") (source (origin (method url-fetch) (uri @@ -186,10 +191,9 @@ removable devices or support for multimedia.") "terminology/terminology-" version ".tar.xz")) (sha256 (base32 - "1ii8332bl88l8md3gvz5dhi9bjpm6shyf14ck9kfyy7d56hp71mc")) + "07vw28inkimi9avp16j0rqcfqjq16081554qsv29pcqhz18xp59r")) (modules '((guix build utils))) ;; Remove the bundled fonts. - ;; TODO: Remove bundled lz4. (snippet '(begin (delete-file-recursively "data/fonts") @@ -271,7 +275,8 @@ Libraries with some extra bells and whistles.") (let ((xkeyboard (assoc-ref inputs "xkeyboard-config")) (setxkbmap (assoc-ref inputs "setxkbmap")) (utils (assoc-ref inputs "util-linux")) - (libc (assoc-ref inputs "libc"))) + (libc (assoc-ref inputs "libc")) + (efl (assoc-ref inputs "efl"))) ;; We need to patch the path to 'base.lst' to be able ;; to switch the keyboard layout in E. (substitute* (list "src/modules/xkbswitch/e_mod_parse.c" @@ -286,6 +291,9 @@ Libraries with some extra bells and whistles.") "src/modules/conf_intl/e_int_config_intl.c" "src/modules/wizard/page_010.c") (("locale -a") (string-append libc "/bin/locale -a"))) + (substitute* "src/bin/e_import_config_dialog.c" + (("%s/edje_cc -v %s %s %s\", e_prefix_bin_get\\(\\)") + (string-append efl "/bin/edje_cc -v %s %s %s\""))) (substitute* "src/modules/everything/evry_plug_apps.c" (("/usr/bin/") "")) (substitute* "configure" diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index b195019866..93d1561948 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,6 +24,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix utils) #:use-module (gnu packages) @@ -107,7 +109,7 @@ single file can be mounted.") (define-public disorderfs (package (name "disorderfs") - (version "0.5.4") + (version "0.5.5") (source (origin (method git-fetch) @@ -117,7 +119,7 @@ single file can be mounted.") (file-name (git-file-name name version)) (sha256 (base32 - "1mw4ix9h17ikki8p2rxdvzp87rcm1c7by5lvfn5gxlxr7hlj9f8g")))) + "18c32qcdzbxrzg7srnqnw1ls9yqqxyk9b996yxr6w2znw6x6n8v4")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -126,7 +128,7 @@ single file can be mounted.") ("attr" ,attr))) (arguments `(#:phases (modify-phases %standard-phases - (delete 'configure)) + (delete 'configure)) ; no configure script #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" out))) #:test-target "test" @@ -245,3 +247,50 @@ All of this is accomplished without a centralized metadata server.") (description "This is a file system client based on the FTP File Transfer Protocol.") (license license:gpl2+))) + +(define-public apfs-fuse + (let ((commit "c7036a3030d128bcecefc1eabc47c039ccfdcec9") + (revision "0")) + (package + (name "apfs-fuse") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sgan81/apfs-fuse") + (recursive? #t) ; for lzfse + (commit commit))) + (sha256 + (base32 + "1akd4cx1f9cyq6sfk9ybv4chhjwjlnqi8ic4z5ajnd5x0g76nz3r")) + (file-name (git-file-name name version)))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; No test suite + #:phases + (modify-phases %standard-phases + ;; No 'install' target in CMakeLists.txt + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (lib (string-append out "/lib")) + (doc (string-append out "/share/doc/" + (string-append ,name "-" ,version)))) + (install-file "apfs-dump" bin) + (install-file "apfs-dump-quick" bin) + (install-file "apfs-fuse" bin) + (install-file "libapfs.a" lib) + (install-file "../source/LICENSE" doc) + #t)))))) + (inputs + `(("bzip2" ,bzip2) + ("fuse" ,fuse) + ("zlib" ,zlib))) + (synopsis "Read-only FUSE driver for the APFS filesystem") + (description "APFS-FUSE is a read-only FUSE driver for the @dfn{Apple File +System} (APFS). It is currently in an experimental state — it may not be able +to read all files, and it does not support all the compression methods in +APFS.") + (home-page "https://github.com/sgan81/apfs-fuse") + (license license:gpl2+)))) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 28bfb28f49..7d7c3ab111 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -165,6 +165,13 @@ line client and a client based on Qt.") #:make-flags (list "ARGS=-E BaselineTest_cmd-org") #:phases (modify-phases %standard-phases + (add-after 'unpack 'boost-compat + (lambda _ + (substitute* "src/utils.h" + ;; This library moved in Boost 1.66. Remove for Ledger + ;; versions > 3.1.1. + (("boost/uuid/sha1.hpp") "boost/uuid/detail/sha1.hpp")) + #t)) (add-before 'configure 'install-examples (lambda* (#:key outputs #:allow-other-keys) (let ((examples (string-append (assoc-ref outputs "out") @@ -840,7 +847,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (define-public python-duniterpy (package (name "python-duniterpy") - (version "0.43.7") + (version "0.50.0") (source (origin (method git-fetch) @@ -851,10 +858,14 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ") (file-name (git-file-name name version)) (sha256 (base32 - "19m36z98361bqxjdb65597j2kxbly491927c6p9z47s1vxc3raaq")))) + "0f24ihglmzphy30pgc49w0rxmsjc76mgcggg078cfsz7xrrk13gf")))) (build-system python-build-system) + (arguments + ;; Tests fail with "AttributeError: module 'attr' has no attribute 's'". + `(#:tests? #f)) (propagated-inputs `(("python-aiohttp" ,python-aiohttp) + ("python-attr" ,python-attr) ("python-base58" ,python-base58) ("python-jsonschema" ,python-jsonschema) ("python-libnacl" ,python-libnacl) @@ -875,7 +886,7 @@ main features are: (define-public silkaj (package (name "silkaj") - (version "0.5.0") + (version "0.6.0") (source (origin (method git-fetch) @@ -885,30 +896,10 @@ main features are: (file-name (git-file-name name version)) (sha256 (base32 - "0xy25lpgz04nxikjvxlnlckrc9xmsxyiz2qm0bsiid8cnbdqcn12")))) + "02n028rz1pshgh7w0af3b291r8lwvhzskm1q98d991gr8rscvad2")))) (build-system python-build-system) (arguments - `(#:tests? #f ;no test - #:phases - (modify-phases %standard-phases - ;; The program is just a bunch of Python files in "src/" directory. - ;; Many phases are useless. However, `python-build-system' correctly - ;; sets PYTHONPATH and patches Python scripts. - (delete 'configure) - (delete 'build) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (share (string-append out "/share/silkaj")) - (executable (string-append share "/silkaj.py")) - (bin (string-append out "/bin"))) - ;; Install data. - (copy-recursively "src" share) - ;; Install executable. - (mkdir-p bin) - (with-directory-excursion bin - (symlink executable "silkaj"))) - #t))))) + `(#:tests? #f)) ;no test (inputs `(("python-commandlines" ,python-commandlines) ("python-ipaddress" ,python-ipaddress) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 0b5a82e9e5..c396cd644f 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -446,25 +446,26 @@ such as: (license (list license:bsd-3 license:bsd-2)))) ; libfdt -(define-public arm-trusted-firmware-pine64-plus - (let ((base (make-arm-trusted-firmware "sun50iw1p1")) - ;; Vendor's arm trusted firmware branch hasn't been upstreamed yet. - (commit "ae78724247a01560164d607ed66db111c74d8df0") +(define-public arm-trusted-firmware-sun50i-a64 + (let ((base (make-arm-trusted-firmware "sun50i_a64")) + ;; Use unreleased version which enables additional features needed for + ;; LCD support + (commit "cabe0a31801e99e7abb84d2114ded6bb56f3c71e") (revision "1")) (package (inherit base) - (name "arm-trusted-firmware-pine64-plus") - (version (string-append "1.2-" revision "." (string-take commit 7))) + (name "arm-trusted-firmware-sun50i-a64") + (version (git-version "2.0" revision commit)) (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/apritzel/arm-trusted-firmware.git") + (url "https://github.com/ARM-software/arm-trusted-firmware.git") (commit commit))) (file-name (git-file-name name version)) (sha256 (base32 - "0r4xnlq7v9khjfcg6gqp7nmrmnw4z1r8bipwdr07png1dcbb8214"))))))) + "0srw2zj3vn5d2fwzjpwa5h70d5bwvb79jnpdvmd395npv0gxshdz"))))))) (define-public arm-trusted-firmware-puma-rk3399 (let ((base (make-arm-trusted-firmware "rk3399")) diff --git a/gnu/packages/fltk.scm b/gnu/packages/fltk.scm index a3c088c2e8..972506c8c5 100644 --- a/gnu/packages/fltk.scm +++ b/gnu/packages/fltk.scm @@ -115,6 +115,12 @@ UI builder called FLUID that can be used to create applications in minutes.") #:configure-flags '("--enable-gl") #:phases (modify-phases %standard-phases + (add-before 'configure 'setup-waf + (lambda* (#:key inputs #:allow-other-keys) + (let ((waf (assoc-ref inputs "waf"))) + (delete-file "waf") + (copy-file (string-append waf "/bin/waf") "waf")) + #t)) (add-before 'configure 'set-ldflags (lambda* (#:key outputs #:allow-other-keys) (setenv "LDFLAGS" @@ -123,7 +129,8 @@ UI builder called FLUID that can be used to create applications in minutes.") #t))))) (inputs `(("libjpeg" ,libjpeg) - ("glu" ,glu))) + ("glu" ,glu) + ("waf" ,python-waf))) ;; ntk.pc lists "x11" and "xft" in Requires.private, and "cairo" in ;; Requires. (propagated-inputs diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 1195695d7a..b0cb78c5cb 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -99,13 +99,14 @@ in print. With attention to detail for high resolution rendering.") (name "font-ubuntu") (version "0.83") (source (origin - (method url-fetch) - (uri (string-append - "http://font.ubuntu.com/download/ubuntu-font-family-" - version ".zip")) + (method git-fetch) + (uri (git-reference + (url "https://salsa.debian.org/fonts-team/fonts-ubuntu") + (commit (string-append "upstream/" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0hjvq2x758dx0sfwqhzflns0ns035qm7h6ygskbx1svzg517sva5")))) + "1d2xrjpxy70f3nsgqiggwv6pj06qglf5vj2847pqx60w3ygi903g")))) (build-system font-build-system) (home-page "http://font.ubuntu.com/") (synopsis "The Ubuntu Font Family") @@ -621,7 +622,7 @@ languages, plus Greek and Cyrillic.") (define-public font-gnu-unifont (package (name "font-gnu-unifont") - (version "11.0.02") + (version "11.0.03") (source (origin (method url-fetch) (uri (string-append @@ -629,16 +630,14 @@ languages, plus Greek and Cyrillic.") version ".tar.gz")) (sha256 (base32 - "1di8i44c163b9l5f08jcrjfijnqz0j7p7hpfvf8dcms6cm6s4wvy")))) + "171zhm52c4rzpn19qcq4n9nyfbcjl38v50zslhvgpjdcmc5jvhav")))) (build-system gnu-build-system) - (outputs '("out" ; TrueType version - "pcf" ; PCF (bitmap) version - "psf" ; PSF (console) version - "bin" ; Utilities to manipulate '.hex' format - )) + (outputs '("out" ; TrueType version + "pcf" ; PCF (bitmap) version + "psf" ; PSF (console) version + "bin")) ; Utilities to manipulate '.hex' format (arguments - '(#:parallel-build? #f ; parallel build fails - #:tests? #f ; no check target + '(#:tests? #f ; no check target #:phases (modify-phases %standard-phases (replace diff --git a/gnu/packages/fpga.scm b/gnu/packages/fpga.scm index c9454aa324..9ab2e35255 100644 --- a/gnu/packages/fpga.scm +++ b/gnu/packages/fpga.scm @@ -121,14 +121,15 @@ For synthesis, the compiler generates netlists in the desired format.") (name "yosys") (version "0.7") (source (origin - (method url-fetch) - (uri - (string-append "https://github.com/cliffordwolf/yosys/archive/" - name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/cliffordwolf/yosys.git") + (commit (string-append "yosys-" version)) + (recursive? #t))) ; for the ‘iverilog’ submodule (sha256 (base32 - "0vkfdn4phvkjqlnpqlr6q5f97bgjc3312vj5jf0vf85zqv88dy9x")) - (file-name (string-append name "-" version "-checkout.tar.gz")) + "1ssrpgw0j9qlm52g1hsbb9fsww4vnwi0l7zvvky7a8w7wamddky0")) + (file-name (git-file-name name version)) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 8853ce1ceb..8982c0ec35 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> +;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -67,16 +68,14 @@ #:use-module (gnu packages m4) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) - #:use-module (gnu packages polkit) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages perl) - #:use-module (gnu packages perl-check) + #:use-module (gnu packages polkit) #:use-module (gnu packages python) #:use-module (gnu packages valgrind) #:use-module (gnu packages w3m) #:use-module (gnu packages web) - #:use-module (gnu packages xml) #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (srfi srfi-1)) @@ -229,109 +228,69 @@ the freedesktop.org XDG Base Directory specification.") (define-public elogind (package (name "elogind") - (version "232.4") + (version "239.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/elogind/elogind/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/elogind/elogind") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1qcxian48z2dj5gfmp7brrngdydqf2jm00f4rjr5sy1myh8fy931")) - (patches (search-patches "elogind-glibc-2.27.patch")) - (modules '((guix build utils))) - (snippet - '(begin - (use-modules (guix build utils)) - (substitute* "Makefile.am" - ;; Avoid validation against DTD because the DTDs for - ;; both doctype 4.2 and 4.5 are needed. - (("XSLTPROC_FLAGS = ") "XSLTPROC_FLAGS = --novalid")) - #t)))) - (build-system gnu-build-system) + "1gipnbnlz5k3gxv33wyhi2zd94hlfa9lm360p8z6w5i9s8dzhf52")))) + (build-system meson-build-system) (arguments - `(#:tests? #f ;FIXME: "make check" in the "po" directory fails. - #:configure-flags - (list (string-append "--with-udevrulesdir=" - (assoc-ref %outputs "out") - "/lib/udev/rules.d") - - ;; Let elogind be its own cgroup controller, rather than relying - ;; on systemd or OpenRC. By default, 'configure' makes an - ;; incorrect guess. - "--with-cgroup-controller=elogind" - - (string-append "--with-rootprefix=" - (assoc-ref %outputs "out")) - (string-append "--with-rootlibexecdir=" - (assoc-ref %outputs "out") - "/libexec/elogind") - ;; These are needed to ensure that lto linking works. - "RANLIB=gcc-ranlib" - "AR=gcc-ar" - "NM=gcc-nm") - #:make-flags '("PKTTYAGENT=/run/current-system/profile/bin/pkttyagent") + `(#:configure-flags + (let* ((out (assoc-ref %outputs "out")) + (sysconf (string-append out "/etc")) + (libexec (string-append out "/libexec/elogind")) + (dbuspolicy (string-append out "/etc/dbus-1/system.d")) + (shepherd (assoc-ref %build-inputs "shepherd")) + (halt-path (string-append shepherd "/sbin/halt")) + (kexec-path "") ;not available in Guix yet + (poweroff-path (string-append shepherd "/sbin/shutdown")) + (reboot-path (string-append shepherd "/sbin/reboot"))) + (list + (string-append "-Drootprefix=" out) + (string-append "-Dsysconfdir=" sysconf) + (string-append "-Drootlibexecdir=" libexec) + (string-append "-Ddbuspolicydir=" dbuspolicy) + (string-append "-Dc_link_args=-Wl,-rpath=" libexec) + (string-append "-Dcpp_link_args=-Wl,-rpath=" libexec) + (string-append "-Dhalt-path=" halt-path) + (string-append "-Dkexec-path=" kexec-path) + (string-append "-Dpoweroff-path=" poweroff-path) + (string-append "-Dreboot-path=" reboot-path) + "-Dcgroup-controller=elogind" + ;; Disable some tests. + "-Dtests=false" + "-Dslow-tests=false")) #:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-locale-header - (lambda _ - ;; Fix compilation with glibc >= 2.26, which removed xlocale.h. - ;; This can be removed for elogind 234. - (substitute* "src/basic/parse-util.c" - (("xlocale\\.h") "locale.h")) - #t)) - (replace 'bootstrap + (add-after 'unpack 'fix-pkttyagent-path (lambda _ - (invoke "intltoolize" "--force" "--automake") - (invoke "autoreconf" "-vif"))) - (add-before 'build 'fix-service-file - (lambda* (#:key outputs #:allow-other-keys) - ;; Fix the file name of the 'elogind' binary in the D-Bus - ;; '.service' file. - (substitute* "src/login/org.freedesktop.login1.service" - (("^Exec=.*") - (string-append "Exec=" (assoc-ref %outputs "out") - "/libexec/elogind/elogind\n"))) + (substitute* "meson.build" + (("join_paths\\(bindir, 'pkttyagent'\\)") + "'\"/run/current-system/profile/bin/pkttyagent\"'")) #t)) - (add-after 'install 'add-libcap-to-search-path - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Add a missing '-L' for libcap in libelogind.la. See - ;; <https://lists.gnu.org/archive/html/guix-devel/2017-09/msg00084.html>. - (let ((libcap (assoc-ref inputs "libcap")) - (out (assoc-ref outputs "out"))) - (substitute* (string-append out "/lib/libelogind.la") - (("-lcap") - (string-append "-L" libcap "/lib -lcap"))) - #t))) - (add-after 'unpack 'remove-uaccess-tag + (add-after 'unpack 'change-pid-file-path (lambda _ - ;; systemd supports a "uaccess" built-in tag, but eudev currently - ;; doesn't. This leads to eudev warnings that we'd rather not - ;; see, so remove the reference to "uaccess." - (substitute* "src/login/73-seat-late.rules.in" - (("^TAG==\"uaccess\".*" line) - (string-append "# " line "\n"))) + (substitute* "src/login/elogind.c" + (("\"/run/elogind.pid\"") "\"/run/systemd/elogind.pid\"")) #t))))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("libtool" ,libtool) - ("intltool" ,intltool) - ("gettext" ,gettext-minimal) - ("python" ,python) + `(("docbook-xml" ,docbook-xml) + ("docbook-xml-4.2" ,docbook-xml-4.2) ("docbook-xsl" ,docbook-xsl) - ("docbook-xml" ,docbook-xml) - ("xsltproc" ,libxslt) - ("m4" ,m4) + ("gettext" ,gettext-minimal) + ("gperf" ,gperf) ("libxml2" ,libxml2) ;for XML_CATALOG_FILES + ("m4" ,m4) ("pkg-config" ,pkg-config) - - ;; Use gperf 3.0 to work around - ;; <https://github.com/wingo/elogind/issues/8>. - ("gperf" ,gperf-3.0))) + ("python" ,python) + ("xsltproc" ,libxslt))) (inputs `(("linux-pam" ,linux-pam) - ("linux-libre-headers" ,linux-libre-headers) ("libcap" ,libcap) ("shepherd" ,shepherd) ;for 'halt' and 'reboot', invoked ;when pressing the power button diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index b9c6d209b8..dd8af33972 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -170,7 +170,7 @@ as required.") (define-public libfilezilla (package (name "libfilezilla") - (version "0.14.0") + (version "0.15.1") (source (origin (method url-fetch) @@ -178,11 +178,13 @@ as required.") name "/" name "-" version ".tar.bz2")) (sha256 (base32 - "15cfz98asypf9rfybv4c6kx8nk3wak7qlm1azldc0gd1nqm4xqvz")))) + "17zlhw5b1a7jzh50cbpy2is3sps5lnzch5yf9qm7mwrviw9c8j10")))) (build-system gnu-build-system) (native-inputs `(("cppunit" ,cppunit) ("pkg-config" ,pkg-config))) + (inputs + `(("nettle" ,nettle))) (home-page "https://lib.filezilla-project.org") (synopsis "Cross-platform C++ library used by Filezilla client") (description @@ -207,14 +209,14 @@ output. (define-public filezilla (package (name "filezilla") - (version "3.37.4") + (version "3.39.0") (source (origin (method url-fetch) (uri (string-append "https://download.filezilla-project.org/client/" "FileZilla_" version "_src.tar.bz2")) (sha256 - (base32 "169wy7ilsh518mcinkjmr6m0kzxbzchmc9mivf5c9b4zp1w4gg3i")))) + (base32 "0ks42q6mi3qx85zpa98izkyficv2bdh3jnvmy97xjnjyfy9mwlgv")))) (build-system gnu-build-system) (arguments ;; Don't let filezilla phone home to check for updates. diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 6b7e71f6c0..34a015bdf7 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -397,15 +397,16 @@ support.") (define-public tiled (package (name "tiled") - (version "1.2.0") + (version "1.2.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/bjorn/tiled/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/bjorn/tiled.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "13dlf5kzvhhjkhy19118x3diakmraz4m9kxrsdam8dms6xivb6lp")))) + "1dl06k2p0r7l20ghxcq5sn7j0jl2l8q4m27vmfs2qfgvldjll2h3")))) (build-system gnu-build-system) (inputs `(("qtbase" ,qtbase) @@ -440,18 +441,19 @@ clone.") (define-public sfml (package (name "sfml") - (version "2.5.0") + (version "2.5.1") (source (origin - (method url-fetch) + (method git-fetch) ;; Do not fetch the archives from ;; http://mirror0.sfml-dev.org/files/ because files there seem ;; to be changed in place. - (uri (string-append "https://github.com/SFML/SFML/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (git-reference + (url "https://github.com/SFML/SFML.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1x3yvhdrln5b6h4g5r4mds76gq8zsxw6icxqpwqkmxsqcq5yviab")) + "0abr8ri2ssfy9ylpgjrr43m6rhrjy03wbj9bn509zqymifvq5pay")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index bb96bbe68a..7f84e447bb 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013 John Darrington <jmd@gnu.org> ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2014, 2016 David Thompson <dthompson2@worcester.edu> -;;; Copyright © 2014, 2015, 2016, 2017 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2014, 2015, 2016, 2017, 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com> ;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net> ;;; Copyright © 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org> @@ -35,6 +35,7 @@ ;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2018 Madalin Ionel-Patrascu <madalinionel.patrascu@mdc-berlin.de> ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -572,7 +573,7 @@ automata. The following features are available: (define-public meandmyshadow (package (name "meandmyshadow") - (version "0.4.1") + (version "0.5") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/meandmyshadow/" @@ -580,38 +581,24 @@ automata. The following features are available: "-src.tar.gz")) (sha256 (base32 - "0wl5dc75qy001s6043cx0vr2l5y2qfv1cldqnwill9sfygqj9p95")))) + "1b6qf83vdfv8jwn2jq9ywmda2qn2f5914i7mwfy04m17wx593m3m")) + (patches (search-patches + ;; This will not be needed in the next release. + "meandmyshadow-define-paths-earlier.patch")))) (build-system cmake-build-system) (arguments - '(#:tests? #f ; there are no tests - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'set-sdl'paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "cmake/Modules/FindSDL_gfx.cmake" - (("/usr/local/include/SDL") - (string-append (assoc-ref inputs "sdl") - "/include/SDL"))) - ;; Because SDL provides lib/libX11.so.6 we need to explicitly - ;; link with libX11, even though we're using the GL backend. - (substitute* "CMakeLists.txt" - (("\\$\\{X11_LIBRARIES\\}") "-lX11")) - #t))))) + `(#:tests? #f)) ; there are no tests (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("sdl" ,(sdl-union (list sdl - sdl-image - sdl-gfx - sdl-mixer - sdl-ttf))) - ("libx11" ,libx11) ; needed by sdl's libX11 + `(("curl" ,curl) ("libarchive" ,libarchive) - ("openssl" ,openssl) - ("mesa" ,mesa) - ("glu" ,glu) - ("curl" ,curl))) - (home-page "http://meandmyshadow.sourceforge.net/") + ("lua" ,lua) + ("sdl" ,(sdl-union (list sdl2 + sdl2-image + sdl2-mixer + sdl2-ttf))))) + (home-page "https://acmepjz.github.io/meandmyshadow/") (synopsis "Puzzle/platform game") (description "Me and My Shadow is a puzzle/platform game in which you try to reach the exit by solving puzzles. Spikes, moving blocks, fragile blocks @@ -3272,7 +3259,7 @@ safety of the Chromium vessel.") (define-public tuxpaint (package (name "tuxpaint") - (version "0.9.22") ;keep VER_DATE below in sync + (version "0.9.23") ;keep VER_DATE below in sync (source (origin (method url-fetch) @@ -3280,7 +3267,7 @@ safety of the Chromium vessel.") version "/tuxpaint-" version ".tar.gz")) (sha256 (base32 - "1qrbrdck9yxpcg3si6jb9i11w8lw9h4hqad0pfaxgyiniqpr7gca")) + "09k9pxi88r3dx6dyjwf9h85d4qpva4i29qz63dc558hg9v21k69l")) (modules '((guix build utils))) (snippet '(begin @@ -3308,16 +3295,22 @@ safety of the Chromium vessel.") ("sdl" ,(sdl-union (list sdl sdl-mixer sdl-ttf sdl-image))))) ;; TODO: Use system fonts rather than those in data/fonts (arguments - `(#:make-flags `("VER_DATE=2014-08-23" + `(#:make-flags `("VER_DATE=2018-09-02" "GPERF=gperf" "CC=gcc" "SDL_PCNAME=sdl SDL_image SDL_mixer SDL_ttf" ,(string-append "PREFIX=" %output) - "GNOME_PREFIX=$(PREFIX)" + "KDE_PREFIX=$(PREFIX)/share/applications" + "KDE_ICON_PREFIX=$(PREFIX)/share/icons/" "COMPLETIONDIR=$(PREFIX)/etc/bash_completion.d") #:parallel-build? #f ;fails on some systems #:tests? #f ;No tests #:phases (modify-phases %standard-phases (delete 'configure) ;no configure phase + (add-before 'install 'no-sys-cache + (lambda _ ;do not rebuild system conf cache + (substitute* "Makefile" + (("kbuildsycoca4") "")) + #t)) (add-after 'install 'fix-import (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -3349,7 +3342,7 @@ your child be creative.") (define-public tuxpaint-stamps (package (name "tuxpaint-stamps") - (version "2014.08.23") + (version "2018.09.01") (source (origin (method url-fetch) @@ -3358,7 +3351,7 @@ your child be creative.") "/tuxpaint-stamps-" version ".tar.gz")) (sha256 (base32 - "0rhlwrjz44wp269v3rid4p8pi0i615pzifm1ym6va64gn1bms06q")))) + "1skr23k27yj3vgwfazpzxp90lb2a278gxrkr3bxw7az6zpkmb3yp")))) (build-system trivial-build-system) (native-inputs `(("tar" ,tar) @@ -3387,7 +3380,7 @@ with the \"Stamp\" tool within Tux Paint.") (define-public tuxpaint-config (package (name "tuxpaint-config") - (version "0.0.13") ;keep VER_DATE below in sync + (version "0.0.14") ;keep VER_DATE below in sync (source (origin (method url-fetch) @@ -3395,7 +3388,7 @@ with the \"Stamp\" tool within Tux Paint.") version "/tuxpaint-config-" version ".tar.gz")) (sha256 (base32 - "1z12s46mvy87qs3vgq9m0ki9pp21zqc52mmgphahpihw3s7haf6v")))) + "0zkgxk436nqcp43zghkfmh397c7dvh5bwn2as7gwvv208bzyij6g")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gettext-minimal))) @@ -3407,7 +3400,7 @@ with the \"Stamp\" tool within Tux Paint.") ("libxft" ,libxft) ("mesa" ,mesa))) (arguments - `(#:make-flags `("VER_DATE=2014-08-23" + `(#:make-flags `("VER_DATE=2018-09-01" "CONFDIR=/etc/tuxpaint" ;don't write to store ,(string-append "PREFIX=" %output) "GNOME_PREFIX=$(PREFIX)") @@ -3658,18 +3651,18 @@ throwing people around in pseudo-randomly generated buildings.") (define-public hyperrogue (package (name "hyperrogue") - (version "10.4t") + (version "10.5") ;; When updating this package, be sure to update the "hyperrogue-data" ;; origin in native-inputs. (source (origin (method url-fetch) (uri (string-append - "http://www.roguetemple.com/z/hyper/" + "https://www.roguetemple.com/z/hyper/" name (string-join (string-split version #\.) "") "-src.tgz")) (sha256 (base32 - "0phqhmnzmc16a23qb4fkil0flzb86kibdckf1r35nc3l0k4193nn")))) + "04wk50f51xrb9vszwil4ivkfpy7xc6nw3gnp90hbna2zqi2jnvb8")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -3741,12 +3734,12 @@ throwing people around in pseudo-randomly generated buildings.") (method url-fetch) (uri (string-append - "http://www.roguetemple.com/z/hyper/" name + "https://www.roguetemple.com/z/hyper/" name (string-join (string-split version #\.) "") "-win.zip")) (sha256 (base32 - "1xd9v8zzgi8m5ar8g4gy1xx5zqwidz3gn1knz0lwib3kbxx4drpg")))) + "0r6xvnr7b56iv27n8z10qmxhsz5h7w6ayhxkz3xinlvch84bk708")))) ("unzip" ,unzip))) (inputs `(("font-dejavu" ,font-dejavu) @@ -3756,7 +3749,7 @@ throwing people around in pseudo-randomly generated buildings.") sdl-gfx sdl-mixer sdl-ttf))))) - (home-page "http://www.roguetemple.com/z/hyper/") + (home-page "https://www.roguetemple.com/z/hyper/") (synopsis "Non-euclidean graphical rogue-like game") (description "HyperRogue is a game in which the player collects treasures and fights @@ -4018,7 +4011,7 @@ emerges from a sewer hole and pulls her below ground.") (define-public cdogs-sdl (package (name "cdogs-sdl") - (version "0.6.7") + (version "0.6.8") (source (origin (method git-fetch) (uri (git-reference @@ -4027,7 +4020,7 @@ emerges from a sewer hole and pulls her below ground.") (file-name (git-file-name name version)) (sha256 (base32 - "1frafzsj3f83xkmn4llr7g728c82lcqi424ini1hv3gv5zjgpa15")))) + "1v0adxm4xsix6r6j9hs7vmss7pxrb37azwfazr54p1dmfz4s6rp8")))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -4153,31 +4146,54 @@ small robot living in the nano world, repair its maker.") (define-public teeworlds (package (name "teeworlds") - (version "0.6.4") + (version "0.7.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/teeworlds/teeworlds/" - "archive/" version "-release.tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + ;; do not use auto-generated tarballs + (method git-fetch) + (uri (git-reference + (url "https://github.com/teeworlds/teeworlds.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1mqhp6xjl75l49050cid36wxyjn1qr0vjx1c709dfg1lkvmgs6l3")) - (modules '((guix build utils))) - (snippet - '(begin - (for-each delete-file-recursively - '("src/engine/external/wavpack/" - "src/engine/external/zlib/")) + "0jigg2yikihbivzs7hpljr0mghx1l9v4f1cdr8fbmqv2wb51ah8q")) + (modules '((guix build utils) + (ice-9 ftw) + (ice-9 regex) + (srfi srfi-1) + (srfi srfi-26))) + (snippet ; remove bundled libraries except md5 + '(let ((base-dir "src/engine/external/")) + (for-each (compose (cut delete-file-recursively <>) + (cut string-append base-dir <>)) + (remove (cut string-match "(^.)|(^md5$)" <>) + (scandir base-dir))) #t)) (patches (search-patches "teeworlds-use-latest-wavpack.patch")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests included + #:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26)) #:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) + ;; The bundled json-parser uses an old API. + ;; To use the latest non-bundled version, we need to pass the + ;; length of the data in all 'json_parse_ex' calls. + (define (use-latest-json-parser file) + (substitute* file + (("engine/external/json-parser/json\\.h") + "json-parser/json.h") + (("json_parse_ex\\(&JsonSettings, pFileData, aError\\);") + "json_parse_ex(&JsonSettings, + pFileData, + strlen(pFileData), + aError);"))) + ;; Embed path to assets. (substitute* "src/engine/shared/storage.cpp" (("#define DATA_DIR.*") @@ -4187,50 +4203,68 @@ small robot living in the nano world, repair its maker.") "\""))) ;; Bam expects all files to have a recent time stamp. - (for-each (lambda (file) - (utime file 1 1)) + (for-each (cut utime <> 1 1) (find-files ".")) ;; Do not use bundled libraries. (substitute* "bam.lua" - (("if config.zlib.value == 1 then") - "if true then") - (("wavpack = .*") - "wavpack = {} -settings.link.libs:Add(\"wavpack\")\n")) + (("local json = Compile.+$") + "local json = nil +settings.link.libs:Add(\"jsonparser\")") + (("local png = Compile.+$") + "local png = nil +settings.link.libs:Add(\"pnglite\")") + (("local wavpack = Compile.+$") + "local wavpack = nil +settings.link.libs:Add(\"wavpack\")") + (("if config\\.zlib\\.value == 1") + "if config.zlib.value")) + (substitute* "src/engine/client/graphics_threaded.cpp" + (("engine/external/pnglite/pnglite\\.h") + "pnglite.h")) (substitute* "src/engine/client/sound.cpp" - (("#include <engine/external/wavpack/wavpack.h>") - "#include <wavpack/wavpack.h>")) + (("engine/external/wavpack/wavpack\\.h") + "wavpack/wavpack.h")) + (for-each use-latest-json-parser + '("src/game/client/components/countryflags.cpp" + "src/game/client/components/menus_settings.cpp" + "src/game/client/components/skins.cpp" + "src/game/client/localization.cpp" + "src/game/editor/auto_map.h" + "src/game/editor/editor.cpp")) #t)) (replace 'build (lambda _ - (zero? (system* "bam" "-a" "-v" "release")))) + (invoke "bam" "-a" "-v" "conf=release"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (data (string-append out "/share/teeworlds/data"))) - (mkdir-p bin) - (mkdir-p data) - (for-each (lambda (file) - (install-file file bin)) - '("teeworlds" "teeworlds_srv")) - (copy-recursively "data" data) + (let* ((arch ,(system->linux-architecture + (or (%current-target-system) + (%current-system)))) + (build (string-append "build/" arch "/release/")) + (data-built (string-append build "data/")) + (out (assoc-ref outputs "out")) + (bin (string-append out "/bin/")) + (data (string-append out "/share/teeworlds/data/"))) + (for-each (cut install-file <> bin) + (map (cut string-append build <>) + '("teeworlds" "teeworlds_srv"))) + (copy-recursively data-built data) #t)))))) - ;; FIXME: teeworlds bundles the sources of "pnglite", a two-file PNG - ;; library without a build system. (inputs `(("freetype" ,freetype) ("glu" ,glu) + ("json-parser" ,json-parser) ("mesa" ,mesa) - ("sdl-union" ,(sdl-union (list sdl - sdl-mixer - sdl-image))) + ("pnglite" ,pnglite) + ("sdl2" ,sdl2) + ("sdl2-image" ,sdl2-image) + ("sdl2-mixer" ,sdl2-mixer) ("wavpack" ,wavpack) ("zlib" ,zlib))) (native-inputs `(("bam" ,bam) - ("python" ,python-2) + ("python" ,python-wrapper) ("pkg-config" ,pkg-config))) (home-page "https://www.teeworlds.com") (synopsis "2D retro multiplayer shooter game") @@ -5553,7 +5587,8 @@ quotation from a collection of quotes.") Comment=Xonotic glx~@ Exec=~a/bin/xonotic-glx~@ TryExec=~@*~a/bin/xonotic-glx~@ - Icon=~@ + Icon=xonotic~@ + Categories=Game~@ Type=Application~%" output))) (with-output-to-file @@ -5565,7 +5600,8 @@ quotation from a collection of quotes.") Comment=Xonotic sdl~@ Exec=~a/bin/xonotic-sdl~@ TryExec=~@*~a/bin/xonotic-sdl~@ - Icon=~@ + Icon=xonotic~@ + Categories=Game~@ Type=Application~%" output))) (with-output-to-file @@ -5577,7 +5613,8 @@ quotation from a collection of quotes.") Comment=Xonotic~@ Exec=~a/bin/xonotic-glx~@ TryExec=~@*~a/bin/xonotic~@ - Icon=~@ + Icon=xonotic~@ + Categories=Game~@ Type=Application~%" output))) #t))) @@ -5617,8 +5654,8 @@ quotation from a collection of quotes.") (lambda* (#:key outputs inputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (data (assoc-ref inputs "xonotic-data"))) - (copy-recursively (string-append data "/share/xonotic") - (string-append out "/share/xonotic")) + (symlink (string-append data "/share/xonotic") + (string-append out "/share/xonotic")) #t))) (add-after 'install-binaries 'wrap-binaries (lambda* (#:key outputs inputs #:allow-other-keys) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 8207104174..1f1e80dde8 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -461,34 +461,18 @@ Go. It also includes runtime support libraries for these languages.") (define-public gcc-6 (package (inherit gcc-5) - (version "6.4.0") + (version "6.5.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gcc/gcc-" version "/gcc-" version ".tar.xz")) (sha256 (base32 - "1m0lr7938lw5d773dkvwld90hjlcq2282517d1gwvrfzmwgg42w5")) - (patches (search-patches "gcc-libsanitizer-fix.patch" - "gcc-libsanitizer-ustat.patch" - "gcc-strmov-store-file-names.patch" + "0i89fksfp6wr1xg9l8296aslcymv2idn60ip31wr9s4pwin7kwby")) + (patches (search-patches "gcc-strmov-store-file-names.patch" "gcc-6-source-date-epoch-1.patch" "gcc-6-source-date-epoch-2.patch" - "gcc-5.0-libvtv-runpath.patch")) - (modules '((guix build utils))) - ;; This is required for building with glibc-2.26. - ;; This can be removed when gcc-6.5.0 is released. - ;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81712 - (snippet - '(begin - (for-each - (lambda (dir) - (substitute* (string-append "libgcc/config/" - dir "/linux-unwind.h") - (("struct ucontext") "ucontext_t"))) - '("aarch64" "alpha" "bfin" "i386" "m68k" "nios2" - "pa" "sh" "tilepro" "xtensa")) - #t)))) + "gcc-5.0-libvtv-runpath.patch")))) (inputs `(("isl" ,isl) ,@(package-inputs gcc-4.7))) @@ -506,16 +490,15 @@ Go. It also includes runtime support libraries for these languages.") (define-public gcc-7 (package (inherit gcc-6) - (version "7.3.0") + (version "7.4.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gcc/gcc-" version "/gcc-" version ".tar.xz")) (sha256 (base32 - "0p71bij6bfhzyrs8676a8jmpjsfz392s2rg862sdnsk30jpacb43")) + "0lgy170b0pp60j9cczqkmaqyjjb584vfamj4c30swd7k0j6y5pgd")) (patches (search-patches "gcc-strmov-store-file-names.patch" - "gcc-libsanitizer-ustat.patch" "gcc-5.0-libvtv-runpath.patch")))) (description "GCC is the GNU Compiler Collection. It provides compiler front-ends diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index 1fe69577fd..a53a4f2c2f 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -142,7 +142,7 @@ you can create PNG images on the fly or modify existing files.") '(#:phases (modify-phases %standard-phases (add-after 'unpack 'set-env - (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t))))) (native-inputs `(("perl-module-build" ,perl-module-build))) (propagated-inputs diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 4481e21ddf..fa2b259d7c 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -549,14 +549,14 @@ coordinates.") (define-public r-rgooglemaps (package (name "r-rgooglemaps") - (version "1.4.2") + (version "1.4.3") (source (origin (method url-fetch) (uri (cran-uri "RgoogleMaps" version)) (sha256 (base32 - "112mdm53qx92n2m4ms02sbppckp44l1z19vy99j6gw3jrdprjydl")))) + "06ab3lg1rwm93hkshf1vxfm8mlxq5qsjan0wx43lhnrysay65js4")))) (properties `((upstream-name . "RgoogleMaps"))) (build-system r-build-system) (propagated-inputs `(("r-png" ,r-png))) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 03c8b497b8..d7c112928f 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Nils Gillmann <ng0@n0.is> -;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> @@ -49,6 +49,7 @@ #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build utils) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) @@ -177,12 +178,13 @@ Polygon meshes, and Extruded polygon meshes.") (version "1.0") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/divVerent/s2tc/archive/v" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/divVerent/s2tc.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0ibfdib277fhbqvxzan0bmglwnsl1y1rw2g8skvz82l1sfmmn752")) - (file-name (string-append name "-" version ".tar.gz")))) + (base32 "1fg323fk7wlv2xh6lw66wswgcv6qi8aaadk7c28h2f2lj1s7njnf")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -190,12 +192,6 @@ Polygon meshes, and Extruded polygon meshes.") ("libtool" ,libtool))) (inputs `(("mesa-headers" ,mesa-headers))) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) (home-page "https://github.com/divVerent/s2tc") (synopsis "S3 Texture Compression implementation") (description @@ -259,7 +255,8 @@ also known as DXTn or DXTC) for Mesa.") ("libxvmc" ,libxvmc) ,@(match (%current-system) ((or "x86_64-linux" "i686-linux") - `(("llvm" ,llvm))) + ;; FIXME: Change to 'llvm' in the next rebuild cycle. + `(("llvm" ,llvm-without-rtti))) (_ `())) ("makedepend" ,makedepend) @@ -728,13 +725,14 @@ mixed vector/bitmap output.") (version "2.6") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/VirtualGL/virtualgl/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/VirtualGL/virtualgl.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1ck1d0w19cgyqvrb9mdlj6l5db90xf18yln71kdninlqxvpgj6h7")))) + "0di2igj2bhwb153fndgxks7y57pyhp0gj31n47j93gb7lxc9qcck")))) (arguments `(#:tests? #f ; no tests are available #:configure-flags (list diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 491f688c8e..cd9b48caff 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -36,7 +36,6 @@ #:use-module (gnu packages enlightenment) #:use-module (gnu packages file) #:use-module (gnu packages flex) - #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) #:use-module (gnu packages gperf) @@ -621,11 +620,7 @@ useful for C++.") (delete-file "tests/test_ossig.py") #t))))) (native-inputs - `(;; Use gcc-7 to work around an internal compiler error that happens - ;; when using gcc-5.5.0. FIXME: Try removing this when the default - ;; compiler is no longer gcc-5.5.0. - ("gcc" ,gcc-7) - ("which" ,which) + `(("which" ,which) ;for tests: dbus-run-session and glib-compile-schemas ("dbus" ,dbus) ("glib-bin" ,glib "bin") @@ -656,11 +651,7 @@ useful for C++.") ("python-pycairo" ,python2-pycairo) ("gobject-introspection" ,gobject-introspection))) (native-inputs - `(;; Use gcc-7 to work around an internal compiler error that happens - ;; when using gcc-5.5.0. FIXME: Try removing this when the default - ;; compiler is no longer gcc-5.5.0. - ("gcc" ,gcc-7) - ("which" ,which) + `(("which" ,which) ;for tests: dbus-run-session and glib-compile-schemas ("dbus" ,dbus) ("glib-bin" ,glib "bin") diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ba37d6afa4..415398eeee 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -31,6 +31,7 @@ ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net> ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> +;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -95,6 +96,7 @@ #:use-module (gnu packages polkit) #:use-module (gnu packages popt) #:use-module (gnu packages ghostscript) + #:use-module (gnu packages inkscape) #:use-module (gnu packages ibus) #:use-module (gnu packages iso-codes) #:use-module (gnu packages libcanberra) @@ -151,6 +153,7 @@ #:use-module (gnu packages version-control) #:use-module (gnu packages virtualization) #:use-module (gnu packages vpn) + #:use-module (gnu packages web) #:use-module (gnu packages xorg) #:use-module (ice-9 match) #:use-module (srfi srfi-1)) @@ -1321,9 +1324,13 @@ functionality was designed to be as reusable and portable as possible.") (build-system gnu-build-system) (arguments `(#:configure-flags - ;; The programmer kindly gives us a hook to turn off deprecation - ;; warnings ... - '("DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS") + '(;; We don't need static libraries, plus they don't build reproducibly + ;; (non-deterministic ordering of .o files in the archive.) + "--disable-static" + + ;; The programmer kindly gives us a hook to turn off deprecation + ;; warnings ... + "DISABLE_DEPRECATED_CFLAGS=-DGLIB_DISABLE_DEPRECATION_WARNINGS") ;; ... which they then completly ignore !! #:phases (modify-phases %standard-phases @@ -1343,7 +1350,8 @@ featuring mature C, C++ and Python bindings.") ;; Licence notice is unclear. The Web page simply say "GPL" without giving ;; a version. SOME of the code files have licence notices for GPLv2+. ;; The tarball contains files of the text of GPLv2 and LGPLv2. - (license license:gpl2+))) + (license license:gpl2+) + (properties `((upstream-name . "ORBit2"))))) (define-public libbonobo @@ -1371,7 +1379,14 @@ featuring mature C, C++ and Python bindings.") (lambda _ (substitute* "activation-server/Makefile.in" (("-DG_DISABLE_DEPRECATED") "-DGLIB_DISABLE_DEPRECATION_WARNINGS")) - #t))))) + #t))) + + ;; There's apparently a race condition between the server stub + ;; generation and linking of the example under 'samples/echo' that can + ;; lead do undefined references when building in parallel, as reported + ;; at <https://forums.gentoo.org/viewtopic-t-223376-start-550.html>. + ;; Thus, disable parallel builds. + #:parallel-build? #f)) (inputs `(("popt" ,popt) ("libxml2" ,libxml2))) ;; The following are Required by the .pc file @@ -2121,7 +2136,15 @@ editors, IDEs, etc.") (package (inherit vte) (name "vte-ng") - (version "0.52.2.a") + (version "0.54.2.a") + (home-page "https://github.com/thestinger/vte-ng") + (source (origin + (method git-fetch) + (uri (git-reference (url home-page) (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1r7d9m07cpdr4f7rw3yx33hmp4jmsk0dn5byq5wgksb2qjbc4ags")))) (native-inputs `(("gtk-doc" ,gtk-doc) ("gperf" ,gperf) @@ -2129,14 +2152,6 @@ editors, IDEs, etc.") ("automake" ,automake) ("libtool" ,libtool) ,@(package-native-inputs vte))) - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/thestinger/" - name "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1fd65mk7c87k03vhnb2ixkjvv9nja04mfq813iyjji1b11f2sh7v")))) (arguments `(#:phases (modify-phases %standard-phases (replace 'bootstrap @@ -2465,7 +2480,7 @@ libxml to ease remote use of the RESTful API.") (define-public libsoup (package (name "libsoup") - (version "2.64.0") + (version "2.64.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libsoup/" @@ -2473,7 +2488,7 @@ libxml to ease remote use of the RESTful API.") name "-" version ".tar.xz")) (sha256 (base32 - "09z7g3spww3f84y8jmicdd6lqp360mbggpg5h1fq1v4p5ihcjnyr")))) + "1il6lyrmfi0hfh3ysw8w1qzc1rdz0igkb7dv6d8g5mmilnac3pbm")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments @@ -3631,7 +3646,7 @@ for application developers.") (define-public totem (package (name "totem") - (version "3.26.1") + (version "3.26.2") (source (origin (method url-fetch) @@ -3640,7 +3655,7 @@ for application developers.") name "-" version ".tar.xz")) (sha256 (base32 - "10n302fdp3lhkzbij5sbzmsnln738029xil6cnng2d4dxv4n1099")) + "1llyisls3pzf5bwkpxyfyxc2d3gpa09n5pjy7qsjdqrp3ya4k36g")) (patches (search-patches "totem-meson-easy-codec.patch")))) (build-system meson-build-system) (native-inputs @@ -3752,7 +3767,7 @@ which can read a large number of file formats.") "b182c6b9e1d09e601bac0b703cc5f8b159ebbc3a.patch")) (sha256 (base32 - "17j45vyyr071ka3nckj2gycgyyv1j08fyrxw89jfdq2442nzrsiy"))))) + "06n87xgf927djmv1vshal84nqx7g8nwgljza3g2vydhy7g2n1csq"))))) (sha256 (base32 "0hzcns8gf5yb0rm4ss8jd8qzarcaplp5cylk6plwilsqfvxj4xn2")))) @@ -4098,15 +4113,15 @@ work and the interface is well tested.") (define-public eolie (package (name "eolie") - (version "0.9.38") + (version "0.9.45") (source (origin (method url-fetch) (uri (string-append "https://gitlab.gnome.org/World/eolie/" - "uploads/9814c06a1bc83ea09c3da8719a9ed11b/" + "uploads/020f3f686e2b938731752a1d9f5bfa7e/" "eolie-" version ".tar.xz")) (sha256 (base32 - "10vrh91rapgfmqwc6jkcybpmlvn4q0y8bnklw3rddzigf9kvqsff")))) + "0371p7g13r0b7zjc48fdcil43ddwpmyvkd2a4vv6ifsqmny6kl42")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -4618,14 +4633,6 @@ configuration program to choose applications starting on login.") (arguments '(#:phases (modify-phases %standard-phases - (add-after 'set-paths 'work-around-gcc-7-include-path-issue - ;; FIXME: Work around a problem with gcc-7 includes (see - ;; <https://bugs.gnu.org/30756>). Note that we use gcc-7 - ;; to work around an internal compiler error in gcc-5. - (lambda _ - (unsetenv "C_INCLUDE_PATH") - (unsetenv "CPLUS_INCLUDE_PATH") - #t)) (add-before 'check 'pre-check (lambda _ @@ -4643,11 +4650,7 @@ configuration program to choose applications starting on login.") ((".*expect\\(datestr\\).*") "")) #t))))) (native-inputs - `(("gcc" ,gcc-7) ; FIXME: Work around an internal compiler error in - ; gcc-5. Try removing this when our default compiler is - ; no longer gcc-5.5.0, and also remove the - ; 'work-around-gcc-7-include-path-issue' phase above. - ("glib:bin" ,glib "bin") ; for glib-compile-resources + `(("glib:bin" ,glib "bin") ; for glib-compile-resources ("pkg-config" ,pkg-config) ("xmllint" ,libxml2) ;; For testing @@ -6423,15 +6426,16 @@ functionality and behavior.") (define-public arc-theme (package (name "arc-theme") - (version "20170302") + (version "20181022") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/horst3180/arc-theme" - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/NicoHood/arc-theme.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0igxpngnkf1wpsg872a9jg3c9f5z8afm312yfbillz16mk8w39cw")))) + "08951dk1irfadwpr3p323a4fprmxg53rk2r2niwq3v62ryhi3663")))) (build-system gnu-build-system) (arguments '(#:phases @@ -6442,16 +6446,20 @@ functionality and behavior.") (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) - ("pkg-config" ,pkg-config))) - (inputs - `(("gtk+" ,gtk+))) + ("glib" ,glib "bin") ; for glib-compile-resources + ("gnome-shell" ,gnome-shell) + ("gtk+" ,gtk+) + ("inkscape" ,inkscape) + ("optipng" ,optipng) + ("pkg-config" ,pkg-config) + ("sassc" ,sassc))) (synopsis "A flat GTK+ theme with transparent elements") (description "Arc is a flat theme with transparent elements for GTK 3, GTK 2, and GNOME Shell which supports GTK 3 and GTK 2 based desktop environments like GNOME, Unity, Budgie, Pantheon, XFCE, Mate, etc.") (home-page "https://github.com/horst3180/arc-theme") ;; No "or later" language found. - (license license:gpl3))) + (license license:gpl3+))) (define-public faba-icon-theme (package diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index b4c9c463f7..d1dc8fd588 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -186,13 +186,13 @@ authentication and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.61.1") + (version "7.62.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gnunet/" name "-" version ".tar.Z")) (sha256 (base32 - "0amnhhmlxaliz2rzp3zf1x6ixjqvgmiq7in0q14gd21rjlk9kvir")))) + "1n258my5q4rxv140xvb1qh6vsh42ii0i8p7f2m15szqabm89487q")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 1.5 MiB of man3 pages diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index 0b8d3e578e..360f28a1bf 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -41,6 +41,8 @@ #:use-module (gnu packages curl) #:use-module (gnu packages crypto) #:use-module (gnu packages emacs) + #:use-module (gnu packages enlightenment) + #:use-module (gnu packages gettext) #:use-module (gnu packages guile) #:use-module (gnu packages openldap) #:use-module (gnu packages perl) @@ -220,14 +222,14 @@ compatible to GNU Pth.") (define-public gnupg (package (name "gnupg") - (version "2.2.10") + (version "2.2.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "05f9804g72pffdxgvxjmjzkfcpjg1x221g9rwcr8fi51hrxd77br")))) + "1ncwqjhcxh46fgkp84g2lhf91amcha7abk6wdm1kagzm7q93wv29")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -835,6 +837,34 @@ software."))) "Pinentry provides a console and a Qt GUI that allows users to enter a passphrase when @code{gpg} is run and needs it."))) +(define-public pinentry-efl + (package + (inherit pinentry-tty) + (name "pinentry-efl") + (source + (origin + (inherit (package-source pinentry-tty)) + (patches (search-patches "pinentry-efl.patch")))) + (arguments + '(#:configure-flags '("--enable-pinentry-efl") + #:phases + (modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + (invoke "sh" "autogen.sh")))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gettext-minimal) + ,@(package-native-inputs pinentry-tty))) + (inputs + `(("efl" ,efl) + ,@(package-inputs pinentry-tty))) + (description + "Pinentry provides a console and a graphical interface for the +@dfn{Enlightenment Foundation Libraries} (EFL) that allows users to enter a +passphrase when @code{gpg} is run and needs it."))) + (define-public pinentry (package (inherit pinentry-gtk2) (name "pinentry"))) diff --git a/gnu/packages/gnustep.scm b/gnu/packages/gnustep.scm index bd28ceaa00..dd7c67d553 100644 --- a/gnu/packages/gnustep.scm +++ b/gnu/packages/gnustep.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -167,14 +168,7 @@ interface. It is fast, feature rich, easy to configure, and easy to use.") (base32 "084a3irxbmgms4bqaga80mlx9wgvlkx6d2w0ns939yrpfzg87laj")))) (build-system gnu-build-system) - (arguments - `(#:tests? #f ; no "check" target - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (invoke "autoreconf" "-vfi") - #t))))) + (arguments '(#:tests? #f)) ; no "check" target (inputs `(("glib" ,glib) ("libx11" ,libx11) @@ -262,18 +256,11 @@ on.") (base32 "1lx276ba8r2yydhmwj1g586jdqg695ad89ng36fr3mb067gvb2rz")))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (invoke "autoreconf" "-vfi") - #t))))) - ;; wmclock requires autoreconf to generate its configure script. (inputs `(("libx11" ,libx11) ("libxext" ,libxext) ("libxpm" ,libxpm))) + ;; wmclock requires autoreconf to generate its configure script. (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 39281b59e5..d6b1f4c2d6 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -39,6 +39,7 @@ #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages base) + #:use-module (gnu packages check) #:use-module (gnu packages databases) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) @@ -417,7 +418,12 @@ in the Mozilla clients.") (setenv "DOMSUF" "(none)") (setenv "USE_IP" "TRUE") (setenv "IP_ADDRESS" "127.0.0.1") - (invoke "./nss/tests/all.sh"))) + + ;; The "PayPalEE.cert" certificate expires every six months, + ;; leading to test failures: + ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To + ;; work around that, set the time to roughly the release date. + (invoke "faketime" "2018-09-01" "./nss/tests/all.sh"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -453,7 +459,8 @@ in the Mozilla clients.") `(("sqlite" ,sqlite) ("zlib" ,zlib))) (propagated-inputs `(("nspr" ,nspr))) ; required by nss.pc. - (native-inputs `(("perl" ,perl))) + (native-inputs `(("perl" ,perl) + ("libfaketime" ,libfaketime))) ;for tests ;; The NSS test suite takes around 48 hours on Loongson 3A (MIPS) when ;; another build is happening concurrently on the same machine. @@ -482,43 +489,33 @@ security standards.") (define-public icecat (package (name "icecat") - (version "60.2.0-gnu1") + (version "60.3.0-gnu1") (source (origin (method url-fetch) - ;; Temporary URL pending official release: - (uri "https://alpha.gnu.org/gnu/gnuzilla/60.2.0/icecat-60.2.0-gnu1.tar.bz2") - #; (uri (string-append "mirror://gnu/gnuzilla/" (first (string-split version #\-)) "/" name "-" version ".tar.bz2")) (sha256 (base32 - "0lqx7g79x15941rhjr3qsfwsny6vzc7d7abdmvjy6jjbqkqlc1zl")) + "0icnl64nxcyf7dprpdpygxhabsvyhps8c3ixysj9bcdlj9q34ib1")) (patches (list (search-patch "icecat-avoid-bundled-libraries.patch") (search-patch "icecat-use-system-graphite2+harfbuzz.patch") (search-patch "icecat-use-system-media-libs.patch") - (mozilla-patch "icecat-CVE-2018-12385.patch" "80a4a7ef2813" "1vgcbimpnfjqj934v0cryq1g13xac3wfmd4jyhcb5s60x8xyssf5") - (search-patch "icecat-CVE-2018-12383.patch") - (mozilla-patch "icecat-bug-1489744.patch" "6546ee839d30" "11mhvj77r789b428bfxqq5wdx8yr7lbrdjzr8qjj6fw197pldn51") - (mozilla-patch "icecat-CVE-2018-12386.patch" "4808fcb2e6ca" "05sc881l7sh8bag8whd2ggdn198lskqcxq8f41scfpqscw6xs5d5") - (mozilla-patch "icecat-CVE-2018-12387.patch" "b8f5c37486e1" "0lvmbh126m695kgdbasy1y5xh9n1j08cwdhn071mgvj6yn8cns5z") - (mozilla-patch "icecat-bug-1464751.patch" "d5d00faf0465" "1mj7dbb06brwrk0mvap0z4lfl2hwz1cj6dwjvdrisxm046pdw98i") - (mozilla-patch "icecat-bug-1472538.patch" "11462f2b98f2" "1nxgh0plzilylx8r73r7d74pv66qwjqxmd7nqii33p0snl2jjfzs") - (mozilla-patch "icecat-bug-1478685.patch" "098585dc86fc" "1b0x4qdh6isvffmibvc8ad8z62m3iky9q6jq0z6gyvn8q252cqal") - (mozilla-patch "icecat-bug-1486080.patch" "3f8d57d936ea" "0pz2c18wcgj44v0j8my9xbm90m4bsjcvzmavj569fi8bh6s6zz8p") - (mozilla-patch "icecat-bug-1423278.patch" "878ceaee5634" "0i47s5nvrx9vqbnj6s9y9f4ffww20p8nviqa6frg676y1188xlyl") - (mozilla-patch "icecat-bug-1442010.patch" "87be1b98ec9a" "15f4l18c7hz9aqn89gg3dwmdidfwgn10dywgpzydm8mps45amx7j") - (mozilla-patch "icecat-bug-1484559.patch" "99e58b5307ce" "02fdgbliwzi2r2376wg6k1rky1isfka0smac4ii2cll01jhpfrn6") - (mozilla-patch "icecat-bug-1487098.patch" "f25ce451a492" "18nzg39iyxza1686180qk9cc88l5j2hf1h35d62lrqmdgd9vcj33") - (mozilla-patch "icecat-bug-1484905.patch" "35c26bc231df" "0qh8d4z6y03h5xh7djci26a01l6zq667lg2k11f6zzg7z2j0h67x") - (mozilla-patch "icecat-bug-1488061.patch" "050d0cfa8e3d" "05ql798ynbyz5pvyri4b95j4ixmgnny3zl7sd2ckfrrbm9mxh627") - (mozilla-patch "icecat-bug-1434963-pt1.patch" "1e6dad87efed" "1v00a6cmgswjk54041jyv1ib129fxshpzwk6mn6lr0v5hylk3bx9") - (mozilla-patch "icecat-bug-1434963-pt2.patch" "6558c46df9ea" "0vdy9dm9w5k1flhcfxwvvff0aa415b5mgmmq5r37i83686768xfb") - (mozilla-patch "icecat-bug-1434963-pt3.patch" "686fcfa8abd6" "0ihqr11aq4b0y7mx7bwn8yzn25mv3k2gdphm951mj1g85qg35ann") - (mozilla-patch "icecat-bug-1491132.patch" "14120e0c74d6" "188c5fbhqqhmlk88p70l6d97skh7xy4jhqdby1ri3h9ix967515j"))) + (mozilla-patch "icecat-bug-1464061.patch" "d28761dbff18" "1f58rzwx4s1af66fdwn9lgkcd1ksmq8kn8imvf78p90jqi24h7b4") + (mozilla-patch "icecat-bug-1479853.patch" "4faeb696dd06" "12891xx9c15s6kby6d3zk64v5nqgaq7sw597zv1fkd3a6x69hlva") + (mozilla-patch "icecat-bug-1488295.patch" "12ba39f69876" "1piyq44f0xa0a9z2748aqwpaziaxwp61d86gyhalbyag8lcxfb3p") + (mozilla-patch "icecat-bug-1500011.patch" "a0adabeedf26" "0f5wazha3zxzhy2j8f93hx62l9p02b1p40vi07qah3ar67h4ccj9") + (mozilla-patch "icecat-bug-1503082.patch" "19604eb26230" "1wqxgph4z14ijhk2j2m4av5p6gx72d02lzz83q6yy0k065kw8psb") + (mozilla-patch "icecat-bug-1499861.patch" "98737ab09270" "0fyl6wv0jxcxpkfpsff46y93k49n8lrw0k7c1p45g8da015dx27a") + (mozilla-patch "icecat-bug-1504452.patch" "1cf7d80355d5" "19jp4x32vyxam54d1r9fm7jwf6krhhf3xazfqmxb9aw4iwdil7dl") + (mozilla-patch "icecat-bug-1494752.patch" "c264774b8913" "1hxyi131x8jwawrq90cgkph833iv9ixrdrgzl1r978gbzwq10xz2") + (mozilla-patch "icecat-bug-1477773.patch" "ec13fda7c9b0" "0zj7aylgw55g0y7plaafn5gq8jwcsdr1bpdxacs0hq914nm8zy9z") + (mozilla-patch "icecat-bug-1500759.patch" "5e1a9644aeef" "1qimrpgyrd8zkiri7w57j0aymk20y9b34am5w7rvr6qj1lhrbfla") + (mozilla-patch "icecat-bug-1485655.patch" "9055726e2d89" "1pppxr94zqh6zmi2mn1ih21qap09vk5ivbhnwxqr8iszvygjg44g") + (mozilla-patch "icecat-bug-1410214.patch" "9e641345e2ef" "0542xss2jdb8drh4g50cfy32l300x69dyywgx3dqs03vgr3qplxy"))) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 7c026ff5f0..6c970700a5 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -36,6 +36,7 @@ #:use-module (guix git-download) #:use-module (guix packages) #:use-module (guix build-system gnu) + #:use-module (guix build-system trivial) #:use-module (guix build-system go) #:use-module (gnu packages admin) #:use-module (gnu packages gcc) @@ -46,7 +47,9 @@ #:use-module (gnu packages lua) #:use-module (gnu packages mp3) #:use-module (ice-9 match) - #:use-module (srfi srfi-1)) + #:use-module (srfi srfi-1) + #:export (go-github-com-gogo-protobuf-union) + #:export (go-golang-org-x-crypto-union)) ;; According to https://golang.org/doc/install/gccgo, gccgo-4.8.2 includes a ;; complete go-1.1.2 implementation, gccgo-4.9 includes a complete go-1.2 @@ -516,14 +519,25 @@ in the style of communicating sequential processes (@dfn{CSP}).") (substitute* (find-files "cmd" "\\.go") (("/lib(64)?/ld-linux.*\\.so\\.[0-9]") loader)) #t))) + ;; Prevent installation of the build cache, which contains store + ;; references to most of the tools used to build Go and would + ;; unnecessarily increase the size of Go's closure if it was + ;; installed. + ;; TODO This should be moved into the 'install' phase when Go 1.9 is + ;; removed. + (add-before 'install 'delete-extraneous-files + (lambda _ + (delete-file-recursively "../pkg/obj") + #t)) (replace 'set-bootstrap-variables (lambda* (#:key outputs inputs #:allow-other-keys) ;; Tell the build system where to find the bootstrap Go. (let ((go (assoc-ref inputs "go"))) (setenv "GOROOT_BOOTSTRAP" go) - (setenv "GOGC" "400")))))))))) + (setenv "GOGC" "400") + #t))))))))) -(define-public go go-1.9) +(define-public go go-1.11) (define-public go-github-com-alsm-ioprogress (let ((commit "063c3725f436e7fba0c8f588547bee21ffec7ac5") @@ -618,7 +632,16 @@ way of specifying command line options.") "1sv15sri99szkdz1bkh0ir46w9n8prrwx5hfai13nrhkawfyfy10")))) (build-system go-build-system) (arguments - '(#:import-path "gopkg.in/tomb.v2")) + '(#:import-path "gopkg.in/tomb.v2" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + ;; Add a missing % to fix the compilation of this test + (substitute* "src/gopkg.in/tomb.v2/tomb_test.go" + (("t.Fatalf\\(`Killf\\(\"BO%s") + "t.Fatalf(`Killf(\"BO%%s")) + #t))))) (synopsis "@code{tomb} handles clean goroutine tracking and termination") (description "The @code{tomb} package handles clean goroutine tracking and @@ -996,6 +1019,97 @@ Tiny Encryption Algorithm (XTEA) block cipher.") (home-page "https://go.googlesource.com/crypto/") (license license:bsd-3)))) +(define-public go-golang-org-x-crypto-ed25519 + (package + (inherit go-golang-org-x-crypto-bcrypt) + (name "go-golang-org-x-crypto-ed25519") + (arguments + (substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt) + ((#:import-path _) + "golang.org/x/crypto/ed25519"))) + (synopsis "ED25519 in Go") + (description "This package provides a Go implementation of the ED25519 +signature algorithm."))) + +(define-public go-golang-org-x-crypto-ripemd160 + (package + (inherit go-golang-org-x-crypto-bcrypt) + (name "go-golang-org-x-crypto-ripemd160") + (arguments + (substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt) + ((#:import-path _) + "golang.org/x/crypto/ripemd160"))) + (synopsis "RIPEMD-160 in Go") + (description "This package provides a Go implementation of the RIPEMD-160 +hash algorithm."))) + +(define-public go-golang-org-x-crypto-blake2s + (package + (inherit go-golang-org-x-crypto-bcrypt) + (name "go-golang-org-x-crypto-blake2s") + (arguments + (substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt) + ((#:import-path _) + "golang.org/x/crypto/blake2s"))) + (synopsis "BLAKE2s in Go") + (description "This package provides a Go implementation of the BLAKE2s +hash algorithm."))) + +(define-public go-golang-org-x-crypto-sha3 + (package + (inherit go-golang-org-x-crypto-bcrypt) + (name "go-golang-org-x-crypto-sha3") + (arguments + (substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt) + ((#:import-path _) + "golang.org/x/crypto/sha3"))) + (synopsis "SHA-3 in Go") + (description "This package provides a Go implementation of the SHA-3 +fixed-output-length hash functions and the SHAKE variable-output-length hash +functions defined by FIPS-202."))) + +;; Go searches for library modules by looking in the GOPATH environment +;; variable. This variable is a list of paths. However, Go does not +;; keep searching on GOPATH if it tries and fails to import a module. +;; So, we use a union for packages sharing a namespace. +(define* (go-golang-org-x-crypto-union #:optional + (packages (list go-golang-org-x-crypto-blowfish + go-golang-org-x-crypto-bcrypt + go-golang-org-x-crypto-tea + go-golang-org-x-crypto-xtea + go-golang-org-x-crypto-pbkdf2 + go-golang-org-x-crypto-twofish + go-golang-org-x-crypto-cast5 + go-golang-org-x-crypto-salsa20 + go-golang-org-x-crypto-ed25519 + go-golang-org-x-crypto-ripemd160 + go-golang-org-x-crypto-blake2s + go-golang-org-x-crypto-sha3))) + (package + (name "go-golang-org-x-crypto") + (version (package-version go-golang-org-x-crypto-bcrypt)) + (source #f) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build union)) + #:builder (begin + (use-modules (ice-9 match) + (guix build union)) + (match %build-inputs + (((names . directories) ...) + (union-build (assoc-ref %outputs "out") + directories) + #t))))) + (inputs (map (lambda (package) + (list (package-name package) package)) + packages)) + (synopsis "Union of the Go x crypto libraries") + (description "A union of the Golang cryptographic libraries. A +union is required because `go build` assumes that all of the headers and +libraries are in the same directory.") + (home-page (package-home-page go-golang-org-x-crypto-bcrypt)) + (license (package-license go-golang-org-x-crypto-bcrypt)))) + (define-public go-golang-org-x-net-ipv4 (let ((commit "d866cfc389cec985d6fda2859936a575a55a3ab6") (revision "1")) @@ -1476,31 +1590,6 @@ Features include: optimized for performance yet simple to use.") (license license:expat)))) -(define-public go-github-com-urfave-cli - (let ((commit "cfb38830724cc34fedffe9a2a29fb54fa9169cd1") - (revision "0")) - (package - (name "go-github-com-urfave-cli") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/urfave/cli.git") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj")))) - (build-system go-build-system) - (arguments - '(#:import-path "github.com/urfave/cli")) - (home-page "https://github.com/urfave/cli") - (synopsis "Library for building command-line interfaces in Go") - (description "This package provides a library for building command-line -interfaces in Go.") - (license license:expat)))) - (define-public go-github-com-blang-semver (let ((commit "60ec3488bfea7cca02b021d106d9911120d25fe9") (revision "0")) @@ -2081,26 +2170,28 @@ generate ANSI colored strings.") (base32 "1d9hr29i36cza98afj3g6rs3l7xbkprwzz0blcxsr9dd7nak20di")))) (build-system go-build-system) - (native-inputs + ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so + ;; when this package required as input for another one, it will have to + ;; be built again. Thus its CGO requirements must be made available in + ;; the environment, that is, they must be propagated. + (propagated-inputs `(("lua" ,lua))) (arguments `(#:unpack-path "github.com/aarzilli/golua" #:import-path "github.com/aarzilli/golua/lua" #:phases (modify-phases %standard-phases - (replace 'build - (lambda* (#:key import-path #:allow-other-keys) - (invoke "go" "install" - "-v" ; print the name of packages as they are compiled - "-x" ; print each command as it is invoked - "-ldflags=-s -w" ; strip the symbol table and debug - "-tags" "llua" ; Latest Lua on Guix does not have a version number. - import-path))) - (replace 'check - (lambda* (#:key import-path #:allow-other-keys) - (invoke "go" "test" - "-tags" "llua" ; Latest Lua on Guix does not have a version number. - import-path)))))) + ;; While it's possible to fix the CGO_LDFLAGS with the "-tags" + ;; command line argument, go-1.10+ does not re-use the produced pkg + ;; for dependencies, which means we would need to propagate the + ;; same "-tags" argument to all golua referrers. A substitution is + ;; more convenient here. We also need to propagate the lua + ;; dependency to make it available to referrers. + (add-after 'unpack 'fix-lua-ldflags + (lambda _ + (substitute* "src/github.com/aarzilli/golua/lua/lua.go" + (("#cgo linux,!llua,!luaa LDFLAGS: -llua5.3") + "#cgo linux,!llua,!luaa LDFLAGS: -llua"))))))) (home-page "https://github.com/aarzilli/golua") (synopsis "Go Bindings for the Lua C API") (description "This package provides @code{lua}, a Go module that can @@ -2348,12 +2439,917 @@ and lookup requests. Browse requests are not supported yet.") (base32 "1cpjqnrviwflz150g78iir5ndrp3hh7a93zbp4dwbg6sb2q141p2")))) (build-system go-build-system) - (native-inputs + ;; From go-1.10 onward, "pkg" compiled libraries are not re-used, so + ;; when this package required as input for another one, it will have to + ;; be built again. Thus its CGO requirements must be made available in + ;; the environment, that is, they must be propagated. + (propagated-inputs `(("pkg-config" ,pkg-config) ("taglib" ,taglib))) (arguments - `(#:import-path "github.com/wtolson/go-taglib")) + `(#:import-path "github.com/wtolson/go-taglib" + ;; Tests don't pass "vet" on go-1.11. See + ;; https://github.com/wtolson/go-taglib/issues/12. + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key import-path #:allow-other-keys) + (invoke "go" "test" + "-vet=off" + import-path)))))) (home-page "https://github.com/wtolson/go-taglib") (synopsis "Go wrapper for taglib") (description "Go wrapper for taglib") (license license:unlicense)))) + +(define* (go-github-com-gogo-protobuf-union + #:optional (packages (list go-github-com-gogo-protobuf + go-github-com-gogo-protobuf-protoc-gen-gogo))) + (package + (name "go-github-com-gogo-protobuf-union") + (version (package-version go-github-com-gogo-protobuf)) + (source #f) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build union)) + #:builder (begin + (use-modules (ice-9 match) + (guix build union)) + (match %build-inputs + (((names . directories) ...) + (union-build (assoc-ref %outputs "out") + directories) + #t))))) + (inputs (map (lambda (package) + (list (package-name package) package)) + packages)) + (synopsis "Union of Go protobuf libraries") + (description "This is a union of Go protobuf libraries") + (home-page (package-home-page go-github-com-gogo-protobuf)) + (license (package-license go-github-com-gogo-protobuf)))) + +(define-public go-github-com-gogo-protobuf + (let ((commit "160de10b2537169b5ae3e7e221d28269ef40d311") + (revision "2")) + (package + (name "go-github-com-gogo-protobuf") + (version (git-version "0.5" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gogo/protobuf") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0hxq28sgxym04rv0q40gpwkh4ni359q21hq3g78wwxwx4qfd4zwm")))) + (build-system go-build-system) + (arguments + `(#:import-path "github.com/gogo/protobuf/proto" + #:unpack-path "github.com/gogo/protobuf")) + (propagated-inputs + `(("go-github-com-gogo-protobuf-protoc-gen-gogo" + ,go-github-com-gogo-protobuf-protoc-gen-gogo))) + (synopsis "Protocol Buffers for Go with Gadgets") + (description "Gogoprotobuf is a fork of golang/protobuf with extra code +generation features. This code generation is used to achieve: +@itemize +@item fast marshalling and unmarshalling +@item more canonical Go structures +@item goprotobuf compatibility +@item less typing by optionally generating extra helper code +@item peace of mind by optionally generating test and benchmark code +@item other serialization formats +@end itemize") + (home-page "https://github.com/gogo/protobuf") + (license license:bsd-3)))) + +(define-public go-github-com-gogo-protobuf-protoc-gen-gogo + (let ((commit "efccd33a0c20aa078705571d5ddbfa14c8395a63") + (revision "0")) + (package + (name "go-github-com-gogo-protobuf-protoc-gen-gogo") + (version (git-version "0.2" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gogo/protobuf") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09kfa3aqmhh7p0rc6wd4fw5cjccidsk9vgcy13albv0g8vnbmmgw")))) + (build-system go-build-system) + (arguments + `(#:import-path "github.com/gogo/protobuf/protoc-gen-gogo" + #:unpack-path "github.com/gogo/protobuf")) + (synopsis "Protocol Buffers for Go with Gadgets") + (description "Gogoprotobuf is a fork of golang/protobuf with extra code +generation features. This code generation is used to achieve: +@itemize +@item fast marshalling and unmarshalling +@item more canonical Go structures +@item goprotobuf compatibility +@item less typing by optionally generating extra helper code +@item peace of mind by optionally generating test and benchmark code +@item other serialization formats +@end itemize") + (home-page "https://github.com/gogo/protobuf") + (license license:bsd-3)))) + +(define-public go-github-com-gogo-protobuf-proto + (let ((commit + "fd322a3c49630fe6d05737e2b7d9426e6680e28d") + (revision "0")) + (package + (name "go-github-com-gogo-protobuf-proto") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gogo/protobuf.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1zi85584dy91hyrwpanygz1pppi0chn3hzzv128i83i6j45a5fp9")))) + (build-system go-build-system) + (arguments + '(#:unpack-path "github.com/gogo/protobuf" + #:import-path "github.com/gogo/protobuf/proto")) + (native-inputs `()) + (home-page "https://github.com/gogo/protobuf") + (synopsis "XXX") + (description "XXX") + (license license:expat)))) + +(define-public go-github-com-libp2p-go-flow-metrics + (let ((commit "7e5a55af485341567f98d6847a373eb5ddcdcd43") + (revision "0")) + (package + (name "go-github-com-libp2p-go-flow-metrics") + (version (git-version "0.2.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libp2p/go-flow-metrics.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1p87iyk6q6f3g3xkncssx400qlld8f2z93qiz8m1f97grfyhjif1")))) + (build-system go-build-system) + (arguments + `(#:import-path "github.com/libp2p/go-flow-metrics" + ;; TODO: Tests hang. + #:tests? #f)) + (home-page + "https://github.com/libp2p/go-flow-metrics") + (synopsis "Simple library for tracking flow metrics") + (description "A simple alternative to rcrowley's @command{go-metrics} +that's a lot faster (and only does simple bandwidth metrics).") + (license license:expat)))) + +(define-public go-github-com-davecgh-go-spew + (let ((commit "d8f796af33cc11cb798c1aaeb27a4ebc5099927d") + (revision "0")) + (package + (name "go-github-com-davecgh-go-spew") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/davecgh/go-spew.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19z27f306fpsrjdvkzd61w1bdazcdbczjyjck177g33iklinhpvx")))) + (build-system go-build-system) + (arguments + '(#:unpack-path "github.com/davecgh/go-spew" + #:import-path "github.com/davecgh/go-spew/spew")) + (home-page "https://github.com/davecgh/go-spew") + (synopsis "Deep pretty printer for Go data structures to aid in debugging") + (description "Package @command{spew} implements a deep pretty printer +for Go data structures to aid in debugging. + +A quick overview of the additional features spew provides over the built-in printing facilities for Go data types are as follows: + +@itemize +@item Pointers are dereferenced and followed. +@item Circular data structures are detected and handled properly. +@item Custom Stringer/error interfaces are optionally invoked, including on +unexported types. +@item Custom types which only implement the Stringer/error interfaces via a +pointer receiver are optionally invoked when passing non-pointer variables. +@item Byte arrays and slices are dumped like the hexdump -C command which +includes offsets, byte values in hex, and ASCII output (only when using Dump +style). +@end itemize\n") + (license license:isc)))) + +(define-public go-github-com-btcsuite-btclog + (let ((commit "84c8d2346e9fc8c7b947e243b9c24e6df9fd206a") + (revision "0")) + (package + (name "go-github-com-btcsuite-btclog") + (version (git-version "0.0.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/btcsuite/btclog.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02dl46wcnfpg9sqvg0ipipkpnd7lrf4fnvb9zy56jqa7mfcwc7wk")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/btcsuite/btclog")) + (home-page "https://github.com/btcsuite/btclog") + (synopsis "Subsystem aware logger for Go") + (description "Package @command{btclog} defines a logger interface and +provides a default implementation of a subsystem-aware leveled logger +implementing the same interface.") + (license license:isc)))) + +(define-public go-github-com-btcsuite-btcd-btcec + (let ((commit "67e573d211ace594f1366b4ce9d39726c4b19bd0") + (revision "0")) + (package + (name "go-github-com-btcsuite-btcd-btcec") + (version (git-version "0.12.0-beta" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/btcsuite/btcd.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "04s92gsy71w1jirlr5lkk9y6r5cparbas7nmf6ywbp7kq7fn8ajn")))) + (build-system go-build-system) + (arguments + '(#:unpack-path "github.com/btcsuite/btcd" + #:import-path "github.com/btcsuite/btcd/btcec")) + (native-inputs + `(("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew))) + (home-page "https://github.com/btcsuite/btcd") + (synopsis "Elliptic curve cryptography to work with Bitcoin") + (description "Package @command{btcec} implements elliptic curve +cryptography needed for working with Bitcoin (secp256k1 only for now). It is +designed so that it may be used with the standard crypto/ecdsa packages +provided with Go. A comprehensive suite of test is provided to ensure proper +functionality. Package @command{btcec} was originally based on work from +ThePiachu which is licensed under the same terms as Go, but it has +signficantly diverged since then. The @command{btcsuite} developers original +is licensed under the liberal ISC license. + +Although this package was primarily written for btcd, it has intentionally +been designed so it can be used as a standalone package for any projects +needing to use secp256k1 elliptic curve cryptography.") + (license license:isc)))) + +(define-public go-github-com-minio-sha256-simd + (let ((commit "51976451ce1942acbb55707a983ed232fa027110") + (revision "0")) + (package + (name "go-github-com-minio-sha256-simd") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/minio/sha256-simd.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0kaxvpidf6ygkkb06vi95pirll31jnmywhyalfjvf7djhim2wr8f")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/minio/sha256-simd")) + (home-page "https://github.com/minio/sha256-simd") + (synopsis "Accelerate SHA256 computations in pure Go") + (description "Accelerate SHA256 computations in pure Go using AVX512 and +AVX2 for Intel and ARM64 for ARM. On AVX512 it provides an up to 8x +improvement (over 3 GB/s per core) in comparison to AVX2. + +This package is designed as a replacement for @command{crypto/sha256}. For +Intel CPUs it has two flavors for AVX512 and AVX2 (AVX/SSE are also +supported). For ARM CPUs with the Cryptography Extensions, advantage is taken +of the SHA2 instructions resulting in a massive performance improvement. + +This package uses Golang assembly. The AVX512 version is based on the Intel's +\"multi-buffer crypto library for IPSec\" whereas the other Intel +implementations are described in \"Fast SHA-256 Implementations on Intel +Architecture Processors\" by J. Guilford et al.") + (license license:asl2.0)))) + +(define-public go-github-com-libp2p-go-libp2p-crypto + (let ((commit "7240b40a3ddc47c4d17c15baabcbe45e5219171b") + (revision "0")) + (package + (name "go-github-com-libp2p-go-libp2p-crypto") + (version (git-version "2.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libp2p/go-libp2p-crypto.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0qwpy57qv5143l9dlfwfvpqsxdd2i4zwnawx1w4pmgxxim3nw1wb")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/libp2p/go-libp2p-crypto")) + (native-inputs + `(("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519) + ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) + ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd))) + (home-page + "https://github.com/libp2p/go-libp2p-crypto") + (synopsis "Various cryptographic utilities used by IPFS") + (description "Various cryptographic utilities used by IPFS") + (license license:expat)))) + +(define-public go-github-com-mr-tron-base58 + (let ((commit "d724c80ecac7b49e4e562d58b2b4f4ee4ed8c312") + (revision "0")) + (package + (name "go-github-com-mr-tron-base58") + (version (git-version "1.1.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mr-tron/base58.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "12qhgnn9wf3c1ang16r4i778whk4wsrj7d90h2xgmz4fi1469rqa")))) + (build-system go-build-system) + (arguments + `(#:unpack-path "github.com/mr-tron/base58" + #:import-path "github.com/mr-tron/base58/base58")) + (home-page "https://github.com/mr-tron/base58") + (synopsis "Fast implementation of base58 encoding on Golang") + (description "Fast implementation of base58 encoding on Golang. A +trivial @command{big.Int} encoding benchmark results in 6 times faster +encoding and 8 times faster decoding.") + (license license:expat)))) + +(define-public go-github-com-gxed-hashland-keccakpg + (let ((commit "d9f6b97f8db22dd1e090fd0bbbe98f09cc7dd0a8") + (revision "0")) + (package + (name "go-github-com-gxed-hashland-keccakpg") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gxed/hashland.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1q23y4lacsz46k9gmgfw4iwwydw36j2601rbidmmswl94grpc386")))) + (build-system go-build-system) + (arguments + '(#:unpack-path "github.com/gxed/hashland" + #:import-path "github.com/gxed/hashland/keccakpg")) + (home-page "https://github.com/gxed/hashland") + (synopsis "Implements the Keccak (SHA-3) hash algorithm in Go") + (description "Package @command{keccak} implements the Keccak (SHA-3) +hash algorithm. See http://keccak.noekeon.org.") + (license license:expat)))) + +(define-public go-github-com-minio-blake2b-simd + (let ((commit "3f5f724cb5b182a5c278d6d3d55b40e7f8c2efb4") + (revision "0")) + (package + (name "go-github-com-minio-blake2b-simd") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/minio/blake2b-simd.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0b6jbnj62c0gmmfd4zdmh8xbg01p80f13yygir9xprqkzk6fikmd")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/minio/blake2b-simd")) + (home-page "https://github.com/minio/blake2b-simd") + (synopsis "Fast hashing in pure Go of BLAKE2b with SIMD instructions") + (description "This package was initially based on the pure go BLAKE2b +implementation of Dmitry Chestnykh and merged with the (cgo dependent) AVX +optimized BLAKE2 implementation (which in turn is based on the official +implementation. It does so by using Go's Assembler for amd64 architectures +with a golang only fallback for other architectures. + +In addition to AVX there is also support for AVX2 as well as SSE. Best +performance is obtained with AVX2 which gives roughly a 4X performance +increase approaching hashing speeds of 1GB/sec on a single core.") + (license license:asl2.0)))) + +(define-public go-github-com-spaolacci-murmur3 + (let ((commit "f09979ecbc725b9e6d41a297405f65e7e8804acc") + (revision "0")) + (package + (name "go-github-com-spaolacci-murmur3") + (version (git-version "1.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/spaolacci/murmur3.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1lv3zyz3jy2d76bhvvs8svygx66606iygdvwy5cwc0p5z8yghq25")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/spaolacci/murmur3")) + (home-page "https://github.com/spaolacci/murmur3") + (synopsis "Native MurmurHash3 Go implementation") + (description "Native Go implementation of Austin Appleby's third +MurmurHash revision (aka MurmurHash3). + +Reference algorithm has been slightly hacked as to support the streaming mode +required by Go's standard Hash interface.") + (license license:bsd-3)))) + +(define-public go-github-com-multiformats-go-multihash + (let ((commit "97cdb562a04c6ef66d8ed40cd62f8fbcddd396d6") + (revision "0")) + (package + (name "go-github-com-multiformats-go-multihash") + (version (git-version "1.0.8" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/go-multihash.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02wd9akrwy4y5m0nig9m24p14bjjgb4n1djydrq8cm4yhbvjrrk0")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/multiformats/go-multihash")) + (native-inputs + `(("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)))) + (home-page "https://github.com/multiformats/go-multihash") + (synopsis "Multihash implementation in Go") + (description "Multihash implementation in Go.") + (license license:expat)))) + +(define-public go-github-com-libp2p-go-libp2p-peer + (let ((commit "993d742bc29dcf4894b7730ba610fd78900be76c") + (revision "0")) + (package + (name "go-github-com-libp2p-go-libp2p-peer") + (version (git-version "2.3.8" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libp2p/go-libp2p-peer.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1h96qjdi0i1wbr0jliap2903mycphas3ny0zdrm77yca9plcnphh")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/libp2p/go-libp2p-peer")) + (native-inputs + `(("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) + ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)))) + (home-page "https://github.com/libp2p/go-libp2p-peer") + (synopsis "PKI based identities for use in go-libp2p") + (description "PKI based identities for use in @command{go-libp2p}.") + (license license:expat)))) + +(define-public go-github-com-libp2p-go-libp2p-protocol + (let ((commit "b29f3d97e3a2fb8b29c5d04290e6cb5c5018004b") + (revision "0")) + (package + (name "go-github-com-libp2p-go-libp2p-protocol") + (version (git-version "1.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libp2p/go-libp2p-protocol.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1xgjfnx9zcqglg9li29wdqywsp8hz22wx6phns9zscni2jsfidld")))) + (build-system go-build-system) + (arguments + '(#:import-path + "github.com/libp2p/go-libp2p-protocol")) + (home-page "https://github.com/libp2p/go-libp2p-protocol") + (synopsis "Type for protocol strings in Golang") + (description "Just a type for protocol strings. Nothing more.") + (license license:expat)))) + +(define-public go-github-com-libp2p-go-libp2p-metrics + (let ((commit "a10ff6e75dae3c868023867e8caa534a04bdc624") + (revision "0")) + (package + (name "go-github-com-libp2p-go-libp2p-metrics") + (version (git-version "2.1.6" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/libp2p/go-libp2p-metrics.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "05wy0cq4h6yg9bzgapcvm2criwriicbswx80ma82gyn4a9fdrk8m")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/libp2p/go-libp2p-metrics")) + (native-inputs + `(("go-github-com-libp2p-go-flow-metrics" ,go-github-com-libp2p-go-flow-metrics) + ("go-github-com-libp2p-go-libp2p-peer" ,go-github-com-libp2p-go-libp2p-peer) + ("go-github-com-libp2p-go-libp2p-protocol" ,go-github-com-libp2p-go-libp2p-protocol) + ("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) + ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)))) + (home-page "https://github.com/libp2p/go-libp2p-metrics") + (synopsis "Connection wrapper for go-libp2p that provides bandwidth metrics") + (description "A connection wrapper for @command{go-libp2p} that provides bandwidth +statistics for wrapped connections.") + (license license:expat)))) + +(define-public go-github-com-mitchellh-go-homedir + (let ((commit "ae18d6b8b3205b561c79e8e5f69bff09736185f4") + (revision "0")) + (package + (name "go-github-com-mitchellh-go-homedir") + (version (git-version "1.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mitchellh/go-homedir.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0f0z0aa4wivk4z1y503dmnw0k0g0g403dly8i4q263gfshs82sbq")))) + (build-system go-build-system) + (arguments + (quote (#:import-path "github.com/mitchellh/go-homedir" + ;; TODO: Tests fail because it tries to access home. + #:tests? #f))) + (home-page "https://github.com/mitchellh/go-homedir") + (synopsis "Go library for detecting and expanding the user's home directory without cgo") + (description "This is a Go library for detecting the user's home +directory without the use of @command{cgo}, so the library can be used in +cross-compilation environments. + +Usage is simple, just call homedir.Dir() to get the home directory for a user, +and homedir.Expand() to expand the @command{~} in a path to the home +directory. + +Why not just use @command{os/user}? The built-in @command{os/user} package +requires cgo on Darwin systems. This means that any Go code that uses that +package cannot cross compile. But 99% of the time the use for +@command{os/user} is just to retrieve the home directory, which we can do for +the current user without cgo. This library does that, enabling +cross-compilation.") + (license license:expat)))) + +(define-public go-github-com-multiformats-go-multiaddr + (let ((commit "fe1c46f8be5af4aff4db286e08839295bd922efb") + (revision "0")) + (package + (name "go-github-com-multiformats-go-multiaddr") + (version (git-version "1.3.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/go-multiaddr.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0p5f8h098a4yjjmzsgqs7vhx1iqifb8izwg3559cr4h7clkpzznh")))) + (build-system go-build-system) + (arguments + '(#:import-path + "github.com/multiformats/go-multiaddr")) + (native-inputs + `(("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)))) + (home-page "https://github.com/multiformats/go-multiaddr") + (synopsis "Composable and future-proof network addresses") + (description "Multiaddr is a standard way to represent addresses that +does the following: + +@itemize +@item Support any standard network protocols. +@item Self-describe (include protocols). +@item Have a binary packed format. +@item Have a nice string representation. +@item Encapsulate well. +@end itemize\n") + (license license:expat)))) + +(define-public go-github-com-multiformats-go-multiaddr-net + (let ((commit "1cb9a0e8a6de3c8a10f6cee60d01d793603c4f7e") + (revision "0")) + (package + (name "go-github-com-multiformats-go-multiaddr-net") + (version (git-version "1.6.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/multiformats/go-multiaddr-net.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ypgi47xdz3bh8lh7f8cmk7w3ql9g4izx5l3kzdg9gda1xn5zxq3")))) + (build-system go-build-system) + (arguments + (quote (#:import-path "github.com/multiformats/go-multiaddr-net" + ;; TODO: Tests fail because they try to access the network. + #:tests? #f))) + (native-inputs + `(("go-github-com-multiformats-go-multiaddr" ,go-github-com-multiformats-go-multiaddr) + ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)))) + (home-page "https://github.com/multiformats/go-multiaddr-net") + (synopsis "Multiaddress net tools") + (description "This package provides Multiaddr specific versions of +common functions in stdlib's @command{net} package. This means wrappers of +standard net symbols like @command{net.Dial} and @command{net.Listen}, as well +as conversion to and from @command{net.Addr}.") + (license license:expat)))) + +(define-public go-github-com-whyrusleeping-tar-utils + (let ((commit "8c6c8ba81d5c71fd69c0f48dbde4b2fb422b6dfc") + (revision "0")) + (package + (name "go-github-com-whyrusleeping-tar-utils") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/whyrusleeping/tar-utils.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "14jjdw3yics0k467xsyk388684wdpi0bbx8nqj0y4pqxa0s0in6s")))) + (build-system go-build-system) + (arguments + '(#:import-path + "github.com/whyrusleeping/tar-utils")) + (home-page "https://github.com/whyrusleeping/tar-utils") + (synopsis "Tar utilities extracted from go-ipfs codebase") + (description "Tar utilities extracted from @command{go-ipfs} codebase.") + (license license:expat)))) + +(define-public go-github-com-cheekybits-is + (let ((commit "68e9c0620927fb5427fda3708222d0edee89eae9") + (revision "0")) + (package + (name "go-github-com-cheekybits-is") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cheekybits/is.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1mkbyzhwq3rby832ikq00nxv3jnckxsm3949wkxd8ya9js2jmg4d")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/cheekybits/is")) + (home-page "https://github.com/cheekybits/is") + (synopsis "Mini testing helper for Go") + (description "A mini testing helper for Go. + +@itemize +@item It has a simple interface (@command{is.OK} and @command{is.Equal}). +@item It plugs into existing Go toolchain (uses @command{testing.T}). +@item It's obvious for newcomers. +@item It also gives you @command{is.Panic} and @command{is.PanicWith} helpers +- because testing panics is ugly. +@end itemize\n") + (license license:expat)))) + +(define-public go-github-com-sabhiram-go-gitignore + (let ((commit "d3107576ba9425fc1c85f4b3569c4631b805a02e") + (revision "0")) + (package + (name "go-github-com-sabhiram-go-gitignore") + (version (git-version "1.0.2" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sabhiram/go-gitignore.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rdwyxgcsiwgmlqnc3k6h300mzlvjc3j21np4yh1h476wc8dvl0l")))) + (build-system go-build-system) + (arguments + '(#:import-path + "github.com/sabhiram/go-gitignore")) + (native-inputs + `(("go-github-com-stretchr-testify" ,go-github-com-stretchr-testify))) + (home-page "https://github.com/sabhiram/go-gitignore") + (synopsis "Gitignore parser for Go") + (description "A @command{.gitignore} parser for Go.") + (license license:expat)))) + +(define-public go-github-com-urfave-cli + (let ((commit "934abfb2f102315b5794e15ebc7949e4ca253920") + (revision "0")) + (package + (name "go-github-com-urfave-cli") + (version (git-version "1.19.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/urfave/cli.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0c5r8pgj3k48dfcwj8lw3cxkwkl8vh0fhvz5snfdwd0bcxdqx1yq")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/urfave/cli")) + (home-page "https://github.com/urfave/cli") + (synopsis "Simple, fast, and fun package for building command line apps in Go") + (description "@command{cli} is a simple, fast, and fun package for +building command line apps in Go. The goal is to enable developers to write +fast and distributable command line applications in an expressive way.") + (license license:expat)))) + +(define-public go-github-com-whyrusleeping-json-filter + (let ((commit "ff25329a9528f01c5175414f16cc0a6a162a5b8b") + (revision "0")) + (package + (name "go-github-com-whyrusleeping-json-filter") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/whyrusleeping/json-filter.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0cai0drvx4c8j686l908vpcsz3mw3vxi3ziz94b0f3c5ylpj07j7")))) + (build-system go-build-system) + (arguments + '(#:import-path + "github.com/whyrusleeping/json-filter")) + (home-page "https://github.com/whyrusleeping/json-filter") + (synopsis "Library to query JSON objects marshalled into map[string]interface") + (description "A library to query JSON objects marshalled into +@command{map[string]interface{}}.") + (license license:expat)))) + +(define-public go-github-com-whyrusleeping-progmeter + (let ((commit "f3e57218a75b913eff88d49a52c1debf9684ea04") + (revision "0")) + (package + (name "go-github-com-whyrusleeping-progmeter") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/whyrusleeping/progmeter.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xs8rz6yhpvj9512c5v3b8dwr2kivywnyyfxzdfbr6fy1xc8zskb")))) + (build-system go-build-system) + (arguments + '(#:import-path + "github.com/whyrusleeping/progmeter")) + (home-page "https://github.com/whyrusleeping/progmeter") + (synopsis "Progress meter for Go") + (description "Progress meter for Go.") + (license license:expat)))) + +(define-public go-github-com-whyrusleeping-stump + (let ((commit "206f8f13aae1697a6fc1f4a55799faf955971fc5") + (revision "0")) + (package + (name "go-github-com-whyrusleeping-stump") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/whyrusleeping/stump.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1s40qdppjnk8gijk7x6kbviiqz62nz3h6gic2q9cwcmq8r5isw7n")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/whyrusleeping/stump")) + (home-page "https://github.com/whyrusleeping/stump") + (synopsis "Very basic logging package for Go") + (description "A simple log library, for when you don't really care to +have super fancy logs.") + (license license:expat)))) + +(define-public go-github-com-kr-fs + (let ((commit "1455def202f6e05b95cc7bfc7e8ae67ae5141eba") + (revision "0")) + (package + (name "go-github-com-kr-fs") + (version (git-version "0.1.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kr/fs.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "11zg176x9hr9q7fsk95r6q0wf214gg4czy02slax4x56n79g6a7q")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/kr/fs")) + (home-page "https://github.com/kr/fs") + (synopsis "Filesystem-related functions for Go") + (description "Package fs provides filesystem-related functions.") + (license license:bsd-3)))) diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index cd639a4d39..0709a58610 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -147,7 +147,7 @@ between two other data points.") (define-public gama (package (name "gama") - (version "2.00") + (version "2.01") (source (origin (method url-fetch) @@ -155,7 +155,7 @@ between two other data points.") version ".tar.gz")) (sha256 (base32 - "1p51jlzr6qqqvzx0sq8j7fxqfij62c3pjcsb53vgx0jx0qdqyjba")))) + "1z3n5p69qglxq15l9g13cg78kyb0l6v8mbzqgc1fqkfbdk1mis0k")))) (build-system gnu-build-system) (arguments '(#:parallel-tests? #f)) ; race condition (native-inputs diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index cb314719b7..67b306de6d 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -156,14 +156,14 @@ model.") (define-public r-rgraphviz (package (name "r-rgraphviz") - (version "2.24.0") + (version "2.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rgraphviz" version)) (sha256 (base32 - "1037hzfxxcn46w6y88wm3kk2nixj0s8bk0hkmnshpxih3kmnvqby")))) + "0bp6517xsih0wng2rgkh9z4r1afqhwl3h04z6ssm7p4cdj0ahm4y")))) (properties `((upstream-name . "Rgraphviz"))) (build-system r-build-system) ;; FIXME: Rgraphviz bundles the sources of an older variant of diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index c3c1a4a580..6e184d3334 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -85,7 +85,8 @@ "blender-" version ".tar.gz")) (sha256 (base32 - "1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c")))) + "1g4kcdqmf67srzhi3hkdnr4z1ph4h9sza1pahz38mrj998q4r52c")) + (patches (search-patches "blender-newer-ffmpeg.patch")))) (build-system cmake-build-system) (arguments (let ((python-version (version-major+minor (package-version python)))) @@ -141,7 +142,7 @@ ("libjpeg" ,libjpeg) ("libpng" ,libpng) ("libtiff" ,libtiff) - ("ffmpeg-2.8" ,ffmpeg-2.8) ;<https://lists.gnu.org/archive/html/guix-devel/2016-04/msg01019.html> + ("ffmpeg" ,ffmpeg) ("fftw" ,fftw) ("jack" ,jack-1) ("libsndfile" ,libsndfile) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index cec10504c5..08f92df96c 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -304,6 +305,7 @@ functions which were removed.") (string-append "-Wl,-rpath=" (assoc-ref outputs "out") "/lib")) #t))) + #:python ,python-2 ;XXX: The bundled waf fails with Python 3.7.0. #:tests? #f)) ; no check target (inputs `(("gtk" ,gtk+-2) @@ -1412,7 +1414,12 @@ information.") (string-append (assoc-ref inputs "docbook-xsl") "/xml/xsl/docbook-xsl-" ,(package-version docbook-xsl) - "/html/chunk.xsl"))) + "/html/chunk.xsl")) + (("http://docbook.sourceforge.net/release/xsl/current/common/en.xml") + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl) + "/common/en.xml"))) #t)) (add-after 'patch-gtk-doc-scan 'patch-test-out (lambda _ @@ -1631,6 +1638,33 @@ it does not deal with windowing system surfaces, drawing, scene graphs, or input.") (license license:expat))) +(define-public spread-sheet-widget + (package + (name "spread-sheet-widget") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://alpha.gnu.org/gnu/ssw/" + name "-" version ".tar.gz")) + (sha256 + (base32 "1h93yyh2by6yrmkwqg38nd5knids05k5nqzcihc1hdwgzg3c4b8y")))) + (build-system gnu-build-system) + (native-inputs + `(("glib" ,glib "bin") ; for glib-genmarshal, etc. + ("pkg-config" ,pkg-config))) + ;; In 'Requires' of spread-sheet-widget.pc. + (propagated-inputs + `(("glib" ,glib) + ("gtk+" ,gtk+))) + (home-page "https://www.gnu.org/software/ssw/") + (synopsis "Gtk+ widget for dealing with 2-D tabular data") + (description + "GNU Spread Sheet Widget is a library for Gtk+ which provides a widget for +viewing and manipulating 2 dimensional tabular data in a manner similar to many +popular spread sheet programs.") + (license license:gpl3+))) + (define-public yad (package (name "yad") diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index bf2f2a14a4..c271c4b6a0 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2017 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co> -;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Erik Edrosa <erik.edrosa@gmail.com> ;;; Copyright © 2016 Eraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Alex Kost <alezost@gmail.com> @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2017 David Thompson <davet@gnu.org> -;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -68,6 +68,7 @@ #:use-module (gnu packages maths) #:use-module (gnu packages image) #:use-module (gnu packages version-control) + #:use-module (gnu packages slang) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg) #:use-module (gnu packages networking) @@ -485,10 +486,7 @@ AM_SCM_LOG_FLAGS = --no-auto-compile -s") ;; FIXME: one of the database tests fails for unknown ;; reasons. It does not fail when run outside of Guix. (("tests/database.scm") "")) - #t)) - (add-after 'fix-bug-22 'autogen - (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + #t))))) (inputs `(("guile" ,guile-2.0))) (native-inputs @@ -828,14 +826,6 @@ provides tight coupling to Guix.") (base32 "0qjjvadr7gibdq9jvwkmlkb4afsw9n2shfj9phpiadinxk3p4m2g")))) (build-system gnu-build-system) - (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ - ;; Repository comes with a broken symlink - (delete-file "README") - (symlink "README.org" "README") - (zero? (system* "autoreconf" "-fi"))))))) (native-inputs `(("autoconf" ,autoconf-wrapper) ("automake" ,automake) @@ -908,16 +898,13 @@ for Guile\".") (home-page "https://github.com/aconchillo/guile-json") (source (origin (method url-fetch) - (uri (string-append home-page "/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "https://download.savannah.nongnu.org/releases/" + name "/" name "-" version ".tar.gz")) (sha256 (base32 - "02kqv0q98fmchn7i4y7ycmrjlh4b2c93ij0z7k036qwpp204w4gh")))) + "15gnb84d7hpazqhskkf3g9z4r6knw54wfj4ch5270kakz1lp70c9")))) (build-system gnu-build-system) - (native-inputs `(("autoconf" ,autoconf) - ("automake" ,automake) - ("pkg-config" ,pkg-config) + (native-inputs `(("pkg-config" ,pkg-config) ("guile" ,guile-2.2))) (inputs `(("guile" ,guile-2.2))) (synopsis "JSON module for Guile") @@ -1112,7 +1099,7 @@ Guile's foreign function interface.") (package (name "guile-sqlite3") (version "0.1.0") - (home-page "https://notabug.org/civodul/guile-sqlite3.git") + (home-page "https://notabug.org/guile-sqlite3/guile-sqlite3.git") (source (origin (method git-fetch) (uri (git-reference @@ -1141,14 +1128,14 @@ Guile's foreign function interface.") (define-public haunt (package (name "haunt") - (version "0.2.2") + (version "0.2.4") (source (origin (method url-fetch) (uri (string-append "https://files.dthompson.us/haunt/haunt-" version ".tar.gz")) (sha256 (base32 - "0nm00krmqq4zmqi2irh35dbf2cn6al58s620hijmhfvhgvdqznlp")))) + "056z4znikk83nr5mr0x2ac3iinqbywa2bvb37mhr566a1q50isfc")))) (build-system gnu-build-system) (arguments `(#:modules ((ice-9 match) (ice-9 ftw) @@ -1549,10 +1536,7 @@ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n")) (("^guilesitedir =.*$") "guilesitedir = \ $(datadir)/guile/site/$(GUILE_EFFECTIVE_VERSION)\n")) - #t)) - (add-after 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + #t))))) (home-page "https://github.com/artyom-poptsov/guile-dsv") (synopsis "DSV module for Guile") (description @@ -2066,8 +2050,8 @@ convenient nested tree operations.") (license license:gpl3+))) (define-public guile-simple-zmq - (let ((commit "5bb66a0499f94006cfd18b58e80ad6623f911c31") - (revision "2")) + (let ((commit "68bedb6679716214fb9d3472da57544526f7a618") + (revision "3")) (package (name "guile-simple-zmq") (version (git-version "0.0.0" revision commit)) @@ -2079,7 +2063,7 @@ convenient nested tree operations.") (commit commit))) (sha256 (base32 - "0dj1brjqa7m4k71sf94aq26ca0la3nr894kfmjnqkpawqfp4dyaz")) + "1ad3xg69qqviy1f6dnlw0ysmfdbmp1jq65rfqb8nfd8dsrq2syli")) (file-name (git-file-name name version)))) (build-system guile-build-system) (arguments @@ -2243,4 +2227,93 @@ using S-expressions.") tracker's SOAP service, such as @url{https://bugs.gnu.org}.") (license license:gpl3+))) +(define-public guile-email + (let ((commit "fa52eac55e5946db89621a6c583d2aa357864dee") + (revision "1")) + (package + (name "guile-email") + (version (git-version "0.1.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.systemreboot.net/guile-email") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1037mbz7qd9bzaqp8ysyhnl9ipd97fmj3b9jr8qfzx9179vvsj63")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake))) + (inputs + `(("guile" ,guile-2.2))) + (home-page "https://git.systemreboot.net/guile-email") + (synopsis "Guile email parser") + (description "This package provides an email parser written in pure +Guile.") + (license license:agpl3+)))) + +(define-public guile-debbugs-next + (let ((commit "75a331d561c8b6f8efcf16216dab961c17759efe") + (revision "1")) + (package (inherit guile-debbugs) + (name "guile-debbugs") + (version (git-version "0.0.3" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.savannah.gnu.org/git/guile-debbugs.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0br3mgbw41bpc9x57jlghl0i8dz9nl63r4wzs5l47aqszf84870y")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("texinfo" ,texinfo))) + (inputs + `(("guile" ,guile-2.2) + ("guile-email" ,guile-email)))))) + +;; There has not been any release yet. +(define-public guile-newt + (let ((commit "a73889c57b0572347f7641facdb1bcf08922feff") + (revision "2")) + (package + (name "guile-newt") + (version (string-append "0-" revision "." (string-take commit 9))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/mothacehe/guile-newt") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0k37vir22r2sq121lyy74grfai4643s7kr55z01k4j0bh27i06c3")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags + '("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings + (inputs + `(("guile" ,guile-2.2) + ("newt" ,newt))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (synopsis "Guile bindings to Newt") + (description + "This package provides bindings for Newt, a programming library for +color text mode, widget based user interfaces. The bindings are written in pure +Scheme by using Guile’s foreign function interface.") + (home-page "https://gitlab.com/mothacehe/guile-newt") + (license license:gpl3+)))) + ;;; guile.scm ends here diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm index 52bc3d0527..0a2a7dbb7b 100644 --- a/gnu/packages/hardware.scm +++ b/gnu/packages/hardware.scm @@ -22,11 +22,13 @@ #:use-module (gnu packages glib) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) + #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg) #:use-module (guix build-system gnu) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) @@ -232,3 +234,45 @@ such as the Turbo Boost ratio and Thermal Design Power (@dfn{TDP}) limits. MSR addresses differ (greatly) between processors, and any such modification can be dangerous and may void your CPU or system board's warranty.") (license license:gpl2))) ; cpuid.c is gpl2, {rd,wr}msr.c are gpl2+ + +(define-public wavemon + (package + (name "wavemon") + (version "0.8.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/uoaerg/wavemon.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0rqpp7rhl9rlwnihsapaiy62v33h45fm3d0ia2nhdjw7fwkwcqvs")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list "CC=gcc" + ;; Makefile.in (ab)uses $(datadir) as $(docdir). Set it to Guix's + ;; standard --docdir since it's only used as such. + (string-append "datadir=" (assoc-ref %outputs "out") + "/share/doc/" ,name "-" ,version)) + #:tests? #f)) ; no tests + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libcap" ,libcap) + ("libnl" ,libnl) + ("ncurses" ,ncurses))) + (home-page "https://github.com/uoaerg/wavemon") + (synopsis "Wireless network device monitor") + (description + "Wavemon is a wireless device monitor with an interactive ncurses terminal +interface. It can display and plot signal and noise levels in real time. It +also reports packet statistics, device configuration, network parameters, and +access points and other wireless clients of your wireless network hardware. + +Wavemon should work (with varying levels of detail and features) with any device +supported by the Linux kernel.") + ;; Source file headers still say GPL2+, but the authorial intent + ;; (from COPYING and the F9 'about' screen) is clearly GPL3+. + (license license:gpl3+))) diff --git a/gnu/packages/hurd.scm b/gnu/packages/hurd.scm index d6c1fb5e64..938cb116ca 100644 --- a/gnu/packages/hurd.scm +++ b/gnu/packages/hurd.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016, 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> +;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,17 +25,25 @@ #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) + #:use-module (gnu packages autotools) #:use-module (gnu packages flex) #:use-module (gnu packages bison) #:use-module (gnu packages perl) #:use-module (gnu packages base) #:use-module (guix git-download) - #:export (hurd-triplet?)) + #:export (hurd-triplet? + hurd-target?)) (define (hurd-triplet? triplet) (and (string-suffix? "-gnu" triplet) (not (string-contains triplet "linux")))) +(define (hurd-target?) + "Return true if the cross-compilation target or the current system is +GNU/Hurd." + (or (and=> (%current-target-system) hurd-triplet?) + (string-suffix? (%current-system) "-gnu"))) + (define (gnumach-source-url version) (string-append "mirror://gnu/gnumach/gnumach-" version ".tar.gz")) @@ -43,6 +52,10 @@ (string-append "mirror://gnu/hurd/hurd-" version ".tar.gz")) +(define (patch-url repository commit) + (string-append "https://git.savannah.gnu.org/cgit/hurd/" repository + ".git/patch/?id=" commit)) + (define-public gnumach-headers (package (name "gnumach-headers") @@ -53,7 +66,24 @@ (uri (gnumach-source-url version)) (sha256 (base32 - "02hygsfpd2dljl5lg1vjjg9pizi9jyxd4aiiqzjshz6jax62jm9f")))) + "02hygsfpd2dljl5lg1vjjg9pizi9jyxd4aiiqzjshz6jax62jm9f")) + (patches (list (origin + ;; This patch adds <mach/vm_wire.h>, which defines the + ;; VM_WIRE_* constants needed by glibc 2.28. + (method url-fetch) + (uri (patch-url "gnumach" "2b0f19f602e08fd9d37268233b962674fd592634")) + (sha256 + (base32 + "01iajnwsmka0w9hwjkxxijc4xfhwqbvlkw1w8n71hpnhfixd0y28")) + (file-name "gnumach-vm-wire-header.patch")))) + (modules '((guix build utils))) + (snippet + '(begin + ;; Actually install vm_wire.h. + (substitute* "Makefile.in" + (("^include_mach_HEADERS =") + "include_mach_HEADERS = include/mach/vm_wire.h")) + #t)))) (build-system gnu-build-system) (arguments `(#:phases @@ -110,56 +140,71 @@ communication.") (license gpl2+))) (define-public hurd-headers - (package - (name "hurd-headers") - (version "0.9") - (source (origin - (method url-fetch) - (uri (hurd-source-url version)) - (sha256 - (base32 - "1nw9gly0n7pyv3cpfm4mmxy4yccrx4g0lyrvd3vk2vil26jpbggw")))) - (build-system gnu-build-system) - (native-inputs - `(("mig" ,mig))) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'install - (lambda _ - (invoke "make" "install-headers" "no_deps=t"))) - (delete 'build)) + ;; Resort to a post-0.9 snapshot that provides the 'file_utimens' and + ;; 'file_exec_paths' RPCs that glibc 2.28 expects. + (let ((revision "0") + (commit "98b33905c89b7e5c309c74ae32302a5745901a6e")) + (package + (name "hurd-headers") + (version "0.9") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.savannah.gnu.org/git/hurd/hurd.git") + (commit commit))) + (sha256 + (base32 + "1mj22sxgscas2675vrbxr477mwbxdj68pqcrh65lbir8qlssrgrf")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (native-inputs + `(("mig" ,mig) + ("autoconf" ,autoconf) + ("automake" ,automake))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda _ + (invoke "make" "install-headers" "no_deps=t"))) + (delete 'build)) - #:configure-flags '(;; Pretend we're on GNU/Hurd; 'configure' wants - ;; that. - ,@(if (%current-target-system) - '() - '("--host=i586-pc-gnu")) + #:configure-flags '( ;; Pretend we're on GNU/Hurd; 'configure' wants + ;; that. + ,@(if (%current-target-system) + '() + '("--host=i586-pc-gnu")) - ;; Reduce set of dependencies. - "--without-parted" - "--disable-ncursesw" - "--disable-test" - "--without-libbz2" - "--without-libz" - ;; Skip the clnt_create check because it expects - ;; a working glibc causing a circular dependency. - "ac_cv_search_clnt_create=no") + ;; Reduce set of dependencies. + "--without-parted" + "--disable-ncursesw" + "--disable-test" + "--without-libbz2" + "--without-libz" + ;; Skip the clnt_create check because it expects + ;; a working glibc causing a circular dependency. + "ac_cv_search_clnt_create=no" - #:tests? #f)) - (home-page "https://www.gnu.org/software/hurd/hurd.html") - (synopsis "GNU Hurd headers") - (description - "This package provides C headers of the GNU Hurd, used to build the GNU C + ;; Annihilate the checks for the 'file_exec_paths' + ;; & co. libc functions to avoid "link tests are + ;; not allowed after AC_NO_EXECUTABLES" error. + "ac_cv_func_file_exec_paths=no" + "ac_cv_func_exec_exec_paths=no" + "ac_cv_func__hurd_exec_paths=no" + "ac_cv_func_file_futimens=no") + + #:tests? #f)) + (home-page "https://www.gnu.org/software/hurd/hurd.html") + (synopsis "GNU Hurd headers") + (description + "This package provides C headers of the GNU Hurd, used to build the GNU C Library and other user programs.") - (license gpl2+))) + (license gpl2+)))) (define-public hurd-minimal (package (inherit hurd-headers) (name "hurd-minimal") (inputs `(("glibc-hurd-headers" ,glibc/hurd-headers))) - (native-inputs - `(("mig" ,mig))) (arguments (substitute-keyword-arguments (package-arguments hurd-headers) ((#:phases _) @@ -178,6 +223,11 @@ Library and other user programs.") #t))) (replace 'build (lambda _ + ;; Install <assert-backtrace.h> & co. + (invoke "make" "-Clibshouldbeinlibc" + "../include/assert-backtrace.h") + + ;; Build libihash. (invoke "make" "-Clibihash" "libihash.a"))))))) (home-page "https://www.gnu.org/software/hurd/hurd.html") (synopsis "GNU Hurd libraries") diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm index 08fce5f6fb..a2687ac8c3 100644 --- a/gnu/packages/ibus.scm +++ b/gnu/packages/ibus.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,185 +25,193 @@ #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system glib-or-gtk) #:use-module (gnu packages) #:use-module (gnu packages anthy) #:use-module (gnu packages autotools) #:use-module (gnu packages base) + #:use-module (gnu packages boost) + #:use-module (gnu packages cmake) #:use-module (gnu packages databases) + #:use-module (gnu packages datastructures) #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) #:use-module (gnu packages iso-codes) + #:use-module (gnu packages logging) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages serialization) + #:use-module (gnu packages textutils) #:use-module (gnu packages xorg)) (define-public ibus (package - (name "ibus") - (version "1.5.19") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/ibus/ibus/" - "releases/download/" - version "/ibus-" version ".tar.gz")) - (sha256 - (base32 - "0a94bnpm24581317hdnihwr4cniriml10p4ffgxg14xhvaccfrjb")))) - (build-system glib-or-gtk-build-system) - (arguments - `(#:tests? #f ; tests fail because there's no connection to dbus - #:configure-flags `("--disable-emoji-dict" ; cannot find emoji.json path - "--disable-python2" - "--enable-python-library" - ,(string-append "--with-ucd-dir=" - (getcwd) "/ucd") - "--enable-wayland") - #:make-flags - (list "CC=gcc" - (string-append "pyoverridesdir=" - (assoc-ref %outputs "out") - "/lib/python3.6/site-packages/gi/overrides/")) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'prepare-ucd-dir - (lambda* (#:key inputs #:allow-other-keys) - (mkdir-p "../ucd") - (symlink (assoc-ref inputs "unicode-blocks") "../ucd/Blocks.txt") - (symlink (assoc-ref inputs "unicode-nameslist") "../ucd/NamesList.txt") - #t)) - (add-before 'configure 'disable-dconf-update - (lambda _ - (substitute* "data/dconf/Makefile.in" - (("dconf update") "echo dconf update")) - #t)) - (add-after 'unpack 'delete-generated-files - (lambda _ - (for-each (lambda (file) - (let ((c (string-append (string-drop-right file 4) "c"))) - (when (file-exists? c) - (format #t "deleting ~a\n" c) - (delete-file c)))) - (find-files "." "\\.vala")) - #t)) - (add-after 'unpack 'fix-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "src/ibusenginesimple.c" - (("/usr/share/X11/locale") - (string-append (assoc-ref inputs "libx11") - "/share/X11/locale"))) - (substitute* "ui/gtk3/xkblayout.vala" - (("\"(setxkbmap|xmodmap)\"" _ prog) - (string-append "\"" (assoc-ref inputs prog) "\""))) - #t)) - (add-after 'wrap-program 'wrap-with-additional-paths - (lambda* (#:key outputs #:allow-other-keys) - ;; Make sure 'ibus-setup' runs with the correct PYTHONPATH and - ;; GI_TYPELIB_PATH. - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/bin/ibus-setup") - `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))) - `("GI_TYPELIB_PATH" ":" prefix - (,(getenv "GI_TYPELIB_PATH") - ,(string-append out "/lib/girepository-1.0"))))) - #t))))) - (inputs - `(("dbus" ,dbus) - ("dconf" ,dconf) - ("gconf" ,gconf) - ("gtk2" ,gtk+-2) - ("gtk+" ,gtk+) - ("intltool" ,intltool) - ("json-glib" ,json-glib) - ("libnotify" ,libnotify) - ("libx11" ,libx11) - ("setxkbmap" ,setxkbmap) - ("wayland" ,wayland) - ("xmodmap" ,xmodmap) - ("iso-codes" ,iso-codes) - ("pygobject2" ,python-pygobject) - ("python" ,python))) - (native-inputs - `(("glib" ,glib "bin") ; for glib-genmarshal - ("gobject-introspection" ,gobject-introspection) ; for g-ir-compiler - ("unicode-nameslist" - ,(origin - (method url-fetch) - (uri "https://www.unicode.org/Public/UNIDATA/NamesList.txt") - (sha256 - (base32 "0yr2h0nfqhirfi3bxl33z6cc94qqshlpgi06c25xh9754irqsgv8")))) - ("unicode-blocks" - ,(origin - (method url-fetch) - (uri "https://www.unicode.org/Public/UNIDATA/Blocks.txt") - (sha256 - (base32 "0lnh9iazikpr548bd7nkaq9r3vfljfvz0rg2462prac8qxk7ni8b")))) - ("vala" ,vala) - ("pkg-config" ,pkg-config))) - (native-search-paths - (list (search-path-specification - (variable "IBUS_COMPONENT_PATH") - (files '("share/ibus/component"))))) - (synopsis "Input method framework") - (description - "IBus is an input framework providing a full-featured and user-friendly + (name "ibus") + (version "1.5.19") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ibus/ibus/" + "releases/download/" + version "/ibus-" version ".tar.gz")) + (sha256 + (base32 + "0a94bnpm24581317hdnihwr4cniriml10p4ffgxg14xhvaccfrjb")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:tests? #f ; tests fail because there's no connection to dbus + #:configure-flags `("--disable-emoji-dict" ; cannot find emoji.json path + "--disable-python2" + "--enable-python-library" + ,(string-append "--with-ucd-dir=" + (getcwd) "/ucd") + "--enable-wayland") + #:make-flags + (list "CC=gcc" + (string-append "pyoverridesdir=" + (assoc-ref %outputs "out") + "/lib/python3.6/site-packages/gi/overrides/")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'prepare-ucd-dir + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "../ucd") + (symlink (assoc-ref inputs "unicode-blocks") "../ucd/Blocks.txt") + (symlink (assoc-ref inputs "unicode-nameslist") "../ucd/NamesList.txt") + #t)) + (add-before 'configure 'disable-dconf-update + (lambda _ + (substitute* "data/dconf/Makefile.in" + (("dconf update") "echo dconf update")) + #t)) + (add-after 'unpack 'delete-generated-files + (lambda _ + (for-each (lambda (file) + (let ((c (string-append (string-drop-right file 4) "c"))) + (when (file-exists? c) + (format #t "deleting ~a\n" c) + (delete-file c)))) + (find-files "." "\\.vala")) + #t)) + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/ibusenginesimple.c" + (("/usr/share/X11/locale") + (string-append (assoc-ref inputs "libx11") + "/share/X11/locale"))) + (substitute* "ui/gtk3/xkblayout.vala" + (("\"(setxkbmap|xmodmap)\"" _ prog) + (string-append "\"" (assoc-ref inputs prog) "\""))) + #t)) + (add-after 'wrap-program 'wrap-with-additional-paths + (lambda* (#:key outputs #:allow-other-keys) + ;; Make sure 'ibus-setup' runs with the correct PYTHONPATH and + ;; GI_TYPELIB_PATH. + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/ibus-setup") + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))) + `("GI_TYPELIB_PATH" ":" prefix + (,(getenv "GI_TYPELIB_PATH") + ,(string-append out "/lib/girepository-1.0"))))) + #t))))) + (inputs + `(("dbus" ,dbus) + ("dconf" ,dconf) + ("gconf" ,gconf) + ("gtk2" ,gtk+-2) + ("gtk+" ,gtk+) + ("intltool" ,intltool) + ("json-glib" ,json-glib) + ("libnotify" ,libnotify) + ("libx11" ,libx11) + ("setxkbmap" ,setxkbmap) + ("wayland" ,wayland) + ("xmodmap" ,xmodmap) + ("iso-codes" ,iso-codes) + ("pygobject2" ,python-pygobject) + ("python" ,python))) + (native-inputs + `(("glib" ,glib "bin") ; for glib-genmarshal + ("gobject-introspection" ,gobject-introspection) ; for g-ir-compiler + ("unicode-nameslist" + ,(origin + (method url-fetch) + (uri "https://www.unicode.org/Public/UNIDATA/NamesList.txt") + (sha256 + (base32 "0yr2h0nfqhirfi3bxl33z6cc94qqshlpgi06c25xh9754irqsgv8")))) + ("unicode-blocks" + ,(origin + (method url-fetch) + (uri "https://www.unicode.org/Public/UNIDATA/Blocks.txt") + (sha256 + (base32 "0lnh9iazikpr548bd7nkaq9r3vfljfvz0rg2462prac8qxk7ni8b")))) + ("vala" ,vala) + ("pkg-config" ,pkg-config))) + (native-search-paths + (list (search-path-specification + (variable "IBUS_COMPONENT_PATH") + (files '("share/ibus/component"))))) + (synopsis "Input method framework") + (description + "IBus is an input framework providing a full-featured and user-friendly input method user interface. It comes with multilingual input support. It may also simplify input method development.") - (home-page "https://github.com/ibus/ibus/wiki") - (license lgpl2.1+))) + (home-page "https://github.com/ibus/ibus/wiki") + (license lgpl2.1+))) (define-public ibus-libpinyin (package - (name "ibus-libpinyin") - (version "1.10.0") - (source (origin - (method url-fetch) - (uri (string-append "https://github.com/libpinyin/ibus-libpinyin/" - "releases/download/" version - "/ibus-libpinyin-" version ".tar.gz")) - (sha256 - (base32 - "0yq8aw4lddiviag8cnik6fp52vvk8lxv6bym13a3xya84c6zii3c")))) - (build-system glib-or-gtk-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'wrap-program 'wrap-with-additional-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Make sure 'ibus-setup-libpinyin' runs with the correct - ;; PYTHONPATH and GI_TYPELIB_PATH. - (let ((out (assoc-ref outputs "out"))) - (wrap-program (string-append out "/libexec/ibus-setup-libpinyin") - `("PYTHONPATH" ":" prefix - (,(getenv "PYTHONPATH") - ,(string-append (assoc-ref inputs "ibus") - "/lib/girepository-1.0"))) - `("GI_TYPELIB_PATH" ":" prefix - (,(string-append (assoc-ref inputs "ibus") - "/lib/girepository-1.0")))) - #t)))))) - (inputs - `(("ibus" ,ibus) - ("libpinyin" ,libpinyin) - ("bdb" ,bdb) - ("sqlite" ,sqlite) - ("python" ,python) - ("pyxdg" ,python-pyxdg) - ("gtk+" ,gtk+))) - (native-inputs - `(("pkg-config" ,pkg-config) - ("intltool" ,intltool) - ("glib" ,glib "bin"))) - (synopsis "Chinese pinyin and ZhuYin input methods for IBus") - (description - "This package includes a Chinese pinyin input method and a Chinese + (name "ibus-libpinyin") + (version "1.10.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/libpinyin/ibus-libpinyin/" + "releases/download/" version + "/ibus-libpinyin-" version ".tar.gz")) + (sha256 + (base32 + "0yq8aw4lddiviag8cnik6fp52vvk8lxv6bym13a3xya84c6zii3c")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'wrap-program 'wrap-with-additional-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Make sure 'ibus-setup-libpinyin' runs with the correct + ;; PYTHONPATH and GI_TYPELIB_PATH. + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/libexec/ibus-setup-libpinyin") + `("PYTHONPATH" ":" prefix + (,(getenv "PYTHONPATH") + ,(string-append (assoc-ref inputs "ibus") + "/lib/girepository-1.0"))) + `("GI_TYPELIB_PATH" ":" prefix + (,(string-append (assoc-ref inputs "ibus") + "/lib/girepository-1.0")))) + #t)))))) + (inputs + `(("ibus" ,ibus) + ("libpinyin" ,libpinyin) + ("bdb" ,bdb) + ("sqlite" ,sqlite) + ("python" ,python) + ("pyxdg" ,python-pyxdg) + ("gtk+" ,gtk+))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool) + ("glib" ,glib "bin"))) + (synopsis "Chinese pinyin and ZhuYin input methods for IBus") + (description + "This package includes a Chinese pinyin input method and a Chinese ZhuYin (Bopomofo) input method based on libpinyin for IBus.") - (home-page "https://github.com/libpinyin/ibus-libpinyin") - (license gpl2+))) + (home-page "https://github.com/libpinyin/ibus-libpinyin") + (license gpl2+))) (define-public libpinyin (package @@ -279,3 +288,369 @@ applications allow text input via IBus, installing this package will enable Japanese language input in most graphical applications.") (home-page "https://github.com/fujiwarat/ibus-anthy") (license gpl2+))) + +(define-public librime + (package + (name "librime") + (version "1.3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/librime.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1y0h3nnz97smx9z8h5fzk4c27mvrwv8kajxffqc43bhyvxvb2jd6")))) + (build-system cmake-build-system) + (inputs + `(("boost" ,boost) + ("glog" ,glog) + ("leveldb" ,leveldb) + ("marisa" ,marisa) + ("opencc" ,opencc) + ("yaml-cpp" ,yaml-cpp))) + (home-page "https://rime.im/") + (synopsis "The core library of Rime Input Method Engine") + (description "@dfn{librime} is the core library of Rime Input Method +Engine, which is a lightweight, extensible input method engine supporting +various input schemas including glyph-based input methods, romanization-based +input methods as well as those for Chinese dialects. It has the ability to +compose phrases and sentences intelligently and provide very accurate +traditional Chinese output.") + (license bsd-3))) + +(define-public rime-data + (package + (name "rime-data") + (version "0.38.20181029") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/plum.git") + (commit "fb4f829da2007f2dbb37d60a79bc67c25ea16568"))) + (file-name "plum-checkout") + (sha256 + (base32 "1m1wiv9j5bay4saga58c7dj4h8gqivsbyp16y245ifvxvp9czj67")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")) + "no_update=1") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + ;; Set .DEFAULT_GOAL to `all'. + ;; Don't build binary schemas. The output is not deterministic. + (substitute* "Makefile" + (("^\\.DEFAULT_GOAL := preset") + ".DEFAULT_GOAL := all")) + #t)) + ;; Add schema packages into "package/rime" directory. + (add-after 'unpack 'add-packages + (lambda* (#:key inputs #:allow-other-keys) + (let* ((dest-dir "package/rime")) + (mkdir-p dest-dir) + (for-each (lambda (pkg) + (symlink (assoc-ref inputs pkg) + (string-append dest-dir "/" pkg))) + '("array" + "bopomofo" + "cangjie" + "combo-pinyin" + "double-pinyin" + "emoji" + "essay" + "ipa" + "jyutping" + "luna-pinyin" + "middle-chinese" + "pinyin-simp" + "prelude" + "quick" + "scj" + "soutzoe" + "stenotype" + "stroke" + "terra-pinyin" + "wubi" + "wugniu"))) + #t)) + (delete 'configure)))) + (native-inputs + `(("array" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-array.git") + (commit "906e923902147584b0b0247028a782abbfbfd8a0"))) + (file-name "rime-array-checkout") + (sha256 + (base32 + "1alk6ghn4ji4kvp7lfm57bwm2gjh99i79r0w9naz6wkdim8idvb1")))) + ("bopomofo" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-bopomofo.git") + (commit "8dc44ca1b6ef4e45b452e070b9da737f5da165e3"))) + (file-name "rime-bopomofo-checkout") + (sha256 + (base32 + "16k6wfhcrw3a77rmbrp21ca0gmsmb3f68s193c1cfwr8i68k46nf")))) + ("cangjie" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-cangjie.git") + (commit "ab085e90856b3399b374dc3c8b4cb40d11f307a8"))) + (file-name "rime-cangjie-checkout") + (sha256 + (base32 + "11fgj0rbv9nyzfijwm2l8pm8fznhif4h27ndrrcaaylkp7p5zsx2")))) + ("combo-pinyin" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-combo-pinyin.git") + (commit "f1bae63f20504f2b8113c5cbdf2700e858aa91eb"))) + (file-name "rime-combo-pinyin-checkout") + (sha256 + (base32 + "1l1079akwm1hw4kkn0q6x9fpylnl2ka6z2fn7lmdpfpsr0xgn0n7")))) + ("double-pinyin" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-double-pinyin.git") + (commit "2101a5cd40e511ec38835769aa66d2dddf059c2e"))) + (file-name "rime-double-pinyin-checkout") + (sha256 + (base32 + "19hh2qm0njbfk2js678hfm2hw9b796s43vs11yy3m1v9m0gk2vi7")))) + ("emoji" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-emoji.git") + (commit "6e6611b315f03ee4c33f958f9dbe960b13a0ed19"))) + (file-name "rime-emoji-checkout") + (sha256 + (base32 + "1brfs3214w36j3345di9ygp468hbvbqdqpkjxxs1dbp437rayhyy")))) + ("essay" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-essay.git") + (commit "5e5c7a0ef41c9b030abdad81a9df07b56b1661e9"))) + (file-name "rime-essay-checkout") + (sha256 + (base32 + "0ana9is0zhh79m4gjshvmaxbrg3jiqysydx5bpm151i7i6vw5y1i")))) + ("ipa" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-ipa.git") + (commit "02a9e2c181921a2e95e1a81f88188c41132755c3"))) + (file-name "rime-ipa-checkout") + (sha256 + (base32 + "1szrxgvqlgmxapj2aflw2cvbv0p6pl0sw0gyxa13dvdhhf7s9rvr")))) + ("jyutping" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-jyutping.git") + (commit "1402ec3d6cc0973f952fe3f9ef531294e4ffe9e0"))) + (file-name "rime-jyutping-checkout") + (sha256 + (base32 + "17g03dy4gw6vyc9da1wjn3iy9hx64dfnwiwsfc7bkzan22x2m4dv")))) + ("luna-pinyin" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-luna-pinyin.git") + (commit "3b05132576f5c347ff8a70857d2dae080936ac3b"))) + (file-name "rime-luna-pinyin-checkout") + (sha256 + (base32 + "0kgnpxjn10dm2d9718r12rdjlwqd2s2h84jvkhxhh5v0dkv1anl2")))) + ("middle-chinese" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-middle-chinese.git") + (commit "9ba8d70330654b9a730f882d35cfad7dbeddfd75"))) + (file-name "rime-middle-chinese-checkout") + (sha256 + (base32 + "0hwg5zby5kphh0bcfay8mfxwr5bwqhamiw3cmmmf7kp9fbns5s23")))) + ("pinyin-simp" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-pinyin-simp.git") + (commit "74357ffd62c05fb60edf6eab5b86bc8c8c1907d0"))) + (file-name "rime-pinyin-simp-checkout") + (sha256 + (base32 + "1paw3c7pv5bl54abnp9pidfxrkchdacyxy5m9zb311p5sgm7fhxh")))) + ("prelude" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-prelude.git") + (commit "33040568c3ddb2ee6340c9b669494317db21b77c"))) + (file-name "rime-prelude-checkout") + (sha256 + (base32 + "1gwcasyyg6f0ib6s4qsrrjcqr1lcs7j3xqxl65rznsw44nhnbwwq")))) + ("quick" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-quick.git") + (commit "910a97d403ad8e72f322488da146da79c19d623f"))) + (file-name "rime-quick-checkout") + (sha256 + (base32 + "0yrq3gbfmm29xlr52rmxc41mqfrb0295q7sdhbc3ax71677mpr0y")))) + ("scj" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-scj.git") + (commit "e0eae889f4376d2a434ac3b38523e0da7400db68"))) + (file-name "rime-scj-checkout") + (sha256 + (base32 + "1whnv9zs349kvy0zi7dnmpqwil8i6gqwrzvhy3qdrjzy58y6gwxn")))) + ("soutzoe" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-soutzoe.git") + (commit "e47841a8ad6341731c41cdb814b7a25c837603c4"))) + (file-name "rime-soutzoe-checkout") + (sha256 + (base32 + "1rgpmkxa72jy6gyy44fn8azpk3amk9s9lrdf7za03nv95d0fvm0p")))) + ("stenotype" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-stenotype.git") + (commit "d4ff379314fd95283853d1734854979cf3cbd287"))) + (file-name "rime-stenotype-checkout") + (sha256 + (base32 + "1kckpi4l4884hvydr3d6vid3v7rsc1app29kmk7v8jf8vn16afhl")))) + ("stroke" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-stroke.git") + (commit "cfd29c675c46cf70b7a7f0a3836a913059316a0a"))) + (file-name "rime-stroke-checkout") + (sha256 + (base32 + "135is9c1p4lm98fd9l1gxyflkm69cv5an129ka7sk614bq84m08d")))) + ("terra-pinyin" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-terra-pinyin.git") + (commit "15b5c73a796571cd6f9ef6c89f96656cb9df86f9"))) + (file-name "rime-terra-pinyin-checkout") + (sha256 + (base32 + "1xsd84h1zw417h5hr4dbgyk5009zi7q2p9774w3ccr5sxgc3i3cm")))) + ("wubi" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-wubi.git") + (commit "d44403728a0b1cd8b47cb1f81b83f58e5f790b74"))) + (file-name "rime-wubi-checkout") + (sha256 + (base32 + "0ld31bdn94lncxd1ka44w4sbl03skh08mc927dhdmwq5bpvrgn36")))) + ("wugniu" + ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/rime-wugniu.git") + (commit "65bcc354ada3839591d7546a64c71dbdd0592b02"))) + (file-name "rime-wugniu-checkout") + (sha256 + (base32 + "0g31awp40s778sp5c290x40s8np86n8aw011s17sslxrqhhb0bkx")))))) + (home-page "https://rime.im/") + (synopsis "Schema data of Rime Input Method Engine") + (description "@dfn{rime-data} provides the schema data of Rime Input +Method Engine.") + (license lgpl3+))) + +(define-public ibus-rime + (package + (name "ibus-rime") + (version "1.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rime/ibus-rime.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1nqi7ymv34a9kx24say3xj98lkrs9nkpv1n2ijb91wdz3cr012ly")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Define RIME_DATA_DIR. It's required but not used by the code. + (substitute* "Makefile" + (("cmake") + (string-append "cmake -DRIME_DATA_DIR=" + (assoc-ref inputs "rime-data") + "/share/rime-data"))) + ;; rime_config.h defines the actual data directory. + (substitute* "rime_config.h" + (("^#define IBUS_RIME_INSTALL_PREFIX .*$") + (string-append "#define IBUS_RIME_INSTALL_PREFIX \"" + (assoc-ref outputs "out") + "\"\n")) + (("^#define IBUS_RIME_SHARED_DATA_DIR .*$") + (string-append "#define IBUS_RIME_SHARED_DATA_DIR \"" + (assoc-ref inputs "rime-data") + "/share/rime-data\"\n"))) + #t)) + (delete 'configure)))) + (inputs + `(("gdk-pixbuf" ,gdk-pixbuf) + ("glib" ,glib) + ("ibus" ,ibus) + ("libnotify" ,libnotify) + ("librime" ,librime) + ("rime-data" ,rime-data))) + (native-inputs + `(("cmake" ,cmake) + ("pkg-config" ,pkg-config))) + (home-page "https://rime.im/") + (synopsis "Rime Input Method Engine for IBus") + (description "@dfn{ibus-rime} provides the Rime input method engine for +IBus. Rime is a lightweight, extensible input method engine supporting +various input schemas including glyph-based input methods, romanization-based +input methods as well as those for Chinese dialects. It has the ability to +compose phrases and sentences intelligently and provide very accurate +traditional Chinese output.") + (license gpl3+))) diff --git a/gnu/packages/idutils.scm b/gnu/packages/idutils.scm index abab0c16bf..81715591b4 100644 --- a/gnu/packages/idutils.scm +++ b/gnu/packages/idutils.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 208 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,7 +36,20 @@ (sha256 (base32 "1hmai3422iaqnp34kkzxdnywl7n7pvlxp11vrw66ybxn9wxg90c1")) - (patches (search-patches "diffutils-gets-undeclared.patch")))) + (patches (search-patches "diffutils-gets-undeclared.patch")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* (find-files "lib" "\\.c$") + (("#if defined _IO_ftrylockfile") + "#if defined _IO_EOF_SEEN")) + (substitute* "lib/stdio-impl.h" + (("^/\\* BSD stdio derived implementations") + (string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n" + "# define _IO_IN_BACKUP 0x100\n" + "#endif\n\n" + "/* BSD stdio derived implementations"))) + #t)))) (build-system gnu-build-system) (native-inputs `(("emacs" ,emacs-minimal))) (home-page "https://www.gnu.org/software/idutils/") diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 512795ce89..62f6674691 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -28,6 +28,7 @@ (define-module (gnu packages image-viewers) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix packages) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) @@ -60,7 +61,7 @@ (define-public feh (package (name "feh") - (version "2.28") + (version "3.1.1") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -68,7 +69,7 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "1nfka7w6pzj2bbwx8vydr2wwm7z8mrbqiy1xrq97c1g5bxy2vlhk")))) + "1sy8z6rv5sy1bhk3846hgfdy96wdi874yr2fnxfprks46qp29l31")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) @@ -191,14 +192,14 @@ It is the default image viewer on LXDE desktop environment.") (name "sxiv") (version "24") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/muennich/sxiv/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/muennich/sxiv.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "044i077li6m4zsz2fswlcdi2m0sbr9mwws1h3k1zjaln29fw87ai")))) + "020n1bdxbzqncprh8a4rnjzc4frp335yxbqh5w6dr970f7n5qm8d")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -287,13 +288,14 @@ your images. Among its features are: (version "2.4.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/posva/catimg/archive" - "/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/posva/catimg.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1rwgbq2imd5l4nql5hrz7rr5f4gz8aad1amlf0j3cxir8slpbd1y")))) + "1sk74nfc1aklg784pzknr37dyz4k7h9fck3mifpn43rav5qy2zpy")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no tests diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 1113df1ca6..207faede91 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -20,6 +20,8 @@ ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,6 +45,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages check) + #:use-module (gnu packages curl) #:use-module (gnu packages compression) #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) @@ -134,15 +137,15 @@ library. It supports almost all PNG features and is extensible.") (add-after 'unpack 'patch-apng (lambda* (#:key inputs #:allow-other-keys) (define (apply-patch file) - (zero? (system* "patch" "-p1" "--force" - "--input" file))) + (invoke "patch" "-p1" "--force" + "--input" file)) (let ((apng.gz (assoc-ref inputs "apng"))) (format #t "Applying APNG patch '~a'...~%" apng.gz) - (and - (zero? - (system (string-append "gunzip < " apng.gz " > the-patch"))) - (apply-patch "the-patch"))))) + (invoke "sh" "-c" + (string-append "gunzip < " apng.gz " > the-patch")) + (apply-patch "the-patch") + #t))) (add-before 'configure 'no-checks (lambda _ (substitute* "Makefile.in" @@ -237,7 +240,8 @@ in-memory raw vectors.") (string-append vardef (assoc-ref inputs "zlib") "/")) ;; The Makefile is written by hand and not using $PREFIX (("\\$\\(DESTDIR\\)/usr/") - (string-append (assoc-ref outputs "out") "/")))))))) + (string-append (assoc-ref outputs "out") "/"))) + #t))))) (inputs `(("libpng" ,libpng) ("zlib" , zlib))) @@ -251,6 +255,61 @@ files. It can compress them as much as 40% losslessly.") ;; This package used to be wrongfully name "pngcrunch". (deprecated-package "pngcrunch" pngcrush)) +(define-public pnglite + (let ((commit "11695c56f7d7db806920bd9229b69f230e6ffb38") + (revision "1")) + (package + (name "pnglite") + ;; The project was moved from sourceforge to github. + ;; The latest version in sourceforge was 0.1.17: + ;; https://sourceforge.net/projects/pnglite/files/pnglite/ + ;; No releases are made in github. + (version (git-version "0.1.17" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dankar/pnglite") + (commit commit))) + (sha256 + (base32 + "1lmmkdxby5b8z9kx3zrpgpk33njpcf2xx8z9bgqag855sjsqbbby")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + ;; common build flags for building shared libraries + (let ((cflags '("-O2" "-g" "-fPIC")) + (ldflags '("-shared"))) + (apply invoke + `("gcc" + "-o" "libpnglite.so" + ,@cflags + ,@ldflags + "pnglite.c")) + #t))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib/")) + (include (string-append out "/include/")) + (doc (string-append out "/share/doc/" + ,name "-" ,version "/"))) + (install-file "libpnglite.so" lib) + (install-file "pnglite.h" include) + (install-file "README.md" doc) + #t)))))) + (inputs `(("zlib" ,zlib))) + (home-page "https://github.com/dankar/pnglite") + (synopsis "Pretty small png library") + (description "A pretty small png library. +Currently all documentation resides in @file{pnglite.h}.") + (license license:zlib)))) + (define-public libjpeg (package (name "libjpeg") @@ -442,13 +501,13 @@ collection of tools for doing simple manipulations of TIFF images.") (version "1.74.4") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/DanBloomberg/leptonica/archive/" version - ".tar.gz")) - (file-name (string-append "leptonica-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/DanBloomberg/leptonica.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "10pw7pwccd0m0fc9rlrr2m41s7j1qvba2wcrav17pw1gclkf34i0")))) + (base32 "0sfg1ky0lghlq7xx0qii5167bim0wwfnnr83dl4skbj9awyvjiwi")))) (build-system gnu-build-system) (native-inputs `(("gnuplot" ,gnuplot) ;needed for test suite @@ -471,14 +530,15 @@ collection of tools for doing simple manipulations of TIFF images.") (modify-phases %standard-phases (add-after 'unpack 'autogen (lambda _ - (zero? (system* "sh" "autobuild")))) + (invoke "sh" "autobuild"))) (add-after 'unpack 'patch-reg-wrapper (lambda _ (substitute* "prog/reg_wrapper.sh" ((" /bin/sh ") (string-append " " (which "sh") " ")) (("which gnuplot") - "true"))))))) + "true")) + #t))))) (home-page "http://www.leptonica.com/") (synopsis "Library and tools for image processing and analysis") (description @@ -896,7 +956,7 @@ language bindings to VIGRA.") (define-public libwebp (package (name "libwebp") - (version "1.0.0") + (version "1.0.1") (source (origin ;; No tarballs are provided for >0.6.1. @@ -907,7 +967,7 @@ language bindings to VIGRA.") (file-name (git-file-name name version)) (sha256 (base32 - "1w8jzdbr1s4238ygyrlxryycss3f2z6d9amxdq8m82nl3l6skar4")))) + "09l4pq4k2acglkmwr96arn79rssl54sv7vrdrgsxqlg7v8c882zh")))) (build-system gnu-build-system) (inputs `(("freeglut" ,freeglut) @@ -1042,13 +1102,14 @@ convert, manipulate, filter and display a wide variety of image formats.") (name "jasper") (version "2.0.14") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mdadams/jasper/archive/" - "version-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mdadams/jasper.git") + (commit (string-append "version-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0yx9y5y0g6jv142vnqp50j3k8k5yqznz3smrblv192wgfbm6w9l5")))) + "0aarg8nbik9wrm7fx0451sbm5ypfdfr6i169pxzi354mpdp8gg7f")))) (build-system cmake-build-system) (inputs `(("libjpeg" ,libjpeg))) (synopsis "JPEG-2000 library") @@ -1064,13 +1125,14 @@ ISO/IEC 15444-1).") (version "2.5") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/sekrit-twc/zimg/archive/" - "release-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/sekrit-twc/zimg.git") + (commit (string-append "release-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0kbq2dy659645fmgxpzg38b6y6x82kwkydhc380kdkaikv2brcjh")))) + "05krggiifbl6hyg2j3z8qz2k7si84g1qg9snhsnf1ml7mrhqhhlr")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -1081,7 +1143,7 @@ ISO/IEC 15444-1).") (modify-phases %standard-phases (add-after 'unpack 'autogen (lambda _ - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (synopsis "Scaling, colorspace conversion, and dithering library") (description "Zimg implements the commonly required image processing basics of scaling, colorspace conversion, and depth conversion. A simple API enables @@ -1114,7 +1176,8 @@ the programmer.") ;; of the source tree, one level higher than expected (lambda _ (substitute* "test/run_tests.bash" - (("../build") "../../build"))))))) + (("../build") "../../build")) + #t))))) (home-page "https://github.com/myint/perceptualdiff") (synopsis "Perceptual image comparison utility") (description "PerceptualDiff visually compares two images to determine @@ -1313,12 +1376,14 @@ medical image data, e.g. magnetic resonance image (MRI) and functional MRI (name "gpick") (version "0.2.5") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/thezbyg/gpick/archive/" - name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/thezbyg/gpick.git") + (commit (string-append name "-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0mxvxk15xhk2i5vfavjhnkk4j3bnii0gpf8di14rlbpq070hd5rs")))) + "0mcj806zagh122qgrdkrg0macpzby97y89xi2sjyn3bh8vmmyxjy")))) (build-system scons-build-system) (native-inputs `(("boost" ,boost) @@ -1374,13 +1439,14 @@ parsing, viewing, modifying, and saving this metadata.") (version "0.5.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/lupoDharkael/flameshot/archive/" - "v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lupoDharkael/flameshot.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0kp451bqgssvg8n3sg60s3fifplm9l5kxiij0yxkl864p2mhw8im")))) + "13h77np93r796jf289v4r687cmnpqkyqs34dm9gif4akaig74ky0")))) (build-system gnu-build-system) (native-inputs `(("qttools" ,qttools))) @@ -1476,3 +1542,31 @@ Two other programs are included with Gifsicle: @command{gifview} is a lightweight animated-GIF viewer, and @command{gifdiff} compares two GIFs for identical visual appearance.") (license license:gpl2+))) + +(define-public jp2a + (package + (name "jp2a") + (version "1.0.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cslarsen/jp2a.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "12a1z9ba2j16y67f41y8ax5sgv1wdjd71pg7circdxkj263n78ql")))) + (build-system gnu-build-system) + (inputs + `(("libjpeg" ,libjpeg) + ("curl" ,curl))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (home-page "https://csl.name/jp2a/") + (synopsis "Convert JPEG images to ASCII") + (description + "Jp2a is a small utility that converts JPEG images to ASCII.") + (license license:gpl2))) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index e29ec6255b..fe0923f479 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -47,14 +48,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.10-12") + (version "6.9.10-14") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "0ri96yqihdk921k5qx23y2sbhraxbp2avdccxiy6m3srjkirym2l")))) + "0vcfjvdk9in92x808djvy94l5gylpgds4a7mlr8jrxsv9snx88yi")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") diff --git a/gnu/packages/ipfs.scm b/gnu/packages/ipfs.scm new file mode 100644 index 0000000000..82ef0ea028 --- /dev/null +++ b/gnu/packages/ipfs.scm @@ -0,0 +1,239 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> +;;; +;;; 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 ipfs) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix download) + #:use-module (guix build-system go) + #:use-module (gnu packages golang)) + +(define-public go-github-com-ipfs-go-ipfs-cmdkit-files + (let ((commit + "386fcf8f18a185ec121676665fe2d9574496048d") + (revision "0")) + (package + (name "go-github-com-ipfs-go-ipfs-cmdkit-files") + (version (git-version "1.1.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ipfs/go-ipfs-cmdkit.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0qk6fshgdmhp8dip2ksm13j6nywi41m9mn0czkvmw6b697z85l2r")))) + (build-system go-build-system) + (arguments + '(#:unpack-path "github.com/ipfs/go-ipfs-cmdkit" + #:import-path "github.com/ipfs/go-ipfs-cmdkit/files")) + (home-page "https://github.com/ipfs/go-ipfs-cmdkit") + (synopsis "Shared types, functions and values for go-ipfs") + (description "@command{cmdkit} offers some types, functions and values +that are shared between @command{go-ipfs/commands} and its rewrite +@command{go-ipfs-cmds}.") + (license license:expat)))) + +(define-public go-github-com-ipfs-go-ipfs-api + (let ((commit + "dafc2a13a4389ac1a6c2786e34ab70a4f26d3a3f") + (revision "0")) + (package + (name "go-github-com-ipfs-go-ipfs-api") + (version (git-version "1.3.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ipfs/go-ipfs-api.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "06kibnwb037sqynk99j07wm8alvxwx3bari9gdax4jv93396kycj")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/ipfs/go-ipfs-api" + ;; TODO: Tests fail, might need network access. + #:tests? #f)) + (native-inputs + `(("go-github-com-ipfs-go-ipfs-cmdkit-files" ,go-github-com-ipfs-go-ipfs-cmdkit-files) + ("go-github-com-libp2p-go-libp2p-metrics" ,go-github-com-libp2p-go-libp2p-metrics) + ("go-github-com-libp2p-go-flow-metrics" ,go-github-com-libp2p-go-flow-metrics) + ("go-github-com-libp2p-go-libp2p-peer" ,go-github-com-libp2p-go-libp2p-peer) + ("go-github-com-libp2p-go-libp2p-protocol" ,go-github-com-libp2p-go-libp2p-protocol) + ("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) + ("go-github-com-mitchellh-go-homedir" ,go-github-com-mitchellh-go-homedir) + ("go-github-com-multiformats-go-multiaddr" ,go-github-com-multiformats-go-multiaddr) + ("go-github-com-multiformats-go-multiaddr-net" ,go-github-com-multiformats-go-multiaddr-net) + ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) + ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-whyrusleeping-tar-utils" ,go-github-com-whyrusleeping-tar-utils) + ("go-github-com-cheekybits-is" ,go-github-com-cheekybits-is))) + (home-page "https://github.com/ipfs/go-ipfs-api") + (synopsis "Unofficial Go interface to IPFS's HTTP API") + (description "An unofficial Go interface to IPFS's HTTP API") + (license license:expat)))) + +(define-public gx + (let ((commit + "89338e509426d2895f20086685cf4c77d64cc5df") + (revision "0")) + (package + (name "gx") + (version (git-version "0.14.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/whyrusleeping/gx.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08gh04jln8rxpq0j4fm4chjap162wp8cjwj9szbvj9c7123s42rd")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/whyrusleeping/gx")) + (native-inputs + `(("go-github-com-blang-semver" ,go-github-com-blang-semver) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-ipfs-go-ipfs-api" ,go-github-com-ipfs-go-ipfs-api) + ("go-github-com-ipfs-go-ipfs-cmdkit-files" ,go-github-com-ipfs-go-ipfs-cmdkit-files) + ("go-github-com-libp2p-go-flow-metrics" ,go-github-com-libp2p-go-flow-metrics) + ("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) + ("go-github-com-libp2p-go-libp2p-metrics" ,go-github-com-libp2p-go-libp2p-metrics) + ("go-github-com-libp2p-go-libp2p-peer" ,go-github-com-libp2p-go-libp2p-peer) + ("go-github-com-libp2p-go-libp2p-protocol" ,go-github-com-libp2p-go-libp2p-protocol) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-mitchellh-go-homedir" ,go-github-com-mitchellh-go-homedir) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-multiformats-go-multiaddr" ,go-github-com-multiformats-go-multiaddr) + ("go-github-com-multiformats-go-multiaddr-net" ,go-github-com-multiformats-go-multiaddr-net) + ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-github-com-whyrusleeping-tar-utils" ,go-github-com-whyrusleeping-tar-utils) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)) + ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) + ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto) + ("go-github-com-sabhiram-go-gitignore" ,go-github-com-sabhiram-go-gitignore) + ("go-github-com-urfave-cli" ,go-github-com-urfave-cli) + ("go-github-com-whyrusleeping-json-filter" ,go-github-com-whyrusleeping-json-filter) + ("go-github-com-whyrusleeping-progmeter" ,go-github-com-whyrusleeping-progmeter) + ("go-github-com-whyrusleeping-stump" ,go-github-com-whyrusleeping-stump))) + (home-page "https://github.com/whyrusleeping/gx") + (synopsis "Package management tool using IPFS") + (description "@command{gx} is a packaging tool built around the +distributed, content addressed filesystem IPFS. It aims to be flexible, +powerful and simple.") + (license license:expat)))) + +(define-public go-github-com-whyrusleeping-gx-util + (package + (inherit gx) + (name "go-github-com-whyrusleeping-gx-util") + (arguments + '(#:unpack-path "github.com/whyrusleeping/gx" + #:import-path "github.com/whyrusleeping/gx/gxutil")))) + +(define-public gx-go + (package + (name "gx-go") + (version "1.9.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/whyrusleeping/gx-go") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0fdy4b3ymqw6hzvvjwq37mfrdmizc8lxm53axw93n3x6118na9jc")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/whyrusleeping/gx-go")) + (native-inputs + `(("go-github-com-whyrusleeping-gx-util" ,go-github-com-whyrusleeping-gx-util) + ("go-github-com-kr-fs" ,go-github-com-kr-fs) + ("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg) + ("go-github-com-ipfs-go-ipfs-api" ,go-github-com-ipfs-go-ipfs-api) + ("go-github-com-ipfs-go-ipfs-cmdkit-files" ,go-github-com-ipfs-go-ipfs-cmdkit-files) + ("go-github-com-libp2p-go-flow-metrics" ,go-github-com-libp2p-go-flow-metrics) + ("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto) + ("go-github-com-libp2p-go-libp2p-metrics" ,go-github-com-libp2p-go-libp2p-metrics) + ("go-github-com-libp2p-go-libp2p-peer" ,go-github-com-libp2p-go-libp2p-peer) + ("go-github-com-libp2p-go-libp2p-protocol" ,go-github-com-libp2p-go-libp2p-protocol) + ("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd) + ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) + ("go-github-com-mitchellh-go-homedir" ,go-github-com-mitchellh-go-homedir) + ("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58) + ("go-github-com-multiformats-go-multiaddr" ,go-github-com-multiformats-go-multiaddr) + ("go-github-com-multiformats-go-multiaddr-net" ,go-github-com-multiformats-go-multiaddr-net) + ("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash) + ("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3) + ("go-github-com-whyrusleeping-tar-utils" ,go-github-com-whyrusleeping-tar-utils) + ("go-golang-org-x-crypto-union" ,(go-golang-org-x-crypto-union)) + ("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec) + ("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto) + ("go-github-com-sabhiram-go-gitignore" ,go-github-com-sabhiram-go-gitignore) + ("go-github-com-urfave-cli" ,go-github-com-urfave-cli) + ("go-github-com-whyrusleeping-progmeter" ,go-github-com-whyrusleeping-progmeter) + ("go-github-com-whyrusleeping-stump" ,go-github-com-whyrusleeping-stump))) + (home-page "https://github.com/whyrusleeping/gx-go") + (synopsis "Golang subtool for the @command{gx} package manager") + (description "A subtool for the @command{gx} package manager for packages +written in Go.") + (license license:expat))) + +(define-public go-ipfs + (package + (name "go-ipfs") + (version "0.4.18") + (source + (origin + (method url-fetch) + (uri (string-append + "https://dist.ipfs.io/go-ipfs/v" version + "/go-ipfs-source.tar.gz")) + (sha256 + (base32 + "19hfgbyn5sr1bw0cwm3gsjz0w3b3vh3mmkax1906raah30lavj1x")))) + (build-system go-build-system) + (arguments + '(#:unpack-path "github.com/ipfs/go-ipfs" + #:import-path "github.com/ipfs/go-ipfs/cmd/ipfs")) + (home-page "https://ipfs.io") + (synopsis "Go implementation of IPFS, a peer-to-peer hypermedia protocol") + (description "IPFS is a global, versioned, peer-to-peer filesystem. It +combines good ideas from Git, BitTorrent, Kademlia, SFS, and the Web. It is +like a single bittorrent swarm, exchanging git objects. IPFS provides an +interface as simple as the HTTP web, but with permanence built in. You can +also mount the world at @code{/ipfs}.") + (license license:expat))) diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 4f4e494ee5..ba31d36b9e 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -30,6 +30,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (gnu packages) + #:use-module (gnu packages admin) #:use-module (gnu packages aspell) #:use-module (gnu packages autogen) #:use-module (gnu packages autotools) @@ -65,7 +66,7 @@ (define-public quassel (package (name "quassel") - (version "0.12.5") + (version "0.13.0") (source (origin (method url-fetch) @@ -73,7 +74,7 @@ version ".tar.bz2")) (sha256 (base32 - "1qkl3sb4ijx4k17m0c42j2p5bc4jymypwhmplm942rbrzm6mg50q")) + "0xp9mppxl63qzgsdyprmblvfrj0bb9z57kfc088gvcavvq1210nr")) (modules '((guix build utils))) ;; We don't want to install the bundled scripts. (snippet @@ -86,21 +87,31 @@ (arguments ;; The three binaries are not mutually exlusive, and are all built ;; by default. - '(#:configure-flags '(;;"-DWANT_QTCLIENT=OFF" ; 5.2 MiB - ;;"-DWANT_CORE=OFF" ; 2.4 MiB - ;;"-DWANT_MONO=OFF" ; 6.4 MiB - "-DUSE_QT5=ON" ; default is qt4 + '(#:configure-flags '(;;"-DWANT_QTCLIENT=OFF" ; 6.1 MiB + ;;"-DWANT_CORE=OFF" ; 3.0 MiB + ;;"-DWANT_MONO=OFF" ; 7.6 MiB "-DWITH_KDE=OFF" ; no to kde integration ... - "-DWITH_OXYGEN=ON" ; therefore we install bundled icons - "-DWITH_WEBKIT=OFF") ; we don't depend on qtwebkit + "-DWITH_BUNDLED_ICONS=ON" ; so we install bundled icons + "-DWITH_OXYGEN_ICONS=ON" ; also the oxygen ones + "-DWITH_WEBENGINE=OFF") ; we don't depend on qtwebengine + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-inxi-reference + (lambda* (#:key inputs #:allow-other-keys) + (let ((inxi (string-append (assoc-ref inputs "inxi") "/bin/inxi"))) + (substitute* "src/common/aliasmanager.cpp" + ((" inxi ") (string-append " " inxi " "))) + #t)))) #:tests? #f)) ; no test target (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config) ("qttools" ,qttools))) (inputs - `(("qca" ,qca) + `(("inxi" ,inxi-minimal) + ("qca" ,qca) ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) ("qtscript" ,qtscript) ("snorenotify" ,snorenotify) ("zlib" ,zlib))) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index f6d72edeea..951c1f4fd3 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -46,6 +46,7 @@ #:use-module (gnu packages cpio) #:use-module (gnu packages cups) #:use-module (gnu packages compression) + #:use-module (gnu packages elf) #:use-module (gnu packages fontutils) #:use-module (gnu packages gawk) #:use-module (gnu packages gettext) @@ -1672,6 +1673,192 @@ new Date();")) '("jdk" "openjdk-src" "corba-drop" "jaxp-drop" "jaxws-drop" "jdk-drop" "langtools-drop" "hotspot-drop"))))))) +(define-public openjdk9 + (package + (name "openjdk") + (version "9.181") + (source (origin + (method url-fetch) + (uri "https://hg.openjdk.java.net/jdk/jdk/archive/3cc80be736f2.tar.bz2") + (file-name (string-append name "-" version ".tar.bz2")) + (sha256 + (base32 + "01ihmyf7k5z17wbr7xig7y40l9f01d5zjgkcmawn1102hw5kchpq")) + (modules '((guix build utils))) + (snippet + `(begin + (for-each delete-file (find-files "." ".*.bin$")) + (for-each delete-file (find-files "." ".*.exe$")) + (for-each delete-file (find-files "." ".*.jar$")) + #t)))) + (build-system gnu-build-system) + (outputs '("out" "jdk" "doc")) + (arguments + `(#:tests? #f; require jtreg + #:imported-modules + ((guix build syscalls) + ,@%gnu-build-system-modules) + #:phases + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'fix-java-shebangs + (lambda _ + ;; This file was "fixed" by patch-source-shebangs, but it requires + ;; this exact first line. + (substitute* "jdk/make/data/blacklistedcertsconverter/blacklisted.certs.pem" + (("^#!.*") "#! java BlacklistedCertsConverter SHA-256\n")) + #t)) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; TODO: unbundle libpng and lcms + (invoke "bash" "./configure" + (string-append "--with-freetype=" (assoc-ref inputs "freetype")) + "--disable-freetype-bundling" + "--disable-warnings-as-errors" + "--disable-hotspot-gtest" + "--with-giflib=system" + "--with-libjpeg=system" + (string-append "--prefix=" (assoc-ref outputs "out"))) + #t)) + (replace 'build + (lambda _ + (with-output-to-file ".src-rev" + (lambda _ + (display ,version))) + (setenv "GUIX_LD_WRAPPER_ALLOW_IMPURITIES" "yes") + (invoke "make" "all") + #t)) + ;; Some of the libraries in the lib/ folder link to libjvm.so. + ;; But that shared object is located in the server/ folder, so it + ;; cannot be found. This phase creates a symbolic link in the + ;; lib/ folder so that the other libraries can find it. + ;; + ;; See: + ;; https://lists.gnu.org/archive/html/guix-devel/2017-10/msg00169.html + ;; + ;; FIXME: Find the bug in the build system, so that this symlink is + ;; not needed. + (add-after 'install 'install-libjvm + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((lib-out (string-append (assoc-ref outputs "out") + "/lib")) + (lib-jdk (string-append (assoc-ref outputs "jdk") + "/lib"))) + (symlink (string-append lib-jdk "/server/libjvm.so") + (string-append lib-jdk "/libjvm.so")) + (symlink (string-append lib-out "/server/libjvm.so") + (string-append lib-out "/libjvm.so"))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (jdk (assoc-ref outputs "jdk")) + (doc (assoc-ref outputs "doc")) + (images (car (find-files "build" ".*-server-release" + #:directories? #t)))) + (copy-recursively (string-append images "/images/jdk") jdk) + (copy-recursively (string-append images "/images/jre") out) + (copy-recursively (string-append images "/images/docs") doc)) + #t)) + (add-after 'install 'strip-zip-timestamps + (lambda* (#:key outputs #:allow-other-keys) + (use-modules (guix build syscalls)) + (for-each (lambda (zip) + (let ((dir (mkdtemp! "zip-contents.XXXXXX"))) + (with-directory-excursion dir + (invoke "unzip" zip)) + (delete-file zip) + (for-each (lambda (file) + (let ((s (lstat file))) + (unless (eq? (stat:type s) 'symlink) + (format #t "reset ~a~%" file) + (utime file 0 0 0 0)))) + (find-files dir #:directories? #t)) + (with-directory-excursion dir + (let ((files (find-files "." ".*" #:directories? #t))) + (apply invoke "zip" "-0" "-X" zip files))))) + (find-files (assoc-ref outputs "doc") ".*.zip$")) + #t))))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("cups" ,cups) + ("fontconfig" ,fontconfig) + ("freetype" ,freetype) + ("giflib" ,giflib) + ("lcms" ,lcms) + ("libelf" ,libelf) + ("libjpeg" ,libjpeg) + ("libice" ,libice) + ("libpng" ,libpng) + ("libx11" ,libx11) + ("libxcomposite" ,libxcomposite) + ("libxi" ,libxi) + ("libxinerama" ,libxinerama) + ("libxrender" ,libxrender) + ("libxt" ,libxt) + ("libxtst" ,libxtst))) + (native-inputs + `(("icedtea-8" ,icedtea-8) + ("icedtea-8:jdk" ,icedtea-8 "jdk") + ("unzip" ,unzip) + ("which" ,which) + ("zip" ,zip))) + (home-page "https://openjdk.java.net/projects/jdk9/") + (synopsis "Java development kit") + (description + "This package provides the Java development kit OpenJDK.") + (license license:gpl2+))) + +(define-public openjdk10 + (package + (inherit openjdk9) + (name "openjdk") + (version "10.46") + (source (origin + (method url-fetch) + (uri "http://hg.openjdk.java.net/jdk/jdk/archive/6fa770f9f8ab.tar.bz2") + (file-name (string-append name "-" version ".tar.bz2")) + (sha256 + (base32 + "0zywq2203b4hx4jms9vbwvjcj1d3k2v3qpx4s33729fkpmid97r4")) + (patches (search-patches + "openjdk-10-idlj-reproducibility.patch")) + (modules '((guix build utils))) + (snippet + `(begin + (for-each delete-file (find-files "." ".*.bin$")) + (for-each delete-file (find-files "." ".*.exe$")) + (for-each delete-file (find-files "." ".*.jar$")) + #t)))) + (arguments + (substitute-keyword-arguments (package-arguments openjdk9) + ((#:phases phases) + `(modify-phases ,phases + (replace 'fix-java-shebangs + (lambda _ + ;; This file was "fixed" by patch-source-shebangs, but it requires + ;; this exact first line. + (substitute* "make/data/blacklistedcertsconverter/blacklisted.certs.pem" + (("^#!.*") "#! java BlacklistedCertsConverter SHA-256\n")) + #t)) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "bash" "./configure" + (string-append "--with-freetype=" (assoc-ref inputs "freetype")) + "--disable-freetype-bundling" + "--disable-warnings-as-errors" + "--disable-hotspot-gtest" + "--with-giflib=system" + "--with-libjpeg=system" + "--with-native-debug-symbols=zipped" + (string-append "--prefix=" (assoc-ref outputs "out"))) + #t)))))) + (native-inputs + `(("openjdk9" ,openjdk9) + ("openjdk9:jdk" ,openjdk9 "jdk") + ("unzip" ,unzip) + ("which" ,which) + ("zip" ,zip))))) + (define-public icedtea icedtea-8) @@ -1803,151 +1990,6 @@ new Date();")) `(("java-junit" ,java-junit) ,@(package-inputs ant/java8))))) -(define-public clojure - (let* ((remove-archives '(begin - (for-each delete-file - (find-files "." ".*\\.(jar|zip)")) - #t)) - (submodule (lambda (prefix version hash) - (origin - (method url-fetch) - (uri (string-append "https://github.com/clojure/" - prefix version ".tar.gz")) - (sha256 (base32 hash)) - (modules '((guix build utils))) - (snippet remove-archives))))) - (package - (name "clojure") - (version "1.9.0") - (source - (origin - (method url-fetch) - (uri - (string-append "https://github.com/clojure/clojure/archive/clojure-" - version ".tar.gz")) - (sha256 - (base32 "0xjbzcw45z32vsn9pifp7ndysjzqswp5ig0jkjpivigh2ckkdzha")) - (modules '((guix build utils))) - (snippet remove-archives))) - (build-system ant-build-system) - (arguments - `(#:modules ((guix build ant-build-system) - (guix build utils) - (ice-9 ftw) - (ice-9 regex) - (srfi srfi-1) - (srfi srfi-26)) - #:test-target "test" - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'unpack-submodule-sources - (lambda* (#:key inputs #:allow-other-keys) - (for-each - (lambda (name) - (mkdir-p name) - (with-directory-excursion name - (invoke "tar" - ;; Use xz for repacked tarball. - "--xz" - "--extract" - "--verbose" - "--file" (assoc-ref inputs name) - "--strip-components=1")) - (copy-recursively (string-append name "/src/main/clojure/") - "src/clj/")) - '("core-specs-alpha-src" - "data-generators-src" - "spec-alpha-src" - "test-check-src" - "test-generative-src" - "tools-namespace-src")) - #t)) - (add-after 'unpack 'fix-manifest-classpath - (lambda _ - (substitute* "build.xml" - (("<attribute name=\"Class-Path\" value=\".\"/>") "")) - #t)) - ;; The javadoc target is not built by default. - (add-after 'build 'build-doc - (lambda _ - (invoke "ant" "javadoc"))) - ;; Needed since no install target is provided. - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((java-dir (string-append (assoc-ref outputs "out") - "/share/java/"))) - ;; Install versioned to avoid collisions. - (install-file (string-append "clojure-" ,version ".jar") - java-dir) - #t))) - ;; Needed since no install-doc target is provided. - (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (let ((doc-dir (string-append (assoc-ref outputs "out") - "/share/doc/clojure-" - ,version "/"))) - (copy-recursively "doc/clojure" doc-dir) - (copy-recursively "target/javadoc/" - (string-append doc-dir "javadoc/")) - (for-each (cut install-file <> doc-dir) - (filter (cut string-match - ".*\\.(html|markdown|md|txt)" - <>) - (scandir "./"))) - #t)))))) - ;; The native-inputs below are needed to run the tests. - (native-inputs - `(("core-specs-alpha-src" - ,(submodule "core.specs.alpha/archive/core.specs.alpha-" - "0.1.24" - "0v2a0svf1ar2y42ajxwsjr7zmm5j7pp2zwrd2jh3k7xzd1p9x1fv")) - ("data-generators-src" - ,(submodule "data.generators/archive/data.generators-" - "0.1.2" - "0kki093jp4ckwxzfnw8ylflrfqs8b1i1wi9iapmwcsy328dmgzp1")) - ("spec-alpha-src" - ,(submodule "spec.alpha/archive/spec.alpha-" - "0.1.143" - "00alf0347licdn773w2jarpllyrbl52qz4d8mw61anjksacxylzz")) - ("test-check-src" - ,(submodule "test.check/archive/test.check-" - "0.9.0" - "0p0mnyhr442bzkz0s4k5ra3i6l5lc7kp6ajaqkkyh4c2k5yck1md")) - ("test-generative-src" - ,(submodule "test.generative/archive/test.generative-" - "0.5.2" - "1pjafy1i7yblc7ixmcpfq1lfbyf3jaljvkgrajn70sws9xs7a9f8")) - ("tools-namespace-src" - ,(submodule "tools.namespace/archive/tools.namespace-" - "0.2.11" - "10baak8v0hnwz2hr33bavshm7y49mmn9zsyyms1dwjz45p5ymhy0")))) - (home-page "https://clojure.org/") - (synopsis "Lisp dialect running on the JVM") - (description "Clojure is a dynamic, general-purpose programming language, -combining the approachability and interactive development of a scripting -language with an efficient and robust infrastructure for multithreaded -programming. Clojure is a compiled language, yet remains completely dynamic -– every feature supported by Clojure is supported at runtime. Clojure -provides easy access to the Java frameworks, with optional type hints and type -inference, to ensure that calls to Java can avoid reflection. - -Clojure is a dialect of Lisp, and shares with Lisp the code-as-data philosophy -and a powerful macro system. Clojure is predominantly a functional programming -language, and features a rich set of immutable, persistent data structures. -When mutable state is needed, Clojure offers a software transactional memory -system and reactive Agent system that ensure clean, correct, multithreaded -designs.") - ;; Clojure is licensed under EPL1.0 - ;; ASM bytecode manipulation library is licensed under BSD-3 - ;; Guava Murmur3 hash implementation is licensed under APL2.0 - ;; src/clj/repl.clj is licensed under CPL1.0 - ;; - ;; See readme.html or readme.txt for details. - (license (list license:epl1.0 - license:bsd-3 - license:asl2.0 - license:cpl1.0))))) - (define-public javacc-4 (package (name "javacc") @@ -9348,7 +9390,8 @@ that is part of the SWT Tools project.") ,(match (%current-system) ((or "i686-linux" "armhf-linux") "linux32") - ((or "x86_64-linux" "aarch64-linux") + ((or "x86_64-linux" "aarch64-linux" + "mips64el-linux") "linux64"))))) (install-file "src/main/native-package/src/libjansi.so" dir)) #t)) @@ -9814,6 +9857,37 @@ against expected outcomes.") (native-inputs `(("java-mockito-1" ,java-mockito-1))))) +(define-public java-xmlunit-matchers + (package + (inherit java-xmlunit) + (name "java-xmlunit-matchers") + (arguments + `(#:jar-name "java-xmlunit-matchers.jar" + #:source-dir "xmlunit-matchers/src/main/java" + #:test-dir "xmlunit-matchers/src/test" + #:test-exclude + ;; Cannot open xsd for http://www.xmlunit.org/test-support/Book.xsd + (list "**/ValidationMatcherTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-test-class + (lambda _ + (copy-file "xmlunit-core/src/test/java/org/xmlunit/TestResources.java" + "xmlunit-matchers/src/test/java/org/xmlunit/TestResources.java") + #t)) + (add-before 'build 'fix-test-resources-path + (lambda _ + (substitute* (find-files "xmlunit-matchers/src/test" ".*.java") + (("../test-resources") "test-resources")) + #t)) + (add-before 'check 'copy-test-resources + (lambda* (#:key inputs #:allow-other-keys) + (copy-recursively (assoc-ref inputs "resources") "test-resources") + #t))))) + (inputs + `(("java-xmlunit" ,java-xmlunit) + ("java-junit" ,java-junit))))) + (define-public java-openchart2 (package (name "java-openchart2") diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index 75517caf6b..8731a44927 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. @@ -413,7 +413,7 @@ external server.") (define-public mujs (package (name "mujs") - (version "1.0.4") + (version "1.0.5") (source (origin (method git-fetch) (uri (git-reference @@ -422,11 +422,17 @@ external server.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1ly0yybs66nk63517kg4dmdc7dbikhqqqf2r2kvccgzzvv6k0vs8")))) + "0pkv26jxwgv5ax0ylfmi4h96h79hj4gvr95218ns8wngnmgr1ny6")))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (delete 'configure)) ; no configure + '(#:phases + (modify-phases %standard-phases + (delete 'configure) ; no configure + (add-after 'install 'install-shared-library + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "build/release/libmujs.so" + (string-append out "/lib")))))) #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")) (string-append "CC=gcc")) #:tests? #f)) ; no tests diff --git a/gnu/packages/julia.scm b/gnu/packages/julia.scm index fb9b0eeedf..856bbc0eed 100644 --- a/gnu/packages/julia.scm +++ b/gnu/packages/julia.scm @@ -357,10 +357,10 @@ (method url-fetch) ;; No versioned URL, see <https://www.agner.org/optimize/> for updates. (uri "https://www.agner.org/optimize/objconv.zip") - (file-name "objconv-2018-08-15.zip") + (file-name "objconv-2018-10-07.zip") (sha256 (base32 - "09y4pwxfs6fl47cyingbf95i2rxx74wmycl9fd4ldcgvpx9bzdrx")))) + "0wp6ld9vk11f4nnkn56627zmlv9k5vafi99qa3yyn1pgcd61zcfs")))) ("dsfmt" ,(origin (method url-fetch) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index c2164250e9..d2ae91b179 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -36,6 +36,7 @@ #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) + #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages graphics) #:use-module (gnu packages image) @@ -479,6 +480,45 @@ used in KDE development tools Kompare and KDevelop.") ;; source archive (license (list license:gpl2+ license:lgpl2.0+ license:bsd-3)))) +(define-public libkscreen + (package + (name "libkscreen") + (version "5.13.5") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/plasma/" version "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "04719va15i66qn1xqx318v6risxhp8bfcnhxh9mqm5h9qx5c6c4k")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ;; For testing. + ("dbus" ,dbus))) + (inputs + `(("kwayland" ,kwayland) + ("libxrandr" ,libxrandr) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (arguments + '(#:tests? #f ; FIXME: 55% tests passed, 5 tests failed out of 11 + #:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + ;; For the missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0") + ;; Run the tests offscreen. + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) + (home-page "https://community.kde.org/Solid/Projects/ScreenManagement") + (synopsis "KDE's screen management software") + (description "KScreen is the new screen management software for KDE Plasma +Workspaces which tries to be as magic and automatic as possible for users with +basic needs and easy to configure for those who want special setups.") + (license license:gpl2+))) + (define-public libksysguard (package (name "libksysguard") diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index 21e7b12d3e..822fceb46a 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -48,6 +49,7 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gperf) + #:use-module (gnu packages groff) #:use-module (gnu packages gnunet) #:use-module (gnu packages gnupg) #:use-module (gnu packages image) @@ -62,6 +64,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages samba) #:use-module (gnu packages sdl) + #:use-module (gnu packages serialization) #:use-module (gnu packages ssh) #:use-module (gnu packages swig) #:use-module (gnu packages textutils) @@ -75,11 +78,12 @@ #:use-module (gnu packages assembly)) (define-public crossguid - (let ((commit "8f399e8bd4252be9952f3dfa8199924cc8487ca4")) + (let ((commit "fef89a4174a7bf8cd99fa9154864ce9e8e3bf989") + (revision "2")) (package (name "crossguid") - (version (string-append "0.0-1." (string-take commit 7))) - ;; There's no official release. Just a Git repository. + (version (string-append "0.0-" revision "." (string-take commit 7))) + ;; This is the commit that Kodi wants. (source (origin (method git-fetch) (uri (git-reference @@ -88,13 +92,12 @@ (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1i29y207qqddvaxbn39pk2fbh3gx8zvdprfp35wasj9rw2wjk3s9")))) + "1blrkc7zcqrqcr5msvhyhm98s2jvm9hr0isqs4288q2r4mdnrfq0")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure) ; no configure script - ;; There's no build system here, so we have to do it ourselves. (replace 'build (lambda _ (invoke "g++" "-c" "guid.cpp" "-o" "guid.o" @@ -129,7 +132,7 @@ generator library for C++.") ;; of the standard build process. To make things easier, we bootstrap ;; and patch shebangs here, so we don't have to worry about it later. (define libdvdnav/kodi - (let ((commit "6.0.0-Leia-Alpha-1")) + (let ((commit "6.0.0-Leia-Alpha-3")) (package (name "libdvdnav-bootstrapped") (version commit) @@ -141,7 +144,7 @@ generator library for C++.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1xiyfgf8v8aknlxlzsvk6pbzkhclz0hbh3s1b0w6ivkng2k310j9")))) + "0qwlf4lgahxqxk1r2pzl866mi03pbp7l1fc0rk522sc0ak2s9jhb")))) (build-system gnu-build-system) (arguments '(#:tests? #f @@ -164,7 +167,7 @@ generator library for C++.") (license license:gpl2+)))) (define libdvdread/kodi - (let ((commit "6.0.0-Leia-Alpha-1")) + (let ((commit "6.0.0-Leia-Alpha-3")) (package (name "libdvdread-bootstrapped") (version commit) @@ -176,7 +179,7 @@ generator library for C++.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1c3g18n2vwhgcfz3dka1pmw58bnv2ram7xjvizfiykb3sgi9zfwp")))) + "1xxn01mhkdnp10cqdr357wx77vyzfb5glqpqyg8m0skyi75aii59")))) (build-system gnu-build-system) (arguments '(#:tests? #f @@ -199,7 +202,7 @@ generator library for C++.") (license (list license:gpl2+ license:lgpl2.1+))))) (define libdvdcss/kodi - (let ((commit "1.4.1-Leia-Alpha-1")) + (let ((commit "1.4.2-Leia-Beta-5")) (package (name "libdvdcss-bootstrapped") (version commit) @@ -211,7 +214,7 @@ generator library for C++.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0adafwsawxssj3nilkql447v0l4a2584rdpmy5rfjmznh91lykgh")))) + "0j41ydzx0imaix069s3z07xqw9q95k7llh06fc27dcn6f7b8ydyl")))) (build-system gnu-build-system) (arguments '(#:tests? #f @@ -233,28 +236,53 @@ generator library for C++.") (description (package-description libdvdcss)) (license license:gpl2+)))) +(define-public fstrcmp + (package + (name "fstrcmp") + (version "0.7.D001") + (source + (origin + (method url-fetch) + (uri (string-append "http://fstrcmp.sourceforge.net/fstrcmp-" + version ".tar.gz")) + (sha256 + (base32 + "0xilghiy3mz78bjmfldi39qyy7jvw5b6wafsx370lw401y2qw0g4")))) + (build-system gnu-build-system) + (home-page "http://fstrcmp.sourceforge.net/") + (arguments + '(#:configure-flags '("SH=sh"))) + (native-inputs + `(("ghostscript" ,ghostscript) ; ps2pdf + ("groff" ,groff) + ("libtool" ,libtool) + ("which" ,which))) + (synopsis "fuzzy comparison of strings") + (description + "The fstrcmp project provides a library that is used to make fuzzy +comparisons of strings and byte arrays, including multi-byte character strings. +This can be useful in error messages, enabling the suggestion of likely valid +alternatives. In compilers, this can reduce the cascade of secondary errors.") + (license license:gpl3+))) + (define-public kodi - ;; We package the git version because the current released - ;; version was cut while the cmake transition was in turmoil. - (let ((commit "ec16dbca4dcf2923f53f819695a6d47c52e68d74") - (revision "8")) (package (name "kodi") - (version (git-version "18.0_alpha" revision commit)) + (version "18.0rc1") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/xbmc/xbmc.git") - (commit commit))) + (commit (string-append version "-Leia")))) (file-name (git-file-name name version)) (sha256 (base32 - "1rxg752cl59124cfpfwmyjldn6qpq5jginxddpzvgagfadf10i4d")) + "0xzzp4x8l0ywx8aq93a1323il6wwslmgdbhasv0r8zp3w1c0wqf1")) (snippet '(begin (use-modules (guix build utils)) (for-each delete-file-recursively - '("project/BuildDependencies/bin/" + '("project/BuildDependencies/" ;; TODO: Purge these jars. ;;"tools/codegenerator/groovy" ;; And these sources: @@ -317,8 +345,8 @@ generator library for C++.") (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))) - ;; Don't phone home to check for updates.¬ - (substitute* "system/addon-manifest.xml"¬ + ;; Don't phone home to check for updates. + (substitute* "system/addon-manifest.xml" (("<addon optional=\\\"true\\\">service.xbmc.versioncheck</addon>") "")) @@ -370,10 +398,12 @@ generator library for C++.") ("eudev" ,eudev) ("ffmpeg" ,ffmpeg) ("flac" ,flac) + ("flatbuffers" ,flatbuffers) ("fmt" ,fmt) ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("fribidi" ,fribidi) + ("fstrcmp" ,fstrcmp) ("giflib" ,giflib) ("glew" ,glew) ("gnutls" ,gnutls) @@ -427,7 +457,7 @@ plug-in system.") license:expat ;cpluff, dbwrappers license:public-domain ;cpluff/examples license:bsd-3 ;misc, gtest - license:bsd-2))))) ;xbmc/freebsd + license:bsd-2)))) ;xbmc/freebsd (define-public kodi-cli (let ((commit "104dc23b2a993c8e6db8c46f4f8bec24b146549b") ; Add support for diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm index d1b910bd07..01a5ea2049 100644 --- a/gnu/packages/libffi.scm +++ b/gnu/packages/libffi.scm @@ -88,7 +88,8 @@ conversions for values passed between the two languages.") (method url-fetch) (uri (pypi-uri "cffi" version)) (sha256 - (base32 "1x3lrj928dcxx1k8k9gf3s4s3jwvzv8mc3kkyg1g7c3a1sc1f3z9")))) + (base32 "1x3lrj928dcxx1k8k9gf3s4s3jwvzv8mc3kkyg1g7c3a1sc1f3z9")) + (patches (search-patches "python-cffi-x87-stack-clean.patch")))) (build-system python-build-system) (outputs '("out" "doc")) (inputs diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 9571ba6e7d..45e2f63767 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -81,7 +81,7 @@ (define-public ixion (package (name "ixion") - (version "0.13.0") + (version "0.14.1") (source (origin (method url-fetch) @@ -89,7 +89,7 @@ version ".tar.xz")) (sha256 (base32 - "1rf76drzg593jzswwnh8kr2jangp8ylizqjspx57rld25g2n1qss")))) + "14gdd6div4l22vnz3jn2qjxgjly98ck6p8c1v7386c41rx7kilba")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -107,7 +107,7 @@ their dependencies automatically upon calculation.") (define-public orcus (package (name "orcus") - (version "0.13.4") + (version "0.14.1") (source (origin (method url-fetch) @@ -115,7 +115,7 @@ their dependencies automatically upon calculation.") name "-" version ".tar.xz")) (sha256 (base32 - "1r42waglxwmvvwl20fy49vzgfp1sis4j703f81iswzdyzqalq75p")))) + "1ays13a1x15j81dsrq0d3697v1bbqd3bfz3ajn6kb9d61y2drlgj")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -411,7 +411,16 @@ CorelDRAW documents of all versions.") "0bfq9rwm040xhh7b3v0gsdavwvnrz4hkwnhpggarxk70mr3j7jcx")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--with-mdds=1.2"))) + `(#:configure-flags '("--with-mdds=1.4") + #:phases (modify-phases %standard-phases + (add-before 'configure 'support-mdds-1.4 + (lambda _ + ;; This package already works fine with mdds 1.4, but the + ;; configure check is too strict. Taken from upstream. + (substitute* "configure" + (("mdds=1\\.2") "mdds=1.4") + (("mdds=\"1\\.2\"") "mdds=\"1.4\"")) + #t))))) (native-inputs `(("cppunit" ,cppunit) ("doxygen" ,doxygen) @@ -740,6 +749,9 @@ Works word processor file format.") (sha256 (base32 "08mg5kmkjrmqrd8j5rkzw9vdqlvibhb1ynp6bmfxnzq5rcq1l197")))) (build-system gnu-build-system) + (arguments + ;; A harmless 'sign-compare' error pops up on i686 so disable '-Werror'. + '(#:configure-flags '("--disable-werror"))) (inputs `(("boost" ,boost) ("icu4c" ,icu4c) @@ -936,7 +948,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") (define-public libreoffice (package (name "libreoffice") - (version "6.1.2.1") + (version "6.1.3.2") (source (origin (method url-fetch) @@ -946,9 +958,35 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "149ziasibplihfxlzafzcm4737ns30hg9175967b43c81yv5f335")) - (patches (search-patches "libreoffice-icu.patch" - "libreoffice-glm.patch")))) + "0i4gf3qi16fg7dxq2l4vhkwh4f5lx7xd1ilpzcw26vccqkv3hvyl")) + (patches + (append (list (origin + ;; Support newer versions of Orcus and MDDS. These patches + ;; are taken from upstream, but we use the patches from Arch + ;; because they are adapted for the release tarball. + ;; Note: remove the related substitutions below when these + ;; are no longer needed. + (method url-fetch) + (uri (string-append "https://git.archlinux.org/svntogit" + "/packages.git/plain/trunk/" + "0001-Update-orcus-to-0.14.0.patch?&id=" + "4002fa927f2a143bd2ec008a0c400b2ce9f2c8a7")) + (file-name "libreoffice-orcus.patch") + (sha256 + (base32 + "0v1knblrmfzkb4g9pm5mdnrmjib59bznvca1ygbwlap2ln1h4mk0"))) + (origin + (method url-fetch) + (uri (string-append "https://git.archlinux.org/svntogit" + "/packages.git/plain/trunk/" + "0001-Update-mdds-to-1.4.1.patch?&id=" + "4002fa927f2a143bd2ec008a0c400b2ce9f2c8a7")) + (file-name "libreoffice-mdds.patch") + (sha256 + (base32 + "0apbmammmp4pk473xiv5vk50r4c5gjvqzf9jkficksvz58q6114f")))) + (search-patches "libreoffice-icu.patch" + "libreoffice-glm.patch"))))) (build-system glib-or-gtk-build-system) (native-inputs `(("bison" ,bison) @@ -1037,6 +1075,13 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") "solenv/gbuild/platform/unxgcc.mk") (("/bin/sh") (which "sh"))) + ;; XXX: Adjust the checks for MDDS and liborcus to avoid having + ;; to re-bootstrap the whole thing. Remove this with the related + ;; patches above. + (substitute* "configure" + (("mdds-1.2 >= 1.2.3") "mdds-1.4 >= 1.4.1") + (("liborcus-0.13 >= 0.13.3") "liborcus-0.14 >= 0.14.0")) + ;; GPGME++ headers are installed in a gpgme++ subdirectory, but ;; files in "xmlsecurity/source/gpg/" and elsewhere expect to ;; find them on the include path without a prefix. @@ -1102,6 +1147,8 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") (list "--enable-release-build" "--enable-verbose" + ;; Avoid using all cpu cores by default + (format #f "--with-parallelism=~d" (parallel-job-count)) "--disable-fetch-external" ; disable downloads "--with-system-libs" ; enable all --with-system-* flags (string-append "--with-boost-libdir=" diff --git a/gnu/packages/libusb.scm b/gnu/packages/libusb.scm index bcdc091a9b..c43d0f9e7f 100644 --- a/gnu/packages/libusb.scm +++ b/gnu/packages/libusb.scm @@ -303,14 +303,14 @@ wrapper for accessing libusb-1.0.") (define-public libmtp (package (name "libmtp") - (version "1.1.15") + (version "1.1.16") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/libmtp/libmtp/" version "/libmtp-" version ".tar.gz")) (sha256 (base32 - "089h79nkz7wcr3lbqi7025l8p75hbp0aigxk3wdk2zkm8q5r0h6h")))) + "185vh9bds6dcy00ycggg69g4v7m3api40zv8vrcfb3fk3vfzjs2v")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index f058cc79a2..1cdf2bf478 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -30,6 +30,7 @@ ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2018 Manuel Graf <graf@init.at> +;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -399,10 +400,10 @@ It has been modified to remove all non-free binary blobs.") ;; supports qemu "virt" machine and possibly a large number of ARM boards. ;; See : https://wiki.debian.org/DebianKernel/ARMMP. -(define %linux-libre-version "4.18.15") -(define %linux-libre-hash "0v6xs85qn1iy2dj3m6s3cfnhbwb1mjy21d9lagjni8dg3jic26hf") +(define %linux-libre-version "4.19.8") +(define %linux-libre-hash "1rmgf3sbcyb47s3sagac7zrrpznq0vlcbzjzlzir95biy7lbswb3") -(define %linux-libre-4.18-patches +(define %linux-libre-4.19-patches (list %boot-logo-patch (origin (method url-fetch) @@ -411,27 +412,19 @@ It has been modified to remove all non-free binary blobs.") "/raw/34a7d9011fcfcfa38b68282fd2b1a8797e6834f0" "/debian/patches/bugfix/arm/" "arm-mm-export-__sync_icache_dcache-for-xen-privcmd.patch")) - (file-name "linux-libre-4.18-arm-export-__sync_icache_dcache.patch") + (file-name "linux-libre-4.19-arm-export-__sync_icache_dcache.patch") (sha256 - (base32 "1ifnfhpakzffn4b8n7x7w5cps9mzjxlkcfz9zqak2vaw8nzvl39f"))) - (origin - (method url-fetch) - (uri (string-append - "https://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git" - "/patch/?id=c5157101e7793b42a56e07368c7f4cb73fb58008")) - (file-name "linux-libre-4.18-arm64-export-__sync_icache_dcache.patch") - (sha256 - (base32 "0q13arsi8al3l3yq6d76z4h8n45wlpkjyxlrgn1sqbx5xjksycyz"))))) + (base32 "1ifnfhpakzffn4b8n7x7w5cps9mzjxlkcfz9zqak2vaw8nzvl39f"))))) (define-public linux-libre (make-linux-libre %linux-libre-version %linux-libre-hash %linux-compatible-systems - #:patches %linux-libre-4.18-patches + #:patches %linux-libre-4.19-patches #:configuration-file kernel-config)) -(define %linux-libre-4.14-version "4.14.77") -(define %linux-libre-4.14-hash "18y81rga2lhsk7bjckglxz52pvnzf103ar0z2zj611g37wyf83r5") +(define %linux-libre-4.14-version "4.14.87") +(define %linux-libre-4.14-hash "1013h3qbsq76vlhrbl3gci25jbwydzm7k0bg08fbq42qrhjq92ak") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version @@ -440,14 +433,14 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.134" - "0f5qif27k0mhc57d98arbfkq7zlvg0ra2gz6g5fasblyjz3j7w7h" + (make-linux-libre "4.9.144" + "1jckikf1j294gr3sf43bfy3h34q3yqbqgqbj9l0px427h3n2vgkk" %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.161" - "1q6bsndpjgw72mybhl5l8vrxs4mimg6821bjgi1pjkxbc7nd921b" + (make-linux-libre "4.4.166" + "1pb6hk141hzf6yf2423h0jfv9bjq09cynsp1xbm12mxayn637xmm" %intel-compatible-systems #:configuration-file kernel-config)) @@ -455,7 +448,7 @@ It has been modified to remove all non-free binary blobs.") (make-linux-libre %linux-libre-version %linux-libre-hash '("armhf-linux") - #:patches %linux-libre-4.18-patches + #:patches %linux-libre-4.19-patches #:defconfig "multi_v7_defconfig" #:extra-version "arm-generic")) @@ -470,7 +463,7 @@ It has been modified to remove all non-free binary blobs.") (make-linux-libre %linux-libre-version %linux-libre-hash '("armhf-linux") - #:patches %linux-libre-4.18-patches + #:patches %linux-libre-4.19-patches #:defconfig "omap2plus_defconfig" #:extra-version "arm-omap2plus")) @@ -944,7 +937,7 @@ Zerofree requires the file system to be unmounted or mounted read-only.") (define-public strace (package (name "strace") - (version "4.24") + (version "4.25") (home-page "https://strace.io") (source (origin (method url-fetch) @@ -952,7 +945,7 @@ Zerofree requires the file system to be unmounted or mounted read-only.") "/strace-" version ".tar.xz")) (sha256 (base32 - "0d061cdzk6a1822ds4wpqxg10ny27mi4i9zjmnsbz8nz3vy5jkhz")))) + "00f7zagfh3np5gwi0z7hi7zjd7s5nixcaq7z78n87dvhakkgi1fn")))) (build-system gnu-build-system) (arguments '(#:phases @@ -1230,7 +1223,7 @@ that the Ethernet protocol is much simpler than the IP protocol.") (define-public iproute (package (name "iproute2") - (version "4.18.0") + (version "4.19.0") (source (origin (method url-fetch) (uri (string-append @@ -1238,7 +1231,7 @@ that the Ethernet protocol is much simpler than the IP protocol.") version ".tar.xz")) (sha256 (base32 - "0ida5njr9nacg6ym3rjvl3cc9czw0hn4akhzbqf8f4zmjl6cgrm9")))) + "114rlb3bvrf7q6yr03mn1rj6gl7mrg0psvm2dx0qb2kxyjhmrv6r")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no test suite @@ -1258,7 +1251,8 @@ that the Ethernet protocol is much simpler than the IP protocol.") (lambda _ ;; Don't attempt to create /var/lib/arpd. (substitute* "Makefile" - (("^.*ARPDDIR.*$") ""))))))) + (("^.*ARPDDIR.*$") "")) + #t))))) (inputs `(("iptables" ,iptables) ("db4" ,bdb))) @@ -1975,20 +1969,15 @@ for systems using the Linux kernel. This includes commands such as (name "inotify-tools") (version "3.20.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/rvoicilas/inotify-tools/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/rvoicilas/inotify-tools.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1b22c8x4pjnz3abx4dikpbj43zprjw79pdkd4xw111dsxlfwqcx4")))) + "14dci1i4mhsd5sa33k8h3ayphk19kizynh5ql9ryibdpmcanfiyq")))) (build-system gnu-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'bootstrap - (lambda _ - (invoke "autoreconf" "-vif")))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -2923,7 +2912,7 @@ MPEG-2 and audio over Linux IEEE 1394.") (define-public mdadm (package (name "mdadm") - (version "4.0") + (version "4.1") (source (origin (method url-fetch) (uri (string-append @@ -2931,7 +2920,7 @@ MPEG-2 and audio over Linux IEEE 1394.") version ".tar.xz")) (sha256 (base32 - "1ad3mma641946wn5lsllwf0lifw9lps34fv1nnkhyfpd9krffshx")))) + "0jjgjgqijpdp7ijh8slzzjjw690kydb1jjadf0x5ilq85628hxmb")))) (build-system gnu-build-system) (inputs `(("udev" ,eudev))) @@ -3199,7 +3188,7 @@ is flexible, efficient and uses a modular implementation.") (define-public fuse-exfat (package (name "fuse-exfat") - (version "1.2.8") + (version "1.3.0") (source (origin (method url-fetch) (uri (string-append @@ -3207,7 +3196,7 @@ is flexible, efficient and uses a modular implementation.") version "/" name "-" version ".tar.gz")) (sha256 (base32 - "1jwnxw0bg9v5ij8xvbg4xpjr50nykq8a1lmc2xkblz204rq7wd8z")))) + "1lz00q8g4590mrdqmf13ba1s9zrqq645ymgm5p9y99ad0qv22r87")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -3409,7 +3398,7 @@ disks and SD cards. This package provides the userland utilities.") (package (inherit f2fs-tools-1.7) (name "f2fs-tools") - (version "1.10.0") + (version "1.11.0") (source (origin (method url-fetch) (uri (string-append @@ -3417,7 +3406,7 @@ disks and SD cards. This package provides the userland utilities.") "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz")) (sha256 (base32 - "05ikaim0qq3dx9x3sp43ralwz43r3b0viv62n99kabp0vf3b0hg8")))) + "1qvr3hcic1vzfmyl7c0gnjxfsw8zjaadm66y337h49chv9yaq5mr")))) (inputs `(("libuuid" ,util-linux))))) @@ -3551,7 +3540,8 @@ from userspace.") (let* ((out (assoc-ref outputs "out")) (sbin (string-append out "/sbin"))) (symlink "mount.ntfs-3g" - (string-append sbin "/mount.ntfs")))))))) + (string-append sbin "/mount.ntfs"))) + #t))))) (home-page "https://www.tuxera.com/community/open-source-ntfs-3g/") (synopsis "Read-write access to NTFS file systems") (description @@ -3708,7 +3698,8 @@ from that to the system kernel's @file{/dev/random} machinery.") '(#:phases (modify-phases %standard-phases (add-after 'unpack 'enter-subdirectory (lambda _ - (chdir "tools/power/cpupower"))) + (chdir "tools/power/cpupower") + #t)) (delete 'configure) (add-before 'build 'fix-makefiles (lambda _ @@ -3716,7 +3707,8 @@ from that to the system kernel's @file{/dev/random} machinery.") (("/usr/") "/") (("/bin/(install|pwd)" _ command) command)) (substitute* "bench/Makefile" - (("\\$\\(CC\\) -o") "$(CC) $(LDFLAGS) -o"))))) + (("\\$\\(CC\\) -o") "$(CC) $(LDFLAGS) -o")) + #t))) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "DESTDIR=" out) (string-append "LDFLAGS=-Wl,-rpath=" out "/lib") @@ -3956,7 +3948,7 @@ are exceeded.") (define-public mtd-utils (package (name "mtd-utils") - (version "1.5.2") + (version "2.0.2") (source (origin (method url-fetch) (uri (string-append @@ -3964,18 +3956,18 @@ are exceeded.") "mtd-utils-" version ".tar.bz2")) (sha256 (base32 - "007lhsd8yb34l899r4m37whhzdw815cz4fnjbpnblfha524p7dax")))) + "1f30jszknc5v6ykmil8ajxgksmcg54q3rsp84jsancp9x0dycggv")))) + (arguments + '(#:configure-flags '("--enable-unit-tests"))) + (native-inputs + `(("cmocka" ,cmocka) + ("pkg-config" ,pkg-config))) (inputs - `(("acl" ,acl) + `(("acl" ,acl) ; for XATTR ("libuuid" ,util-linux) ("lzo" ,lzo) ("zlib" ,zlib))) (build-system gnu-build-system) - (arguments - `(#:test-target "tests" - #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) - #:phases (modify-phases %standard-phases - (delete 'configure)))) (synopsis "MTD Flash Storage Utilities") (description "This package provides utilities for testing, partitioning, etc of flash storage.") @@ -4028,9 +4020,11 @@ developers.") ;; getver.sh uses ‘git --describe’, isn't worth an extra git ;; dependency, and doesn't even work on release(!) tarballs. (add-after 'unpack 'report-correct-version - (lambda _ (substitute* "getver.sh" - (("ver=unknown") - (string-append "ver=" ,version))))) + (lambda _ + (substitute* "getver.sh" + (("ver=unknown") + (string-append "ver=" ,version))) + #t)) (delete 'configure)) ; no configure script #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) @@ -4055,7 +4049,7 @@ under OpenGL graphics workloads.") (define-public efivar (package (name "efivar") - (version "35") + (version "37") (source (origin (method url-fetch) (uri (string-append "https://github.com/rhboot/" name @@ -4063,7 +4057,7 @@ under OpenGL graphics workloads.") "-" version ".tar.bz2")) (sha256 (base32 - "153k2ifyl4giz5fkryxhz8z621diqjy7v25hfga4z94rs32ks0qy")))) + "17vvfivhsrszh7q39b6npjsrhrhsjf1cmmcpp3xrh6wh7ywzwrrw")))) (build-system gnu-build-system) (arguments `(;; Tests require a UEFI system and is not detected in the chroot. @@ -4167,30 +4161,21 @@ monitoring tools for Linux. These include @code{mpstat}, @code{iostat}, (define-public light (package (name "light") - (version "1.1.2") + (version "1.2") (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/haikarainen/light") - (commit version))) + (method url-fetch) + (uri (string-append + "https://github.com/haikarainen/light/archive/v" + version ".tar.gz")) (sha256 (base32 - "0c934gxav9cgdf94li6dp0rfqmpday9d33vdn9xb2mfp4war9n4w")))) + "1gfvsw7gh5pis733l7j54vzp272pvjyzbg8a0pvapfmg0s7mip97")) + (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) - (arguments - '(#:tests? #f ; no tests - #:make-flags (list "CC=gcc" - (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure) ; no configure script - (add-after 'unpack 'patch-makefile - (lambda _ - (substitute* "Makefile" (("chown") "#")) - #t))))) (native-inputs - `(("help2man" ,help2man))) - (home-page "https://haikarainen.github.io/light") + `(("autoconf" ,autoconf) + ("automake" ,automake))) + (home-page "https://haikarainen.github.io/light/") (synopsis "GNU/Linux application to control backlights") (description "Light is a program to send commands to screen backlight controllers @@ -4266,8 +4251,7 @@ Light is the successor of lightscript.") #t)) (replace 'install (lambda _ - (invoke "make" "install-tlp" "install-man") - #t)) + (invoke "make" "install-tlp" "install-man"))) (add-after 'install 'wrap (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((bin (string-append (assoc-ref outputs "out") "/bin")) diff --git a/gnu/packages/lirc.scm b/gnu/packages/lirc.scm index 860822ce49..7ba2d44532 100644 --- a/gnu/packages/lirc.scm +++ b/gnu/packages/lirc.scm @@ -43,7 +43,8 @@ (sha256 (base32 "1whlyifvvc7w04ahq07nnk1h18wc8j7c6wnvlb6mszravxh3qxcb")) - (patches (search-patches "lirc-localstatedir.patch")))) + (patches (search-patches "lirc-localstatedir.patch" + "lirc-reproducible-build.patch")))) (build-system gnu-build-system) (arguments '(#:configure-flags diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 89ccdb720a..d1c0a2ef37 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -9,6 +9,9 @@ ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> +;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -34,6 +37,7 @@ #:use-module (guix hg-download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system ant) #:use-module (guix build-system asdf) #:use-module (guix build-system trivial) #:use-module (gnu packages admin) @@ -66,7 +70,6 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages webkit) #:use-module (ice-9 match) - #:use-module (srfi srfi-1) #:use-module (srfi srfi-19)) (define (asdf-substitutions lisp) @@ -81,8 +84,8 @@ ,lisp)))) (define-public gcl - (let ((commit "5956140b1083e2302a59d7ce2054b0b7c2cbb417") - (revision "1")) ;Guix package revision + (let ((commit "d3335e2b3deb63f930eb0328e9b05377744c9512") + (revision "2")) ;Guix package revision (package (name "gcl") (version (string-append "2.6.12-" revision "." @@ -95,7 +98,7 @@ (commit commit))) (file-name (string-append "gcl-" version "-checkout")) (sha256 - (base32 "0mwclf2879mh3d9xqkqhghf58lwy7srsnsq9x0f1cc6j302sy4hb")))) + (base32 "05v86lhvsby05nzvcd3c4k0wljvgdgd0i6arzd2fx1yd67dl6fgj")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; The build system seems not to be thread safe. @@ -167,8 +170,7 @@ (native-inputs `(("gcc" ,gcc-4.9) ("m4" ,m4) - ("texinfo" ,texinfo) - ("texlive" ,texlive))) + ("texinfo" ,texinfo))) (home-page "https://www.gnu.org/software/gcl/") (synopsis "A Common Lisp implementation") (description "GCL is an implementation of the Common Lisp language. It @@ -315,14 +317,14 @@ an interpreter, a compiler, a debugger, and much more.") (define-public sbcl (package (name "sbcl") - (version "1.4.4") + (version "1.4.13") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-" version "-source.tar.bz2")) (sha256 - (base32 "1k6v5b8qv7vyxvh8asx6phf2hbapx5pp5p5j47hgnq123fwnh4fa")) + (base32 "120rnnz8367lk7ljqlf8xidm4b0d738xqsib4kq0q5ms5r7fzgvm")) (modules '((guix build utils))) (snippet ;; Add sbcl-bundle-systems to 'default-system-source-registry'. @@ -332,16 +334,29 @@ an interpreter, a compiler, a debugger, and much more.") #t)))) (build-system gnu-build-system) (outputs '("out" "doc")) - ;; Bootstrap with CLISP. (native-inputs - `(("clisp" ,clisp) + ;; From INSTALL: + ;; Supported build hosts are: + ;; SBCL + ;; CMUCL + ;; CCL (formerly known as OpenMCL) + ;; ABCL (recent versions only) + ;; CLISP (only some versions: 2.44.1 is OK, 2.47 is not) + ;; XCL + ;; CCL seems ideal then, but it unfortunately only builds reliably + ;; on some architectures. + `(,@(match (%current-system) + ((or "x86_64-linux" "i686-linux") + `(("ccl" ,ccl))) + (_ + `(("clisp" ,clisp)))) ("which" ,which) ("inetutils" ,inetutils) ;for hostname(1) ("ed" ,ed) - ("texlive" ,texlive) + ("texlive" ,(texlive-union (list texlive-tex-texinfo))) ("texinfo" ,texinfo))) (arguments - '(#:modules ((guix build gnu-build-system) + `(#:modules ((guix build gnu-build-system) (guix build utils) (srfi srfi-1)) #:phases @@ -393,20 +408,28 @@ an interpreter, a compiler, a debugger, and much more.") (string-append "#+nil ;disabled by Guix\n" all)) (("\\(deftest grent\\.[12]" all) (string-append "#+nil ;disabled by Guix\n" all)))))) + ;; FIXME: the texlive-union insists on regenerating fonts. It stores + ;; them in HOME, so it needs to be writeable. + (add-before 'build 'set-HOME + (lambda _ (setenv "HOME" "/tmp") #t)) (replace 'build (lambda* (#:key outputs #:allow-other-keys) (setenv "CC" "gcc") - (zero? (system* "sh" "make.sh" "clisp" - (string-append "--prefix=" - (assoc-ref outputs "out")))))) + (invoke "sh" "make.sh" ,@(match (%current-system) + ((or "x86_64-linux" "i686-linux") + `("ccl")) + (_ + `("clisp"))) + (string-append "--prefix=" + (assoc-ref outputs "out"))))) (replace 'install (lambda _ - (zero? (system* "sh" "install.sh")))) + (invoke "sh" "install.sh"))) (add-after 'build 'build-doc (lambda _ (with-directory-excursion "doc/manual" - (and (zero? (system* "make" "info")) - (zero? (system* "make" "dist")))))) + (and (invoke "make" "info") + (invoke "make" "dist"))))) (add-after 'install 'install-doc (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -530,8 +553,13 @@ statistical profiler, a code coverage tool, and many other extensions.") (install-file kernel libdir) (install-file heap libdir) - (let ((dirs '("lib" "library" "examples" "contrib" - "tools" "objc-bridge"))) + (let ((dirs '("lib" "library" "examples" "tools" "objc-bridge" + ,@(match (%current-system) + ("x86_64-linux" + '("x86-headers64")) + ("i686-linux" + '("x86-headers")) + (_ '()))))) (for-each copy-recursively dirs (map (cut string-append libdir <>) dirs))) @@ -542,13 +570,12 @@ statistical profiler, a code coverage tool, and many other extensions.") (display (string-append "#!" bash "/bin/sh\n" - "CCL_DEFAULT_DIRECTORY=" libdir "\n" - "export CCL_DEFAULT_DIRECTORY\n" - "exec " libdir kernel "\n")))) + "export CCL_DEFAULT_DIRECTORY=" libdir "\n" + "exec -a \"$0\" " libdir kernel " \"$@\"\n")))) (chmod wrapper #o755)) #t))))) (supported-systems '("i686-linux" "x86_64-linux" "armhf-linux")) - (home-page "http://ccl.clozure.com/") + (home-page "https://ccl.clozure.com/") (synopsis "Common Lisp implementation") (description "Clozure CL (often called CCL for short) is a Common Lisp implementation featuring fast compilation speed, native threads, a precise, @@ -559,56 +586,6 @@ interface.") (license (list license:lgpl2.1 license:clarified-artistic)))) ;TRIVIAL-LDAP package -(define-public femtolisp - (let ((commit "68c5b1225572ecf2c52baf62f928063e5a30511b") - (revision "1")) - (package - (name "femtolisp") - (version (string-append "0.0.0-" revision "." (string-take commit 7))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/JeffBezanson/femtolisp.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja")))) - ;; See "utils.h" for supported systems. Upstream bug: - ;; https://github.com/JeffBezanson/femtolisp/issues/25 - (supported-systems - (fold delete %supported-systems - '("armhf-linux" "mips64el-linux" "aarch64-linux"))) - (build-system gnu-build-system) - (arguments - `(#:make-flags '("CC=gcc" "release") - #:test-target "test" - #:phases - (modify-phases %standard-phases - (delete 'configure) ; No configure script - (replace 'install ; Makefile has no 'install phase - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (install-file "flisp" bin) - #t))) - ;; The flisp binary is now available, run bootstrap to - ;; generate flisp.boot and afterwards runs make test. - (add-after 'install 'bootstrap-gen-and-test - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) - (and - (zero? (system* "./bootstrap.sh")) - (install-file "flisp.boot" bin)))))))) - (synopsis "Scheme-like lisp implementation") - (description - "@code{femtolisp} is a scheme-like lisp implementation with a -simple, elegant Scheme dialect. It is a lisp-1 with lexical scope. -The core is 12 builtin special forms and 33 builtin functions.") - (home-page "https://github.com/JeffBezanson/femtolisp") - (license license:bsd-3)))) - (define-public lush2 (package (name "lush2") @@ -952,9 +929,9 @@ from other CLXes around the net.") `(("sbcl-cl-ppcre" ,sbcl-cl-ppcre) ("sbcl-cl-unicode" ,sbcl-cl-unicode))))) -(define-public sbcl-stumpwm +(define-public stumpwm (package - (name "sbcl-stumpwm") + (name "stumpwm") (version "18.05") (source (origin (method url-fetch) @@ -970,7 +947,8 @@ from other CLXes around the net.") ("alexandria" ,sbcl-alexandria))) (outputs '("out" "lib")) (arguments - '(#:phases + '(#:asd-system-name "stumpwm" + #:phases (modify-phases %standard-phases (add-after 'create-symlinks 'build-program (lambda* (#:key outputs #:allow-other-keys) @@ -1003,17 +981,15 @@ for input. These design decisions reflect the growing popularity of productive, customizable lisp based systems.") (home-page "https://github.com/stumpwm/stumpwm") (license license:gpl2+) - (properties `((ecl-variant . ,(delay ecl-stumpwm)))))) + (properties `((cl-source-variant . ,(delay cl-stumpwm)))))) -(define-public cl-stumpwm - (sbcl-package->cl-source-package sbcl-stumpwm)) +(define-public sbcl-stumpwm + (deprecated-package "sbcl-stumpwm" stumpwm)) -(define-public ecl-stumpwm - (let ((base (sbcl-package->ecl-package sbcl-stumpwm))) - (package - (inherit base) - (outputs '("out")) - (arguments '())))) +(define-public cl-stumpwm + (package + (inherit (sbcl-package->cl-source-package stumpwm)) + (name "cl-stumpwm"))) ;; The slynk that users expect to install includes all of slynk's contrib ;; modules. Therefore, we build the base module and all contribs first; then @@ -1292,16 +1268,16 @@ multiple inspectors with independent history.") paths) #t))))))) -(define-public sbcl-stumpwm+slynk +(define-public stumpwm+slynk (package - (inherit sbcl-stumpwm) - (name "sbcl-stumpwm-with-slynk") + (inherit stumpwm) + (name "stumpwm-with-slynk") (outputs '("out")) (inputs - `(("stumpwm" ,sbcl-stumpwm "lib") + `(("stumpwm" ,stumpwm "lib") ("slynk" ,sbcl-slynk))) (arguments - (substitute-keyword-arguments (package-arguments sbcl-stumpwm) + (substitute-keyword-arguments (package-arguments stumpwm) ((#:phases phases) `(modify-phases ,phases (replace 'build-program @@ -1325,6 +1301,9 @@ multiple inspectors with independent history.") (delete 'cleanup) (delete 'create-symlinks))))))) +(define-public sbcl-stumpwm+slynk + (deprecated-package "sbcl-stumpwm-with-slynk" stumpwm+slynk)) + (define-public sbcl-parse-js (let ((commit "fbadc6029bec7039602abfc06c73bb52970998f6") (revision "1")) @@ -2382,19 +2361,17 @@ new fiends in addition to old friends like @command{aif} and (sha256 (base32 "127v5avpz1i4m0lkaxqrq8hrl69rdazqaxf6s8awf0nd7wj2g4dp")) - (file-name (git-file-name "lift" version)))) + (file-name (git-file-name "lift" version)) + (modules '((guix build utils))) + (snippet + ;; Don't keep the bundled website + `(begin + (delete-file-recursively "website") + #t)))) (build-system asdf-build-system/sbcl) (arguments ;; The tests require a debugger, but we run with the debugger disabled. - '(#:tests? #f - #:phases - (modify-phases %standard-phases - ;; Do this to ensure the 'reset-gzip-timestamps phase works. - (add-after 'unpack 'make-gzips-writeable - (lambda _ - (for-each (lambda (file) - (chmod file #o755)) - (find-files "." "\\.gz$"))))))) + '(#:tests? #f)) (synopsis "LIsp Framework for Testing") (description "The LIsp Framework for Testing (LIFT) is a unit and system test tool for LISP. @@ -2403,7 +2380,7 @@ testcases are organized into hierarchical testsuites each of which can have its own fixture. When run, a testcase can succeed, fail, or error. LIFT supports randomized testing, benchmarking, profiling, and reporting.") (home-page "https://github.com/gwkkwg/lift") - (license license:x11-style)))) + (license license:expat)))) (define-public cl-lift (sbcl-package->cl-source-package sbcl-lift)) @@ -2663,7 +2640,6 @@ pattern-matching-like, but a char-by-char procedural parser.") "This package exports the following function to parse floating-point values from a string in Common Lisp.") (home-page "https://github.com/soemraws/parse-float") - ;; TODO: Missing license? (license license:public-domain)))) (define-public cl-parse-float @@ -3454,7 +3430,7 @@ is a library for creating graphical user interfaces.") (origin (method git-fetch) (uri (git-reference - (url "https://github.com/atlas-engineer/cl-webkit") + (url "https://github.com/jmercouris/cl-webkit") (commit commit))) (file-name (git-file-name "cl-webkit" version)) (sha256 @@ -3476,7 +3452,7 @@ is a library for creating graphical user interfaces.") (("libwebkit2gtk" all) (string-append (assoc-ref inputs "webkitgtk") "/lib/" all)))))))) - (home-page "https://github.com/atlas-engineer/cl-webkit") + (home-page "https://github.com/jmercouris/cl-webkit") (synopsis "Binding to WebKitGTK+ for Common Lisp") (description "@command{cl-webkit} is a binding to WebKitGTK+ for Common Lisp, @@ -3529,3 +3505,242 @@ Lisp, featuring: (define-public ecl-lparallel (sbcl-package->ecl-package sbcl-lparallel)) + +(define-public sbcl-cl-markup + (let ((commit "e0eb7debf4bdff98d1f49d0f811321a6a637b390")) + (package + (name "sbcl-cl-markup") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/arielnetworks/cl-markup/") + (commit commit))) + (file-name (git-file-name "cl-markup" version)) + (sha256 + (base32 + "10l6k45971dl13fkdmva7zc6i453lmq9j4xax2ci6pjzlc6xjhp7")))) + (build-system asdf-build-system/sbcl) + (home-page "https://github.com/arielnetworks/cl-markup/") + (synopsis "Markup generation library for Common Lisp") + (description + "A modern markup generation library for Common Lisp that features: + +@itemize +@item Fast (even faster through compiling the code) +@item Safety +@item Support for multiple document types (markup, xml, html, html5, xhtml) +@item Output with doctype +@item Direct output to stream +@end itemize\n") + (license license:lgpl3+)))) + +(define-public cl-markup + (sbcl-package->cl-source-package sbcl-cl-markup)) + +(define-public ecl-cl-markup + (sbcl-package->ecl-package sbcl-cl-markup)) + +(define-public sbcl-cl-css + (let ((commit "8fe654c8f0cf95b300718101cce4feb517f78e2f")) + (package + (name "sbcl-cl-css") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/inaimathi/cl-css/") + (commit commit))) + (file-name (git-file-name "cl-css" version)) + (sha256 + (base32 + "1lc42zi2sw11fl2589sc19nr5sd2p0wy7wgvgwaggxa5f3ajhsmd")))) + (build-system asdf-build-system/sbcl) + (home-page "https://github.com/inaimathi/cl-css/") + (synopsis "Non-validating, inline CSS generator for Common Lisp") + (description + "This is a dead-simple, non validating, inline CSS generator for Common +Lisp. Its goals are axiomatic syntax, simple implementation to support +portability, and boilerplate reduction in CSS.") + (license license:expat)))) + +(define-public cl-css + (sbcl-package->cl-source-package sbcl-cl-css)) + +(define-public ecl-cl-markup + (sbcl-package->ecl-package sbcl-cl-css)) + +(define-public sbcl-portable-threads + (let ((commit "c0e61a1faeb0583c80fd3f20b16cc4c555226920")) + (package + (name "sbcl-portable-threads") + (version (git-version "2.3" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/binghe/portable-threads/") + (commit commit))) + (file-name (git-file-name "portable-threads" version)) + (sha256 + (base32 + "03fmxyarc0xf4kavwkfa0a2spkyfrz6hbgbi9y4q7ny5aykdyfaq")))) + (build-system asdf-build-system/sbcl) + (arguments + `(;; Tests seem broken. + #:tests? #f)) + (home-page "https://github.com/binghe/portable-threads") + (synopsis "Portable threads (and scheduled and periodic functions) API for Common Lisp") + (description + "Portable Threads (and Scheduled and Periodic Functions) API for Common +Lisp (from GBBopen project).") + (license license:asl2.0)))) + +(define-public cl-portable-threads + (sbcl-package->cl-source-package sbcl-portable-threads)) + +(define-public ecl-portable-threada + (sbcl-package->ecl-package sbcl-portable-threads)) + +(define-public sbcl-usocket-boot0 + ;; usocket's test rely on usocket-server which depends on usocket itself. + ;; We break this cyclic dependency with -boot0 that packages usocket. + (let ((commit "86e7efbfe50101931edf4b67cdcfa7e221ecfde9")) + (package + (name "sbcl-usocket-boot0") + (version (git-version "0.7.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/usocket/usocket/") + (commit commit))) + (file-name (git-file-name "usocket" version)) + (sha256 + (base32 + "1lk6ipakrib7kdgzw44hrgmls9akp5pz4h35yynw0k5zwmmq6374")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("split-sequence" ,sbcl-split-sequence))) + (arguments + `(#:tests? #f + #:asd-system-name "usocket")) + (home-page "https://common-lisp.net/project/usocket/") + (synopsis "Universal socket library for Common Lisp (server side)") + (description + "This library strives to provide a portable TCP/IP and UDP/IP socket +interface for as many Common Lisp implementations as possible, while keeping +the abstraction and portability layer as thin as possible.") + (license license:expat)))) + +(define-public sbcl-usocket-server + (package + (inherit sbcl-usocket-boot0) + (name "sbcl-usocket-server") + (inputs + `(("usocket" ,sbcl-usocket-boot0) + ("portable-threads" ,sbcl-portable-threads))) + (arguments + '(#:asd-system-name "usocket-server")) + (synopsis "Universal socket library for Common Lisp (server side)"))) + +(define-public cl-usocket-server + (sbcl-package->cl-source-package sbcl-usocket-server)) + +(define-public ecl-socket-server + (sbcl-package->ecl-package sbcl-usocket-server)) + +(define-public sbcl-usocket + (package + (inherit sbcl-usocket-boot0) + (name "sbcl-usocket") + (arguments + ;; FIXME: Tests need network access? + `(#:tests? #f)) + (native-inputs + ;; Testing only. + `(("usocket-server" ,sbcl-usocket-server) + ("rt" ,sbcl-rt))))) + +(define-public cl-usocket + (sbcl-package->cl-source-package sbcl-usocket)) + +(define-public ecl-socket + (sbcl-package->ecl-package sbcl-usocket)) + +(define-public sbcl-s-xml + (package + (name "sbcl-s-xml") + (version "3") + (source + (origin + (method url-fetch) + (uri "https://common-lisp.net/project/s-xml/s-xml.tgz") + (sha256 + (base32 + "061qcr0dzshsa38s5ma4ay924cwak2nq9gy59dw6v9p0qb58nzjf")))) + (build-system asdf-build-system/sbcl) + (home-page "https://common-lisp.net/project/s-xml/") + (synopsis "Simple XML parser implemented in Common Lisp") + (description + "S-XML is a simple XML parser implemented in Common Lisp. This XML +parser implementation has the following features: + +@itemize +@item It works (handling many common XML usages). +@item It is very small (the core is about 700 lines of code, including +comments and whitespace). +@item It has a core API that is simple, efficient and pure functional, much +like that from SSAX (see also http://ssax.sourceforge.net). +@item It supports different DOM models: an XSML-based one, an LXML-based one +and a classic xml-element struct based one. +@item It is reasonably time and space efficient (internally avoiding garbage +generatation as much as possible). +@item It does support CDATA. +@item It should support the same character sets as your Common Lisp +implementation. +@item It does support XML name spaces. +@end itemize + +This XML parser implementation has the following limitations: + +@itemize +@item It does not support any special tags (like processing instructions). +@item It is not validating, even skips DTD's all together. +@end itemize\n") + (license license:lgpl3+))) + +(define-public cl-s-xml + (sbcl-package->cl-source-package sbcl-s-xml)) + +(define-public ecl-s-xml + (sbcl-package->ecl-package sbcl-s-xml)) + +(define-public sbcl-s-xml-rpc + (package + (name "sbcl-s-xml-rpc") + (version "7") + (source + (origin + (method url-fetch) + (uri "https://common-lisp.net/project/s-xml-rpc/s-xml-rpc.tgz") + (sha256 + (base32 + "02z7k163d51v0pzk8mn1xb6h5s6x64gjqkslhwm3a5x26k2gfs11")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("s-xml" ,sbcl-s-xml))) + (home-page "https://common-lisp.net/project/s-xml-rpc/") + (synopsis "Implementation of XML-RPC in Common Lisp for both client and server") + (description + "S-XML-RPC is an implementation of XML-RPC in Common Lisp for both +client and server.") + (license license:lgpl3+))) + +(define-public cl-s-xml-rpc + (sbcl-package->cl-source-package sbcl-s-xml-rpc)) + +(define-public ecl-s-xml-rpc + (sbcl-package->ecl-package sbcl-s-xml-rpc)) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 54a17be8f4..8a9d1d312b 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2014, 2016, 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Dennis Mungai <dmngaie@gmail.com> @@ -8,6 +8,8 @@ ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,6 +33,7 @@ #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system emacs) #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages gcc) @@ -66,6 +69,7 @@ "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" "-DBUILD_SHARED_LIBS:BOOL=TRUE" "-DLLVM_ENABLE_FFI:BOOL=TRUE" + "-DLLVM_REQUIRES_RTTI=1" ; For some third-party utilities "-DLLVM_INSTALL_UTILS=ON") ; Needed for rustc. ;; Don't use '-g' during the build, to save space. @@ -91,16 +95,25 @@ languages is in development. The compiler infrastructure includes mirror sets of programming tools as well as libraries with equivalent functionality.") (license license:ncsa))) -(define-public llvm-with-rtti - (package (inherit llvm) - (name "llvm-with-rtti") +;; FIXME: This package is here to prevent many rebuilds on x86_64 and i686 +;; from commit fc9dbf41311d99d0fd8befc789ea7c0e35911890. Update users of +;; this in the next rebuild cycle. +(define-public llvm-without-rtti + (package + (inherit llvm) (arguments - (substitute-keyword-arguments (package-arguments llvm) - ((#:configure-flags flags) - `(append '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" - "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" - "-DLLVM_REQUIRES_RTTI=1") - ,flags)))))) + `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" + "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" + "-DBUILD_SHARED_LIBS:BOOL=TRUE" + "-DLLVM_ENABLE_FFI:BOOL=TRUE" + "-DLLVM_INSTALL_UTILS=ON") + #:build-type "Release" + #:phases (modify-phases %standard-phases + (add-before 'build 'shared-lib-workaround + (lambda _ + (setenv "LD_LIBRARY_PATH" + (string-append (getcwd) "/lib")) + #t))))))) (define* (clang-runtime-from-llvm llvm hash #:optional (patches '())) @@ -223,7 +236,30 @@ compiler. In LLVM this library is called \"compiler-rt\".") (substitute* "lib/Driver/ToolChains.cpp" (("@GLIBC_LIBDIR@") (string-append libc "/lib"))))) - #t)))))) + #t))) + (add-after 'install 'install-clean-up-/share/clang + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (compl-dir (string-append + out "/etc/bash_completion.d"))) + (with-directory-excursion (string-append out + "/share/clang") + (for-each + (lambda (file) + (when (file-exists? file) + (delete-file file))) + ;; Delete extensions for proprietary text editors. + '("clang-format-bbedit.applescript" + "clang-format-sublime.py" + ;; Delete Emacs extensions: see their respective Emacs + ;; Guix package instead. + "clang-rename.el" "clang-format.el")) + ;; Install bash completion. + (when (file-exists? "bash-autocomplete.sh") + (mkdir-p compl-dir) + (rename-file "bash-autocomplete.sh" + (string-append compl-dir "/clang"))))) + #t))))) ;; Clang supports the same environment variables as GCC. (native-search-paths @@ -427,3 +463,49 @@ code analysis tools.") (description "This package provides a Python binding to LLVM for use in Numba.") (license license:bsd-3))) + +(define-public emacs-clang-format + (package + (inherit clang) + (name "emacs-clang-format") + (build-system emacs-build-system) + (inputs + `(("clang" ,clang))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((clang (assoc-ref inputs "clang"))) + (copy-file "tools/clang-format/clang-format.el" "clang-format.el") + (emacs-substitute-variables "clang-format.el" + ("clang-format-executable" + (string-append clang "/bin/clang-format")))) + #t))))) + (synopsis "Format code using clang-format") + (description "This package allows to filter code through @code{clang-format} +to fix its formatting. @code{clang-format} is a tool that formats +C/C++/Obj-C code according to a set of style options, see +@url{http://clang.llvm.org/docs/ClangFormatStyleOptions.html}."))) + +(define-public emacs-clang-rename + (package + (inherit clang) + (name "emacs-clang-rename") + (build-system emacs-build-system) + (inputs + `(("clang" ,clang))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((clang (assoc-ref inputs "clang"))) + (copy-file "tools/clang-rename/clang-rename.el" "clang-rename.el") + (emacs-substitute-variables "clang-rename.el" + ("clang-rename-binary" + (string-append clang "/bin/clang-rename")))) + #t))))) + (synopsis "Rename every occurrence of a symbol using clang-rename") + (description "This package renames every occurrence of a symbol at point +using @code{clang-rename}."))) diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index be77ac4a63..2dc1452ccc 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -408,6 +408,9 @@ Grammars (PEGs).") (define-public lua-lpeg (make-lua-lpeg "lua-lpeg" lua)) +(define-public lua5.1-lpeg + (make-lua-lpeg "lua5.1-lpeg" lua-5.1)) + (define-public lua5.2-lpeg (make-lua-lpeg "lua5.2-lpeg" lua-5.2)) diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm index c45beb8bbb..1f32ec3bb1 100644 --- a/gnu/packages/lxde.scm +++ b/gnu/packages/lxde.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ison111 <ison111@protonmail.com> ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -419,10 +420,10 @@ in LXDE.") (modify-phases %standard-phases (add-after 'unpack 'rm-stamp (lambda _ - (for-each delete-file (find-files "." "\\.stamp$")))) - (add-after 'rm-stamp 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + (for-each delete-file (find-files "." "\\.stamp$")) + ;; Force regeneration of configure script. + (delete-file "configure") + #t))))) (inputs `(("gtk+-2" ,gtk+-2) ("polkit" ,polkit))) diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm index c84d26d4cb..4cb24ebf64 100644 --- a/gnu/packages/lxqt.scm +++ b/gnu/packages/lxqt.scm @@ -5,6 +5,8 @@ ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,143 +25,1199 @@ (define-module (gnu packages lxqt) #:use-module (guix download) - #:use-module ((guix licenses) #:select (lgpl2.1+)) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) + #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages admin) + #:use-module (gnu packages compression) + #:use-module (gnu packages documentation) + #:use-module (gnu packages compton) + #:use-module (gnu packages fonts) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gtk) + #:use-module (gnu packages image) + #:use-module (gnu packages kde) #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages linux) + #:use-module (gnu packages perl) + #:use-module (gnu packages lxde) + #:use-module (gnu packages maths) + #:use-module (gnu packages openbox) + #:use-module (gnu packages pcre) + #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages qt)) + #:use-module (gnu packages polkit) + #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages qt) + #:use-module (gnu packages textutils) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) + + +;; Third party libraries + +(define-public libdbusmenu-qt + (package + (name "libdbusmenu-qt") + (version "0.9.3+16.04.20160218-0ubuntu1") + (source + (origin + (method git-fetch) + ;; Download from github rather than launchpad because launchpad trunk + ;; tarball hash is not deterministic. + (uri (git-reference + (url "https://github.com/unity8-team/libdbusmenu-qt.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0b7ii1cvmpcyl79gqal9c3va9m55h055s4hx7fpxkhhqs9463ggg")))) + (build-system cmake-build-system) + (arguments + ;; XXX: Tests require a dbus session and some icons. + '(#:tests? #f)) + (native-inputs + `(("doxygen" ,doxygen))) + (inputs + `(("qtbase" ,qtbase))) + (home-page "https://launchpad.net/libdbusmenu-qt") + (synopsis "Qt implementation of the DBusMenu spec") + (description "This library provides a Qt implementation of the DBusMenu +protocol. The DBusMenu protocol makes it possible for applications to export +and import their menus over DBus.") + (license license:lgpl2.1+))) + +(define-public libstatgrab + (package + (name "libstatgrab") + (version "0.91") + (source + (origin + (method url-fetch) + (uri (string-append "https://ftp.i-scream.org/pub/i-scream/libstatgrab/" + name "-" version ".tar.gz")) + (sha256 + (base32 "1azinx2yzs442ycwq6p15skl3mscmqj7fd5hq7fckhjp92735s83")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags '("--enable-tests"))) + (native-inputs + ;; For testing. + `(("perl" ,perl))) + (home-page "https://www.i-scream.org/libstatgrab/") + (synopsis "Provides access to statistics about the system") + (description "libstatgrab is a library that provides cross platform access +to statistics about the system on which it's run.") + ;; Libraries are under LGPL2.1+, and programs under GPLv2+. + (license license:gpl2+))) + + +;; Base + +(define-public lxqt-build-tools + (package + (name "lxqt-build-tools") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "13b5x26p6ycnwzlgg1cgvlc88wjrjmlb3snrrmzh0xgh9h6hhvd6")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; no tests + #:configure-flags + ;; 'startlxqt' will add LXQT_DATA_DIR to XDG_DATA_DIRS, + ;; LXQT_ETC_XDG_DIR to XDG_CONFIG_DIRS, and 'lxqt-about' will report + ;; LXQT_ETC_XDG_DIR in its "Technical Info". + '("-DLXQT_DATA_DIR=/run/current-system/profile/share" + "-DLXQT_ETC_XDG_DIR=/run/current-system/profile/etc/xdg"))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("glib" ,glib))) + (inputs + `(("qtbase" ,qtbase))) + (synopsis "LXQt Build tools") + (description + "Lxqt-build-tools is providing several tools needed to build LXQt +itself as well as other components maintained by the LXQt project.") + (home-page "https://lxqt.org") + (license license:lgpl2.1+))) (define-public libqtxdg (package (name "libqtxdg") - (version "1.2.0") + (version "3.2.0") (source (origin (method url-fetch) - (uri - (string-append "https://github.com/lxde/libqtxdg/releases/" - "download/" version "/" name "-" version ".tar.xz")) + (uri (string-append + "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) (sha256 - (base32 - "1ncqs0lcll5nx69hxfg33m3jfkryjqrjhr2kdci0b8pyaqdv1jc8")))) + (base32 "0lq548pa69hfvnbj2ypba5ygm8n6v6g7bqqm8p5g538l1l3394cl")))) (build-system cmake-build-system) (arguments - `(#:tests? #f ; test fails with message "Exception" - #:configure-flags '("-DBUILD_TESTS=ON"))) - (native-inputs - `(("pkg-config" ,pkg-config))) + '(#:configure-flags + '("-DBUILD_TESTS=ON" + "-DQTXDGX_ICONENGINEPLUGIN_INSTALL_PATH=lib/qt5/plugins/iconengines") + #:phases + (modify-phases %standard-phases + (add-before 'check 'pre-check + (lambda _ + ;; Run the tests offscreen. + (setenv "QT_QPA_PLATFORM" "offscreen") + #t))))) (propagated-inputs - `(("qtbase" ,qtbase))) ; according to Qt5Xdg.pc - (home-page "https://github.com/lxde/libqtxdg") + ;; required by Qt5XdgIconLoader.pc + `(("qtbase" ,qtbase) + ("qtsvg" ,qtsvg))) + (home-page "https://github.com/lxqt/libqtxdg") (synopsis "Qt implementation of freedesktop.org xdg specifications") (description "Libqtxdg implements the freedesktop.org xdg specifications in Qt.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) (define-public liblxqt (package (name "liblxqt") - (version "0.9.0") + (version "0.13.0") (source (origin (method url-fetch) - (uri - (string-append "https://github.com/lxde/" name - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append + "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) (sha256 - (base32 - "0mbl3qc0yfgfsndqrw8vg8k5irsy0pg2wrad8nwv0aphphd4n7rg")) - (patches (search-patches "liblxqt-include.patch")))) + (base32 "0fba0nq5b9fvvmklcikcd4nwhzlp5d6k1q1f80r34kncdzfvj7dl")))) (build-system cmake-build-system) (arguments - `(#:tests? #f)) - (native-inputs `(("pkg-config" ,pkg-config))) + `(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* "CMakeLists.txt" + (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}") + "DESTINATION \"share/polkit-1/actions")) + #t))))) (inputs `(("kwindowsystem" ,kwindowsystem) ("libqtxdg" ,libqtxdg) - ("qtbase" ,qtbase) - ("qttools" ,qttools) + ("libxscrnsaver" ,libxscrnsaver) + ("polkit-qt" ,polkit-qt) + ("qtsvg" ,qtsvg) ("qtx11extras" ,qtx11extras))) - (home-page "http://lxqt.org/") + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (home-page "https://lxqt.org/") (synopsis "Core utility library for all LXQt components") (description "liblxqt provides the basic libraries shared by the components of the LXQt desktop environment.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) -(define-public lxqt-session +(define-public libsysstat (package - (name "lxqt-session") - (version "0.9.0") + (name "libsysstat") + (version "0.4.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0ngz8v3bixsdg96d5ipcyxd6nsrg52974xdxy9rnimahlv1yaxn3")))) + (build-system cmake-build-system) + (arguments '(#:tests? #f)) ; no tests + (inputs + `(("qtbase" ,qtbase))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools))) + (home-page "https://lxqt.org/") + (synopsis "Library used to query system info and statistics") + (description "libsysstat is a library to query system information like CPU +and memory usage or network traffic.") + (license license:lgpl2.1+))) + + +;; Core + +(define-public lxqt-about + (package + (name "lxqt-about") + (version "0.13.0") (source (origin (method url-fetch) - (uri - (string-append "https://github.com/lxde/" name - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) (sha256 - (base32 - "1sdwcfrfqkg7ibrsncs1skdap9n8wm4rg6n9d0fgdz2q4d45h75a")))) + (base32 "08imj7p77ifzfxnn8c482mhrvfx9gi0rb43ab5rw1rkmfvax2n5w")))) (build-system cmake-build-system) - (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("kwindowsystem" ,kwindowsystem) ("liblxqt" ,liblxqt) ("libqtxdg" ,libqtxdg) ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org") + (synopsis "Provides information about LXQt and the system") + (description "lxqt-about is a dialogue window providing information about +LXQt and the system it's running on.") + (license license:lgpl2.1+))) + +(define-public lxqt-admin + (package + (name "lxqt-admin") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0qvpv668ja83ydbdrlal1596xhag3xlkbd6qlh9xwdpb7nysvns1")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("polkit-qt" ,polkit-qt) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* "lxqt-admin-user/CMakeLists.txt" + (("DESTINATION \"\\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}") + "DESTINATION \"share/polkit-1/actions")) + #t))))) + (home-page "https://lxqt.org") + (synopsis "LXQt system administration tool") + (description "lxqt-admin is providing two GUI tools to adjust settings of +the operating system LXQt is running on.") + (license license:lgpl2.1+))) + +(define-public lxqt-config + (package + (name "lxqt-config") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0rizhl2v41kpgp57a61r6nmwcdw8nh9hprrrf33nfrdw8hpwxb95")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("libkscreen" ,libkscreen) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("libxcursor" ,libxcursor) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("solid" ,solid) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("src/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org") + (synopsis "Tools to configure LXQt and the underlying operating system") + (description "lxqt-config is providing several tools involved in the +configuration of both LXQt and the underlying operating system.") + (license license:lgpl2.1+))) + +(define-public lxqt-globalkeys + (package + (name "lxqt-globalkeys") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1gyvcjbhi7zpvgz1sf773dv9gc35hx5fz023njp9r4vl0dpcavgd")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) ("qttools" ,qttools) + ("lxqt-build-tools" ,lxqt-build-tools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt" + "xdg/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "Daemon used to register global keyboard shortcuts") + (description "lxqt-globalkeys is providing tools to set global keyboard +shortcuts in LXQt sessions, that is shortcuts which apply to the LXQt session +as a whole and are not limited to distinct applications.") + (license license:lgpl2.1+))) + +(define-public lxqt-notificationd + (package + (name "lxqt-notificationd") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1l0hdbvghyhqgvy4pih7rvz26bc6yc8a3l1bdj11hnkw62h1i7d6")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no test target + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "The LXQt notification daemon") + (description "lxqt-notificationd is LXQt's implementation of a daemon +according to the Desktop Notifications Specification.") + (license license:lgpl2.1+))) + +(define-public lxqt-openssh-askpass + (package + (name "lxqt-openssh-askpass") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0l2272gya8jgv71bvg2hz37lnhiznv4ng3j0p6j79f99hwb5ygpk")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "GUI to query passwords on behalf of SSH agents") + (description "lxqt-openssh-askpass is a GUI to query credentials on behalf +of other programs.") + (license license:lgpl2.1+))) + +(define-public lxqt-panel + (package + (name "lxqt-panel") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1qraigzq7nc5a2q6f5ybxwx07gxffa3m3bg7fiv6ppwss51xqfd1")))) + (build-system cmake-build-system) + (inputs + `(("alsa-lib" ,alsa-lib) + ("kguiaddons" ,kguiaddons) + ("kwindowsystem" ,kwindowsystem) + ("libdbusmenu-qt" ,libdbusmenu-qt) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("libstatgrab" ,libstatgrab) + ("libsysstat", libsysstat) + ("libxcomposite" ,libxcomposite) + ("libxdamage" ,libxdamage) + ("libxkbcommon" ,libxkbcommon) + ("libxrender" ,libxrender) + ("lm-sensors" ,lm-sensors "lib") + ("lxqt-globalkeys" ,lxqt-globalkeys) + ("pcre" ,pcre) + ("pulseaudio" ,pulseaudio) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("solid" ,solid) + ("xcb-util" ,xcb-util))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt" + "menu/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "The LXQt desktop panel") + (description "lxqt-panel represents the taskbar of LXQt.") + (license license:lgpl2.1+))) + +(define-public lxqt-policykit + (package + (name "lxqt-policykit") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1d97fys6625nk4q6irp0jhsbk30xi7idnii1f3vrrrdcl2cahagp")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("pcre" ,pcre) + ("polkit-qt" ,polkit-qt) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("polkit" ,polkit) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) (arguments - `(#:tests? #f ; no check target + '(#:tests? #f ; no test target + #:configure-flags + '("-DPULL_TRANSLATIONS=NO") #:phases - (modify-phases %standard-phases - (add-before 'configure 'fix-installation-paths + (modify-phases %standard-phases + (add-after 'unpack 'patch-source (lambda _ - ;; The variable LXQT_TRANSLATIONS_DIR is set in - ;; liblxqt-0.9.0/share/cmake/lxqt/lxqt-config.cmake - ;; to the liblxqt installation directory, followed by - ;; "/share/lxqt/translations". - ;; We need to have it point to the current installation - ;; directory instead. - (substitute* '("lxqt-session/CMakeLists.txt" - "lxqt-config-session/CMakeLists.txt") - (("\\$\\{LXQT_TRANSLATIONS_DIR\\}") - "${CMAKE_INSTALL_PREFIX}/share/lxqt/translations"))))))) - (home-page "http://lxqt.org/") + (substitute* '("autostart/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "The LXQt PolicyKit agent") + (description "lxqt-policykit is the polkit authentification agent of +LXQt.") + (license license:lgpl2.1+))) + +(define-public lxqt-powermanagement + (package + (name "lxqt-powermanagement") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "15nvdypyjwnp7k3d2pkhdbmaqb3ccacmh95rbdbc5mr7yrjy9613")))) + (build-system cmake-build-system) + (inputs + `(("kidletime" ,kidletime) + ("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("solid" ,solid))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "Power management module for LXQt") + (description "lxqt-powermanagement is providing tools to monitor power +management events and optionally trigger actions like e. g. shut down a system +when laptop batteries are low on power.") + (license license:lgpl2.1+))) + +(define-public lxqt-qtplugin + (package + (name "lxqt-qtplugin") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0nnwbc99njpsyqb0cy3x0srcgwa7qrnq0qwcyx7fbvwsq1l8cz56")))) + (build-system cmake-build-system) + (inputs + `(("libdbusmenu-qt" ,libdbusmenu-qt) + ("libfm-qt" ,libfm-qt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("src/CMakeLists.txt") + (("DESTINATION \"\\$\\{QT_PLUGINS_DIR\\}") + "DESTINATION \"lib/qt5/plugins")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "LXQt Qt platform integration plugin") + (description "lxqt-qtplugin is providing a library libqtlxqt to integrate +Qt with LXQt.") + (license license:lgpl2.1+))) + +(define-public lxqt-runner + (package + (name "lxqt-runner") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0dsg6fdcqbl7gza0sg1pb49zn5x31q7zx77jp7mkf6wc2lv8lali")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("lxqt-globalkeys" ,lxqt-globalkeys) + ("muparser" ,muparser) + ("pcre" ,pcre) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools", qttools) + ("lxqt-build-tools" ,lxqt-build-tools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "Tool used to launch programs quickly by typing their names") + (description "lxqt-runner provides a GUI that comes up on the desktop and +allows for launching applications or shutting down the system.") + (license license:lgpl2.1+))) + +(define-public lxqt-session + (package + (name "lxqt-session") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1aibppppmg46ybbajx2qc395l0yp9rqlp2am01fqjxadsf8vci5z")))) + (build-system cmake-build-system) + (inputs + `(("eudev" ,eudev) + ("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("xdg-user-dirs" ,xdg-user-dirs))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + `(#:tests? #f + #:configure-flags + `("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt" + "config/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") (synopsis "Session manager for LXQt") (description "lxqt-session provides the standard session manager for the LXQt desktop environment.") - (license lgpl2.1+))) + (license license:lgpl2.1+))) -(define-public lxqt-build-tools +(define-public lxqt-sudo (package - (name "lxqt-build-tools") - (version "0.5.0") + (name "lxqt-sudo") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1j28wlw4rkzvr85yl78fqkvz7sv7dykm9ghm63xdkskfjbsas1cf")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("liblxqt" ,liblxqt) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras) + ("sudo" ,sudo))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools) + ("lxqt-build-tools" ,lxqt-build-tools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "GUI frontend for sudo/su") + (description "lxqt-sudo is a graphical front-end of commands sudo and su +respectively. As such it enables regular users to launch applications with +permissions of other users including root.") + (license license:lgpl2.1+))) + +(define-public lxqt-themes + (package + (name "lxqt-themes") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "13kkkzjx8bgnwckz79j273azvm4za66i4cp2qhxwdpxh0fwziklf")))) + (build-system cmake-build-system) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools))) + (arguments + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_GRAPHICS_DIR\\}") + "DESTINATION \"share/lxqt/graphics")) + (substitute* '("themes/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_SHARE_DIR\\}") + "DESTINATION \"share/lxqt")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "Themes, graphics and icons for LXQt") + (description "This package comprises a number of graphic files and themes +for LXQt.") + ;; The whole package is released under LGPL 2.1+, while the LXQt logo is + ;; licensed under CC-BY-SA 3.0. + (license license:lgpl2.1+))) + + +;; File Manager + +(define-public libfm-qt + (package + (name "libfm-qt") + (version "0.13.1") (source (origin (method url-fetch) - (uri (string-append "https://github.com/lxde/lxqt-build-tools/releases/" - "download/" version "/" name "-" version ".tar.xz")) - (file-name (string-append name "-" version ".tar.xz")) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) (sha256 - (base32 - "13b5x26p6ycnwzlgg1cgvlc88wjrjmlb3snrrmzh0xgh9h6hhvd6")))) + (base32 "0p0lbz7dh5c38zq3yp1v1mm99ymg7mqr3h7yzniif2hipmgvxsv9")))) (build-system cmake-build-system) (arguments - `(#:tests? #f)) ; no tests + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO : prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (inputs + `(("glib" ,glib) + ("libexif" ,libexif) + ("libfm" ,libfm) + ("libxcb" ,libxcb) + ("menu-cache" ,menu-cache) + ("pcre" ,pcre) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) (native-inputs `(("pkg-config" ,pkg-config) - ("glib" ,glib))) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (home-page "https://lxqt.org/") + (synopsis "Qt binding for libfm") + (description "libfm-qt is the Qt port of libfm, a library providing +components to build desktop file managers which belongs to LXDE.") + (license license:lgpl2.1+))) + +(define-public pcmanfm-qt + (package + (name "pcmanfm-qt") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "08jprkkk62pk34q9lxa207bh27xi86fj8jxfd5z3w2m5j5nim5mz")))) + (build-system cmake-build-system) + (inputs + `(("libfm-qt" ,libfm-qt) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools) + ("lxqt-build-tools" ,lxqt-build-tools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "File manager and desktop icon manager") + (description "PCManFM-Qt is the Qt port of PCManFM, the file manager of +LXDE.") + (license license:gpl2+))) + + +;; Extra + +(define-public compton-conf + (package + (name "compton-conf") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0q3yx2a6wf8yahrwgvhmv9sd7gmrhid528vrqy04dg8m5cx1bjci")))) + (build-system cmake-build-system) + (inputs + `(("libconfig" ,libconfig) + ("qtbase" ,qtbase))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + (substitute* '("autostart/CMakeLists.txt") + (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") + "DESTINATION \"etc/xdg")) + #t))))) + (home-page "https://lxqt.org/") + (synopsis "GUI configuration tool for compton X composite manager") + (description "@code{compton-conf} is a configuration tool for X composite +manager Compton.") + (license license:lgpl2.1+))) + +(define-public lximage-qt + (package + (name "lximage-qt") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1mwjh6lrjayr9snsmabkl5qs4xm6d27mfz8k3jxfm5dk3pjj1b0w")))) + (build-system cmake-build-system) + (inputs + `(("libexif" ,libexif) + ("libfm-qt" ,libfm-qt) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "The image viewer and screenshot tool for lxqt") + (description "LXImage-Qt is the Qt port of LXImage, a simple and fast +image viewer.") + (license license:gpl2+))) + +(define-public obconf-qt + (package + (name "obconf-qt") + (version "0.13.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1fbzn1p2mdvn8dcbavmd1imrvkph2jfssrlw8l26qz6qk8qlmhnf")))) + (build-system cmake-build-system) + (inputs + `(("imlib2" ,imlib2) + ("libsm" ,libsm) + ("librsvg" ,librsvg) + ("libxft" ,libxft) + ("libxml2" ,libxml2) + ("openbox" ,openbox) + ("pango" ,pango) + ("pcre" ,pcre) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "Openbox configuration tool") + (description "ObConf-Qt is a Qt port of ObConf, a configuration editor for +window manager OpenBox.") + (license license:gpl2+))) + +(define-public pavucontrol-qt + (package + (name "pavucontrol-qt") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0pqvhhgw7d00wqw5v3ghm4l8250zy7bqpvhff6l7y1lw0z2fvcp6")))) + (build-system cmake-build-system) + (inputs + `(("glib" ,glib) + ("pcre" ,pcre) + ("pulseaudio" ,pulseaudio) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "Pulseaudio mixer in Qt") + (description "@code{pavucontrol-qt} is the Qt port of volume control +@code{pavucontrol} of sound server @code{PulseAudio}.") + (license license:gpl2+))) + +(define-public qps + (package + (name "qps") + (version "1.10.18") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "0pzk83p7a9ax0893s9hp2qkmiilzrf8iqry5a0x1g73hdwm5hm44")))) + (build-system cmake-build-system) + (inputs + `(("libxrender" ,libxrender) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("qttools" ,qttools))) + (arguments + '(#:tests? #f)) ; no tests + (home-page "https://lxqt.org/") + (synopsis "Qt-based visual process status monitor") + (description "@code{qps} is a monitor that displays the status of the +processes currently in existence, much like code{top} or code{ps}.") + (license license:gpl2+))) + +(define-public qtermwidget + (package + (name "qtermwidget") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1c1qzbysxjbikp4bpgphphw4dgpl10gz8m06ccs2c48qxhpyd773")))) + (build-system cmake-build-system) (inputs `(("qtbase" ,qtbase))) - (synopsis "LXQt Build tools") - (description - "Lxqt-build-tools is providing several tools needed to build LXQt -itself as well as other components maintained by the LXQt project.") - (home-page "http://lxqt.org") - (license lgpl2.1+))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "The terminal widget for QTerminal") + (description "QTermWidget is a terminal emulator widget for Qt 5.") + (license license:gpl2+))) + +(define-public qterminal + (package + (name "qterminal") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "1vlza75br1ys62lgkdz26md729bfpbnasfzswp7hakmgaq1rhms1")))) + (build-system cmake-build-system) + (inputs + `(("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("qtermwidget" ,qtermwidget))) + (native-inputs + `(("lxqt-build-tools" ,lxqt-build-tools) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f ; no tests + #:configure-flags + ;; TODO: prefetch translations files from 'lxqt-l10n'. + '("-DPULL_TRANSLATIONS=NO"))) + (home-page "https://lxqt.org/") + (synopsis "Lightweight Qt-based terminal emulator") + (description "QTerminal is a lightweight Qt terminal emulator based on +QTermWidget.") + (license license:gpl2+))) + +(define-public screengrab + (package + (name "screengrab") + (version "1.99") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/lxqt/" name "/releases/download/" + version "/" name "-" version ".tar.xz")) + (sha256 + (base32 "17y8rsx9fixvxv2byq8d6c01vry10nv07f8jy85vz7zp4f0rgzz3")))) + (build-system cmake-build-system) + (inputs + `(("kwindowsystem" ,kwindowsystem) + ("libqtxdg" ,libqtxdg) + ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) + ("qtx11extras" ,qtx11extras))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (arguments + '(#:tests? #f)) ; no tests + (home-page "https://lxqt.org/") + (synopsis "Crossplatform tool for fast making screenshots") + (description "ScreenGrab is a program for fast creating screenshots, and +easily publishing them on internet image hosting services.") + (license license:gpl2+))) + + +;; The LXQt Desktop Environment + +(define-public lxqt + (package + (name "lxqt") + (version (package-version lxqt-session)) + (source #f) + (build-system trivial-build-system) + (arguments '(#:builder (begin (mkdir %output) #t))) + (propagated-inputs + `(;; XDG + ("desktop-file-utils" ,desktop-file-utils) + ("hicolor-icon-theme" ,hicolor-icon-theme) + ("xdg-user-dirs" ,xdg-user-dirs) + ("xdg-utils" ,xdg-utils) + ;; Base + ;; TODO: qtsvg is needed for lxqt apps to display icons. Maybe it + ;; should be added to their propagated-inputs? + ("qtsvg" ,qtsvg) + ;; Core + ("lxqt-about" ,lxqt-about) + ("lxqt-admin" ,lxqt-admin) + ("lxqt-config" ,lxqt-config) + ("lxqt-notificationd" ,lxqt-notificationd) + ("lxqt-openssh-askpass" ,lxqt-openssh-askpass) + ("lxqt-panel" ,lxqt-panel) + ("lxqt-policykit" ,lxqt-policykit) + ("lxqt-powermanagement" ,lxqt-powermanagement) + ("lxqt-qtplugin" ,lxqt-qtplugin) + ("lxqt-runner" ,lxqt-runner) + ("lxqt-session" ,lxqt-session) + ("lxqt-sudo" ,lxqt-sudo) + ("lxqt-themes" ,lxqt-themes) + ("pcmanfm-qt" ,pcmanfm-qt) + ;; Extra + ("compton" ,compton) + ("compton-conf" ,compton-conf) + ("font-dejavu" ,font-dejavu) + ("lximage-qt" ,lximage-qt) + ("obconf-qt" ,obconf-qt) + ("openbox" ,openbox) + ("oxygen-icons" ,oxygen-icons) + ("pavucontrol-qt" ,pavucontrol-qt) + ("qps" ,qps) + ("qterminal" ,qterminal))) + (synopsis "The Lightweight Qt Desktop Environment") + (description "LXQt is a lightweight Qt desktop environment.") + (home-page "https://lxde.org") + (license license:gpl2+))) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 990a6c771a..084e62cca4 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -8,6 +8,8 @@ ;;; Copyright © 2018 Mark Meyer <mark@ofosos.org> ;;; Copyright © 2018 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> +;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -300,7 +302,9 @@ networks) based on simulation of (stochastic) flow in graphs.") "1l5jbhwjpsj38x8b9698hfpkv75h8hn3kj0gihjhn8ym2cwwv110")))) (build-system ocaml-build-system) (arguments - `(#:phases + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:phases (modify-phases %standard-phases (add-before 'configure 'patch-paths (lambda _ @@ -328,15 +332,17 @@ algorithm.") (origin (method url-fetch) (uri (string-append - "http://www.imbs-luebeck.de/imbs/sites/default/files/u59/" - "randomjungle-" version ".tar_.gz")) + "https://www.imbs.uni-luebeck.de/fileadmin/files/Software" + "/randomjungle/randomjungle-" version ".tar_.gz")) + (patches (search-patches "randomjungle-disable-static-build.patch")) (sha256 (base32 "12c8rf30cla71swx2mf4ww9mfd8jbdw5lnxd7dxhyw1ygrvg6y4w")))) (build-system gnu-build-system) (arguments `(#:configure-flags - (list (string-append "--with-boost=" + (list "--disable-static" + (string-append "--with-boost=" (assoc-ref %build-inputs "boost"))) #:phases (modify-phases %standard-phases @@ -356,7 +362,7 @@ algorithm.") ;; Non-portable assembly instructions are used so building fails on ;; platforms other than x86_64 or i686. (supported-systems '("x86_64-linux" "i686-linux")) - (home-page "http://www.imbs-luebeck.de/imbs/de/node/227/") + (home-page "https://www.imbs.uni-luebeck.de/forschung/software/details.html#c224") (synopsis "Implementation of the Random Forests machine learning method") (description "Random Jungle is an implementation of Random Forests. It is supposed to @@ -489,7 +495,7 @@ sample proximities between pairs of cases.") `(("python" ,python) ("numpy" ,python-numpy) ("r-minimal" ,r-minimal) - ("octave" ,octave) + ("octave" ,octave-cli) ("swig" ,swig) ("eigen" ,eigen) ("hdf5" ,hdf5) @@ -703,7 +709,7 @@ computing environments.") (define-public python-scikit-learn (package (name "python-scikit-learn") - (version "0.19.2") + (version "0.20.1") (source (origin (method git-fetch) @@ -713,9 +719,7 @@ computing environments.") (file-name (git-file-name name version)) (sha256 (base32 - "1dk9hdj01c0bny4ps78b7869fjw9gr6qklxf6wyql8h6nh4k19xm")) - (patches (search-patches - "python-scikit-learn-fix-test-non-determinism.patch")))) + "0fkhwg3xn1s7ln9q1szq6kwc4jhwvjh8w4kmv9wcrqy7cq3lbv0d")))) (build-system python-build-system) (arguments `(#:phases @@ -726,11 +730,11 @@ computing environments.") (lambda _ ;; Restrict OpenBLAS threads to prevent segfaults while testing! (setenv "OPENBLAS_NUM_THREADS" "1") - ;; Disable tests that require network access - (delete-file "sklearn/datasets/tests/test_mldata.py") - (delete-file "sklearn/datasets/tests/test_rcv1.py") - (invoke "pytest" "sklearn") - #t)) + + ;; Some tests require write access to $HOME. + (setenv "HOME" "/tmp") + + (invoke "pytest" "sklearn" "-m" "not network"))) ;; FIXME: This fails with permission denied (delete 'reset-gzip-timestamps)))) (inputs @@ -750,24 +754,7 @@ data analysis.") (license license:bsd-3))) (define-public python2-scikit-learn - (let ((parent (package-with-python2 python-scikit-learn))) - (package (inherit parent) - (arguments - (substitute-keyword-arguments (package-arguments parent) - ((#:phases phases) - `(modify-phases ,phases - (replace 'check - (lambda _ - ;; Restrict OpenBLAS threads to prevent segfaults while testing! - (setenv "OPENBLAS_NUM_THREADS" "1") - ;; Some tests expect to be able to write to HOME. - (setenv "HOME" "/tmp") - ;; Disable tests that require network access - (delete-file "sklearn/datasets/tests/test_kddcup99.py") - (delete-file "sklearn/datasets/tests/test_mldata.py") - (delete-file "sklearn/datasets/tests/test_rcv1.py") - (invoke "pytest" "sklearn") - #t))))))))) + (package-with-python2 python-scikit-learn)) (define-public python-autograd (let* ((commit "442205dfefe407beffb33550846434baa90c4de7") diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 73a17fb21b..794ae7909d 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2014 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> -;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2015, 2016, 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> @@ -23,7 +23,7 @@ ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> +;;; Copyright © 2017, 2018 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com> @@ -110,7 +110,9 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages docbook) #:use-module ((guix licenses) - #:select (fdl1.1+ gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ + #:select (fdl1.1+ + agpl3+ + gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ non-copyleft (expat . license:expat) bsd-3 public-domain bsd-4 isc (openssl . license:openssl) bsd-2 x11-style agpl3 asl2.0 perl-license)) @@ -119,6 +121,7 @@ #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system guile) #:use-module (guix build-system perl) #:use-module (guix build-system python) #:use-module (guix build-system trivial)) @@ -126,24 +129,14 @@ (define-public mailutils (package (name "mailutils") - (version "3.4") + (version "3.5") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mailutils/mailutils-" - version ".tar.bz2")) + version ".tar.xz")) (sha256 (base32 - "1dn71p85wlyisnwsb485sk3q5v393k3dizsa9fmimskdwjwgk3ch")) - (patches - (search-patches "mailutils-uninitialized-memory.patch")) - (snippet - ;; For a rebuild of the Flex/Bison byproducts touched by the - ;; patch above. - '(begin - (for-each delete-file - '("mh/mh_alias_lex.c" - "libmailutils/cfg/parser.c")) - #t)))) + "1wx275w38fwni2abc8g7g3irbk332vr34byxd72zqfdiznsqgims")))) (build-system gnu-build-system) (arguments '(#:phases @@ -194,19 +187,22 @@ #t))) ;; TODO: Add `--with-sql'. - #:configure-flags '("--sysconfdir=/etc") + #:configure-flags (list "--sysconfdir=/etc" + + ;; Add "/2.2" to the installation directory. + (string-append "--with-guile-site-dir=" + (assoc-ref %outputs "out") + "/share/guile/site/2.2")) + #:parallel-tests? #f)) (native-inputs - ;; Note: Bison and Flex needed due to - ;; 'mailutils-uninitialized-memory.patch'. - `(("bison" ,bison) - ("flex" ,flex) - ("perl" ,perl))) ;for 'gylwrap' + `(("perl" ,perl))) ;for 'gylwrap' (inputs `(("dejagnu" ,dejagnu) ("m4" ,m4) ("texinfo" ,texinfo) - ("guile" ,guile-2.0) + ("guile" ,guile-2.2) + ("gsasl" ,gsasl) ("gnutls" ,gnutls) ("ncurses" ,ncurses) ("readline" ,readline) @@ -261,14 +257,14 @@ aliasing facilities to work just as they would on normal mail.") (define-public mutt (package (name "mutt") - (version "1.10.1") + (version "1.11.0") (source (origin (method url-fetch) (uri (string-append "https://bitbucket.org/mutt/mutt/downloads/" "mutt-" version ".tar.gz")) (sha256 (base32 - "182lkbkpd3q3l1x6bvyds90ycp38gyyxhf35ry0d3hwf2n1khjkk")) + "1qqhkhlzvjj0iih8vm0wfagv4fzqqy1wnsb4sqsfv7w06ccjdjcj")) (patches (search-patches "mutt-store-references.patch")))) (build-system gnu-build-system) (inputs @@ -1072,7 +1068,7 @@ which can add many functionalities to the base client.") (define-public msmtp (package (name "msmtp") - (version "1.8.0") + (version "1.8.1") (source (origin (method url-fetch) @@ -1080,7 +1076,7 @@ which can add many functionalities to the base client.") "/msmtp-" version ".tar.xz")) (sha256 (base32 - "1k9wwlapkxk9ql3xq05y6vwn6ziqk9b1v8lyhj1866qd02zhqwxx")))) + "1nm4vizrnrrnknc4mc8nr7grz9q76m1vraa0hsl5rfm34gnsg8ph")))) (build-system gnu-build-system) (inputs `(("libsecret" ,libsecret) @@ -1206,7 +1202,7 @@ facilities for checking incoming mail.") (define-public dovecot (package (name "dovecot") - (version "2.3.2.1") + (version "2.3.4") (source (origin (method url-fetch) @@ -1214,7 +1210,7 @@ facilities for checking incoming mail.") (version-major+minor version) "/" name "-" version ".tar.gz")) (sha256 (base32 - "0d2ffbicgl3wswbnyjbw6qigz7r1aqzprpchbwp5cynw122i2raa")))) + "01ggzf7b3jpl89mjiqr7xbpbs181g2gjf6wzg70qaqfzz3ppc6yr")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1857,7 +1853,7 @@ converts them to maildir format directories.") (define-public mpop (package (name "mpop") - (version "1.2.8") + (version "1.4.0") (source (origin (method url-fetch) @@ -1865,7 +1861,7 @@ converts them to maildir format directories.") name "-" version ".tar.xz")) (sha256 (base32 - "1skrda7lbks5h0v03ab8bhpg6ma1b63if8x9x3kb2fv70x2pkhqn")))) + "14xsvpm5bc1wycisq882gqrnamnyi1q4rlk6anlw8ihzvwgm4h2j")))) (build-system gnu-build-system) (inputs `(("gnutls" ,gnutls) @@ -2428,15 +2424,15 @@ tools and applications: (define-public balsa (package (name "balsa") - (version "2.5.3") + (version "2.5.6") (source (origin (method url-fetch) - (uri (string-append "https://pawsa.fedorapeople.org/balsa/balsa-" - version ".tar.bz2")) + (uri (string-append "https://pawsa.fedorapeople.org/balsa/" + name "-" version ".tar.bz2")) (sha256 (base32 - "15jkwp3ylbwd8iha4dr37z1xb6mkk31ym90vv3h2a5xk2rmym5mq")))) + "17k6wcsl8gki7cskr3hhmfj6n54rha8ca3b6fzd8blsl5shsankx")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -2621,3 +2617,76 @@ within the message, and allows you to choose one or more URLs to send to your Web browser. Alternatively, it send a list of all URLs to stdout. It is a replacement for the @code{urlview} program.") (license gpl2))) + +(define-public tnef + (package + (name "tnef") + (version "1.4.17") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/verdammelt/tnef.git") + (commit version))) + (sha256 + (base32 + "0cq2xh5wd74qn6k2nnw5rayxgqhjl3jbzf4zlc4babcwxrv32ldh")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) + (arguments `(#:parallel-tests? #f)) ;tests are side-effect'y + (home-page "https://github.com/verdammelt/tnef") + (synopsis "Unpack @code{application/ms-tnef} attachments") + (description + "TNEF is a tar-like program that unpacks MIME attachments of type +@code{application/ms-tnef}.") + (license gpl2+))) + +(define-public mumi + (let ((commit "bfd96ce76b4600ae232e6548b26c9365095fd174") + (revision "2")) + (package + (name "mumi") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.elephly.net/software/mumi.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "05miwfi1bh0v9x2gvn15bwkb3gn4xy53z506ysjzns2y497zkc5h")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-executable + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (scm (string-append out "/share/guile/site/2.2")) + (go (string-append out "/lib/guile/2.2/site-ccache"))) + (wrap-program (string-append bin "/mumi") + `("GUILE_LOAD_PATH" ":" prefix + (,scm ,(getenv "GUILE_LOAD_PATH"))) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix + (,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))) + #t)))))) + (inputs + `(("guile-debbugs" ,guile-debbugs-next) + ("guile-email" ,guile-email) + ("guile-fibers" ,guile-fibers) + ("guile-json" ,guile-json) + ("guile-syntax-highlight" ,guile-syntax-highlight) + ("guile" ,guile-2.2))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config))) + (home-page "https://git.elephly.net/software/mumi.git") + (synopsis "Debbugs web interface") + (description "Mumi is a Debbugs web interface.") + (license agpl3+)))) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index 58e26d82ff..b640884933 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 David Thompson <dthompson2@worcester.edu> ;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Alex Kost <alezost@gmail.com> @@ -216,6 +216,18 @@ Linux kernel and C library interfaces employed by user-space programs.") automatically.") (license gpl3+))) +(define-public help2man/latest + (package + (inherit help2man) + (version "1.47.8") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/help2man/help2man-" + version ".tar.xz")) + (sha256 + (base32 + "1p5830h88cx0zn0snwaj0vpph81xicpsirfwlxmcgjrlmn0nm3sj")))))) + (define-public txt2man (package (name "txt2man") diff --git a/gnu/packages/markup.scm b/gnu/packages/markup.scm index cdcfbc7898..20da258029 100644 --- a/gnu/packages/markup.scm +++ b/gnu/packages/markup.scm @@ -173,7 +173,8 @@ convert it to structurally valid XHTML (or HTML).") (string-append "OTHERLDFLAGS = -lmarkdown -Wl,-rpath=" (assoc-ref inputs "discount") - "/lib")))))))) + "/lib"))) + #t))))) (inputs `(("discount" ,discount))) (home-page diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index aa9c7478b7..96a1ecb043 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -28,6 +28,7 @@ ;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Eric Brown <brown@fastmail.com> +;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -286,13 +287,13 @@ programming language.") (define-public units (package (name "units") - (version "2.17") + (version "2.18") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/units/units-" version ".tar.gz")) (sha256 (base32 - "1n2xzpnxfn475zkd8rzs5gg58xszjbr4bdbgvk6hryzimvwwj0qz")))) + "0y26kj349i048y4z3xrk90bvciw2j6ds3rka7r7yn3183hirr5b4")))) (build-system gnu-build-system) (inputs `(("readline" ,readline) @@ -884,6 +885,25 @@ extremely large and complex data collections.") (license (license:x11-style "http://www.hdfgroup.org/ftp/HDF5/current/src/unpacked/COPYING")))) +(define-public hdf5-1.10 + (package (inherit hdf5) + (version "1.10.4") + (source + (origin + (method url-fetch) + (uri (list (string-append "https://support.hdfgroup.org/ftp/HDF5/releases/" + "hdf5-" (version-major+minor version) + "/hdf5-" version "/src/hdf5-" + version ".tar.bz2") + (string-append "https://support.hdfgroup.org/ftp/HDF5/" + "current" + (apply string-append + (take (string-split version #\.) 2)) + "/src/hdf5-" version ".tar.bz2"))) + (sha256 + (base32 "1pr85fa1sh2ky6ai2hs3f21lp252grl2cq3wbyi4rh7dm83gyrqj")) + (patches (list (search-patch "hdf5-config-date.patch"))))))) + (define-public hdf-java (package (name "hdf-java") @@ -1393,9 +1413,9 @@ can solve two kinds of problems: ;; For a fully featured Octave, users are strongly recommended also to install ;; the following packages: less, ghostscript, gnuplot. -(define-public octave +(define-public octave-cli (package - (name "octave") + (name "octave-cli") (version "4.4.1") (source (origin @@ -1477,21 +1497,21 @@ Work may be performed both at the interactive command-line as well as via script files.") (license license:gpl3+))) -(define-public qtoctave - (package (inherit octave) - (name "qtoctave") +(define-public octave + (package (inherit octave-cli) + (name "octave") (source (origin - (inherit (package-source octave)))) + (inherit (package-source octave-cli)))) (inputs `(("qscintilla" ,qscintilla) ("qt" ,qtbase) - ,@(package-inputs octave))) + ,@(package-inputs octave-cli))) (native-inputs `(("qttools" , qttools) ;for lrelease ("texlive" ,texlive) ;for texi2dvi - ,@(package-native-inputs octave))) + ,@(package-native-inputs octave-cli))) (arguments - (substitute-keyword-arguments (package-arguments octave) + (substitute-keyword-arguments (package-arguments octave-cli) ((#:phases phases) `(modify-phases ,phases (add-before 'configure 'patch-qscintilla-library-name @@ -1505,6 +1525,9 @@ script files.") "qscintilla2_qt5")) #t)))))))) +(define-public qtoctave + (deprecated-package "qtoctave" octave)) + (define-public opencascade-oce (package (name "opencascade-oce") @@ -1635,7 +1658,7 @@ September 2004}") (define-public petsc (package (name "petsc") - (version "3.9.3") + (version "3.10.2") (source (origin (method url-fetch) @@ -1643,7 +1666,7 @@ September 2004}") (uri (string-append "http://ftp.mcs.anl.gov/pub/petsc/release-snapshots/" "petsc-lite-" version ".tar.gz")) (sha256 - (base32 "1fwkbwv4g7zf2lc8fw865xd0bl9anb6jaczfis5dff7h449gwa48")))) + (base32 "0bl64pydak3rblnjffi482r8bin4xim9sb37ksl2jkcxf0i0irsi")))) (outputs '("out" ;libraries and headers "examples")) ;~30MiB of examples (build-system gnu-build-system) @@ -1747,16 +1770,18 @@ scientific applications modeled by partial differential equations.") (name "petsc-openmpi") (inputs `(("hdf5" ,hdf5-parallel-openmpi) + ("hypre" ,hypre-openmpi) ("metis" ,metis) ("mumps" ,mumps-openmpi) ("openmpi" ,openmpi) ("scalapack" ,scalapack) - ("scotch" ,pt-scotch) + ("scotch" ,pt-scotch32) ,@(package-inputs petsc))) (arguments (substitute-keyword-arguments (package-arguments petsc) ((#:configure-flags cf) - ``("--with-mpiexec=mpirun" + ``("--with-hypre=1" + "--with-mpiexec=mpirun" "--with-metis=1" "--with-mumps=1" "--with-scalapack=1" @@ -1789,6 +1814,41 @@ scientific applications modeled by partial differential equations.") ,@(delete "--with-mpi=0" ,cf))))) (synopsis "Library to solve PDEs (with complex scalars and MPI support)"))) +(define-public python-petsc4py + (package + (name "python-petsc4py") + (version "3.10.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "petsc4py" version)) + (sha256 + (base32 + "0ch3g6dsvxl7qi984fcssv7cxfbif4bw04gkvxl2l1b8wrmvrm25")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda _ + ;; Define path to PETSc installation. + (setenv "PETSC_DIR" (assoc-ref %build-inputs "petsc")) + #t)) + (add-before 'check 'mpi-setup + ,%openmpi-setup)))) + (inputs + `(("petsc" ,petsc-openmpi) + ("python-numpy" ,python-numpy))) + (home-page "https://bitbucket.org/petsc/petsc4py/") + (synopsis "Python bindings for PETSc") + (description "PETSc, the Portable, Extensible Toolkit for +Scientific Computation, is a suite of data structures and routines for +the scalable (parallel) solution of scientific applications modeled by +partial differential equations. It employs the MPI standard for all +message-passing communication. @code{petsc4py} provides Python +bindings to almost all functions of PETSc.") + (license license:bsd-3))) + (define-public python-kiwisolver (package (name "python-kiwisolver") @@ -1816,7 +1876,7 @@ savings are consistently > 5x.") (define-public slepc (package (name "slepc") - (version "3.9.2") + (version "3.10.1") (source (origin (method url-fetch) @@ -1824,7 +1884,7 @@ savings are consistently > 5x.") version ".tar.gz")) (sha256 (base32 - "0gmhdqac8zm3jx43h935z7bflazjnpvqxjv4jh5za2y1z2rqax94")))) + "188j1a133q91h8pivpnzwcf78kz8dvz2nzf6ndnjygdbqb48fizn")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) @@ -1920,6 +1980,43 @@ arising after the discretization of partial differential equations.") ,@(alist-delete "petsc" (package-propagated-inputs slepc-openmpi)))) (synopsis "Scalable library for eigenproblems (with complex scalars and MPI support)"))) +(define-public python-slepc4py + (package + (name "python-slepc4py") + (version "3.10.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "slepc4py" version)) + (sha256 + (base32 + "0x049dyc8frgh79fvvavf4vlbqp4mgm61nsaivzdav4316vvlv1j")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'pre-build + (lambda _ + ;; Define path to PETSc installation. + (setenv "PETSC_DIR" (assoc-ref %build-inputs "petsc")) + ;; Define path to SLEPc installation. + (setenv "SLEPC_DIR" (assoc-ref %build-inputs "slepc")) + #t)) + (add-before 'check 'mpi-setup + ,%openmpi-setup)))) + (inputs + `(("python-numpy" ,python-numpy) + ("python-petsc4py" ,python-petsc4py) + ("slepc" ,slepc-openmpi))) + (home-page "https://bitbucket.org/slepc/slepc4py/") + (synopsis "Python bindings for SLEPc") + (description "SLEPc, the Scalable Library for Eigenvalue Problem +Computations, is based on PETSc, the Portable, Extensible Toolkit for +Scientific Computation. It employs the MPI standard for all +message-passing communication. @code{slepc4py} provides Python +bindings to almost all functions of SLEPc.") + (license license:bsd-3))) + (define-public mumps (package (name "mumps") @@ -2110,16 +2207,14 @@ programming problems.") (define-public r-pracma (package (name "r-pracma") - (version "2.1.5") + (version "2.1.8") (source (origin (method url-fetch) (uri (cran-uri "pracma" version)) (sha256 - (base32 "18cv7c2gvagbmggfbsy2xk9bpn47izd0qrmqnc3q7afvj6pr6nf9")))) + (base32 "0m8ladhrfyxwybblkcdgg4xv1mk5kibmwarpj2k0c2y34zzcix4z")))) (build-system r-build-system) - (propagated-inputs - `(("r-quadprog" ,r-quadprog))) - (home-page "https://cran.r-project.org/web/packages/pracma") + (home-page "https://cran.r-project.org/web/packages/pracma/") (synopsis "Practical numerical math functions") (description "This package provides functions for numerical analysis and linear algebra, numerical optimization, differential equations, plus some @@ -2510,15 +2605,16 @@ YACC = bison -pscotchyy -y -b y (replace 'build (lambda _ - (and - (zero? (system* "make" - (format #f "-j~a" (parallel-job-count)) - "ptscotch" "ptesmumps")) - ;; Install the serial metis compatibility library - (zero? (system* "make" "-C" "libscotchmetis" "install"))))) - (replace - 'check - (lambda _ (zero? (system* "make" "ptcheck")))))))) + (invoke "make" (format #f "-j~a" (parallel-job-count)) + "ptscotch" "ptesmumps") + + ;; Install the serial metis compatibility library + (invoke "make" "-C" "libscotchmetis" "install"))) + (add-before 'check 'mpi-setup + ,%openmpi-setup) + (replace 'check + (lambda _ + (invoke "make" "ptcheck"))))))) (synopsis "Programs and libraries for graph algorithms (with MPI)"))) (define-public pt-scotch32 @@ -2532,15 +2628,15 @@ YACC = bison -pscotchyy -y -b y `(modify-phases ,scotch32-phases (replace 'build (lambda _ - (and - (zero? (system* "make" - (format #f "-j~a" (parallel-job-count)) - "ptscotch" "ptesmumps")) - ;; Install the serial metis compatibility library - (zero? (system* "make" "-C" "libscotchmetis" "install"))))) + (invoke "make" (format #f "-j~a" (parallel-job-count)) + "ptscotch" "ptesmumps") + ;; Install the serial metis compatibility library + (invoke "make" "-C" "libscotchmetis" "install"))) + (add-before 'check 'mpi-setup + ,%openmpi-setup) (replace 'check (lambda _ - (zero? (system* "make" "ptcheck")))))))) + (invoke "make" "ptcheck"))))))) (synopsis "Programs and libraries for graph algorithms (with MPI and 32-bit integers)"))) @@ -2659,7 +2755,7 @@ to BMP, JPEG or PNG image formats.") (define-public maxima (package (name "maxima") - (version "5.42.0") + (version "5.42.1") (source (origin (method url-fetch) @@ -2667,7 +2763,7 @@ to BMP, JPEG or PNG image formats.") version "-source/" name "-" version ".tar.gz")) (sha256 (base32 - "0d5pdihvcbwb7r4i4qs5qqgsz46hxlq33qj8is053llrgn9ylpyn")) + "1ka0xf70a55ndgmyrq7p5xxbd78pq7bfkqhgxsivaqdw6gn5lmcg")) (patches (search-patches "maxima-defsystem-mkdir.patch")))) (build-system gnu-build-system) (inputs @@ -2699,6 +2795,18 @@ to BMP, JPEG or PNG image formats.") (lambda _ (chmod "src/maxima" #o555) #t)) + (replace 'check + (lambda _ + ;; This is derived from the testing code in the "debian/rules" file + ;; of Debian's Maxima package. + ;; If Maxima can successfully run this, the binary to be installed + ;; should be fine. + (zero? + (system + (string-append "./maxima-local " + "--lisp=gcl " + "--batch-string=\"run_testsuite();\" " + "| grep -q \"No unexpected errors found\""))))) ;; Make sure the doc and emacs files are found in the ;; standard location. Also configure maxima to find gnuplot ;; without having it on the PATH. @@ -2746,18 +2854,17 @@ point numbers.") (define-public wxmaxima (package (name "wxmaxima") - (version "18.02.0") + (version "18.11.4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/andrejv/" name "/archive" - "/Version-" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/wxMaxima-developers/wxmaxima.git") + (commit (string-append "Version-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "03kr2rgfp4hcf3is8m8d8f9hj660c3xgrc50vrrfpixx4syh6wvj")) - (patches - (search-patches "wxmaxima-do-not-use-old-gnuplot-parameters.patch")))) + "1sz8n9v23q442l7yjj67pjh0dk78rl4cbcc3j8m1bm88anlfxl9r")))) (build-system cmake-build-system) (native-inputs `(("gettext" ,gettext-minimal))) @@ -3294,7 +3401,7 @@ Failure to do so will result in a library with poor performance.") (define-public glm (package (name "glm") - (version "0.9.9.2") + (version "0.9.9.3") (source (origin (method url-fetch) @@ -3302,7 +3409,7 @@ Failure to do so will result in a library with poor performance.") version "/glm-" version ".zip")) (sha256 (base32 - "1m2gws1d7l6h4mdn0ap74pfnm3vva3kk8rybdqd5x4lksd1mk6r0")))) + "0yqk5r3qh60d4r2iab5q7wq0fryn8p3pz6s28y1i7amqj1aqavj9")))) (build-system cmake-build-system) (native-inputs `(("unzip" ,unzip))) @@ -3476,7 +3583,7 @@ in finite element programs.") `(("unzip" ,unzip))) (inputs `(("hdf5" ,hdf5) - ("octave" ,octave) + ("octave" ,octave-cli) ("python" ,python-2) ; print syntax ;; ("python2-numpy" ,python2-numpy) ; only required for the tests ("zlib" ,zlib))) @@ -3846,15 +3953,15 @@ as equations, scalars, vectors, and matrices.") (define-public z3 (package (name "z3") - (version "4.5.0") + (version "4.8.1") + (home-page "https://github.com/Z3Prover/z3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/Z3Prover/z3/archive/z3-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference (url home-page) + (commit (string-append "z3-" version)))) (sha256 (base32 - "032a5lvji2liwmc25jv52bdrhimqflvqbpg77ccaq1jykhiivbmf")))) + "1vr57bwx40sd5riijyrhy70i2wnv9xrdihf6y5zdz56yq88rl48f")))) (build-system cmake-build-system) (arguments `(#:configure-flags @@ -3883,43 +3990,57 @@ as equations, scalars, vectors, and matrices.") (synopsis "Theorem prover") (description "Z3 is a theorem prover and @dfn{satisfiability modulo theories} (SMT) solver. It provides a C/C++ API, as well as Python bindings.") - (home-page "https://github.com/Z3Prover/z3") (license license:expat))) (define-public cubicle (package (name "cubicle") - (version "1.1.1") + (version "1.1.2") (source (origin (method url-fetch) (uri (string-append "http://cubicle.lri.fr/cubicle-" version ".tar.gz")) (sha256 (base32 - "1sny9c4fm14k014pk62ibpwbrjjirkx8xmhs9jg7q1hk7y7x3q2h")))) + "10kk80jdmpdvql88sdjsh7vqzlpaphd8vip2lp47aarxjkwjlz1q")))) (build-system gnu-build-system) (native-inputs - `(("ocaml" ,ocaml) + `(("automake" ,automake) + ("ocaml" ,ocaml) ("which" ,(@@ (gnu packages base) which)))) (propagated-inputs - `(("z3" ,z3))) + `(("ocaml-num" ,ocaml-num) + ("z3" ,z3))) (arguments `(#:configure-flags (list "--with-z3") + #:make-flags (list "QUIET=") #:tests? #f #:phases (modify-phases %standard-phases (add-before 'configure 'configure-for-release (lambda _ (substitute* "Makefile.in" - (("SVNREV=") "#SVNREV=")))) + (("SVNREV=") "#SVNREV=")) + #t)) (add-before 'configure 'fix-/bin/sh (lambda _ (substitute* "configure" - (("/bin/sh") (which "sh"))))) + (("-/bin/sh") (string-append "-" (which "sh")))) + #t)) (add-before 'configure 'fix-smt-z3wrapper.ml (lambda _ (substitute* "Makefile.in" - (("\\\\n") ""))))))) + (("\\\\n") "")) + #t)) + (add-before 'configure 'fix-ocaml-num + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Makefile.in" + (("= \\$\\(FUNCTORYLIB\\)") + (string-append "= -I " + (assoc-ref inputs "ocaml-num") + "/lib/ocaml/site-lib" + " $(FUNCTORYLIB)"))) + #t))))) (home-page "http://cubicle.lri.fr/") (synopsis "Model checker for array-based systems") (description "Cubicle is a model checker for verifying safety properties diff --git a/gnu/packages/maven.scm b/gnu/packages/maven.scm index 34fbce0e62..5379eb9166 100644 --- a/gnu/packages/maven.scm +++ b/gnu/packages/maven.scm @@ -77,22 +77,26 @@ provides the Maven plugin generating the component metadata."))) (define-public maven-resolver-api (package (name "maven-resolver-api") - (version "1.1.1") + (version "1.3.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/apache/maven-resolver/" "archive/maven-resolver-" version ".tar.gz")) (sha256 (base32 - "0rpvdg3qr1j88gw0ankf0wnwfyq6238mdlm7s39vf5jrcvhdgwcl")))) + "0gfkf8g5zbjh6ciq3dnby9m5irhrbyc7d2jzic9l8xx6hl61q6mm")))) (build-system ant-build-system) (arguments `(#:jar-name "maven-resolver-api.jar" #:source-dir "maven-resolver-api/src/main/java" #:test-dir "maven-resolver-api/src/test")) (native-inputs - `(("java-junit" ,java-junit) - ("java-hamcrest-core" ,java-hamcrest-core))) + `(("java-asm" ,java-asm) + ("java-cglib" ,java-cglib) + ("java-hamcrest-core" ,java-hamcrest-core) + ("java-junit" ,java-junit) + ("java-mockito-1" ,java-mockito-1) + ("java-objenesis" ,java-objenesis))) (home-page "https://github.com/apache/maven-resolver") (synopsis "Maven repository system API") (description "This package contains the API for the maven repository system.") @@ -164,12 +168,14 @@ ease usage of the repository system."))) (mkdir-p "build/classes/META-INF/sisu") (with-output-to-file "build/classes/META-INF/sisu/javax.inject.Named" (lambda _ - (display "org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory\n")))))))) + (display "org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory\n"))) + #t))))) (inputs `(("maven-resolver-api" ,maven-resolver-api) ("maven-resolver-spi" ,maven-resolver-spi) ("maven-resolver-util" ,maven-resolver-util) - ("java-javax-inject" ,java-javax-inject))) + ("java-javax-inject" ,java-javax-inject) + ("java-slf4j-api" ,java-slf4j-api))) (native-inputs `(("java-junit" ,java-junit) ("java-hamcrest-core" ,java-hamcrest-core) @@ -198,28 +204,28 @@ for repositories using URI-based layouts."))) (string-append ;; Build this list by looking for files containing "@Named" "org.eclipse.aether.internal.impl.DefaultArtifactResolver\n" - "org.eclipse.aether.internal.impl.DefaultTransporterProvider\n" - "org.eclipse.aether.internal.impl.DefaultUpdatePolicyAnalyzer\n" - "org.eclipse.aether.internal.impl.slf4j.Slf4jLoggerFactory\n" - "org.eclipse.aether.internal.impl.DefaultRepositorySystem\n" - "org.eclipse.aether.internal.impl.LoggerFactoryProvider\n" + "org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector\n" + "org.eclipse.aether.internal.impl.DefaultChecksumPolicyProvider\n" + "org.eclipse.aether.internal.impl.DefaultDeployer\n" "org.eclipse.aether.internal.impl.DefaultFileProcessor\n" + "org.eclipse.aether.internal.impl.DefaultInstaller\n" "org.eclipse.aether.internal.impl.DefaultLocalRepositoryProvider\n" - "org.eclipse.aether.internal.impl.SimpleLocalRepositoryManagerFactory\n" - "org.eclipse.aether.internal.impl.DefaultDeployer\n" "org.eclipse.aether.internal.impl.DefaultMetadataResolver\n" - "org.eclipse.aether.internal.impl.DefaultInstaller\n" - "org.eclipse.aether.internal.impl.Maven2RepositoryLayoutFactory\n" - "org.eclipse.aether.internal.impl.DefaultSyncContextFactory\n" "org.eclipse.aether.internal.impl.DefaultOfflineController\n" - "org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory\n" - "org.eclipse.aether.internal.impl.DefaultRepositoryLayoutProvider\n" "org.eclipse.aether.internal.impl.DefaultRemoteRepositoryManager\n" - "org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher\n" "org.eclipse.aether.internal.impl.DefaultRepositoryConnectorProvider\n" + "org.eclipse.aether.internal.impl.DefaultRepositoryEventDispatcher\n" + "org.eclipse.aether.internal.impl.DefaultRepositoryLayoutProvider\n" + "org.eclipse.aether.internal.impl.DefaultRepositorySystem\n" + "org.eclipse.aether.internal.impl.DefaultSyncContextFactory\n" + "org.eclipse.aether.internal.impl.DefaultTransporterProvider\n" "org.eclipse.aether.internal.impl.DefaultUpdateCheckManager\n" - "org.eclipse.aether.internal.impl.DefaultChecksumPolicyProvider\n" - "org.eclipse.aether.internal.impl.DefaultDependencyCollector\n")))) + "org.eclipse.aether.internal.impl.DefaultUpdatePolicyAnalyzer\n" + "org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory\n" + "org.eclipse.aether.internal.impl.LoggerFactoryProvider\n" + "org.eclipse.aether.internal.impl.Maven2RepositoryLayoutFactory\n" + "org.eclipse.aether.internal.impl.SimpleLocalRepositoryManagerFactory\n" + "org.eclipse.aether.internal.impl.slf4j.Slf4jLoggerFactory")))) #t))))) (inputs `(("maven-resolver-api" ,maven-resolver-api) @@ -306,6 +312,7 @@ for repositories using URI-based layouts."))) ("java-plexus-component-annotation" ,java-plexus-component-annotations) ("java-plexus-classworld" ,java-plexus-classworlds) ("java-plexus-plexus-util" ,java-plexus-utils) + ("java-slf4j-api" ,java-slf4j-api) ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) ("java-eclipse-sisu-plexus" ,java-eclipse-sisu-plexus))) (native-inputs @@ -675,13 +682,13 @@ gets and puts artifacts through HTTP(S) using Apache HttpClient-4.x."))) (define-public maven-artifact (package (name "maven-artifact") - (version "3.5.4") + (version "3.6.0") (source (origin (method url-fetch) (uri (string-append "https://archive.apache.org/dist/maven/" "maven-3/" version "/source/" "apache-maven-" version "-src.tar.gz")) - (sha256 (base32 "1xg20g87svzzscbn7m92c2njvrr61va1dija2x2w7m5v4hdizfpk")) + (sha256 (base32 "17jrqfqwn569jgnv8m4pqc27csssb0rf6mznpq61l5bnbd6hl75k")) (modules '((guix build utils))) (snippet '(begin @@ -915,8 +922,8 @@ inheritance, interpolation, @dots{}"))) ("java-asm" ,java-asm) ("sisu-inject" ,java-eclipse-sisu-inject) ("javax-inject" ,java-javax-inject) - ("xmlunit" ,java-xmlunit) - ("xmlunit" ,java-xmlunit-legacy) + ("java-xmlunit" ,java-xmlunit) + ("java-xmlunit-matchers" ,java-xmlunit-matchers) ("xbean" ,java-geronimo-xbean-reflect) ("classworlds" ,java-plexus-classworlds))) (description "Apache Maven is a software project management and comprehension diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index d50732dfc4..1500be43b0 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -32,71 +32,73 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages messaging) - #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix utils) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix git-download) - #:use-module (guix build-system gnu) - #:use-module (guix build-system glib-or-gtk) - #:use-module (guix build-system meson) - #:use-module (guix build-system python) - #:use-module (guix build-system perl) - #:use-module (guix build-system cmake) #:use-module (gnu packages) + #:use-module (gnu packages admin) #:use-module (gnu packages aidc) #:use-module (gnu packages aspell) + #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages bison) #:use-module (gnu packages check) + #:use-module (gnu packages compression) #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages databases) #:use-module (gnu packages documentation) #:use-module (gnu packages enchant) + #:use-module (gnu packages fontutils) #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) + #:use-module (gnu packages guile) + #:use-module (gnu packages icu4c) #:use-module (gnu packages image) - #:use-module (gnu packages xorg) - #:use-module (gnu packages xdisorg) + #:use-module (gnu packages less) #:use-module (gnu packages libcanberra) - #:use-module (gnu packages man) - #:use-module (gnu packages networking) #:use-module (gnu packages libidn) + #:use-module (gnu packages linux) #:use-module (gnu packages lua) - #:use-module (gnu packages xml) - #:use-module (gnu packages gnupg) + #:use-module (gnu packages man) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) + #:use-module (gnu packages pcre) + #:use-module (gnu packages perl) + #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages glib) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages python-crypto) - #:use-module (gnu packages pcre) - #:use-module (gnu packages perl) + #:use-module (gnu packages python-web) + #:use-module (gnu packages qt) + #:use-module (gnu packages readline) #:use-module (gnu packages tcl) - #:use-module (gnu packages compression) - #:use-module (gnu packages check) - #:use-module (gnu packages admin) - #:use-module (gnu packages linux) + #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) - #:use-module (gnu packages icu4c) - #:use-module (gnu packages qt) #:use-module (gnu packages video) #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xiph) - #:use-module (gnu packages audio) - #:use-module (gnu packages bison) - #:use-module (gnu packages fontutils) - #:use-module (gnu packages bash) - #:use-module (gnu packages guile) - #:use-module (gnu packages less) - #:use-module (gnu packages readline) - #:use-module (gnu packages photo) - #:use-module (gnu packages texinfo)) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg) + #:use-module (guix build-system cmake) + #:use-module (guix build-system glib-or-gtk) + #:use-module (guix build-system gnu) + #:use-module (guix build-system meson) + #:use-module (guix build-system perl) + #:use-module (guix build-system python) + #:use-module (guix build-system trivial) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils)) (define-public libotr (package @@ -548,14 +550,14 @@ simultaneously and therefore appear under the same nickname on IRC.") (define-public python-nbxmpp (package (name "python-nbxmpp") - (version "0.6.7") + (version "0.6.8") (source (origin (method url-fetch) (uri (pypi-uri "nbxmpp" version)) (sha256 (base32 - "0fas4iawjfdmkz8vr042wpq6b2qispi6fy35g4a62jw50jb1saav")))) + "1iip8ijxp86fx4bl1h67p2lp02p2zm1ga2p3q43nv30smj54nawc")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; no tests @@ -573,7 +575,7 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") (define-public gajim (package (name "gajim") - (version "1.0.3") + (version "1.1.0") (source (origin (method url-fetch) (uri (string-append "https://gajim.org/downloads/" @@ -581,12 +583,19 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") "/gajim-" version ".tar.bz2")) (sha256 (base32 - "0ds4rqwfrpj89a489w6yih8gx5zi7qa4ffgld950fk7s0qxvcfnb")))) + "1qis8vs7y7g1zn5i5dshwrszidc22qpflycwb4nixvp9lbmkq0va")))) (build-system python-build-system) (arguments - `(#:phases + `(#:test-target "test_nogui" + #:phases (modify-phases %standard-phases - (add-after 'install 'wrap-program + (add-after 'unpack 'add-plugin-dirs + (lambda _ + (substitute* "gajim/common/configpaths.py" + (("_paths\\['PLUGINS_USER'\\]") + "_paths['PLUGINS_USER'],os.getenv('GAJIM_PLUGIN_PATH')")) + #t)) + (add-after 'install 'wrap-gi-typelib-path (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (for-each @@ -597,20 +606,6 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))) '("gajim" "gajim-remote" "gajim-history-manager"))) #t)) - (add-before 'check 'remove-test-resolver - ;; This test requires network access. - (lambda _ - (substitute* "test/runtests.py" - (("'integration.test_resolver',") "")) - #t)) - (add-before 'check 'start-xserver - ;; Tests require a running X server. - (lambda* (#:key inputs #:allow-other-keys) - (let ((xorg-server (assoc-ref inputs "xorg-server")) - (display ":1")) - (setenv "DISPLAY" display) - (zero? (system (string-append xorg-server "/bin/Xvfb " - display " &")))))) (add-after 'install 'install-icons (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -628,16 +623,30 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") (symlink adwaita "Adwaita") (copy-recursively hicolor "hicolor"))) #t)) - (add-after 'install-icons 'wrap-program + (add-after 'install-icons 'wrap-gsettings-schema-dir (lambda* (#:key inputs outputs #:allow-other-keys) (wrap-program (string-append (assoc-ref outputs "out") "/bin/gajim") ;; For GtkFileChooserDialog. `("GSETTINGS_SCHEMA_DIR" = (,(string-append (assoc-ref inputs "gtk+") - "/share/glib-2.0/schemas"))))))))) + "/share/glib-2.0/schemas")))) + #t))))) + (native-search-paths + (list (search-path-specification + (variable "GAJIM_PLUGIN_PATH") + (separator #f) ;single entry + (files '("share/gajim/plugins"))) + ;; Gajim needs to use the propagated inputs of its plugins. + (search-path-specification + (variable "PYTHONPATH") + (files (list (string-append + "lib/python" + (version-major+minor (package-version python)) + "/site-packages")))))) (native-inputs `(("intltool" ,intltool) + ("python-docutils" ,python-docutils) ("xorg-server" ,xorg-server))) (inputs `(("adwaita-icon-theme" ,adwaita-icon-theme) @@ -646,13 +655,13 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") ("gtkspell3" ,gtkspell3) ("hicolor-icon-theme" ,hicolor-icon-theme) ("libsecret" ,libsecret) - ("python-axolotl" ,python-axolotl) + ("python-cssutils" ,python-cssutils) ("python-dbus" ,python-dbus) - ("python-docutils" ,python-docutils) ("python-gnupg" ,python-gnupg) + ("python-keyring" ,python-keyring) ("python-nbxmpp" ,python-nbxmpp) ("python-pillow" ,python-pillow) - ("python-pyasn1" ,python-pyasn1) + ("python-precis-i18n" ,python-precis-i18n) ("python-pycairo" ,python-pycairo) ("python-pygobject" ,python-pygobject) ("python-pyopenssl" ,python-pyopenssl) @@ -666,6 +675,41 @@ transformation; audio and video conferences; file transfer; TLS, GPG and end-to-end encryption support; XML console.") (license license:gpl3))) +(define-public gajim-omemo + (package + (name "gajim-omemo") + (version "2.6.23") + (source (origin + (method url-fetch/zipbomb) + (uri (string-append + "https://ftp.gajim.org/plugins_releases/omemo_" + version ".zip")) + (sha256 + (base32 + "134zbscbcnhx4smad0ryvx3ngkqlsspafqf0kk8y2d3vcd9bf3pa")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (share (in-vicinity out "share/gajim/plugins")) + (source (assoc-ref %build-inputs "source"))) + (mkdir-p share) + (copy-recursively source share) + #t)))) + (propagated-inputs + `(("python-axolotl" ,python-axolotl))) + (home-page + "https://dev.gajim.org/gajim/gajim-plugins/wikis/OmemoGajimPlugin") + (synopsis "Gajim OMEMO plugin") + (description + "This package provides the Gajim OMEMO plugin. OMEMO is an XMPP +Extension Protocol (XEP) for secure multi-client end-to-end encryption based +on Axolotl and PEP.") + (license license:gpl3+))) + (define-public dino ;; The only release tarball is for version 0.0, but it is very old and fails ;; to build. @@ -827,8 +871,8 @@ protocols.") (license license:x11))) (define-public libtoxcore - (let ((revision "1") - (commit "755f084e8720b349026c85afbad58954cb7ff1d4")) + (let ((revision "2") + (commit "bf69b54f64003d160d759068f4816b2d9b2e1e21")) (package (name "libtoxcore") (version (string-append "0.0.0" "-" @@ -841,26 +885,19 @@ protocols.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0ap1gvlyihnfivv235dbrgsxsiiz70bhlmlr5gn1027w3h5kqz8w")))) + "11lqra4yd7v293cp286ynff5lqz1pprzg8vn3wq6vryj08g88zqb")))) (build-system gnu-build-system) + (arguments `(#:tests? #f)) ; FIXME: tests hang, some fail. (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) - ;; TODO: Add when test suite is capable of passing. - ;; ("check" ,check) + ("check" ,check) ("pkg-config" ,pkg-config))) (inputs `(("libsodium" ,libsodium) ("opus" ,opus) ("libvpx" ,libvpx))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))) - #:tests? #f)) ; FIXME: Testsuite fails, reasons unspecific. (synopsis "Library for the Tox encrypted messenger protocol") (description "C library implementation of the Tox encrypted messenger protocol.") @@ -876,13 +913,14 @@ protocols.") (version "0.2.8") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/TokTok/c-toxcore/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/TokTok/c-toxcore.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0qlkimlvbd24nlj7w9b5rpz1r807magqxmfylc1mlxsqhmfi5zj7")))) + "0xgnraysz25fbws5zwjk92mwnl8k1yih701qam8kgm3rxh50kyhm")))) (arguments `(#:tests? #f)) ; FIXME: Testsuite seems to stay stuck on test 3. Disable ; for now. @@ -1647,7 +1685,7 @@ notifications, and Python scripting support.") (define-public libqmatrixclient (package (name "libqmatrixclient") - (version "0.3.0.2") + (version "0.4.0") (source (origin (method git-fetch) @@ -1657,7 +1695,7 @@ notifications, and Python scripting support.") (file-name (git-file-name name version)) (sha256 (base32 - "03pxmr4wa818fgqddkr2fkwz6pda538x3ic9yq7c40x98zqf55w5")))) + "1llzqjagvp91kcg26q5c4qw9aaz7wna3rh6k06rc3baivrjqf3cn")))) (build-system cmake-build-system) (inputs `(("qtbase" ,qtbase))) @@ -1675,7 +1713,7 @@ QMatrixClient project.") (define-public quaternion (package (name "quaternion") - (version "0.0.9.2") + (version "0.0.9.3") (source (origin (method git-fetch) @@ -1685,31 +1723,31 @@ QMatrixClient project.") (file-name (git-file-name name version)) (sha256 (base32 - "0zrr4khbbdf5ziq65gi0cb1yb1d0y5rv18wld22w1x96f7fkmrib")))) + "1hr9zqf301rg583n9jv256vzj7y57d8qgayk7c723bfknf1s6hh3")))) (build-system cmake-build-system) (inputs `(("libqmatrixclient" ,libqmatrixclient) ("qtbase" ,qtbase) - ("qtdeclarative" ,qtdeclarative))) + ("qtdeclarative" ,qtdeclarative) + ("qtquickcontrols" ,qtquickcontrols) + ("qtsvg" ,qtsvg) + ("qttools" ,qttools))) (arguments `(#:tests? #f ; No tests #:phases (modify-phases %standard-phases - (add-after 'unpack 'fix-libqmatrixclient-dynamic-linking - ;; Upstream recommends statically linking with - ;; libqmatrixclient. Patch the source so that we can dynamically - ;; link instead. In a future release, when upstream moves to - ;; dynamic linking, remove this phase. - (lambda _ - (substitute* "CMakeLists.txt" - (("^add_subdirectory\\(lib\\)" all) - (string-append "#" all))) - (for-each - (lambda (file) - (substitute* file - (("#include \"lib/([^\"]*)\"" all header) - (string-append "#include <" header ">")))) - (find-files "client" "\\.(cpp|h)$")) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/quaternion") + `("QT_PLUGIN_PATH" ":" prefix + (,(string-append (assoc-ref inputs "qtsvg") + "/lib/qt5/plugins"))) + `("QML2_IMPORT_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/qml")) + '("qtdeclarative" "qtquickcontrols")))) #t))))) (home-page "https://matrix.org/docs/projects/client/quaternion.html") (synopsis "Graphical client for the Matrix instant messaging protocol") @@ -1720,4 +1758,128 @@ QMatrixClient project.") (license (list license:gpl3+ ; all source code license:lgpl3+)))) ; icons/breeze +(define-public hangups + (package + (name "hangups") + (version "0.4.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "hangups" version)) + (sha256 + (base32 "0mvpfd5dc3zgcvwfidcd2qyn59xl5biv728mxifw0ls5rzkc9chs")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'relax-dependencies + ;; Relax overly strict package version specifications. + (lambda _ + (substitute* "setup.py" + (("==") ">=")) + #t))))) + (propagated-inputs + `(("python-aiohttp" ,python-aiohttp) + ("python-appdirs" ,python-appdirs) + ("python-async-timeout" ,python-async-timeout) + ("python-configargparse" ,python-configargparse) + ("python-mechanicalsoup" ,python-mechanicalsoup) + ("python-protobuf" ,python-protobuf) + ("python-readlike" ,python-readlike) + ("python-reparser" ,python-reparser) + ("python-requests" ,python-requests) + ("python-urwid" ,python-urwid))) + (home-page "https://hangups.readthedocs.io/") + (synopsis "Instant messaging client for Google Hangouts") + (description + "Hangups is an instant messaging client for Google Hangouts. It includes +both a Python library and a reference client with a text-based user interface. + +Hangups is implements a reverse-engineered version of Hangouts' proprietary, +non-interoperable protocol, which allows it to support features like group +messaging that aren’t available to clients that connect over XMPP.") + (license license:expat))) + +(define-public telegram-purple + (package + (name "telegram-purple") + (version "1.3.1") + (home-page "https://github.com/majn/telegram-purple") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)) + (recursive? #t))) + (sha256 + (base32 + "0p93jpjpx7hszwffzgixw04zkrpsiyzz4za3gfr4j07krc4771fp")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "Makefile.in" + ;; By default these two directories point to Pidgin's own + ;; prefix. + (("^PLUGIN_DIR_PURPLE=.*") + (string-append + "exec_prefix := @exec_prefix@\n" + "PLUGIN_DIR_PURPLE := @libdir@/purple-2\n")) + (("^DATA_ROOT_DIR_PURPLE=.*") + "DATA_ROOT_DIR_PURPLE := @datarootdir@\n") + + ;; Honor sysconfdir instead of trying to write to /etc. + (("DESTDIR\\)/etc/telegram-purple") + "DESTDIR)@sysconfdir@/telegram-purple")) + #t)) + (patches (search-patches "telegram-purple-adjust-test.patch")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("which" ,which))) + (inputs + `(("pidgin" ,pidgin) + ("libgcrypt" ,libgcrypt) + ("libwebp" ,libwebp) + ("glib" ,glib) + ("gettext" ,gnu-gettext) + ("gtk+" ,gtk+-2) + ("zlib" ,zlib))) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; We're using release tag for repository checkout - let's prepare + ;; header defining GIT_COMMIT manually instead of running git to + ;; identify version which is being compiled. Git repository + ;; is removed anyway and only source code is kept. + (add-after 'unpack 'prepare-commit.h + (lambda _ + (with-output-to-file "./commit.h" + (lambda () + (display + (string-append "//generated by guix, use version instead of " + "commit\n" + "#ifndef GIT_COMMIT\n" + "# define GIT_COMMIT \"v" + ,version "\"\n" + "#endif\n")))) + #t)) + (add-before 'configure 'set-SHELL-variables + ;; Set these environment variables so that 'tgl/configure' uses the + ;; right shell and not /bin/sh. + (lambda _ + (let ((bash (which "bash"))) + (setenv "SHELL" bash) + (setenv "CONFIG_SHELL" bash) + #t)))))) + (synopsis "Telegram messaging support for Pidgin") + (description + "Telegram-purple is a plugin for Libpurple, the communication library +used by the Pidgin instant messaging client, that adds support for the +Telegram messenger.") + + ;; Code under tgl/ (the Telegram library) is LGPLv2.1+, but the plugin + ;; itself is GPLv2+. + (license license:gpl2+))) + ;;; messaging.scm ends here diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index 12d736a76a..b69ec07158 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -32,6 +32,7 @@ #:use-module (guix build-system go) #:use-module (guix utils) #:use-module (gnu packages admin) + #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages curl) #:use-module (gnu packages check) @@ -39,6 +40,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages django) #:use-module (gnu packages gd) + #:use-module (gnu packages gettext) #:use-module (gnu packages image) #:use-module (gnu packages mail) #:use-module (gnu packages networking) @@ -403,3 +405,27 @@ WSGI and the node exporter textfile collector.") written in Go with pluggable metric collectors.") (home-page "https://github.com/prometheus/node_exporter") (license license:asl2.0)))) + +(define-public fswatch + (package + (name "fswatch") + (version "1.13.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emcrisostomo/fswatch.git") + (commit version))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0r9m3rysqa1kdgghv2i6sv4zrd0v8idsbrp627ys642dl39svir3")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gettext-minimal) + ("libtool" ,libtool))) + (synopsis "File system monitor") + (description "This package provides a file system monitor.") + (home-page "https://github.com/emcrisostomo/fswatch") + (license license:gpl3+))) diff --git a/gnu/packages/mono.scm b/gnu/packages/mono.scm index 343cebc99f..17f90fe30a 100644 --- a/gnu/packages/mono.scm +++ b/gnu/packages/mono.scm @@ -41,7 +41,8 @@ ".tar.bz2")) (sha256 (base32 - "0jibyvyv2jy8dq5ij0j00iq3v74r0y90dcjc3dkspcfbnn37cphn")))) + "0jibyvyv2jy8dq5ij0j00iq3v74r0y90dcjc3dkspcfbnn37cphn")) + (patches (search-patches "mono-mdoc-timestamping.patch")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gettext-minimal) @@ -52,10 +53,26 @@ (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'make-reproducible + (lambda _ + (substitute* "mono/mini/Makefile.in" + (("build_date = [^;]*;") + "build_date = (void*) 0;")) + #t)) (add-after 'unpack 'set-env (lambda _ ;;* (#:key inputs #:allow-other-keys) ;; all tests under mcs/class fail trying to access $HOME - (setenv "HOME" "/tmp"))) + (setenv "HOME" "/tmp") + ;; ZIP files have "DOS time" which starts in Jan 1980. + (setenv "SOURCE_DATE_EPOCH" "315532800") + #t)) + (add-after 'unpack 'fix-includes + (lambda _ + ;; makedev is in <sys/sysmacros.h> now. Include it. + (substitute* "mono/io-layer/processes.c" + (("#ifdef HAVE_SYS_MKDEV_H") "#if 1") + (("sys/mkdev.h") "sys/sysmacros.h")) + #t)) (add-after 'unpack 'patch-tests (lambda _ ;;* (#:key inputs #:allow-other-keys) (substitute* "mono/tests/Makefile.in" @@ -105,5 +122,5 @@ (description "Mono is a compiler, vm, debugger and set of libraries for C#, a C-style programming language from Microsoft that is very similar to Java.") - (home-page "http://mono-project.com/") + (home-page "https://www.mono-project.com/") (license license:x11))) diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index c9effbafa3..c7736eeb51 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -470,13 +470,13 @@ compression format (.mpc files).") (define-public eyed3 (package (name "eyed3") - (version "0.8.7") + (version "0.8.8") (source (origin (method url-fetch) (uri (pypi-uri "eyeD3" version)) (sha256 (base32 - "1fzqy6hkg73xvpapdjrdzr3r0fsamnplvjfl7dz7rzgzx2r4x4pg")))) + "197lszkyzm377ym5r0ssryfsiz20yjx8y4rii3wc81n92d1qzlaq")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; the required test data contains copyrighted material. diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 3e69ddba69..0a81a3b8b8 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -58,7 +58,7 @@ (define-public libmpdclient (package (name "libmpdclient") - (version "2.15") + (version "2.16") (source (origin (method url-fetch) (uri @@ -67,7 +67,7 @@ "/libmpdclient-" version ".tar.xz")) (sha256 (base32 - "1la60ar6i4ghpscrlgm45kci9b74bvkpsfybhg0ygs4rzpwzdnxl")))) + "0r24cl3i9nvs6a47mvwaxk1kb5wmnhkhrw1q5cq9010fgjvdlszs")))) (build-system meson-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -90,7 +90,7 @@ interfacing MPD in the C, C++ & Objective C languages.") (define-public mpd (package (name "mpd") - (version "0.20.21") + (version "0.20.23") (source (origin (method url-fetch) (uri @@ -99,7 +99,7 @@ interfacing MPD in the C, C++ & Objective C languages.") "/mpd-" version ".tar.xz")) (sha256 (base32 - "1p2qrhdb1gzfv3y5dvvbc9s2wwmhg3azvzf8r02hzhk5q96pc8l3")))) + "1smg6hab4kwrzsw1k7vlpya3ampdk8psnmkrzxlgb43j4fgmygjh")))) (build-system gnu-build-system) (arguments `(#:phases @@ -165,7 +165,7 @@ protocol.") (define-public mpd-mpc (package (name "mpd-mpc") - (version "0.30") + (version "0.31") (source (origin (method url-fetch) (uri @@ -174,10 +174,12 @@ protocol.") "/mpc-" version ".tar.xz")) (sha256 (base32 - "1kkzhrypkp0v6xv4d6db415pd0h6jqki29kfpsnfkvrhhh55pz35")))) + "0b9bsn4sl26xc6wdcms51x9yxznkxkppaycn8gnv4rd1m21kwdv2")))) (build-system meson-build-system) (inputs `(("libmpdclient" ,libmpdclient))) - (native-inputs `(("pkg-config" ,pkg-config))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python-sphinx" ,python-sphinx))) (synopsis "Music Player Daemon client") (description "MPC is a minimalist command line interface to MPD, the music player daemon.") @@ -242,7 +244,7 @@ terminal using ncurses.") "0m0mjb049sl62vx13h9waavysa30mk0rphacksnvf94n13la62v5")))) (build-system gnu-build-system) (inputs `(("libmpdclient" ,libmpdclient) - ("boost" ,boost) + ("boost" ,boost-cxx14) ("readline" ,readline) ("ncurses" ,ncurses) ("taglib" ,taglib) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index fc8aadef29..f08a7f5f88 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Dave Love <fx@gnu.org> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages gcc) #:use-module (gnu packages linux) @@ -263,3 +265,43 @@ only provides @code{MPI_THREAD_FUNNELED}."))) ;; in the build environment than the package wants while testing. (setenv "OMPI_MCA_rmaps_base_oversubscribe" "yes") #t)) + +(define-public python-mpi4py + (package + (name "python-mpi4py") + (version "3.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "mpi4py" version)) + (sha256 + (base32 + "1mzgd26dfv4vwbci8gq77ss9f0x26i9aqzq9b9vs9ndxhlnv0mxl")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'build 'mpi-setup + ,%openmpi-setup) + (add-before 'check 'pre-check + (lambda _ + ;; Skip BaseTestSpawn class (causes error 'ompi_dpm_dyn_init() + ;; failed --> Returned "Unreachable"' in chroot environment). + (substitute* "test/test_spawn.py" + (("unittest.skipMPI\\('openmpi\\(<3.0.0\\)'\\)") + "unittest.skipMPI('openmpi')")) + #t))))) + (inputs + `(("openmpi" ,openmpi))) + (home-page "https://bitbucket.org/mpi4py/mpi4py/") + (synopsis "Python bindings for the Message Passing Interface standard") + (description "MPI for Python (mpi4py) provides bindings of the Message +Passing Interface (MPI) standard for the Python programming language, allowing +any Python program to exploit multiple processors. + +mpi4py is constructed on top of the MPI-1/MPI-2 specification and provides an +object oriented interface which closely follows MPI-2 C++ bindings. It +supports point-to-point and collective communications of any picklable Python +object as well as optimized communications of Python objects (such as NumPy +arrays) that expose a buffer interface.") + (license bsd-3))) diff --git a/gnu/packages/mtools.scm b/gnu/packages/mtools.scm index e4750f579f..5be3da0137 100644 --- a/gnu/packages/mtools.scm +++ b/gnu/packages/mtools.scm @@ -28,15 +28,15 @@ (define-public mtools (package (name "mtools") - (version "4.0.19") + (version "4.0.23") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mtools/mtools-" - version ".tar.gz")) + version ".tar.bz2")) (sha256 (base32 - "003qnj4rs22v2sih3is55scvav8xq9p1dp5b7gnyl67a60ky516r")))) + "1qwfxzr964fasxlzhllahk8mzh7c82s808wvly95dsqsflkdp27i")))) (build-system gnu-build-system) (home-page "https://www.gnu.org/software/mtools/") (synopsis "Access MS-DOS disks without mounting") diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm index 4f5eac16b9..71e1efcd8c 100644 --- a/gnu/packages/multiprecision.scm +++ b/gnu/packages/multiprecision.scm @@ -26,6 +26,7 @@ (define-module (gnu packages multiprecision) #:use-module (guix licenses) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages m4) #:use-module (gnu packages gcc) #:use-module (guix packages) @@ -225,3 +226,68 @@ minor changes to the source code. In most cases only a few type statements and (for Fortran-90 programs) read/write statements need to be changed. PSLQ and numerical quadrature programs are included.") (license bsd-3))) + +(define-public tomsfastmath + (package + (name "tomsfastmath") + (version "0.13.0") + (synopsis "Large integer arithmetic library") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/libtom/tomsfastmath/" + "releases/download/v" version "/" + "tfm-" (version-major+minor version) ".tar.bz2")) + (sha256 + (base32 + "01rlsvp6lskk2a0gfdi24ak5h8vdwi6kqbvbwjnmb92r0zrfdvwd")) + (patches (search-patches "tomsfastmath-constness.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("libtool" ,libtool))) + (arguments + `(#:make-flags (list "-f" "makefile.shared" + (string-append "LIBPATH=" %output "/lib") + (string-append "INCPATH=" %output "/include") + "GROUP=root" "USER=root" + "CC=gcc") + #:phases + (modify-phases %standard-phases + (delete 'configure) ;no configuration + (replace 'check + (lambda* (#:key make-flags #:allow-other-keys) + (and (zero? (apply system* "make" + "stest" "test_standalone" + make-flags)) + (zero? (system* "./stest")) + (zero? (system* "./test"))))) + (add-before 'install 'install-nogroup + (lambda _ + ;; Let permissions inherit from the current process + (substitute* "makefile.shared" + (("-g \\$\\(GROUP\\) -o \\$\\(USER\\)") "")) + #t)) + (add-after 'install 'install-doc + (lambda* (#:key outputs #:allow-other-keys) + (let ((docdir (string-append (assoc-ref outputs "out") + "/share/doc/tomsfastmath"))) + (install-file "doc/tfm.pdf" docdir) + #t))) + (add-after 'install 'install-pc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (pc-dir (string-append out "/lib/pkgconfig"))) + (call-with-output-file "tomsfastmath.pc" + (lambda (port) + (format port "~ +Name: TomsFastMath +Description: ~a +Version: ~a +Libs: -L~a/lib -ltfm~%" + ,synopsis ,version out))) + (install-file "tomsfastmath.pc" pc-dir) + #t)))))) + (home-page "http://www.libtom.org/TomsFastMath/") + (description "TomsFastMath is a large integer library written in portable +ISO C. It is a port of LibTomMath with optional support for inline assembler +multiplies.") + (license public-domain))) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index ac2ed81895..e16e64af73 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2018 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -284,7 +285,7 @@ score, keyboard, guitar, drum and controller views.") ("pulseaudio" ,pulseaudio) ("qtbase" ,qtbase) ("qtx11extras" ,qtx11extras) - ("sqlite" ,sqlite) + ("sqlite" ,sqlite-with-column-metadata) ("sparsehash" ,sparsehash) ("taglib" ,taglib))) (home-page "http://clementine-player.org") @@ -309,29 +310,27 @@ playing your music.") (name "cmus") (version "2.7.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/" name "/" name "/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/cmus/cmus.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0raixgjavkm7hxppzsc5zqbfbh2bhjcmbiplhnsxsmyj8flafyc1")))) + "0xd96py21bl869qlv1353zw7xsgq6v5s8szr0ldr63zj5fgc2ps5")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; cmus does not include tests #:phases (modify-phases %standard-phases - (replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - - ;; It's an idiosyncratic configure script that doesn't - ;; understand --prefix=..; it wants prefix=.. instead. - (zero? - (system* "./configure" - (string-append "prefix=" out))))))))) + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; It's an idiosyncratic configure script that doesn't + ;; understand --prefix=..; it wants prefix=.. instead. + (invoke "./configure" + (string-append "prefix=" out)) + #t)))))) ;; TODO: cmus optionally supports the following formats, which haven't yet ;; been added to Guix: ;; @@ -889,9 +888,10 @@ Sega Master System/Mark III, Sega Genesis/Mega Drive, BBC Micro #t)) (add-after 'install 'install-info (lambda _ - (zero? (system* "make" - "-j" (number->string (parallel-job-count)) - "conf=www" "install-info"))))))) + (invoke "make" + "-j" (number->string (parallel-job-count)) + "conf=www" "install-info") + #t))))) (inputs `(("guile" ,guile-1.8) ("font-dejavu" ,font-dejavu) @@ -1144,14 +1144,14 @@ your own lessons.") (name "powertabeditor") (version "2.0.0-alpha10") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/powertab/powertabeditor/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/powertab/powertabeditor.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1fr14ql0yhlqvh6y08yaanszm2nvca5i50rqym396kfvga3ky18x")) + "1z4fhdp71ck9synr12rg1p6365xnypd8ih40c5icj4si36khvksk")) (modules '((guix build utils))) (snippet '(begin @@ -1185,14 +1185,14 @@ add_library( rapidjson INTERFACE IMPORTED )")) (modify-phases %standard-phases (replace 'check (lambda _ - (zero? (system* "bin/pte_tests" - ;; FIXME: these tests fail - "exclude:Actions/EditStaff" - "exclude:Formats/PowerTabOldImport/MergeMultiBarRests" - "exclude:Score/ViewFilter/FilterRule" - "exclude:Score/ViewFilter/ViewFilter" - "exclude:Formats/PowerTabOldImport/Directions" - )))) + (invoke "bin/pte_tests" + ;; FIXME: these tests fail + "exclude:Actions/EditStaff" + "exclude:Formats/PowerTabOldImport/MergeMultiBarRests" + "exclude:Score/ViewFilter/FilterRule" + "exclude:Score/ViewFilter/ViewFilter" + "exclude:Formats/PowerTabOldImport/Directions") + #t)) ;; FIXME: This bug has been fixed upstream, but no release has been ;; made yet. See https://github.com/powertab/powertabeditor/issues/257 (add-after 'unpack 'fix-boost-bug @@ -1257,12 +1257,14 @@ Editor. It is compatible with Power Tab Editor 1.7 and Guitar Pro.") (name "jalv-select") (version "0.8") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/brummer10/jalv_select/" - "archive/V" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/brummer10/jalv_select.git") + (commit (string-append "V" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0zraagwr681b5s3qifxf399c7q93jz23c8sr42gmff9zqnvxc75q")))) + "0gqh768sbvn9ffyx1vqg9i57py9x9v4l65bk6wjsvgga4d7m83k1")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -1277,6 +1279,13 @@ Editor. It is compatible with Power Tab Editor 1.7 and Guitar Pro.") (string-append "ls -1 " (assoc-ref inputs "jalv") "/bin"))) (substitute* "jalv.select.h" (("gtkmm.h") "gtkmm-2.4/gtkmm.h")) + #t)) + (add-before 'reset-gzip-timestamps 'make-manpages-writable + (lambda* (#:key outputs #:allow-other-keys) + (for-each make-file-writable + (find-files (string-append (assoc-ref outputs "out") + "/share/man") + ".*\\.gz$")) #t))))) (inputs `(("lilv" ,lilv) @@ -1751,9 +1760,7 @@ export.") (lambda _ (substitute* "tcl/pd-gui.tcl" (("exec wish ") (string-append "exec " (which "wish8.6") " "))) - #t)) - (add-after 'unpack 'autoconf - (lambda _ (zero? (system* "bash" "./autogen.sh"))))))) + #t))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -1861,13 +1868,14 @@ using a system-independent interface.") (name "portmidi-for-extempore") (version "217") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/extemporelang/portmidi/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/extemporelang/portmidi.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0gjikwciyr8kk4y3qiv1pcq58xpgw38ql1m2gs6g0qc1s8sx4235")))) + "1inriyrjf7xx2b7r54x0vmf9ngyqgr7g5060c22bwkbsgg53apzv")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests (native-inputs '()) @@ -2239,14 +2247,14 @@ from the command line.") (define-public qtractor (package (name "qtractor") - (version "0.9.2") + (version "0.9.3") (source (origin (method url-fetch) (uri (string-append "http://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "1j3rpvdkw9rw48j4zyfn6rprp01csy4rl6zckcjyx0vh7vaycchr")))) + "1010gvkzdzdk39g1g6wx2j19ls0kdl6l9q51xzk2qik7h2fwxl71")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no "check" target @@ -2278,59 +2286,66 @@ follows a traditional multi-track tape recorder control paradigm.") (license license:gpl2+))) (define-public ams-lv2 - (package - (name "ams-lv2") - (version "1.2.1") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/blablack/ams-lv2/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "1xacxyzqcj83g9c1gwfn36gg1c6yi15v7km4vidfidrjzb4x27fq")))) - (build-system waf-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'remove-sse-flags - (lambda* (#:key system #:allow-other-keys) - (when (not (or (string-prefix? "x86_64" system) - (string-prefix? "i686" system))) - (substitute* "wscript" - (("'-msse', '-mfpmath=sse', ") "")) - #t)))) - #:tests? #f)) ; no tests - (inputs - `(("lv2" ,lv2) - ("lvtk" ,lvtk) - ("gtkmm" ,gtkmm-2) - ("gtk" ,gtk+-2) - ("cairo" ,cairo) - ("fftw" ,fftw))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (home-page "https://objectivewave.wordpress.com/ams-lv2/") - (synopsis "Port of Alsa Modular Synth internal modules into LV2") - (description "This set of LV2 plugins is a port of the internal modules + ;; Version 1.2.1 built with Python 3.7 raises an error in the waf-script. + ;; Therefore, we take two more commmits than 1.2.1 that introduce an updated + ;; waf-script and fix one error. + (let ((commit "377d166db54a787b48979171c5652d2eb4f1bbb5") + (revision "1")) + (package + (name "ams-lv2") + (version (git-version "1.2.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/blablack/ams-lv2.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ndgxcxjxwidg7436k0nb5clxkyi878k1j999sbbd1gk2fm0kcqm")))) + (build-system waf-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-sse-flags + (lambda* (#:key system #:allow-other-keys) + (unless (or (string-prefix? "x86_64" system) + (string-prefix? "i686" system)) + (substitute* "wscript" + (("'-msse', '-mfpmath=sse', ") ""))) + #t))) + #:tests? #f)) ; no tests + (inputs + `(("lv2" ,lv2) + ("lvtk" ,lvtk) + ("gtkmm" ,gtkmm-2) + ("gtk" ,gtk+-2) + ("cairo" ,cairo) + ("fftw" ,fftw))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://objectivewave.wordpress.com/ams-lv2/") + (synopsis "Port of Alsa Modular Synth internal modules into LV2") + (description "This set of LV2 plugins is a port of the internal modules found in Alsa Modular Synth. These plugins are used to create modular synthesizers and contain: VCO, VCF, VCA, LFO, slew limiter, envelopes, sample and hold, etc.") - (license license:gpl2))) + (license license:gpl2)))) (define-public gxtuner (package (name "gxtuner") (version "2.4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/brummer10/gxtuner/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/brummer10/gxtuner.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1hn5qjac7qd00v0sp7ijhhc3sb26ks9bni06nngivva21h61xrjr")))) + "1fxd2akan2njlr7fpkh84830783qhh1gg7yakswqk5dd466dcn96")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -2436,13 +2451,14 @@ tune-in sender list from @url{http://opml.radiotime.com}.") (name "pianobar") (version "2016.06.02") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/PromyLOPh/" - name "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/PromyLOPh/pianobar.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1hi5rr6jcr0kwf4xfz007ndwkjkp287lhwlsgfz6iryqa5n6jzcp")))) + "058fbdxp7n35hxwy3b8slfy4pb4n63cb173vfmywqa06wh1dv6f6")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests @@ -2672,13 +2688,14 @@ Songs can be searched by artist, name or even by a part of the song text.") (define-public beets (package (name "beets") - (version "1.4.6") + (version "1.4.7") (source (origin (method url-fetch) (uri (pypi-uri "beets" version)) + (patches (search-patches "beets-python-3.7-fix.patch")) (sha256 (base32 - "0l2vfrknwcsm6bn83m7476qrz45qwgxcb5k0h7kn96kr70irn1v2")))) + "0w3gz69s9gf5ih69d4sddgh7ndj7658m621bp742zldvjakdncrs")))) (build-system python-build-system) (arguments `(#:phases @@ -2687,6 +2704,12 @@ Songs can be searched by artist, name or even by a part of the song text.") (lambda _ (setenv "HOME" (string-append (getcwd) "/tmp")) #t)) + (add-after 'unpack 'make-python3.7-compatible + (lambda _ + ;; See <https://github.com/beetbox/beets/issues/2978>. + (substitute* "beets/autotag/hooks.py" + (("re\\._pattern_type") "re.Pattern")) + #t)) (replace 'check (lambda _ (invoke "nosetests" "-v")))))) @@ -2723,14 +2746,14 @@ of tools for manipulating and accessing your music.") (name "milkytracker") (version "1.02.00") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/milkytracker/" - "MilkyTracker/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/milkytracker/MilkyTracker.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "08v0l4ipvvwkwv4ywkc6c8a6xnpkyb02anj36w8q6gikxrs6xjvb")) + "05a6d7l98k9i82dwrgi855dnccm3f2lkb144gi244vhk1156n0ca")) (modules '((guix build utils))) ;; Remove non-FSDG compliant sample songs. (snippet @@ -2763,16 +2786,16 @@ for improved Amiga ProTracker 2/3 compatibility.") (define-public schismtracker (package (name "schismtracker") - (version "20180513") + (version "20180810") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/" name "/" name "/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/schismtracker/schismtracker.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1yjfd02arb51n0vyv11qgpn6imh7hcqnc3953cbvgwb4cnrswk9f")) + "0cwp5fna14hjrlf652l96ja5cjq63is3cwg6pp4wbpx43mb7qb2d")) (modules '((guix build utils))) (snippet ;; Remove use of __DATE__ and __TIME__ for reproducibility. @@ -2785,8 +2808,6 @@ for improved Amiga ProTracker 2/3 compatibility.") (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ (invoke "autoreconf" "-vfi"))) (add-before 'configure 'link-libm (lambda _ (setenv "LIBS" "-lm") #t))))) (native-inputs @@ -3284,7 +3305,8 @@ plugins, a switch trigger, a toggle switch, and a peakmeter.") "1wg47vjw9djn99gbnsl2bcwj4xhdid61m4wrbn2nlp797flj91ic")))) (build-system waf-build-system) (arguments - `(#:tests? #f ; no "check" target + `(#:python ,python-2 + #:tests? #f ; no "check" target #:configure-flags (list "--no-webkit") #:phases (modify-phases %standard-phases @@ -3524,13 +3546,14 @@ are a C compiler and glib. Full API documentation and examples are included.") (version "1.1.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/LMMS/lmms/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/LMMS/lmms.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1g76z7ha3hd53vbqaq9n1qg6s3lw8zzaw51iny6y2bz0j1xqwcsr")))) + "03hhymc6d73fa3wbcqb7rm1l03zkw605k5i9kvkvjmv488bqh3pd")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no tests @@ -3919,9 +3942,9 @@ OSC connections.") (lambda* (#:key inputs #:allow-other-keys) (with-directory-excursion "faust" (delete-file "main.cpp") - (zero? (system* "faust" "-i" - "-a" "lv2synth.cpp" - "-o" "main.cpp" "main.dsp")))))))) + (invoke "faust" "-i" + "-a" "lv2synth.cpp" + "-o" "main.cpp" "main.dsp"))))))) (inputs `(("boost" ,boost) ("lv2" ,lv2) @@ -4071,14 +4094,15 @@ ISRCs and the MCN (=UPC/EAN) from disc.") (base32 "0ikb9igyyk28jm34raxfzkw2qyn4nzzwsymdyprp7cmvi6g2ajb7")))) (build-system cmake-build-system) - (arguments `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (and - ;; requires network connections - ;; (zero? (system* "tests/mbtest")) - (zero? (system* "tests/ctest")))))))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; requires network connections + ;; (invoke "tests/mbtest") + (invoke "tests/ctest") + #t))))) (inputs `(("neon" ,neon) ("libxml2" ,libxml2))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -4146,17 +4170,15 @@ at @code{musicbrainz.org}.") (version "0.10") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/trizen/clyrics/archive/" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/trizen/clyrics.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1l0cg26afnjv8cgk0jbiavbyvq55q1djyigzmi526rpcjjwq9jwn")) - (file-name (string-append name "-" version ".tar.gz")))) + "1qvj4dyipkkdccx5hci4z0q23i54ldk6hh7x5m35a7f70rrj6fbk")))) (build-system trivial-build-system) - (native-inputs `(("tar" ,tar) - ("gzip" ,gzip))) (inputs `(("bash" ,bash) ;for the wrapped program ("perl" ,perl) @@ -4173,17 +4195,12 @@ at @code{musicbrainz.org}.") (ice-9 match) (srfi srfi-26)) (let* ((source (assoc-ref %build-inputs "source")) - (tar (assoc-ref %build-inputs "tar")) - (gzip (assoc-ref %build-inputs "gzip")) (output (assoc-ref %outputs "out"))) (setenv "PATH" (string-append - (assoc-ref %build-inputs "gzip") "/bin" ":" (assoc-ref %build-inputs "bash") "/bin" ":" (assoc-ref %build-inputs "perl") "/bin" ":")) - (invoke (string-append tar "/bin/tar") "xvf" - source) - (chdir ,(string-append "clyrics-" version)) + (copy-recursively source (getcwd)) (patch-shebang "clyrics") (substitute* "clyrics" (("/usr/share") output)) diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm index 8f96b605a6..057e8c3bd9 100644 --- a/gnu/packages/nano.scm +++ b/gnu/packages/nano.scm @@ -30,7 +30,7 @@ (define-public nano (package (name "nano") - (version "3.1") + (version "3.2") (source (origin (method url-fetch) @@ -38,7 +38,7 @@ version ".tar.xz")) (sha256 (base32 - "17kinzyv6vwgyx2d0ym1kp65qbf7kxzwpyg21ic1rijv1aj2rh0l")))) + "0jb3zq0v84xb0chyynkcp2jhs9660wmpkic294p4p6c96npp69yi")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 5a0c464252..a9e1576733 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -144,7 +144,8 @@ or, more generally, MAC addresses of the same category of hardware.") 'check 'disable-checkconf-test (lambda _ (substitute* "src/Makefile" - (("^TESTS = .*") "TESTS = \n"))))))) + (("^TESTS = .*") "TESTS = \n")) + #t))))) (home-page "http://www.remlab.net/miredo/") (synopsis "Teredo IPv6 tunneling software") (description @@ -216,7 +217,7 @@ libwrap.so: $(LIB_OBJ)\n (substitute* "scaffold.c" (("extern char .malloc.*;") "")) ;; This, believe it or not, is the recommended way to build! - (zero? (system* "make" "REAL_DAEMON_DIR=/etc" "linux")))) + (invoke "make" "REAL_DAEMON_DIR=/etc" "linux"))) ;; There is no make install stage, so we have to do it ourselves. (replace 'install (lambda _ @@ -251,7 +252,8 @@ libwrap.so: $(LIB_OBJ)\n (for-each (lambda (x) (install-file x (string-append out "/bin/"))) - bins))))))) + bins)) + #t))))) (home-page "http://www.porcupine.org") (synopsis "Monitor and filter incoming requests for network services") (description "With this package you can monitor and filter incoming requests for @@ -373,8 +375,8 @@ files contain direct mappings of the abstractions provided by the ØMQ C API.") ;; librdkafka++.so lacks RUNPATH for librdkafka.so (setenv "LDFLAGS" (string-append "-Wl,-rpath=" out "/lib")) - (zero? (system* "./configure" - (string-append "--prefix=" out))))))))) + (invoke "./configure" + (string-append "--prefix=" out)))))))) (native-inputs `(("python" ,python-wrapper))) (propagated-inputs @@ -457,7 +459,8 @@ Ethernet devices.") (bin (string-append out "/bin"))) (mkdir-p bin) (copy-file "ifstatus" - (string-append bin "/ifstatus")))))))) + (string-append bin "/ifstatus"))) + #t))))) (inputs `(("ncurses" ,ncurses))) (home-page "http://ifstatus.sourceforge.net/graphic/index.html") (synopsis "Text based network interface status monitor") @@ -511,14 +514,16 @@ and min/max network usage.") (lambda* (#:key inputs #:allow-other-keys) (substitute* "src/tun.c" (("PATH=[^ ]* ") - (string-append (assoc-ref inputs "net-tools") "/bin/"))))) + (string-append (assoc-ref inputs "net-tools") "/bin/"))) + #t)) (add-before 'check 'delete-failing-tests ;; Avoid https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=802105. (lambda _ (substitute* "tests/common.c" (("tcase_add_test\\(tc, \ test_parse_format_ipv(4(|_listen_all|_mapped_ipv6)|6)\\);") - ""))))) + "")) + #t))) #:make-flags (list "CC=gcc" (string-append "prefix=" (assoc-ref %outputs "out"))) #:test-target "test")) @@ -538,7 +543,7 @@ and up to 1 Mbit/s downstream.") (define-public whois (package (name "whois") - (version "5.3.2") + (version "5.4.0") (source (origin (method url-fetch) @@ -546,7 +551,7 @@ and up to 1 Mbit/s downstream.") name "_" version ".tar.xz")) (sha256 (base32 - "0m3352d5b0ragygbqjbaimghrbx4va2rixa34j5a1g3jj6l4nwbr")))) + "0y73b3z1akni620s1hlrijwdrk95ca1c8csjds48vpd6z86awx9p")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no test suite @@ -779,7 +784,8 @@ application stack itself.") (("ENV_CURL_BIN.get\\('curl'\\)") (string-append "ENV_CURL_BIN.get('" (assoc-ref inputs "curl") - "/bin/curl')")))))))) + "/bin/curl')"))) + #t))))) (home-page "https://github.com/reorx/httpstat") (synopsis "Visualize curl statistics") (description @@ -949,7 +955,7 @@ private (reserved).") ,(string-append "PREFIX=" out) "INSTALLDIRS=site"))) (setenv "CONFIG_SHELL" (which "sh")) - (zero? (apply system* "perl" args)))))))) + (apply invoke "perl" args))))))) (home-page "https://metacpan.org/release/Socket6") (synopsis "IPv6 related part of the C socket.h defines and structure manipulators for Perl") @@ -1009,7 +1015,7 @@ offline emulation of DNS.") ,(string-append "PREFIX=" out) "INSTALLDIRS=site"))) (setenv "CONFIG_SHELL" (which "sh")) - (zero? (apply system* "perl" args)))))))) + (apply invoke "perl" args))))))) (home-page "https://metacpan.org/release/NetAddr-IP") (synopsis @@ -1145,7 +1151,7 @@ sockets in Perl.") (modify-phases %standard-phases (replace 'check (lambda _ - (zero? (system* "ctest" "-E" "url-test"))))))) + (invoke "ctest" "-E" "url-test")))))) (synopsis "Library providing automatic proxy configuration management") (description "Libproxy handles the details of HTTP/HTTPS proxy configuration for applications across all scenarios. Applications using @@ -1416,13 +1422,13 @@ procedure calls (RPCs).") (modify-phases %standard-phases (replace 'install (lambda _ - (zero? (system* "make" - ;; Don't try to create directories under /var. - "RUNDIR=/tmp" - "PKIDIR=/tmp" - "LOGDIR=/tmp" - "DBDIR=/tmp" - "install"))))))) + (invoke "make" + ;; Don't try to create directories under /var. + "RUNDIR=/tmp" + "PKIDIR=/tmp" + "LOGDIR=/tmp" + "DBDIR=/tmp" + "install")))))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -1723,8 +1729,8 @@ interface and a programmable text output for scripting.") (lambda _ (chdir "libnet") #t)) (add-before 'build 'build-doc (lambda* (#:key make-flags #:allow-other-keys) - (zero? (apply system* "make" "-C" "doc" "doc" - make-flags))))))) + (apply invoke "make" "-C" "doc" "doc" + make-flags)))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) diff --git a/gnu/packages/nfs.scm b/gnu/packages/nfs.scm index f6bb5b3b71..bdb36d272b 100644 --- a/gnu/packages/nfs.scm +++ b/gnu/packages/nfs.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> +;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -60,6 +61,13 @@ ,(string-append "--with-krb5=" (assoc-ref %build-inputs "mit-krb5"))) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-glibc-compatability + (lambda _ + (substitute* '("utils/blkmapd/device-discovery.c" + "utils/blkmapd/dm-device.c") + (("<sys/stat.h>") + "<sys/stat.h>\n#include <sys/sysmacros.h>")) + #t)) (add-before 'configure 'adjust-command-file-names (lambda _ ;; Remove assumptions of FHS from start-statd script diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 6b55e84fed..11389440dc 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2016, 2017 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2016-2018 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Peter Kreye <kreyepr@gmail.com> @@ -59,6 +59,7 @@ #:use-module (gnu packages time) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) + #:use-module (gnu packages virtualization) #:use-module (gnu packages web-browsers) #:use-module (gnu packages xml) #:use-module (gnu packages xorg) @@ -120,7 +121,7 @@ "/lib/ocaml/site-lib")) #:phases (modify-phases %standard-phases (delete 'configure)))) -(define-public ocaml +(define-public ocaml-4.02 (package (name "ocaml") (version "4.02.3") @@ -145,7 +146,8 @@ (files (list "lib/ocaml" "lib/ocaml/site-lib"))) (search-path-specification (variable "CAML_LD_LIBRARY_PATH") - (files (list "lib/ocaml/site-lib/stubslibs"))))) + (files (list "lib/ocaml/site-lib/stubslibs" + "lib/ocaml/site-lib/stublibs"))))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config))) @@ -228,7 +230,7 @@ functional, imperative and object-oriented styles of programming.") (define-public ocaml-4.01 (package - (inherit ocaml) + (inherit ocaml-4.02) (version "4.01.0") (source (origin (method url-fetch) @@ -240,13 +242,24 @@ functional, imperative and object-oriented styles of programming.") (base32 "03d7ida94s1gpr3gadf4jyhmh5rrszd5s4m4z59daaib25rvfyv7")))) (arguments - (substitute-keyword-arguments (package-arguments ocaml) + (substitute-keyword-arguments (package-arguments ocaml-4.02) ((#:phases phases) `(modify-phases ,phases (replace 'build (lambda _ ;; Specifying '-j' at all causes the build to fail. (zero? (system* "make" "world.opt")))) + ,@(if (string=? "aarch64-linux" (%current-system)) + ;; Custom configure script doesn't recongnize aarch64. + '((replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (mandir (string-append out "/share/man"))) + (invoke "./configure" + "--prefix" out + "--mandir" mandir + "-host" "armv8l-unknown-linux-gnu"))))) + '()) (replace 'check (lambda _ (with-directory-excursion "testsuite" @@ -256,10 +269,78 @@ functional, imperative and object-oriented styles of programming.") (string-append "TOPDIR=" (getcwd) "/..")))))))))))) +(define-public ocaml-4.07 + (package + (inherit ocaml-4.02) + (version "4.07.1") + (source (origin + (method url-fetch) + (uri (string-append + "http://caml.inria.fr/pub/distrib/ocaml-" + (version-major+minor version) + "/ocaml-" version ".tar.xz")) + (sha256 + (base32 + "1f07hgj5k45cylj1q3k5mk8yi02cwzx849b1fwnwia8xlcfqpr6z")))) + (arguments + (substitute-keyword-arguments (package-arguments ocaml-4.02) + ((#:phases phases) + `(modify-phases ,phases + (delete 'prepare-socket-test) + (replace 'check + (lambda _ + (with-directory-excursion "testsuite" + (invoke "make" "all")) + #t)))))))) + +(define-public ocaml ocaml-4.07) + +(define-public ocamlbuild + (package + (name "ocamlbuild") + (version "0.13.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml/ocamlbuild/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1320cfkixs1xlng5av04pa5qjb3ynvi2kl3k1ngqzg5fpi29b0vr")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:tests? #f; tests require findlib + #:make-flags + (list (string-append "OCAMLBUILD_PREFIX=" (assoc-ref %outputs "out")) + (string-append "OCAMLBUILD_BINDIR=" (assoc-ref %outputs "out") + "/bin") + (string-append "OCAMLBUILD_LIBDIR=" (assoc-ref %outputs "out") + "/lib/ocaml/site-lib") + (string-append "OCAMLBUILD_MANDIR=" (assoc-ref %outputs "out") + "/share/man")) + #:phases + (modify-phases %standard-phases + (delete 'bootstrap) + (delete 'configure) + (add-before 'build 'findlib-environment + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (setenv "OCAMLFIND_DESTDIR" (string-append out "/lib/ocaml/site-lib")) + (setenv "OCAMLFIND_LDCONF" "ignore") + #t)))))) + (native-inputs + `(("ocaml" ,ocaml))) + (home-page "https://github.com/ocaml/ocamlbuild") + (synopsis "OCaml build tool") + (description "OCamlbuild is a generic build tool, that has built-in rules + for building OCaml library and programs.") + (license license:lgpl2.1+))) + (define-public opam (package (name "opam") - (version "1.2.2") + (version "2.0.1") (source (origin (method url-fetch) ;; Use the '-full' version, which includes all the dependencies. @@ -271,7 +352,7 @@ functional, imperative and object-oriented styles of programming.") ) (sha256 (base32 - "004gwn6rbpcb53y3rpb3v23vk39rp2xmf0liyd5iy12ij8bigrhm")))) + "0z6r9qr4awcdn7wyrl5y5jm34jsjlnzd00py893f1hd0c6vg3xw1")))) (build-system gnu-build-system) (arguments '(;; Sometimes, 'make -jX' would fail right after ./configure with @@ -292,17 +373,29 @@ functional, imperative and object-oriented styles of programming.") #:phases (modify-phases %standard-phases (add-before 'build 'pre-build (lambda* (#:key inputs make-flags #:allow-other-keys) - (let ((bash (assoc-ref inputs "bash"))) + (let ((bash (assoc-ref inputs "bash")) + (bwrap (string-append (assoc-ref inputs "bubblewrap") + "/bin/bwrap"))) (substitute* "src/core/opamSystem.ml" (("\"/bin/sh\"") - (string-append "\"" bash "/bin/sh\""))) + (string-append "\"" bash "/bin/sh\"")) + (("getconf") + (which "getconf"))) + ;; Use bwrap from the store directly. + (substitute* "src/state/shellscripts/bwrap.sh" + (("-v bwrap") (string-append "-v " bwrap)) + (("exec bwrap") (string-append "exec " bwrap))) + (substitute* "src/client/opamInitDefaults.ml" + (("\"bwrap\"") (string-append "\"" bwrap "\""))) ;; Build dependencies - (zero? (apply system* "make" "lib-ext" make-flags))))) + (apply invoke "make" "lib-ext" make-flags) + #t))) (add-before 'check 'pre-check (lambda _ (setenv "HOME" (getcwd)) - (and (system "git config --global user.email guix@gnu.org") - (system "git config --global user.name Guix"))))))) + (invoke "git" "config" "--global" "user.email" "guix@gnu.org") + (invoke "git" "config" "--global" "user.name" "Guix") + #t))))) (native-inputs `(("git" ,git) ;for the tests ("python" ,python) ;for the tests @@ -310,7 +403,8 @@ functional, imperative and object-oriented styles of programming.") (inputs `(("ocaml" ,ocaml) ("ncurses" ,ncurses) - ("curl" ,curl))) + ("curl" ,curl) + ("bubblewrap" ,bubblewrap))) (home-page "http://opam.ocamlpro.com/") (synopsis "Package manager for OCaml") (description @@ -321,7 +415,7 @@ Git-friendly development workflow.") ;; The 'LICENSE' file waives some requirements compared to LGPLv3. (license license:lgpl3))) -(define-public camlp4 +(define-public camlp4-4.02 (package (name "camlp4") (version "4.02+6") @@ -334,9 +428,9 @@ Git-friendly development workflow.") "0icdfzhsbgf89925gc8gl3fm8z2xzszzlib0v9dj5wyzkyv3a342")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) - (native-inputs `(("ocaml" ,ocaml) + (native-inputs `(("ocaml" ,ocaml-4.02) ("which" ,which))) - (inputs `(("ocaml" ,ocaml))) + (inputs `(("ocaml" ,ocaml-4.02))) (arguments '(#:tests? #f ;no documented test target ;; a race-condition will lead byte and native targets to mkdir _build @@ -377,17 +471,42 @@ syntax of OCaml.") ;; against the library to be released under any terms. (license license:lgpl2.0))) +(define-public camlp4-4.07 + (package + (inherit camlp4-4.02) + (name "camlp4") + (version "4.07+1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml/camlp4/archive/" + version ".tar.gz")) + (sha256 + (base32 + "143hhxv1i6aq413z0i1pynrjcfl2g5gnh5r3863v6h9z0riqknzc")) + (file-name (string-append name "-" version ".tar.gz")))) + (properties + `((ocaml4.02-variant . ,(delay camlp4-4.02)))) + (native-inputs + `(("ocaml" ,ocaml-4.07) + ("ocamlbuild" ,ocamlbuild) + ("which" ,which))) + (inputs + `(("ocaml" ,ocaml-4.07))))) + +(define-public camlp4 camlp4-4.07) + (define-public camlp5 (package (name "camlp5") - (version "6.14") + (version "7.07") (source (origin (method url-fetch) - (uri (string-append "http://camlp5.gforge.inria.fr/distrib/src/" - name "-" version ".tgz")) + (uri (string-append "https://github.com/camlp5/camlp5/archive/rel" + (string-delete #\. version) ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ql04iyvclpyy9805kpddc4ndjb5d0qg4shhi2fc6bixi49fvy89")))) + "148r6p93xlxi6v7kbsqv8i70r6av04cyn0109pwss5xj6fw97i52")))) (build-system gnu-build-system) (inputs `(("ocaml" ,ocaml))) @@ -404,6 +523,11 @@ syntax of OCaml.") (invoke "./configure" "--prefix" out "--mandir" mandir)))) + (add-before 'build 'fix-/bin-references + (lambda _ + (substitute* "config/Makefile" + (("/bin/rm") "rm")) + #t)) (replace 'build (lambda _ (invoke "make" "-j" (number->string @@ -427,17 +551,19 @@ concrete syntax of the language (Quotations, Syntax Extensions).") (define-public hevea (package (name "hevea") - (version "2.28") + (version "2.32") (source (origin (method url-fetch) (uri (string-append "http://hevea.inria.fr/old/" name "-" version ".tar.gz")) (sha256 (base32 - "14fns13wlnpiv9i05841kvi3cq4b9v2sw5x3ff6ziws28q701qnd")))) + "1s4yqphfcr1pf5mcj5c84mvmd107k525iiym5jdwsxz0ka0ccmfy")))) (build-system gnu-build-system) (inputs `(("ocaml" ,ocaml))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild))) (arguments `(#:tests? #f ; no test suite #:make-flags (list (string-append "PREFIX=" %output)) @@ -455,10 +581,54 @@ concrete syntax of the language (Quotations, Syntax Extensions).") written in Objective Caml.") (license license:qpl))) +(define-public ocaml-num + (package + (name "ocaml-num") + (version "1.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml/num/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1xlkd0svc0mgq5s7nrm2rjrsvg15i9wxqkc1kvwjp6sv8vv8bb04")))) + (build-system ocaml-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'fix-makefile + (lambda* (#:key outputs #:allow-other-keys) + ;; This package supposes we install to the same directory as + ;; the ocaml package. + (substitute* "src/META" + (("\"\\^\"") (string-append "\"" (assoc-ref outputs "out") + "/lib/ocaml/site-lib\""))) + (substitute* "src/Makefile" + (("\\) \\$\\(STDLIBDIR\\)") + (string-append ") " (assoc-ref outputs "out") + "/lib/ocaml/site-lib"))) + #t)) + (add-after 'install 'fix-stubslib + (lambda* (#:key outputs #:allow-other-keys) + (format #t "~a~%" (find-files "." ".*.so")) + (let ((stubdir (string-append (assoc-ref outputs "out") + "/lib/ocaml/site-lib"))) + (mkdir-p stubdir) + (install-file "src/dllnums.so" stubdir)) + #t))))) + (home-page "https://github.com/ocaml/num") + (synopsis "Arbitrary-precision integer and rational arithmetic") + (description "OCaml-Num contains the legacy Num library for +arbitrary-precision integer and rational arithmetic that used to be part of +the OCaml core distribution.") + (license license:lgpl2.1+))); with linking exception + (define-public coq (package (name "coq") - (version "8.8.1") + (version "8.8.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/coq/coq/archive/V" @@ -466,7 +636,7 @@ written in Objective Caml.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "13cyvbg8cgqkg9wz0ax7jq03srj9k0lyvny97fcka4ai1zrzwln8")))) + "0i2hs0i6rp27cy8zd0mx7jscqw5cx2y0diw0pxgij66s3yr47y7r")))) (native-search-paths (list (search-path-specification (variable "COQPATH") @@ -478,7 +648,8 @@ written in Objective Caml.") (inputs `(("lablgtk" ,lablgtk) ("python" ,python-2) - ("camlp5" ,camlp5))) + ("camlp5" ,camlp5) + ("ocaml-num" ,ocaml-num))) (arguments `(#:phases (modify-phases %standard-phases @@ -598,7 +769,7 @@ provers.") (define-public emacs-tuareg (package (name "emacs-tuareg") - (version "2.0.10") + (version "2.2.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/ocaml/tuareg/archive/" @@ -606,7 +777,7 @@ provers.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1r2smclcs63n74lcyckbp90j09wyjdngn816cqzfkw54iwh3hd7q")))) + "1ynpfc170f9jqx49biji9npfkvfpflbm29xf24wc7fnxxayr49ig")))) (build-system gnu-build-system) (native-inputs `(("emacs" ,emacs-minimal) ("opam" ,opam))) @@ -650,6 +821,8 @@ Emacs.") (build-system gnu-build-system) (inputs `(("ocaml" ,ocaml))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild))) (arguments `(#:parallel-build? #f ; Parallel build causes failure #:tests? #f ; No check target @@ -660,6 +833,8 @@ Emacs.") (let ((out (assoc-ref outputs "out"))) (setenv "PREFIX" out)) #t))))) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-menhir)))) (home-page "http://gallium.inria.fr/~fpottier/menhir") (synopsis "Parser generator") (description "Menhir is a parser generator. It turns high-level grammar @@ -671,17 +846,26 @@ Knuth’s LR(1) parser construction technique.") ;; are QPL licensed. (license (list license:gpl2+ license:qpl)))) +(define-public ocaml4.02-menhir + (package + (inherit ocaml-menhir) + (name "ocaml4.02-menhir") + (inputs `(("ocaml" ,ocaml-4.02))) + (native-inputs '()))) + (define-public lablgtk (package (name "lablgtk") - (version "2.18.5") + (version "2.18.6") (source (origin (method url-fetch) - (uri (ocaml-forge-uri name version 1627)) + (uri (ocaml-forge-uri name version 1726)) (sha256 (base32 - "0cyj6sfdvzx8hw7553lhgwc0krlgvlza0ph3dk9gsxy047dm3wib")))) + "1y38fdvswy6hmppm65qvgdk4pb3ghhnvz7n4ialf46340r1s5p2d")))) (build-system gnu-build-system) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-lablgtk)))) (native-inputs `(("camlp4" ,camlp4) ("ocaml" ,ocaml) @@ -732,6 +916,23 @@ libglade (and it an generate OCaml code from .glade files), libpanel, librsvg and quartz.") (license license:lgpl2.1))) +(define-public ocaml4.02-lablgtk + (package + (inherit lablgtk) + (name "ocaml4.02-lablgtk") + (version "2.18.5") + (source (origin + (method url-fetch) + (uri (ocaml-forge-uri name version 1627)) + (sha256 + (base32 + "0cyj6sfdvzx8hw7553lhgwc0krlgvlza0ph3dk9gsxy047dm3wib")))) + (native-inputs + `(("camlp4" ,camlp4-4.02) + ("ocaml" ,ocaml-4.02) + ("findlib" ,ocaml4.02-findlib) + ("pkg-config" ,pkg-config))))) + (define-public unison (package (name "unison") @@ -792,12 +993,13 @@ libpanel, librsvg and quartz.") (outputs '("out" "doc")) ; 1.9 MiB of documentation (native-inputs - `(("ocaml" ,ocaml) + `(("ocaml" ,ocaml-4.02) ;; For documentation ("ghostscript" ,ghostscript) ("texlive" ,texlive) ("hevea" ,hevea) - ("lynx" ,lynx))) + ("lynx" ,lynx) + ("which" ,which))) (arguments `(#:parallel-build? #f #:parallel-tests? #f @@ -827,6 +1029,14 @@ libpanel, librsvg and quartz.") (let ((doc (string-append (assoc-ref outputs "doc") "/share/doc/unison"))) (mkdir-p doc) + ;; This is a workaround to prevent a build failure. Running + ;; make docs somehow allows it to pass, but the generated + ;; documentation is not pretty. + (catch #t + (lambda _ + (invoke "make" "docs" + "TEXDIRECTIVES=\\\\draftfalse")) + (lambda _ #t)) ;; This file needs write-permissions, because it's ;; overwritten by 'docs' during documentation generation. (chmod "src/strings.ml" #o600) @@ -856,14 +1066,14 @@ to the other.") (define-public ocaml-findlib (package (name "ocaml-findlib") - (version "1.7.3") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append "http://download.camlcity.org/download/" "findlib" "-" version ".tar.gz")) (sha256 (base32 - "12xx8si1qv3xz90qsrpazjjk4lc1989fzm97rsmc4diwla7n15ni")))) + "1b97zqjdriqd2ikgh4rmqajgxwdwn013riji5j53y3xvcmnpsyrb")))) (build-system gnu-build-system) (native-inputs `(("camlp4" ,camlp4) @@ -912,6 +1122,15 @@ compilation and linkage, there are new frontends of the various OCaml compilers that can directly deal with packages.") (license license:x11))) +(define-public ocaml4.02-findlib + (package + (inherit ocaml-findlib) + (name "ocaml4.02-findlib") + (native-inputs + `(("camlp4" ,camlp4-4.02) + ("m4" ,m4) + ("ocaml" ,ocaml-4.02))))) + (define-public ocaml4.01-findlib (package (inherit ocaml-findlib) @@ -933,7 +1152,8 @@ compilers that can directly deal with packages.") "03ifp9hjcxg4m5j190iy373jcn4039d3vy10kmd8p4lfciwzwc1f")))) (build-system ocaml-build-system) (native-inputs - `(("libxml2" ,libxml2))) ; for xmllint + `(("libxml2" ,libxml2) ; for xmllint + ("ocamlbuild" ,ocamlbuild))) (arguments `(#:phases (modify-phases %standard-phases @@ -947,6 +1167,9 @@ other XUnit testing frameworks.") (define-public ocaml4.01-ounit (package-with-ocaml4.01 ocaml-ounit)) +(define-public ocaml4.02-ounit + (package-with-ocaml4.02 ocaml-ounit)) + (define-public camlzip (package (name "camlzip") @@ -1007,19 +1230,23 @@ files in these formats.") (base32 "0syh72jk9s0qwjmmfrkqchaj98m020ii082jn38pwnmb6v3p02wk"))))))) +(define-public ocaml4.02-camlzip + (package-with-ocaml4.02 camlzip)) + (define-public ocamlmod (package (name "ocamlmod") - (version "0.0.8") + (version "0.0.9") (source (origin (method url-fetch) - (uri (ocaml-forge-uri name version 1544)) + (uri (ocaml-forge-uri name version 1702)) (sha256 (base32 - "1w0w8lfyymvk300dv13gvhrddpcyknvyp4g2yvq2vaw7khkhjs9g")))) + "0cgp9qqrq7ayyhddrmqmq1affvfqcn722qiakjq4dkywvp67h4aa")))) (build-system ocaml-build-system) (native-inputs - `(("ounit" ,ocaml-ounit))) + `(("ounit" ,ocaml-ounit) + ("ocamlbuild" ,ocamlbuild))) (arguments `(#:phases (modify-phases %standard-phases @@ -1030,6 +1257,9 @@ files in these formats.") (description "Generate modules from OCaml source files.") (license license:lgpl2.1+))) ; with an exception +(define-public ocaml4.02-ocamlmod + (package-with-ocaml4.02 ocamlmod)) + (define-public ocaml-zarith (package (name "ocaml-zarith") @@ -1060,6 +1290,9 @@ over big integers. Small integers are represented as Caml unboxed integers, for speed and space economy.") (license license:lgpl2.1+))) ; with an exception +(define-public ocaml4.02-zarith + (package-with-ocaml4.02 ocaml-zarith)) + (define-public ocaml-frontc (package (name "ocaml-frontc") @@ -1073,7 +1306,9 @@ for speed and space economy.") "16dz153s92dgbw1rrfwbhscy73did87kfmjwyh3qpvs748h1sc4g")))) (build-system ocaml-build-system) (arguments - `(#:phases + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:phases (modify-phases %standard-phases (delete 'configure) (add-after 'install 'install-meta @@ -1116,7 +1351,8 @@ GNU CC attributes. It provides also a C pretty printer as an example of use.") "1zs1pg5cb1iry554v3cdmmiglsrwmsqa9x8zxmzb118fnk5d3ha6")))) (build-system ocaml-build-system) (native-inputs - `(("ounit" ,ocaml-ounit))) + `(("ounit" ,ocaml-ounit) + ("ocamlbuild" ,ocamlbuild))) (home-page "https://github.com/c-cube/qcheck") (synopsis "QuickCheck inspired property-based testing for OCaml") (description "QuickCheck inspired property-based testing for OCaml. This @@ -1125,6 +1361,9 @@ generated instances of the type. It provides combinators for generating instances and printing them.") (license license:lgpl3+))) +(define-public ocaml4.02-qcheck + (package-with-ocaml4.02 ocaml-qcheck)) + (define-public ocaml-qtest (package (name "ocaml-qtest") @@ -1139,7 +1378,7 @@ instances and printing them.") "1ff4if64mc9c7wmhjdgnlnh6k6a713piqzr4043zzj4s5pw7smxk")))) (build-system ocaml-build-system) (native-inputs - `(("findlib" ,ocaml-findlib))) + `(("ocamlbuild" ,ocamlbuild))) (propagated-inputs `(("ounit" ,ocaml-ounit) ("qcheck" ,ocaml-qcheck))) @@ -1161,6 +1400,9 @@ to use -- to sophisticated random generation of test cases.") (define-public ocaml4.01-qtest (package-with-ocaml4.01 ocaml-qtest)) +(define-public ocaml4.02-qtest + (package-with-ocaml4.02 ocaml-qtest)) + (define-public ocaml-stringext (package (name "ocaml-stringext") @@ -1175,7 +1417,8 @@ to use -- to sophisticated random generation of test cases.") "19g6lfn03iki9f8h91hi0yiqn0b3wkxyq08b3y23wgv6jw6mssfh")))) (build-system ocaml-build-system) (native-inputs - `(("qtest" ,ocaml-qtest))) + `(("ocamlbuild" ,ocamlbuild) + ("qtest" ,ocaml-qtest))) (home-page "https://github.com/rgrinberg/stringext") (synopsis "Extra string functions for OCaml") (description "Provides a single module named Stringext that provides a grab @@ -1185,17 +1428,21 @@ full_split, cut, rcut, etc..") ;; where it says `mit'. (license license:expat))) +(define-public ocaml4.02-stringext + (package-with-ocaml4.02 ocaml-stringext)) (define-public ocaml-bisect (package (name "ocaml-bisect") - (version "1.3") + (version "1.3.1") (source (origin (method url-fetch) - (uri (ocaml-forge-uri "bisect" version 1051)) + (uri (string-append "https://github.com/gasche/bisect/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0kcg2rh0qlkfpbv3nhcb75n62b04gbrz0zasq15ynln91zd5qrg0")) + "0p67fppk5ifb63b00kxwrb1xg75hrqhknng3bsdyw3gxxqyjlpmx")) (patches (search-patches "ocaml-bisect-fix-camlp4-in-another-directory.patch")))) @@ -1203,6 +1450,7 @@ full_split, cut, rcut, etc..") (native-inputs `(("camlp4" ,camlp4) ("libxml2" ,libxml2) + ("ocamlbuild" ,ocamlbuild) ("which" ,which))) (propagated-inputs `(("camlp4" ,camlp4))) @@ -1215,9 +1463,11 @@ full_split, cut, rcut, etc..") #:phases (modify-phases %standard-phases (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "./configure" "-prefix" - (assoc-ref outputs "out")))))))) + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "./configure" "-prefix" (assoc-ref outputs "out") + "-ocaml-prefix" (assoc-ref inputs "ocaml") + "-camlp4-prefix" (assoc-ref inputs "camlp4")) + #t))))) (home-page "http://bisect.x9c.fr") (synopsis "Code coverage tool for the OCaml language") (description "Bisect is a code coverage tool for the OCaml language. It is @@ -1225,46 +1475,260 @@ a camlp4-based tool that allows to instrument your application before running tests. After application execution, it is possible to generate a report in HTML format that is the replica of the application source code annotated with code coverage information.") - (properties `((ocaml4.01-variant . ,(delay ocaml4.01-bisect)))) + (properties + `((ocaml4.01-variant . ,(delay ocaml4.01-bisect)) + (ocaml4.02-variant . ,(delay ocaml4.02-bisect)))) (license license:gpl3+))) (define-public ocaml4.01-bisect (let ((base (package-with-ocaml4.01 (strip-ocaml4.01-variant ocaml-bisect)))) (package (inherit base) + (version "1.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/gasche/bisect/archive/" + version ".tar.gz")) + (file-name (string-append "ocaml-bisect-" version ".tar.gz")) + (sha256 + (base32 + "1ip49jqf0kkbrqf8qspmfjbg9ap9fhvjkg718myzix88dg5rv8d4")))) (arguments `(#:ocaml ,ocaml-4.01 - ;; Camlp4 is included with OCaml 4.01, so do not include it as a - ;; separate input. - ,@(strip-keyword-arguments '(#:make-flags) (package-arguments base)))) + ,@(substitute-keyword-arguments (package-arguments ocaml-bisect) + ((#:make-flags flags) + `(list "all")) + ((#:phases phases) + `(modify-phases ,phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "./configure" + "-ocaml-prefix" (assoc-ref inputs "ocaml")) + #t))))))) (native-inputs `(,@(alist-delete "camlp4" (package-native-inputs base)))) (propagated-inputs `(,@(alist-delete "camlp4" (package-propagated-inputs base))))))) +(define-public ocaml4.02-bisect + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant ocaml-bisect)))) + (package + (inherit base) + (native-inputs + `(("camlp4" ,camlp4-4.02) + ("libxml2" ,libxml2) + ("which" ,which))) + (propagated-inputs + `(("camlp4" ,camlp4-4.02)))))) + +(define-public dune + (package + (name "dune") + (version "1.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml/dune/releases/" + "download/" version "/dune-" version ".tbz")) + (sha256 + (base32 + "00c5dbm4hkdapc2i7pg07b2lj8sv6ly38qr7zid58cdmbmzq21z9")))) + (build-system ocaml-build-system) + (arguments + `(#:tests? #f; require odoc + #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (invoke "./configure") + #t))))) + (home-page "https://github.com/ocaml/dune") + (synopsis "OCaml build system") + (description "Dune is a build system that was designed to simplify the +release of Jane Street packages. It reads metadata from @file{dune} files +following a very simple s-expression syntax.") + (license license:expat))) + +(define-public ocaml-migrate-parsetree + (package + (name "ocaml-migrate-parsetree") + (version "1.1.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml-ppx/" + "ocaml-migrate-parsetree/releases/download/v" + version "/ocaml-migrate-parsetree-" + version ".tbz")) + (sha256 + (base32 + "01zjp1q4hryqaxv4apkjd868fycz2kf887r6lkb6x2a545h1lh7f")))) + (build-system ocaml-build-system) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "jbuilder" "build" "@install") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "jbuilder" "install" + "--prefix" (assoc-ref outputs "out")) + #t))))) + (propagated-inputs + `(("ocamlbuild" ,ocamlbuild) + ("ocaml-result" ,ocaml-result))) + (native-inputs + `(("dune" ,dune))) + (home-page "https://github.com/ocaml-ppx/ocaml-migrate-parsetree") + (synopsis "OCaml parsetree convertor") + (description "This library converts between parsetrees of different OCaml +versions. For each version, there is a snapshot of the parsetree and conversion +functions to the next and/or previous version.") + (license license:lgpl2.1+))) + +(define-public ocaml-ppx-tools-versioned + (package + (name "ocaml-ppx-tools-versioned") + (version "5.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml-ppx/" + "ppx_tools_versioned/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1x2xfjpkzbcz4rza1d7gh3ipliw6jqfcklbsln82v3561qgkqgmh")))) + (build-system ocaml-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "dune" "build" "@install") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))))) + (native-inputs + `(("dune" ,dune))) + (propagated-inputs + `(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree))) + (home-page "https://github.com/let-def/ppx_tools_versioned") + (synopsis "Variant of ppx_tools") + (description "This package is a variant of ppx_tools based on +ocaml-migrate-parsetree") + (license license:expat))) + +(define-public ocaml-ppx-tools-versioned + (package + (name "ocaml-ppx-tools-versioned") + (version "5.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/ocaml-ppx/" + "ppx_tools_versioned/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1x2xfjpkzbcz4rza1d7gh3ipliw6jqfcklbsln82v3561qgkqgmh")))) + (build-system ocaml-build-system) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "dune" "build" "@install") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))))) + (native-inputs + `(("dune" ,dune))) + (propagated-inputs + `(("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree))) + (home-page "https://github.com/let-def/ppx_tools_versioned") + (synopsis "Variant of ppx_tools") + (description "This package is a variant of ppx_tools based on +ocaml-migrate-parsetree") + (license license:expat))) + (define-public ocaml-bitstring (package (name "ocaml-bitstring") - (version "2.1.1") + (version "3.1.0") (source (origin (method url-fetch) - (uri (string-append "https://github.com/xguerin/bitstring" - "/archive/v" version ".tar.gz")) + (uri (string-append "https://bitbucket.org/thanatonauts/bitstring/" + "get/v" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0vy8ibrxccii1jbsk5q6yh1kxjigqvi7lhhcmizvd5gfhf7mfyc8")) - (patches (search-patches "ocaml-bitstring-fix-configure.patch")))) + "15jjk2pq1vx311gl49s5ag6x5y0654x35w75z07g7kr2q334hqps")))) (build-system ocaml-build-system) (native-inputs `(("camlp4" ,camlp4) ("time" ,time) ("autoconf" ,autoconf) ("automake" ,automake) - ("bisect" ,ocaml-bisect))) + ("bisect" ,ocaml-bisect) + ("dune" ,dune))) (propagated-inputs - `(("camlp4" ,camlp4))) + `(("camlp4" ,camlp4) + ("ocaml-ppx-tools-versioned" ,ocaml-ppx-tools-versioned))) (arguments - `(#:configure-flags + `(#:tests? #f; Tests fail to build + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "jbuilder" "build" "@install") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))))) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-bitstring)))) + (home-page "https://github.com/xguerin/bitstring") + (synopsis "Bitstrings and bitstring matching for OCaml") + (description "Adds Erlang-style bitstrings and matching over bitstrings as +a syntax extension and library for OCaml. You can use this module to both parse +and generate binary formats, files and protocols. Bitstring handling is added +as primitives to the language, making it exceptionally simple to use and very +powerful.") + (license license:isc))) + +(define-public ocaml4.02-bitstring + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant ocaml-bitstring)))) + (package + (inherit base) + (version "2.1.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/xguerin/bitstring" + "/archive/v" version ".tar.gz")) + (file-name (string-append "ocaml-bitstring-" version ".tar.gz")) + (sha256 + (base32 + "0vy8ibrxccii1jbsk5q6yh1kxjigqvi7lhhcmizvd5gfhf7mfyc8")) + (patches (search-patches "ocaml-bitstring-fix-configure.patch")))) + (arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:configure-flags (list "CAMLP4OF=camlp4of" "--enable-coverage") #:make-flags (list (string-append "BISECTLIB=" @@ -1280,14 +1744,6 @@ coverage information.") "$(BISECTLIB)/bisect")) #:phases (modify-phases %standard-phases - (add-before 'configure 'fix-configure - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "Makefile.in" - (("@abs_top_builddir@") - (string-append "@abs_top_builddir@:" (getenv "LIBRARY_PATH")))) - (substitute* "configure" - (("-/bin/sh") (string-append "-" (assoc-ref inputs "bash") - "/bin/sh"))))) (add-after 'install 'link-lib (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1297,15 +1753,24 @@ coverage information.") "/lib/ocaml/site-lib/bitstring"))) (mkdir-p stubs) (symlink (string-append lib "/dllbitstring.so") - (string-append stubs "/dllbitstring.so")))))))) - (home-page "https://github.com/xguerin/bitstring") - (synopsis "Bitstrings and bitstring matching for OCaml") - (description "Adds Erlang-style bitstrings and matching over bitstrings as -a syntax extension and library for OCaml. You can use this module to both parse -and generate binary formats, files and protocols. Bitstring handling is added -as primitives to the language, making it exceptionally simple to use and very -powerful.") - (license license:isc))) + (string-append stubs "/dllbitstring.so"))) + #t)) + (add-before 'configure 'fix-configure + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Makefile.in" + (("@abs_top_builddir@") + (string-append "@abs_top_builddir@:" (getenv "LIBRARY_PATH")))) + (substitute* "configure" + (("-/bin/sh") (string-append "-" (assoc-ref inputs "bash") + "/bin/sh")))))))) + (native-inputs + `(("camlp4" ,camlp4-4.02) + ("time" ,time) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("bisect" ,ocaml4.02-bisect))) + (propagated-inputs + `(("camlp4" ,camlp4-4.02)))))) (define-public ocaml-result (package @@ -1331,6 +1796,9 @@ powerful.") staying compatible with older version of OCaml should use the Result module defined in this library.") (license license:bsd-3))) + +(define-public ocaml4.02-result + (package-with-ocaml4.02 ocaml-result)) (define-public ocaml-topkg (package @@ -1345,7 +1813,8 @@ defined in this library.") "18rrh6fmf708z7dd30amljmcgaypj3kk49jrmrj68r4wnw8004j8")))) (build-system ocaml-build-system) (native-inputs - `(("opam" ,opam))) + `(("opam" ,opam) + ("ocamlbuild" ,ocamlbuild))) (propagated-inputs `(("result" ,ocaml-result))) (arguments @@ -1361,6 +1830,9 @@ provides an API to describe the files a package installs in a given build configuration and to specify information about the package's distribution, creation and publication procedures.") (license license:isc))) + +(define-public ocaml4.02-topkg + (package-with-ocaml4.02 ocaml-topkg)) (define-public ocaml-rresult (package @@ -1375,7 +1847,8 @@ creation and publication procedures.") "1xxycxhdhaq8p9vhwi93s2mlxjwgm44fcxybx5vghzgbankz9yhm")))) (build-system ocaml-build-system) (native-inputs - `(("opam" ,opam))) + `(("opam" ,opam) + ("ocamlbuild" ,ocamlbuild))) (propagated-inputs `(("topkg" ,ocaml-topkg))) (arguments @@ -1392,6 +1865,9 @@ to operate on the result type available from OCaml 4.03 in the standard library.") (license license:isc))) +(define-public ocaml4.02-rresult + (package-with-ocaml4.02 ocaml-rresult)) + (define-public ocaml-sqlite3 (package (name "ocaml-sqlite3") @@ -1407,7 +1883,8 @@ library.") "14c1nir7c6bivajg0vyx853y7la7r5d25g1v5hjb2wfi73r15p1m")))) (build-system ocaml-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("ocamlbuild" ,ocamlbuild) + ("pkg-config" ,pkg-config))) (inputs `(("sqlite" ,sqlite))) (home-page "https://mmottl.github.io/sqlite3-ocaml") @@ -1424,6 +1901,9 @@ coexistence with the old (version 2) SQLite and its OCaml wrapper (define-public ocaml4.01-sqlite3 (package-with-ocaml4.01 ocaml-sqlite3)) +(define-public ocaml4.02-sqlite3 + (package-with-ocaml4.02 ocaml-sqlite3)) + (define-public ocaml-csv (package (name "ocaml-csv") @@ -1439,6 +1919,8 @@ coexistence with the old (version 2) SQLite and its OCaml wrapper (base32 "0rv7x843vn6scxj87hzl01yqrl26rc27lr8s7z6rp9vs745g05zj")))) (build-system ocaml-build-system) + (native-inputs + `(("ocamlbuild" ,ocamlbuild))) (home-page "https://github.com/Chris00/ocaml-csv") (synopsis "Pure OCaml functions to read and write CSV") (description @@ -1451,6 +1933,9 @@ manipulate such data.") (define-public ocaml4.01-csv (package-with-ocaml4.01 ocaml-csv)) +(define-public ocaml4.02-csv + (package-with-ocaml4.02 ocaml-csv)) + (define-public ocaml-mtime (package (name "ocaml-mtime") @@ -1464,7 +1949,8 @@ manipulate such data.") "1hfx4ny2dkw6jf3jppz0640dafl5xgn8r2si9kpwzhmibal8qrah")))) (build-system ocaml-build-system) (native-inputs - `(("opam" ,opam))) + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) (propagated-inputs `(("topkg" ,ocaml-topkg))) (arguments @@ -1480,6 +1966,9 @@ manipulate such data.") spans without being subject to operating system calendar time adjustments.") (license license:isc))) +(define-public ocaml4.02-mtime + (package-with-ocaml4.02 ocaml-mtime)) + (define-public ocaml-cmdliner (package (name "ocaml-cmdliner") @@ -1493,7 +1982,8 @@ spans without being subject to operating system calendar time adjustments.") "0hdxlkgiwjml9dpaa80282a8350if7mc1m6yz2mrd7gci3fszykx")))) (build-system ocaml-build-system) (native-inputs - `(("opam" ,opam))) + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) (arguments `(#:tests? #f #:build-flags '("native=true" "native-dynlink=true") @@ -1510,6 +2000,9 @@ generation. It supports programs with single or multiple commands and respects most of the POSIX and GNU conventions.") (license license:bsd-3))) +(define-public ocaml4.02-cmdliner + (package-with-ocaml4.02 ocaml-cmdliner)) + (define-public ocaml-fmt (package (name "ocaml-fmt") @@ -1522,10 +2015,13 @@ most of the POSIX and GNU conventions.") (sha256 (base32 "16y7ibndnairb53j8a6qgipyqwjxncn4pl9jiw5bxjfjm59108px")))) (build-system ocaml-build-system) - (native-inputs `(("opam" ,opam) - ("topkg" ,ocaml-topkg))) - (propagated-inputs `(("result" ,ocaml-result) - ("cmdliner" ,ocaml-cmdliner))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) + ("topkg" ,ocaml-topkg))) + (propagated-inputs + `(("result" ,ocaml-result) + ("cmdliner" ,ocaml-cmdliner))) (arguments `(#:tests? #f #:build-flags (list "build" "--with-base-unix" "true" "--with-cmdliner" "true") @@ -1538,6 +2034,9 @@ most of the POSIX and GNU conventions.") functions.") (license license:isc))) +(define-public ocaml4.02-fmt + (package-with-ocaml4.02 ocaml-fmt)) + (define-public ocaml-astring (package (name "ocaml-astring") @@ -1550,13 +2049,16 @@ functions.") (sha256 (base32 "0ixjwc3plrljvj24za3l9gy0w30lsbggp8yh02lwrzw61ls4cri0")))) (build-system ocaml-build-system) - (native-inputs `(("opam" ,opam) - ("topkg" ,ocaml-topkg))) - (arguments `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) + ("topkg" ,ocaml-topkg))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) (home-page "http://erratique.ch/software/astring") (synopsis "Alternative String module for OCaml") (description "Astring exposes an alternative String module for OCaml. This @@ -1568,6 +2070,9 @@ adds a few missing functions and fully exploits OCaml's newfound string immutability.") (license license:isc))) +(define-public ocaml4.02-astring + (package-with-ocaml4.02 ocaml-astring)) + (define-public ocaml-alcotest (package (name "ocaml-alcotest") @@ -1580,15 +2085,19 @@ immutability.") (base32 "0g5lzk0gpfx4q8hyhr460gr4lab5wakfxsmhfwvb3yinxwzs95gc")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam) - ("topkg" ,ocaml-topkg))) - (propagated-inputs `(("fmt" ,ocaml-fmt) - ("astring" ,ocaml-astring))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) + ("topkg" ,ocaml-topkg))) + (propagated-inputs + `(("fmt" ,ocaml-fmt) + ("astring" ,ocaml-astring))) (home-page "https://github.com/mirage/alcotest") (synopsis "Lightweight OCaml test framework") (description "Alcotest exposes simple interface to perform unit tests. It @@ -1599,25 +2108,44 @@ displayed at the end of the run (with the full logs ready to inspect), with a simple (yet expressive) query language to select the tests to run.") (license license:isc))) +(define-public ocaml4.02-alcotest + (package-with-ocaml4.02 ocaml-alcotest)) + (define-public ocaml-ppx-tools (package (name "ocaml-ppx-tools") - (version "5.0+4.02.0") + (version "5.1+4.06.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/alainfrisch/ppx_tools/archive/" version ".tar.gz")) (sha256 (base32 - "0rjg4rngi8k9873z4zq95zn9hj8qyw1vcrf11y15aqasfpqq16rc")))) + "0mncpy9v2mcjgnj7s2vqpp2b1ixv54djicfx66ic9wny9d202gj1")))) (build-system ocaml-build-system) - (arguments `(#:phases (modify-phases %standard-phases (delete 'configure)) - #:tests? #f)) + (arguments + `(#:phases (modify-phases %standard-phases (delete 'configure)) + #:tests? #f)) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-ppx-tools)))) (home-page "https://github.com/alainfrisch/ppx_tools") (synopsis "Tools for authors of ppx rewriters and other syntactic tools") (description "Tools for authors of ppx rewriters and other syntactic tools.") (license license:expat))) +(define-public ocaml4.02-ppx-tools + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant ocaml-ppx-tools)))) + (package + (inherit base) + (version "5.0+4.02.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/alainfrisch/ppx_tools/archive/" + version ".tar.gz")) + (sha256 (base32 + "0rjg4rngi8k9873z4zq95zn9hj8qyw1vcrf11y15aqasfpqq16rc"))))))) + (define-public ocaml-react (package (name "ocaml-react") @@ -1630,12 +2158,15 @@ simple (yet expressive) query language to select the tests to run.") (sha256 (base32 "0knhgbngphv5sp1yskfd97crf169qhpc0igr6w7vqw0q36lswyl8")))) (build-system ocaml-build-system) - (native-inputs `(("opam" ,opam))) - (arguments `(#:tests? #f - #:build-flags (list "native=true" "native-dynlink=true") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) + (arguments + `(#:tests? #f + #:build-flags (list "native=true" "native-dynlink=true") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) (home-page "http://erratique.ch/software/react") (synopsis "Declarative events and signals for OCaml") (description "React is an OCaml module for functional reactive programming @@ -1644,6 +2175,9 @@ events and signals. React doesn't define any primitive event or signal, it lets the client choose the concrete timeline.") (license license:bsd-3))) +(define-public ocaml4.02-react + (package-with-ocaml4.02 ocaml-react)) + (define-public ocaml-ssl (package (name "ocaml-ssl") @@ -1658,20 +2192,23 @@ lets the client choose the concrete timeline.") (sha256 (base32 "0fviq8xhp3qk7pmkl7knchywsipxgb7p0z489hj8qnf2sx8xzdmy")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:make-flags (list "OCAMLFIND_LDCONF=ignore") - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'bootstrap - (lambda* (#:key #:allow-other-keys) - (system* "sh" "bootstrap") - (substitute* "src/OCamlMakefile" - (("/bin/sh") (which "bash"))) - (substitute* "configure" - (("/bin/sh") (which "bash")))))))) - (native-inputs `(("autoconf" ,autoconf) - ("automake" ,automake) - ("which" ,which))) + (arguments + `(#:tests? #f + #:make-flags (list "OCAMLFIND_LDCONF=ignore") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda* (#:key #:allow-other-keys) + (system* "sh" "bootstrap") + (substitute* "src/OCamlMakefile" + (("/bin/sh") (which "bash"))) + (substitute* "configure" + (("/bin/sh") (which "bash"))) + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("which" ,which))) (propagated-inputs `(("openssl" ,openssl))) (home-page "https://github.com/savonet/ocaml-ssl/") (synopsis "OCaml bindings for OpenSSL") @@ -1680,10 +2217,13 @@ lets the client choose the concrete timeline.") through Transport Layer Security (@dfn{TLS}) encrypted connections.") (license license:lgpl2.1))) +(define-public ocaml4.02-ssl + (package-with-ocaml4.02 ocaml-ssl)) + (define-public ocaml-lwt (package (name "ocaml-lwt") - (version "2.6.0") + (version "4.1.0") (source (origin (method url-fetch) @@ -1691,35 +2231,37 @@ through Transport Layer Security (@dfn{TLS}) encrypted connections.") ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1gbw0g8a5a4b16diqrmlhc8ilnikrm4w3jjm1zq310maqg8z0zxz")))) + "0mhh019bjkg5xfvpy1pxs4xdxb759fyydmgb6l4j0qww1qgr8klp")))) (build-system ocaml-build-system) (arguments - `(#:configure-flags - (list "--enable-ssl" "--enable-glib" "--enable-react" - "--enable-ppx") + `(#:tests? #f; require lwt_ppx #:phases (modify-phases %standard-phases - (add-before 'configure 'disable-some-checks - (lambda* (#:key #:allow-other-keys) - (substitute* "tests/unix/main.ml" - (("Test_mcast.suite;") "")))) - (add-after 'install 'link-stubs + (replace 'configure + (lambda _ + (invoke "ocaml" "src/util/configure.ml" "-use-libev" "true") + #t)) + (replace 'build + (lambda _ + (invoke "jbuilder" "build" "@install") + #t)) + (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (stubs (string-append out "/lib/ocaml/site-lib/stubslibs")) - (lib (string-append out "/lib/ocaml/site-lib/lwt"))) - (mkdir-p stubs) - (symlink (string-append lib "/dlllwt-glib_stubs.so") - (string-append stubs "/dlllwt-glib_stubs.so")) - (symlink (string-append lib "/dlllwt-unix_stubs.so") - (string-append stubs "/dlllwt-unix_stubs.so")))))))) - (native-inputs `(("pkg-config" ,pkg-config) - ("ppx-tools" ,ocaml-ppx-tools))) - (inputs `(("libev" ,libev) - ("glib" ,glib))) - (propagated-inputs `(("result" ,ocaml-result) - ("ocaml-ssl" ,ocaml-ssl) - ("ocaml-react" ,ocaml-react))) + (invoke "jbuilder" "install" "--prefix" (assoc-ref outputs "out")) + #t))))) + (native-inputs + `(("dune" ,dune) + ("ocaml-cppo" ,ocaml-cppo) + ("ocaml-migrate-parsetree" ,ocaml-migrate-parsetree) + ("pkg-config" ,pkg-config) + ("ppx-tools-versioned" ,ocaml-ppx-tools-versioned))) + (inputs + `(("libev" ,libev) + ("glib" ,glib))) + (propagated-inputs + `(("result" ,ocaml-result) + ("ocaml-ssl" ,ocaml-ssl) + ("ocaml-react" ,ocaml-react))) (home-page "https://github.com/ocsigen/lwt") (synopsis "Cooperative threads and I/O in monadic style") (description "Lwt provides typed, composable cooperative threads. These @@ -1728,6 +2270,48 @@ process. Also, in many cases, Lwt threads can interact without the need for locks or other synchronization primitives.") (license license:lgpl2.1))) +(define-public ocaml4.02-lwt + (package-with-ocaml4.02 ocaml-lwt)) + +(define-public ocaml-lwt-log + (package + (name "ocaml-lwt-log") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/aantron/lwt_log/archive/" version + ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 (base32 + "1lr62j2266pbsi54xmzsfvl2z7fi7smhak7fp1ybl8hssxwi6in2")))) + (build-system ocaml-build-system) + (arguments + `(#:tests? #f; require lwt_ppx + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "jbuilder" "build" "@install") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "jbuilder" "install" "--prefix" (assoc-ref outputs "out")) + #t))))) + (native-inputs + `(("dune" ,dune))) + (propagated-inputs + `(("lwt" ,ocaml-lwt))) + (home-page "https://github.com/aantron/lwt_log") + (synopsis "Logging library") + (description "This package provides a deprecated logging component for +ocaml lwt.") + (license license:lgpl2.1))) + +(define-public ocaml4.02-lwt-log + (package-with-ocaml4.02 ocaml-lwt-log)) + (define-public ocaml-logs (package (name "ocaml-logs") @@ -1740,18 +2324,22 @@ locks or other synchronization primitives.") (base32 "1khbn7jqpid83zn8rvyh1x1sirls7zc878zj4fz985m5xlsfy853")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "build" "--with-js_of_ocaml" "false") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam))) - (propagated-inputs `(("fmt" ,ocaml-fmt) - ("lwt" ,ocaml-lwt) - ("mtime" ,ocaml-mtime) - ("result" ,ocaml-result) - ("cmdliner" ,ocaml-cmdliner) - ("topkg" ,ocaml-topkg))) + (arguments + `(#:tests? #f + #:build-flags (list "build" "--with-js_of_ocaml" "false") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) + (propagated-inputs + `(("fmt" ,ocaml-fmt) + ("lwt" ,ocaml-lwt) + ("mtime" ,ocaml-mtime) + ("result" ,ocaml-result) + ("cmdliner" ,ocaml-cmdliner) + ("topkg" ,ocaml-topkg))) (home-page "http://erratique.ch/software/logs") (synopsis "Logging infrastructure for OCaml") (description "Logs provides a logging infrastructure for OCaml. Logging is @@ -1759,6 +2347,9 @@ performed on sources whose reporting level can be set independently. Log message report is decoupled from logging and is handled by a reporter.") (license license:isc))) +(define-public ocaml4.02-logs + (package-with-ocaml4.02 ocaml-logs)) + (define-public ocaml-fpath (package (name "ocaml-fpath") @@ -1771,14 +2362,18 @@ message report is decoupled from logging and is handled by a reporter.") (base32 "05134ij27xjl6gaqsc65yl19vfj6cjxq3mbm9bf4mija8grdpn6g")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam))) - (propagated-inputs `(("topkg" ,ocaml-topkg) - ("astring" ,ocaml-astring))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) + (propagated-inputs + `(("topkg" ,ocaml-topkg) + ("astring" ,ocaml-astring))) (home-page "http://erratique.ch/software/fpath") (synopsis "File system paths for OCaml") (description "Fpath is an OCaml module for handling file system paths with @@ -1786,6 +2381,9 @@ POSIX or Windows conventions. Fpath processes paths without accessing the file system and is independent from any system library.") (license license:isc))) +(define-public ocaml4.02-fpath + (package-with-ocaml4.02 ocaml-fpath)) + (define-public ocaml-bos (package (name "ocaml-bos") @@ -1798,18 +2396,22 @@ file system and is independent from any system library.") (base32 "1ly66lysk4w6mdy4k1n3ynlpfpq7lw4wshcpzgx58v6x613w5s7q")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam))) - (propagated-inputs `(("topkg" ,ocaml-topkg) - ("astring" ,ocaml-astring) - ("fmt" ,ocaml-fmt) - ("fpath" ,ocaml-fpath) - ("logs" ,ocaml-logs) - ("rresult" ,ocaml-rresult))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) + (propagated-inputs + `(("topkg" ,ocaml-topkg) + ("astring" ,ocaml-astring) + ("fmt" ,ocaml-fmt) + ("fpath" ,ocaml-fpath) + ("logs" ,ocaml-logs) + ("rresult" ,ocaml-rresult))) (home-page "http://erratique.ch/software/bos") (synopsis "Basic OS interaction for OCaml") (description "Bos provides support for basic and robust interaction with @@ -1818,26 +2420,31 @@ environment, parse command line arguments, interact with the file system and run command line programs.") (license license:isc))) +(define-public ocaml4.02-bos + (package-with-ocaml4.02 ocaml-bos)) + (define-public ocaml-xmlm (package (name "ocaml-xmlm") - (version "1.2.0") + (version "1.3.0") (source (origin (method url-fetch) (uri (string-append "http://erratique.ch/software/xmlm/releases/" "xmlm-" version ".tbz")) (sha256 (base32 - "1jywcrwn5z3gkgvicr004cxmdaqfmq8wh72f81jqz56iyn5024nh")))) + "1rrdxg5kh9zaqmgapy9bhdqyxbbvxxib3bdfg1vhw4rrkp1z0x8n")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda* (#:key #:allow-other-keys) - (zero? (system* "pkg/build" "true"))))))) - (native-inputs `(("opam" ,opam))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("ocaml-topkg" ,ocaml-topkg) + ("opam" ,opam))) (home-page "http://erratique.ch/software/xmlm") (synopsis "Streaming XML codec for OCaml") (description "Xmlm is a streaming codec to decode and encode the XML data @@ -1848,32 +2455,41 @@ representation of the data.") (define-public ocaml4.01-xmlm (package-with-ocaml4.01 ocaml-xmlm)) +(define-public ocaml4.02-xmlm + (package-with-ocaml4.02 ocaml-xmlm)) + (define-public ocaml-ulex (package (name "ocaml-ulex") - (version "1.1") + (version "1.2") (source (origin (method url-fetch) - (uri (string-append "http://www.cduce.org/download/ulex-" + (uri (string-append "https://github.com/whitequark/ulex/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0fjlkwps14adfgxdrbb4yg65fhyimplvjjs1xqj5np197cig67x0")))) + "16gnbhqs6y2v89vw4igzvxdf2g8ybh5643636824aldcv8sscac0")))) (build-system ocaml-build-system) - (arguments `(#:phases (modify-phases %standard-phases (delete 'configure)) - #:tests? #f - #:make-flags - (list "all.opt" - (string-append "OCAMLBUILD=ocamlbuild -byte-plugin " - "-cflags -I," - (assoc-ref %build-inputs "camlp4") - "/lib/ocaml/site-lib/camlp4")))) - (native-inputs `(("camlp4" ,camlp4))) + (arguments + `(#:phases (modify-phases %standard-phases (delete 'configure)) + #:tests? #f + #:make-flags + (list "all.opt" + (string-append "OCAMLBUILD=ocamlbuild -byte-plugin " + "-cflags -I," (assoc-ref %build-inputs "camlp4") + "/lib/ocaml/site-lib/camlp4")))) + (native-inputs + `(("camlp4" ,camlp4) + ("ocamlbuild" ,ocamlbuild))) (home-page "http://www.cduce.org/download.html#side") (synopsis "Lexer generator for Unicode and OCaml") (description "Lexer generator for Unicode and OCaml.") (license license:expat))) +(define-public ocaml4.02-ulex + (package-with-ocaml4.02 ocaml-ulex)) + (define-public ocaml-uchar (package (name "ocaml-uchar") @@ -1886,39 +2502,49 @@ representation of the data.") (sha256 (base32 "0ficw1x7ymbd6m8hqw3w1aycwm1hbwd6bad3c5pspwnzh3qlikhi")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "native=true" "native-dynlink=true") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam))) + (arguments + `(#:tests? #f + #:build-flags (list "native=true" "native-dynlink=true") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) (home-page "https://github.com/ocaml/uchar") (synopsis "Compatibility library for OCaml's Uchar module") (description "The uchar package provides a compatibility library for the `Uchar` module introduced in OCaml 4.03.") (license license:lgpl2.1))) +(define-public ocaml4.02-uchar + (package-with-ocaml4.02 ocaml-uchar)) + (define-public ocaml-uutf (package (name "ocaml-uutf") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (string-append "http://erratique.ch/software/uutf/releases/" "uutf-" version ".tbz")) (sha256 (base32 - "08i0cw02cxw4mi2rs01v9xi307qshs6fnd1dlqyb52kcxzblpp37")))) + "1gp96dcggq7s84934vimxh89caaxa77lqiff1yywbwkilkkjcfqj")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam) - ("topkg" ,ocaml-topkg))) - (propagated-inputs `(("uchar" ,ocaml-uchar) - ("cmdliner" ,ocaml-cmdliner))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) + ("topkg" ,ocaml-topkg))) + (propagated-inputs + `(("uchar" ,ocaml-uchar) + ("cmdliner" ,ocaml-cmdliner))) (home-page "http://erratique.ch/software/uutf") (synopsis "Non-blocking streaming Unicode codec for OCaml") (description "Uutf is a non-blocking streaming codec to decode and encode @@ -1930,27 +2556,34 @@ Functions are also provided to fold over the characters of UTF encoded OCaml string values and to directly encode characters in OCaml Buffer.t values.") (license license:isc))) +(define-public ocaml4.02-uutf + (package-with-ocaml4.02 ocaml-uutf)) + (define-public ocaml-jsonm (package (name "ocaml-jsonm") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (string-append "http://erratique.ch/software/jsonm/releases/" "jsonm-" version ".tbz")) (sha256 (base32 - "1v3ln6d965lplj28snjdqdqablpp1kx8bw2cfx0m6i157mqyln62")))) + "1176dcmxb11fnw49b7yysvkjh0kpzx4s48lmdn5psq9vshp5c29w")))) (build-system ocaml-build-system) - (arguments `(#:tests? #f - #:build-flags (list "build") - #:phases - (modify-phases %standard-phases - (delete 'configure)))) - (native-inputs `(("opam" ,opam) - ("topkg" ,ocaml-topkg))) - (propagated-inputs `(("uutf" ,ocaml-uutf) - ("cmdliner" ,ocaml-cmdliner))) + (arguments + `(#:tests? #f + #:build-flags (list "build") + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) + ("topkg" ,ocaml-topkg))) + (propagated-inputs + `(("uutf" ,ocaml-uutf) + ("cmdliner" ,ocaml-cmdliner))) (home-page "http://erratique.ch/software/jsonm") (synopsis "Non-blocking streaming JSON codec for OCaml") (description "Jsonm is a non-blocking streaming codec to decode and encode @@ -1958,25 +2591,30 @@ the JSON data format. It can process JSON text without blocking on IO and without a complete in-memory representation of the data.") (license license:isc))) +(define-public ocaml4.02-jsonm + (package-with-ocaml4.02 ocaml-jsonm)) + (define-public ocaml-ocurl (package (name "ocaml-ocurl") - (version "0.7.9") + (version "0.8.2") (source (origin (method url-fetch) (uri (string-append "http://ygrek.org.ua/p/release/ocurl/ocurl-" version ".tar.gz")) (sha256 (base32 - "0pm6nm33wi0p9h765k6zb94ljpknryam4qd1hmb2rsk2y0y1181n")))) + "1ax3xdlzgb1zg7d0wr9nwgmh6a45a764m0wk8p6mx07ad94hz0q9")))) (build-system ocaml-build-system) - (arguments `(#:phases - (modify-phases %standard-phases - (add-before 'configure 'fix-/bin/sh - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "configure" - (("-/bin/sh") (string-append "-" (which "bash"))))))))) - (native-inputs `(("pkg-config" ,pkg-config))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-/bin/sh + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "configure" + (("-/bin/sh") (string-append "-" (which "bash"))))))))) + (native-inputs + `(("pkg-config" ,pkg-config))) (inputs `(("curl" ,curl))) (home-page "http://ocurl.forge.ocamlcore.org/") (synopsis "OCaml bindings for libcurl") @@ -1984,6 +2622,9 @@ without a complete in-memory representation of the data.") multitude of other network protocols (FTP/SMTP/RTSP/etc).") (license license:isc))) +(define-public ocaml4.02-ocurl + (package-with-ocaml4.02 ocaml-ocurl)) + (define-public ocaml-base64 (package (name "ocaml-base64") @@ -2005,6 +2646,7 @@ multitude of other network protocols (FTP/SMTP/RTSP/etc).") (delete 'configure)))) (native-inputs `(("topkg" ,ocaml-topkg) + ("ocamlbuild" ,ocamlbuild) ("opam" ,opam) ("rresult" ,ocaml-rresult) ("bos" ,ocaml-bos) @@ -2016,6 +2658,9 @@ that represent binary data in an ASCII string format by translating it into a radix-64 representation. It is specified in RFC 4648.") (license license:isc))) +(define-public ocaml4.02-base64 + (package-with-ocaml4.02 ocaml-base64)) + (define-public ocamlify (package (name "ocamlify") @@ -2029,7 +2674,9 @@ radix-64 representation. It is specified in RFC 4648.") (build-system ocaml-build-system) ; tests are done during build (arguments - `(#:phases + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:phases (modify-phases %standard-phases (delete 'check)))) (home-page "https://forge.ocamlcore.org/projects/ocamlify") @@ -2043,14 +2690,14 @@ OCaml code.") (define-public omake (package (name "omake") - (version "0.10.1") + (version "0.10.3") (source (origin (method url-fetch) (uri (string-append "http://download.camlcity.org/download/" "omake-" version ".tar.gz")) (sha256 (base32 - "093ansbppms90hiqvzar2a46fj8gm9iwnf8gn38s6piyp70lrbsj")) + "07bdg1h5i7qnlv9xq81ad5hfypl10hxm771h4rjyl5cn8plhfcgz")) (patches (search-patches "omake-fix-non-determinism.patch")))) (build-system ocaml-build-system) (arguments @@ -2063,6 +2710,8 @@ OCaml code.") (lambda* (#:key outputs #:allow-other-keys) (substitute* "mk/osconfig_unix.mk" (("CC = cc") "CC = gcc"))))))) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-omake)))) (native-inputs `(("hevea" ,hevea))) (home-page "http://projects.camlcity.org/projects/omake.html") (synopsis "Build system designed for scalability and portability") @@ -2084,28 +2733,66 @@ many additional enhancements, including: license:gpl2)))) ; OMake itself, with ocaml linking exception ; see LICENSE.OMake +(define-public ocaml4.02-omake + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant omake)))) + (package + (inherit base) + (version "0.10.2") + (source (origin + (method url-fetch) + (uri (string-append "http://download.camlcity.org/download/" + "omake-" version ".tar.gz")) + (sha256 + (base32 + "1znnlkpz89hk44byvnl1pr92ym6hwfyyw2qm9clq446r6l2z4m64")) + (patches (search-patches "omake-fix-non-determinism.patch"))))))) + (define-public ocaml-batteries (package (name "ocaml-batteries") - (version "2.5.3") + (version "2.9.0") (source (origin (method url-fetch) - (uri (ocaml-forge-uri "batteries" version 1650)) + (uri (string-append "https://github.com/ocaml-batteries-team/" + "batteries-included/releases/download/v" + version "/batteries-" version ".tar.gz")) (sha256 (base32 - "1a97w3x2l1jr5x9kj5gqm1x6b0q9fjqdcsvls7arnl3bvzgsia0n")))) + "0lkdmv2my5hirkswmci2cch341n6wkkj2q8apjhs83sg6528caxi")))) (build-system ocaml-build-system) (native-inputs - `(("qtest" ,ocaml-qtest) + `(("ocamlbuild" ,ocamlbuild) + ("qtest" ,ocaml-qtest) ("bisect" ,ocaml-bisect) ("ounit" ,ocaml-ounit))) + (propagated-inputs + `(("ocaml-num" ,ocaml-num))) (arguments `(#:phases (modify-phases %standard-phases (delete 'check) ; tests are run by the build phase (replace 'build - (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "ocaml" "setup.ml" "-build"))))))) + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((files + (map (lambda (str) + (substring str 0 (- (string-length str) 1))) + (append + (find-files "src" ".*.mliv") + (find-files "src" ".*.mlv") + (find-files "src" ".*.mlp"))))) + (apply invoke "ocamlbuild" "-no-links" "-use-ocamlfind" "-I" "num" + "-lflag" "-dllpath-all" files) + (for-each (lambda (file) + (copy-file (string-append "_build/" file) file)) + files)) + (invoke "ocamlbuild" "-no-links" "-use-ocamlfind" "-I" "num" + "-lflag" "-dllpath-all" "build/mkconf.byte") + (copy-file "_build/build/mkconf.byte" "build/mkconf.byte") + (invoke "make" "all") + #t))))) + (properties + `((ocaml4.01-variant . ,(delay ocaml4.01-batteries)) + (ocaml4.02-variant . ,(delay ocaml4.02-batteries)))) (home-page "http://batteries.forge.ocamlcore.org/") (synopsis "Development platform for the OCaml programming language") (description "Define a standard set of libraries which may be expected on @@ -2113,8 +2800,24 @@ every compliant installation of OCaml and organize these libraries into a hierarchy of modules.") (license license:lgpl2.1+))) +(define-public ocaml4.02-batteries + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant ocaml-batteries)))) + (package + (inherit base) + (version "2.5.3") + (source (origin + (method url-fetch) + (uri (ocaml-forge-uri "batteries" version 1650)) + (sha256 + (base32 + "1a97w3x2l1jr5x9kj5gqm1x6b0q9fjqdcsvls7arnl3bvzgsia0n")))) + (propagated-inputs '())))) + (define-public ocaml4.01-batteries - (package-with-ocaml4.01 ocaml-batteries)) + (let ((base (package-with-ocaml4.01 (strip-ocaml4.01-variant ocaml4.02-batteries)))) + (package + (inherit base) + (name "ocaml4.01-batteries")))) (define-public ocaml-pcre (package @@ -2139,9 +2842,11 @@ hierarchy of modules.") (lib (string-append out "/lib/ocaml/site-lib/pcre"))) (mkdir-p stubs) (symlink (string-append lib "/dllpcre_stubs.so") - (string-append stubs "/dllpcre_stubs.so")))))))) + (string-append stubs "/dllpcre_stubs.so"))) + #t))))) (native-inputs `(("batteries" ,ocaml-batteries) + ("ocamlbuild" ,ocamlbuild) ("pcre:bin" ,pcre "bin"))) (propagated-inputs `(("pcre" ,pcre))) (home-page "https://mmottl.github.io/pcre-ocaml") @@ -2151,19 +2856,26 @@ matching and substitution, similar to the functionality offered by the Perl language.") (license license:lgpl2.1+))); with the OCaml link exception +(define-public ocaml4.02-pcre + (package-with-ocaml4.02 ocaml-pcre)) + (define-public ocaml-expect (package (name "ocaml-expect") - (version "0.0.5") + (version "0.0.6") (source (origin (method url-fetch) - (uri (ocaml-forge-uri name version 1372)) + (uri (ocaml-forge-uri name version 1736)) (sha256 (base32 - "07xq8w2x2vffc32z7vk6y14jwbfb1cw0m2lm1jzi60hnr1dvg8by")))) + "098qvg9d4yrqzr5ax291y3whrpax0m3sx4gi6is0mblc96r9yqk0")))) + (arguments + `(#:tests? #f)) (build-system ocaml-build-system) (native-inputs - `(("ocaml-pcre" ,ocaml-pcre) + `(("ocamlbuild" ,ocamlbuild) + ("ocaml-num" ,ocaml-num) + ("ocaml-pcre" ,ocaml-pcre) ("ounit" ,ocaml-ounit))) (propagated-inputs `(("batteries" ,ocaml-batteries))) (home-page "https://forge.ocamlcore.org/projects/ocaml-expect/") @@ -2172,18 +2884,22 @@ language.") can match the question using a regular expression or a timeout.") (license license:lgpl2.1+))) ; with the OCaml static compilation exception -(define-public ocaml-fileutils +(define-public ocaml4.02-fileutils (package - (name "ocaml-fileutils") - (version "0.5.1") + (name "ocaml4.02-fileutils") + (version "0.5.3") (source (origin (method url-fetch) - (uri (ocaml-forge-uri name version 1651)) + (uri (ocaml-forge-uri name version 1728)) (sha256 (base32 - "0g6zx2rcvacklxyli19ixcf6ich9ipxsps4k3jz98f5zlaab0a7g")))) + "1rc4cqlvdhbs55i85zfbfhz938fsy4fj6kwlkfm3ra7bpwn8bmpd")))) (build-system ocaml-build-system) - (native-inputs `(("ounit" ,ocaml-ounit))) + (arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib)) + (native-inputs + `(("ounit" ,ocaml4.02-ounit))) (home-page "http://ocaml-fileutils.forge.ocamlcore.org") (synopsis "Pure OCaml functions to manipulate real file and filename") (description "Library to provide pure OCaml functions to manipulate real @@ -2193,20 +2909,20 @@ file (POSIX like) and filename.") (define-public ocaml-oasis (package (name "ocaml-oasis") - (version "0.4.8") + (version "0.4.11") (source (origin (method url-fetch) - (uri (ocaml-forge-uri name version 1669)) + (uri (ocaml-forge-uri name version 1757)) (sha256 (base32 - "1ln7vc7ip6s5xbi20mhnn087xi4a2m5vqawx0703qqnfkzhmslqy")) + "0bn13mzfa98dq3y0jwzzndl55mnywaxv693z6f1rlvpdykp3vdqq")) (modules '((guix build utils))) (snippet '(begin (substitute* "test/test-main/Test.ml" ;; most of these tests fail because ld cannot find crti.o, but according ;; to the log file, the environment variables {LD_,}LIBRARY_PATH - ;; are set correctly whene LD_LIBRARY_PATH is defined beforhand. + ;; are set correctly when LD_LIBRARY_PATH is defined beforhand. (("TestBaseCompat.tests;") "") (("TestExamples.tests;") "") (("TestFull.tests;") "") @@ -2216,17 +2932,12 @@ file (POSIX like) and filename.") (("TestPluginOMake.tests;") "")) #t)))) (build-system ocaml-build-system) + (arguments + `(#:tests? #f)) (native-inputs - `(("ocamlify" ,ocamlify) - ("ocamlmod" ,ocamlmod) - ("ounit" ,ocaml-ounit) - ("omake" ,omake) - ("ocaml-expect" ,ocaml-expect) - ("ocaml-pcre" ,ocaml-pcre) - ("ocaml-fileutils" ,ocaml-fileutils) - ("camlp4" ,camlp4) - ("texlive" ,texlive) - ("pkg-config" ,pkg-config))) + `(("ocamlbuild" ,ocamlbuild) + ("ocamlify" ,ocamlify) + ("ocamlmod" ,ocamlmod))) (home-page "https://oasis.forge.ocamlcore.org") (synopsis "Integrates a configure, build, install system in OCaml projects") (description "OASIS is a tool to integrate a configure, build and install @@ -2234,6 +2945,9 @@ system in your OCaml projects. It helps to create standard entry points in your build system and allows external tools to analyse your project easily.") (license license:lgpl2.1+))) ; with ocaml static compilation exception +(define-public ocaml4.02-oasis + (package-with-ocaml4.02 ocaml-oasis)) + (define-public ocaml-js-build-tools (package (name "ocaml-js-build-tools") @@ -2242,6 +2956,7 @@ build system and allows external tools to analyse your project easily.") "0r8z4fz8iy5y6hkdlkpwf6rk4qigcr3dzyv35585xgg2ahf12zy6")) (native-inputs `(("oasis" ,ocaml-oasis) + ("ocamlbuild" ,ocamlbuild) ("opam" ,opam))) (build-system ocaml-build-system) (arguments janestreet-arguments) @@ -2256,17 +2971,23 @@ from the oasis build log @end enumerate") (license license:asl2.0))) -(define-public ocaml-bin-prot +(define-public ocaml4.02-js-build-tools + (package-with-ocaml4.02 ocaml-js-build-tools)) + +(define-public ocaml4.02-bin-prot (package - (name "ocaml-bin-prot") + (name "ocaml4.02-bin-prot") (version "113.33.03") (source (janestreet-origin "bin_prot" version "1ws8c017z8nbj3vw92ndvjk9011f71rmp3llncbv8r5fc76wqv3l")) + (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) - (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/bin_prot/") (synopsis "Binary protocol generator") (description "This library contains functionality for reading and writing @@ -2277,17 +2998,20 @@ protocol is also heavily optimized for size, making it ideal for long-term storage of large amounts of data.") (license license:asl2.0))) -(define-public ocaml-fieldslib +(define-public ocaml4.02-fieldslib (package - (name "ocaml-fieldslib") + (name "ocaml4.02-fieldslib") (version "113.33.03") (source (janestreet-origin "fieldslib" version "1rm3bn54bzk2hlq8f3w067ak8s772w4a8f78i3yh79vxfzq8ncvv")) + (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) - (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/fieldslib/") (synopsis "Syntax extension to record fields") (description "Syntax extension to define first class values representing @@ -2295,18 +3019,21 @@ record fields, to get and set record fields, iterate and fold over all fields of a record and create new record values.") (license license:asl2.0))) -(define-public ocaml-ppx-core +(define-public ocaml4.02-ppx-core (package - (name "ocaml-ppx-core") + (name "ocaml4.02-ppx-core") (version "113.33.03") (source (janestreet-origin "ppx_core" version "0f69l4czhgssnhb5ds2j9dbqjyz8dp1y3i3x0i4h6pxnms20zbxa")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) - (inputs `(("ppx-tools" ,ocaml-ppx-tools))) - (arguments janestreet-arguments) + (inputs `(("ppx-tools" ,ocaml4.02-ppx-tools))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_core/") (synopsis "Standard library for ppx rewriters") (description "Ppx_core is a standard library for OCaml AST transformers. @@ -2319,20 +3046,23 @@ It contains: @end enumerate") (license license:asl2.0))) -(define-public ocaml-ppx-optcomp +(define-public ocaml4.02-ppx-optcomp (package - (name "ocaml-ppx-optcomp") + (name "ocaml4.02-ppx-optcomp") (version "113.33.03") (source (janestreet-origin "ppx_optcomp" version "13an8p2r7sd0d5lv54mlzrxdni47408bwqi3bjcx4m6005170q30")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_optcomp/") (synopsis "Optional compilation for OCaml") (description "Ppx_optcomp stands for Optional Compilation. It is a tool @@ -2340,21 +3070,24 @@ used to handle optional compilations of pieces of code depending of the word size, the version of the compiler, ...") (license license:asl2.0))) -(define-public ocaml-ppx-driver +(define-public ocaml4.02-ppx-driver (package - (name "ocaml-ppx-driver") + (name "ocaml4.02-ppx-driver") (version "113.33.03") (source (janestreet-origin "ppx_driver" version "011zzr45897j49b7iiybb29k7pspcx36mlnp7nh6pxb8b0ga76fh")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam) - ("ppx-optcomp" ,ocaml-ppx-optcomp))) + ("ppx-optcomp" ,ocaml4.02-ppx-optcomp))) (propagated-inputs - `(("ppx-optcomp" ,ocaml-ppx-optcomp) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-optcomp" ,ocaml4.02-ppx-optcomp) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_driver/") (synopsis "Feature-full driver for OCaml AST transformers") (description "A driver is an executable created from a set of OCaml AST @@ -2372,21 +3105,33 @@ provide a tool that can be used to: (define-public ocaml-cppo (package (name "ocaml-cppo") - (version "1.4.1") + (version "1.6.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/mjambon/cppo/archive/v" version ".tar.gz")) (sha256 (base32 - "02gma6nw09vfnd6h7bl3n70lwz7m9z2svplxyfh6h5bf4lqgqzjv")) + "1dkm3d5h6h56y937gcdk2wixlpzl59vv5pmiafglr89p20kf7gqf")) (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (arguments - `(#:phases (modify-phases %standard-phases (delete 'configure)) - #:make-flags (list (string-append "BINDIR=" - (assoc-ref %outputs "out") "/bin")) + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "dune" "build" "@install" "--profile" "release") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))) #:tests? #f)) + (native-inputs + `(("dune" ,dune) + ("ocamlbuild" ,ocamlbuild))) (home-page "https://github.com/mjambon/cppo") (synopsis "Equivalent of the C preprocessor for OCaml programs") (description "Cppo is an equivalent of the C preprocessor for OCaml @@ -2399,11 +3144,14 @@ programs. It allows the definition of simple macros and file inclusion. Cpp oi @end enumerate") (license license:bsd-3))) +(define-public ocaml4.02-cppo + (package-with-ocaml4.02 ocaml-cppo)) + ;; this package is not reproducible. This is related to temporary filenames ;; such as findlib_initxxxxx where xxxxx is random. -(define-public ocaml-ppx-deriving +(define-public ocaml4.02-ppx-deriving (package - (name "ocaml-ppx-deriving") + (name "ocaml4.02-ppx-deriving") (version "4.1") (source (origin @@ -2415,15 +3163,17 @@ programs. It allows the definition of simple macros and file inclusion. Cpp oi (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) - ("cppo" ,ocaml-cppo) - ("ounit" ,ocaml-ounit) + `(("js-build-tools" ,ocaml4.02-js-build-tools) + ("cppo" ,ocaml4.02-cppo) + ("ounit" ,ocaml4.02-ounit) ("opam" ,opam))) (propagated-inputs - `(("result" ,ocaml-result) - ("ppx-tools" ,ocaml-ppx-tools))) + `(("result" ,ocaml4.02-result) + ("ppx-tools" ,ocaml4.02-ppx-tools))) (arguments - `(#:phases + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:phases (modify-phases %standard-phases (delete 'configure) (add-before 'install 'fix-environment @@ -2438,90 +3188,100 @@ programs. It allows the definition of simple macros and file inclusion. Cpp oi code based on type definitions, and a set of useful plugins for common tasks.") (license license:expat))) -(define-public ocaml-ppx-type-conv +(define-public ocaml4.02-ppx-type-conv (package - (name "ocaml-ppx-type-conv") + (name "ocaml4.02-ppx-type-conv") (version "113.33.03") (source (janestreet-origin "ppx_type_conv" version "1sp602ads2f250nv4d4rgw54d14k7flyhb4w8ff084f657hhmxv2")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-deriving" ,ocaml-ppx-deriving) - ("ppx-tools" ,ocaml-ppx-tools) - ("result" ,ocaml-result) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-driver" ,ocaml-ppx-driver))) - (arguments janestreet-arguments) + `(("ppx-deriving" ,ocaml4.02-ppx-deriving) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-driver" ,ocaml4.02-ppx-driver))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_type_conv/") (synopsis "Support Library for type-driven code generators") (description "The type_conv library factors out functionality needed by different preprocessors that generate code from type specifications.") (license license:asl2.0))) -(define-public ocaml-ppx-inline-test +(define-public ocaml4.02-ppx-inline-test (package - (name "ocaml-ppx-inline-test") + (name "ocaml4.02-ppx-inline-test") (version "113.33.03") (source (janestreet-origin "ppx_inline_test" version "0859ni43fl39dd5g6cxfhq0prxmx59bd2bfq8jafp593ba4q0icq")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam) - ("ppx-core" ,ocaml-ppx-core))) + ("ppx-core" ,ocaml4.02-ppx-core))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_inline_test/") (synopsis "Syntax extension for writing in-line tests in ocaml code") (description "Syntax extension for writing in-line tests in ocaml code.") (license license:asl2.0))) -(define-public ocaml-ppx-bench +(define-public ocaml4.02-ppx-bench (package - (name "ocaml-ppx-bench") + (name "ocaml4.02-ppx-bench") (version "113.33.03") (source (janestreet-origin "ppx_bench" version "1hky3y17qpb925rymf97wv54di9gaqdmkix7wpkjw14qzl512b68")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam) - ("ppx-core" ,ocaml-ppx-core))) + ("ppx-core" ,ocaml4.02-ppx-core))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-inline-test" ,ocaml-ppx-inline-test) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-inline-test" ,ocaml4.02-ppx-inline-test) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_bench/") (synopsis "Syntax extension for writing in-line benchmarks in ocaml code") (description "Syntax extension for writing in-line benchmarks in ocaml code.") (license license:asl2.0))) -(define-public ocaml-ppx-compare +(define-public ocaml4.02-ppx-compare (package - (name "ocaml-ppx-compare") + (name "ocaml4.02-ppx-compare") (version "113.33.03") (source (janestreet-origin "ppx_compare" version "0bfhi33kq9l4q6zzc6svki2csracz5j4731c3npcy6cs73jynn0z")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam) - ("ppx-core" ,ocaml-ppx-core))) + ("ppx-core" ,ocaml4.02-ppx-core))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-type-conv" ,ocaml-ppx-type-conv))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_compare/") (synopsis "Generation of comparison functions from types") (description "Generation of fast comparison functions from type expressions @@ -2532,94 +3292,109 @@ flexibility by allowing you to override them for a specific type and more safety by making sure that you only compare comparable values.") (license license:asl2.0))) -(define-public ocaml-sexplib +(define-public ocaml4.02-sexplib (package - (name "ocaml-sexplib") + (name "ocaml4.02-sexplib") (version "113.33.03") (source (janestreet-origin "sexplib" version "1ffjmj8if9lyv965cgn2ld1xv7g52qsr8mqflbm515ck1i8l2ima")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/sexplib/") (synopsis "Library for serializing OCaml values to and from S-expressions") (description "Sexplib contains functionality for parsing and pretty-printing s-expressions.") (license license:asl2.0))) -(define-public ocaml-typerep +(define-public ocaml4.02-typerep (package - (name "ocaml-typerep") + (name "ocaml4.02-typerep") (version "113.33.03") (source (janestreet-origin "typerep" version "1b9v5bmi824a9d4sx0f40ixq0yfcbiqxafg4a1jx95xg9199zafy")) + (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) - (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/typerep/") (synopsis "Typerep is a library for runtime types") (description "Typerep is a library for runtime types.") (license license:asl2.0))) -(define-public ocaml-variantslib +(define-public ocaml4.02-variantslib (package - (name "ocaml-variantslib") + (name "ocaml4.02-variantslib") (version "113.33.03") (source (janestreet-origin "variantslib" version "05vp799vl38fvl98ga5miwbzh09cnnpapi6q6gdvwyqi6w7s919n")) + (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) - (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/variantslib") (synopsis "OCaml variants as first class values") (description "OCaml variants as first class values.") (license license:asl2.0))) -(define-public ocaml-ppx-sexp-conv +(define-public ocaml4.02-ppx-sexp-conv (package - (name "ocaml-ppx-sexp-conv") + (name "ocaml4.02-ppx-sexp-conv") (version "113.33.03") (source (janestreet-origin "ppx_sexp_conv" version "1rbj6d5dl625gdxih34xcrdvikci6h8i2dl9x3wraa4qrgishiw7")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam) - ("ppx-core" ,ocaml-ppx-core))) + ("ppx-core" ,ocaml4.02-ppx-core))) (propagated-inputs - `(("sexplib" ,ocaml-sexplib) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-type-conv" ,ocaml-ppx-type-conv) - ("ppx-tools" ,ocaml-ppx-tools))) - (arguments janestreet-arguments) + `(("sexplib" ,ocaml4.02-sexplib) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv) + ("ppx-tools" ,ocaml4.02-ppx-tools))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_sexp_conv") (synopsis "Generation of S-expression conversion functions from type definitions") (description "Generation of S-expression conversion functions from type definitions.") (license license:asl2.0))) -(define-public ocaml-ppx-variants-conv +(define-public ocaml4.02-ppx-variants-conv (package - (name "ocaml-ppx-variants-conv") + (name "ocaml4.02-ppx-variants-conv") (version "113.33.03") (source (janestreet-origin "ppx_variants_conv" version "0vnn2l1118cj72413d3f7frlw6yc09l8f64jlzkzbgb9bxpalx34")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-core" ,ocaml-ppx-core) - ("variantslib" ,ocaml-variantslib) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-type-conv" ,ocaml-ppx-type-conv))) - (arguments janestreet-arguments) + `(("ppx-core" ,ocaml4.02-ppx-core) + ("variantslib" ,ocaml4.02-variantslib) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_variants_conv") (synopsis "Generation of accessor and iteration functions for ocaml variant types") @@ -2627,65 +3402,74 @@ types") variant types.") (license license:asl2.0))) -(define-public ocaml-ppx-here +(define-public ocaml4.02-ppx-here (package - (name "ocaml-ppx-here") + (name "ocaml4.02-ppx-here") (version "113.33.03") (source (janestreet-origin "ppx_here" version "1ay8lfxi0qg3ib2zkwh4h0vqk3gjmxaz572gzab0bbxyqn3z86v7")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_here") (synopsis "Expands [%here] into its location") (description "Expands [%here] into its location.") (license license:asl2.0))) -(define-public ocaml-ppx-assert +(define-public ocaml4.02-ppx-assert (package - (name "ocaml-ppx-assert") + (name "ocaml4.02-ppx-assert") (version "113.33.03") (source (janestreet-origin "ppx_assert" version "1k5kxmqkibp5fk25pgz81f3c1r4mgvb5byzf6bnmxd24y60wn46p")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-compare" ,ocaml-ppx-compare) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-driver" ,ocaml-ppx-driver) - ("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-type-conv" ,ocaml-ppx-type-conv) - ("ppx-sexplib" ,ocaml-sexplib) - ("ppx-here" ,ocaml-ppx-here))) - (arguments janestreet-arguments) + `(("ppx-compare" ,ocaml4.02-ppx-compare) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv) + ("ppx-sexplib" ,ocaml4.02-sexplib) + ("ppx-here" ,ocaml4.02-ppx-here))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_assert") (synopsis "Assert-like extension nodes that raise useful errors on failure") (description "Assert-like extension nodes that raise useful errors on failure.") (license license:asl2.0))) -(define-public ocaml-ppx-enumerate +(define-public ocaml4.02-ppx-enumerate (package - (name "ocaml-ppx-enumerate") + (name "ocaml4.02-ppx-enumerate") (version "113.33.03") (source (janestreet-origin "ppx_enumerate" version "15g7yfv9wg2h9r6k6q1zrhygmsl4xrfn25mrb0i4czjjivzmxjh4")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-tools" ,ocaml-ppx-tools) - ("ppx-type-conv" ,ocaml-ppx-type-conv) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_enumerate") (synopsis "Generate a list containing all values of a finite type") (description "Ppx_enumerate is a ppx rewriter which generates a definition @@ -2693,174 +3477,198 @@ for the list of all values of a type (for a type which only has finitely many values).") (license license:asl2.0))) -(define-public ocaml-ppx-let +(define-public ocaml4.02-ppx-let (package - (name "ocaml-ppx-let") + (name "ocaml4.02-ppx-let") (version "113.33.03") (source (janestreet-origin "ppx_let" version "0gd6d3gdaqfwjcs7gaw1qxc30i584q6a86ndaj1bx1q63xqd6yx9")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_let") (synopsis "Monadic let-bindings") (description "A ppx rewriter for monadic and applicative let bindings, match expressions, and if expressions.") (license license:asl2.0))) -(define-public ocaml-ppx-typerep-conv +(define-public ocaml4.02-ppx-typerep-conv (package - (name "ocaml-ppx-typerep-conv") + (name "ocaml4.02-ppx-typerep-conv") (version "113.33.03") (source (janestreet-origin "ppx_typerep_conv" version "0g0xqm9s1b2jjvxb8yp69281q2s3bwz6sibn10fvgcdawpa0rmrg")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-tools" ,ocaml-ppx-tools) - ("ppx-type-conv" ,ocaml-ppx-type-conv) - ("ppx-core" ,ocaml-ppx-core) - ("typerep" ,ocaml-typerep))) - (arguments janestreet-arguments) + `(("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv) + ("ppx-core" ,ocaml4.02-ppx-core) + ("typerep" ,ocaml4.02-typerep))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_typerep_conv") (synopsis "Generation of runtime types from type declarations") (description "Automatic generation of runtime types from type definitions.") (license license:asl2.0))) -(define-public ocaml-ppx-sexp-value +(define-public ocaml4.02-ppx-sexp-value (package - (name "ocaml-ppx-sexp-value") + (name "ocaml4.02-ppx-sexp-value") (version "113.33.03") (source (janestreet-origin "ppx_sexp_value" version "0m3ag23mbqm0i2pv1dzilfks15ipa5q60mf57a0cd3p0pvarq10g")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-here" ,ocaml-ppx-here) - ("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-here" ,ocaml4.02-ppx-here) + ("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_sexp_value/") (synopsis "Simplify building s-expressions from ocaml values") (description "A ppx rewriter that simplifies building s-expressions from ocaml values.") (license license:asl2.0))) -(define-public ocaml-ppx-pipebang +(define-public ocaml4.02-ppx-pipebang (package - (name "ocaml-ppx-pipebang") + (name "ocaml4.02-ppx-pipebang") (version "113.33.03") (source (janestreet-origin "ppx_pipebang" version "1965c7hymp26ncmjs0pfxi2s5jlj60z2c9b194lgcwxqiav56pcw")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_pipebang/") (synopsis "Inline reverse application operators `|>` and `|!`") (description "A ppx rewriter that inlines reverse application operators @code{|>} and @code{|!}.") (license license:asl2.0))) -(define-public ocaml-ppx-bin-prot +(define-public ocaml4.02-ppx-bin-prot (package - (name "ocaml-ppx-bin-prot") + (name "ocaml4.02-ppx-bin-prot") (version "113.33.03") (source (janestreet-origin "ppx_bin_prot" version "173kjv36giik11zgfvsbzwfbpr66dm2pcha9vf990jgzh8hqz39h")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("bin-prot" ,ocaml-bin-prot) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-type-conv" ,ocaml-ppx-type-conv) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("bin-prot" ,ocaml4.02-bin-prot) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_bin_prot/") (synopsis "Generation of bin_prot readers and writers from types") (description "Generation of binary serialization and deserialization functions from type definitions.") (license license:asl2.0))) -(define-public ocaml-ppx-fail +(define-public ocaml4.02-ppx-fail (package - (name "ocaml-ppx-fail") + (name "ocaml4.02-ppx-fail") (version "113.33.03") (source (janestreet-origin "ppx_fail" version "1dwgad0f05gqp5rnwf9dcasidpfi7q3mrpazsw3a2vijjblbhjgn")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-here" ,ocaml-ppx-here) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-here" ,ocaml4.02-ppx-here) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_fail/") (synopsis "Add location to calls to failwiths") (description "Syntax extension that makes [failwiths] always include a position.") (license license:asl2.0))) -(define-public ocaml-ppx-custom-printf +(define-public ocaml4.02-ppx-custom-printf (package - (name "ocaml-ppx-custom-printf") + (name "ocaml4.02-ppx-custom-printf") (version "113.33.03") (source (janestreet-origin "ppx_custom_printf" version "11jlx0n87g2j1vyyp343dibx7lvvwig5j5q0nq0b80kbsq0k6yr8")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-driver" ,ocaml-ppx-driver))) - (arguments janestreet-arguments) + `(("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-driver" ,ocaml4.02-ppx-driver))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_custom_printf/") (synopsis "Printf-style format-strings for user-defined string conversion") (description "Extensions to printf-style format-strings for user-defined string conversion.") (license license:asl2.0))) -(define-public ocaml-ppx-sexp-message +(define-public ocaml4.02-ppx-sexp-message (package - (name "ocaml-ppx-sexp-message") + (name "ocaml4.02-ppx-sexp-message") (version "113.33.03") (source (janestreet-origin "ppx_sexp_message" version "084w1l3gnyw4ri9vbn7bv9b2xkw1520qczfxpxdarfivdrz8xr68")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-driver" ,ocaml-ppx-driver) - ("ppx-here" ,ocaml-ppx-here) - ("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core))) - (arguments janestreet-arguments) + `(("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-here" ,ocaml4.02-ppx-here) + ("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_sexp_message/") (synopsis "A ppx rewriter for easy construction of s-expressions") (description "Ppx_sexp_message aims to ease the creation of s-expressions @@ -2869,23 +3677,26 @@ where one needs to construct a s-expression based on various element of the context such as function arguments.") (license license:asl2.0))) -(define-public ocaml-ppx-fields-conv +(define-public ocaml4.02-ppx-fields-conv (package - (name "ocaml-ppx-fields-conv") + (name "ocaml4.02-ppx-fields-conv") (version "113.33.03") (source (janestreet-origin "ppx_fields_conv" version "1vzbdz27g5qhhfs7wx6rjf979q4xyssxqbmp6sc1sxknbghslbdv")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam) - ("ppx-core" ,ocaml-ppx-core))) + ("ppx-core" ,ocaml4.02-ppx-core))) (propagated-inputs - `(("fieldslib" ,ocaml-fieldslib) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-type-conv" ,ocaml-ppx-type-conv))) - (arguments janestreet-arguments) + `(("fieldslib" ,ocaml4.02-fieldslib) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-type-conv" ,ocaml4.02-ppx-type-conv))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_fields_conv/") (synopsis "Generation of accessor and iteration functions for ocaml records") (description "Ppx_fields_conv is a ppx rewriter that can be used to define @@ -2894,10 +3705,59 @@ and set record fields, iterate and fold over all fields of a record and create new record values.") (license license:asl2.0))) +(define-public ocaml-seq + (package + (name "ocaml-seq") + (version "0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/c-cube/seq/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02lb2d9i12bxrz2ba5wygk2bycan316skqlyri0597q7j9210g8r")))) + (build-system ocaml-build-system) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((install-dir (string-append (assoc-ref outputs "out") + "/lib/ocaml/site-lib/seq"))) + (mkdir-p install-dir) + (with-output-to-file (string-append install-dir "/META") + (lambda _ + (display "name=\"seq\" +version=\"[distributed with ocaml]\" +description=\"dummy package for compatibility\" +requires=\"\""))) + #t)))))) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-seq)))) + (home-page "https://github.com/c-cube/seq") + (synopsis "OCaml's standard iterator type") + (description "This package is a compatibility package for OCaml's +standard iterator type starting from 4.07.") + (license license:lgpl2.1+))) + +(define-public ocaml4.02-seq + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant ocaml-seq)))) + (package + (inherit base) + (arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:tests? #f; no tests + #:phases (modify-phases %standard-phases (delete 'configure))))))) + (define-public ocaml-re (package (name "ocaml-re") - (version "1.7.1") + (version "1.8.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/ocaml/ocaml-re//archive/" @@ -2905,9 +3765,27 @@ new record values.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1s3rcr76cgm4p1xmaazc58arkg2lz3zfcp1icm00m6s5ccnkh67b")))) + "1pdb0mr6z5ax6szblr3f5lbdnqq9grm97cmsfjmdma60yrx2rqhd")))) (build-system ocaml-build-system) - (native-inputs `(("ounit" ,ocaml-ounit))) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda _ + (invoke "dune" "build" "@install" "--profile" "release") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))))) + (propagated-inputs + `(("ocaml-seq" ,ocaml-seq))) + (native-inputs + `(("dune" ,dune) + ("ounit" ,ocaml-ounit))) (home-page "https://github.com/ocaml/ocaml-re/") (synopsis "Regular expression library for OCaml") (description "Pure OCaml regular expressions with: @@ -2920,32 +3798,38 @@ new record values.") @end enumerate") (license license:expat))) -(define-public ocaml-ppx-expect +(define-public ocaml4.02-re + (package-with-ocaml4.02 ocaml-re)) + +(define-public ocaml4.02-ppx-expect (package - (name "ocaml-ppx-expect") + (name "ocaml4.02-ppx-expect") (version "113.33.03") (source (janestreet-origin "ppx_expect" version "03sbs4s5i8l9syr45v25f5hzy7msd2b47k2a9wsq9m43d4imgkrc")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("fieldslib" ,ocaml-fieldslib) - ("ppx-tools" ,ocaml-ppx-tools) - ("ppx-assert" ,ocaml-ppx-assert) - ("ppx-compare" ,ocaml-ppx-compare) - ("ppx-core" ,ocaml-ppx-core) - ("ppx-custom-printf" ,ocaml-ppx-custom-printf) - ("ppx-driver" ,ocaml-ppx-driver) - ("ppx-fields-conv" ,ocaml-ppx-fields-conv) - ("ppx-inline-test" ,ocaml-ppx-inline-test) - ("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("ppx-variants-conv" ,ocaml-ppx-variants-conv) - ("re" ,ocaml-re) - ("sexplib" ,ocaml-sexplib) - ("variantslib" ,ocaml-variantslib))) - (arguments janestreet-arguments) + `(("fieldslib" ,ocaml4.02-fieldslib) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("ppx-assert" ,ocaml4.02-ppx-assert) + ("ppx-compare" ,ocaml4.02-ppx-compare) + ("ppx-core" ,ocaml4.02-ppx-core) + ("ppx-custom-printf" ,ocaml4.02-ppx-custom-printf) + ("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-fields-conv" ,ocaml4.02-ppx-fields-conv) + ("ppx-inline-test" ,ocaml4.02-ppx-inline-test) + ("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("ppx-variants-conv" ,ocaml4.02-ppx-variants-conv) + ("re" ,ocaml4.02-re) + ("sexplib" ,ocaml4.02-sexplib) + ("variantslib" ,ocaml4.02-variantslib))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_expect/") (synopsis "Cram like framework for OCaml") (description "Expect-test is a framework for writing tests in OCaml, similar @@ -2955,66 +3839,72 @@ output-generating code, interleaved with %expect extension expressions to denote the expected output.") (license license:asl2.0))) -(define-public ocaml-ppx-jane +(define-public ocaml4.02-ppx-jane (package - (name "ocaml-ppx-jane") + (name "ocaml4.02-ppx-jane") (version "113.33.03") (source (janestreet-origin "ppx_jane" version "0bjxkhmzgm6x9dcvjwybbccn34khbvyyjimcbaja30fp6qcqk5yl")) (build-system ocaml-build-system) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) + `(("js-build-tools" ,ocaml4.02-js-build-tools) ("opam" ,opam))) (propagated-inputs - `(("ppx-assert" ,ocaml-ppx-assert) - ("ppx-bench" ,ocaml-ppx-bench) - ("ppx-bin-prot" ,ocaml-ppx-bin-prot) - ("ppx-compare" ,ocaml-ppx-compare) - ("ppx-custom-printf" ,ocaml-ppx-custom-printf) - ("ppx-deriving" ,ocaml-ppx-deriving) - ("ppx-enumerate" ,ocaml-ppx-enumerate) - ("ppx-expect" ,ocaml-ppx-expect) - ("ppx-fail" ,ocaml-ppx-fail) - ("ppx-fields-conv" ,ocaml-ppx-fields-conv) - ("ppx-here" ,ocaml-ppx-here) - ("ppx-inline-test" ,ocaml-ppx-inline-test) - ("ppx-let" ,ocaml-ppx-let) - ("ppx-pipebang" ,ocaml-ppx-pipebang) - ("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("ppx-sexp-message" ,ocaml-ppx-sexp-message) - ("ppx-sexp-value" ,ocaml-ppx-sexp-value) - ("ppx-typerep-conv" ,ocaml-ppx-typerep-conv) - ("ppx-variants-conv" ,ocaml-ppx-variants-conv))) - (arguments janestreet-arguments) + `(("ppx-assert" ,ocaml4.02-ppx-assert) + ("ppx-bench" ,ocaml4.02-ppx-bench) + ("ppx-bin-prot" ,ocaml4.02-ppx-bin-prot) + ("ppx-compare" ,ocaml4.02-ppx-compare) + ("ppx-custom-printf" ,ocaml4.02-ppx-custom-printf) + ("ppx-deriving" ,ocaml4.02-ppx-deriving) + ("ppx-enumerate" ,ocaml4.02-ppx-enumerate) + ("ppx-expect" ,ocaml4.02-ppx-expect) + ("ppx-fail" ,ocaml4.02-ppx-fail) + ("ppx-fields-conv" ,ocaml4.02-ppx-fields-conv) + ("ppx-here" ,ocaml4.02-ppx-here) + ("ppx-inline-test" ,ocaml4.02-ppx-inline-test) + ("ppx-let" ,ocaml4.02-ppx-let) + ("ppx-pipebang" ,ocaml4.02-ppx-pipebang) + ("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("ppx-sexp-message" ,ocaml4.02-ppx-sexp-message) + ("ppx-sexp-value" ,ocaml4.02-ppx-sexp-value) + ("ppx-typerep-conv" ,ocaml4.02-ppx-typerep-conv) + ("ppx-variants-conv" ,ocaml4.02-ppx-variants-conv))) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/ppx_jane/") (synopsis "Standard Jane Street ppx rewriters") (description "Ppx_jane is a ppx_driver including all standard ppx rewriters.") (license license:asl2.0))) -(define-public ocaml-core-kernel +(define-public ocaml4.02-core-kernel (package - (name "ocaml-core-kernel") + (name "ocaml4.02-core-kernel") (version "113.33.03") (source (janestreet-origin "core_kernel" version "0fl23jrwivixawhxinbwaw9cabqnzn7fini7dxpxjjvkxdc8ip5y")) (native-inputs - `(("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + `(("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("bin_prot" ,ocaml-bin-prot) - ("ppx-assert" ,ocaml-ppx-assert) - ("ppx-bench" ,ocaml-ppx-bench) - ("ppx-driver" ,ocaml-ppx-driver) - ("ppx-expect" ,ocaml-ppx-expect) - ("ppx-inline-test" ,ocaml-ppx-inline-test) - ("typerep" ,ocaml-typerep) - ("sexplib" ,ocaml-sexplib) - ("variantslib" ,ocaml-variantslib) - ("result" ,ocaml-result) - ("fieldslib" ,ocaml-fieldslib))) + `(("bin_prot" ,ocaml4.02-bin-prot) + ("ppx-assert" ,ocaml4.02-ppx-assert) + ("ppx-bench" ,ocaml4.02-ppx-bench) + ("ppx-driver" ,ocaml4.02-ppx-driver) + ("ppx-expect" ,ocaml4.02-ppx-expect) + ("ppx-inline-test" ,ocaml4.02-ppx-inline-test) + ("typerep" ,ocaml4.02-typerep) + ("sexplib" ,ocaml4.02-sexplib) + ("variantslib" ,ocaml4.02-variantslib) + ("result" ,ocaml4.02-result) + ("fieldslib" ,ocaml4.02-fieldslib))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/core_kernel/") (synopsis "Portable standard library for OCaml") (description "Core is an alternative to the OCaml standard library. @@ -3023,127 +3913,145 @@ Core_kernel is the system-independent part of Core. It is aimed for cases when the full Core is not available, such as in Javascript.") (license license:asl2.0))) -(define-public ocaml-async-kernel +(define-public ocaml4.02-async-kernel (package - (name "ocaml-async-kernel") + (name "ocaml4.02-async-kernel") (version "113.33.03") (source (janestreet-origin "async_kernel" version "04bjsaa23j831r09r38x6xx9nhryvp0z5ihickvhxqa4fb2snyvd")) (native-inputs `(("oasis" ,ocaml-oasis) - ("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + ("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("core-kernel" ,ocaml-core-kernel))) + `(("core-kernel" ,ocaml4.02-core-kernel))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/async_kernel/") (synopsis "Monadic concurrency library") (description "Async-kernel is a library for concurrent programming in OCaml.") (license license:asl2.0))) -(define-public ocaml-async-rpc-kernel +(define-public ocaml4.02-async-rpc-kernel (package - (name "ocaml-async-rpc-kernel") + (name "ocaml4.02-async-rpc-kernel") (version "113.33.03") (source (janestreet-origin "async_rpc_kernel" version "0y97h9pkb00v7jpf87m8cbb0ffkclj9g26ph6sq97q8dpisnkjwh")) (native-inputs `(("oasis" ,ocaml-oasis) - ("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + ("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("async-kernel" ,ocaml-async-kernel))) + `(("async-kernel" ,ocaml4.02-async-kernel))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/async_rpc_kernel/") (synopsis "Platform-independent core of the Async RPC library") (description "Async_rpc_kernel is the platform-independent core of the Async RPC library.") (license license:asl2.0))) -(define-public ocaml-core +(define-public ocaml4.02-core (package - (name "ocaml-core") + (name "ocaml4.02-core") (version "113.33.03") (source (janestreet-origin "core" version "1znll157qg56g9d3247fjibv1hxv3r9wxgr4nhy19j2vzdh6a268")) (native-inputs `(("oasis" ,ocaml-oasis) - ("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + ("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("core-kernel" ,ocaml-core-kernel))) + `(("core-kernel" ,ocaml4.02-core-kernel))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/core/") (synopsis "Alternative to OCaml's standard library") (description "The Core suite of libraries is an alternative to OCaml's standard library that was developed by Jane Street.") (license license:asl2.0))) -(define-public ocaml-async-unix +(define-public ocaml4.02-async-unix (package - (name "ocaml-async-unix") + (name "ocaml4.02-async-unix") (version "113.33.03") (source (janestreet-origin "async_unix" version "1fwl0lfrizllcfjk8hk8m7lsz9ha2jg6qgk4gssfyz377qvpcq4h")) (native-inputs `(("oasis" ,ocaml-oasis) - ("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + ("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("async-kernel" ,ocaml-async-kernel) - ("core" ,ocaml-core))) + `(("async-kernel" ,ocaml4.02-async-kernel) + ("core" ,ocaml4.02-core))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/async_unix") (synopsis "Asynchronous execution library for Unix") (description "Async_unix is an asynchronous execution library for Unix.") (license license:asl2.0))) -(define-public ocaml-async-extra +(define-public ocaml4.02-async-extra (package - (name "ocaml-async-extra") + (name "ocaml4.02-async-extra") (version "113.33.03") (source (janestreet-origin "async_extra" version "1si8jgiq5xh5sl9f2b7f9p17p7zx5h1pg557x2cxywi2x7pxqg4f")) (native-inputs `(("oasis" ,ocaml-oasis) - ("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + ("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("async-rpc-kernel" ,ocaml-async-rpc-kernel) - ("async-unix" ,ocaml-async-unix) - ("core" ,ocaml-core))) + `(("async-rpc-kernel" ,ocaml4.02-async-rpc-kernel) + ("async-unix" ,ocaml4.02-async-unix) + ("core" ,ocaml4.02-core))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/async_extra") (synopsis "Extra functionnalities for the async library") (description "Async_extra provides additional functionnalities for the async library.") (license license:asl2.0))) -(define-public ocaml-async +(define-public ocaml4.02-async (package - (name "ocaml-async") + (name "ocaml4.02-async") (version "113.33.03") (source (janestreet-origin "async" version "0210fyhcs12kpmmd26015bgivkfd2wqkyn3c5wd7688d0f872y25")) (native-inputs `(("oasis" ,ocaml-oasis) - ("js-build-tools" ,ocaml-js-build-tools) - ("ppx-jane" ,ocaml-ppx-jane) + ("js-build-tools" ,ocaml4.02-js-build-tools) + ("ppx-jane" ,ocaml4.02-ppx-jane) ("opam" ,opam))) (propagated-inputs - `(("async-extra" ,ocaml-async-extra))) + `(("async-extra" ,ocaml4.02-async-extra))) (build-system ocaml-build-system) - (arguments janestreet-arguments) + (arguments + (ensure-keyword-arguments janestreet-arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib))) (home-page "https://github.com/janestreet/async") (synopsis "Monadic concurrency library") (description "Async is a library for concurrent programming in OCaml.") @@ -3162,7 +4070,9 @@ async library.") "0hwj09rnzjs0m0kazz5h2mgs6p95j0zlga8cda5srnzqmzhniwkn")) (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) - (native-inputs `(("cppo" ,ocaml-cppo))) + (native-inputs + `(("cppo" ,ocaml-cppo) + ("ocamlbuild" ,ocamlbuild))) (home-page "https://github.com/OCamlPro/ocplib-endian") (synopsis "Optimised functions to read and write int16/32/64 from strings and bigarrays") @@ -3172,9 +4082,12 @@ strings, bytes and bigstring (Bigarrys of chars), and provides submodules for big- and little-endian, with their unsafe counter-parts.") (license license:lgpl2.1))) -(define-public ocaml-cstruct +(define-public ocaml4.02-ocplib-endian + (package-with-ocaml4.02 ocaml-ocplib-endian)) + +(define-public ocaml4.02-cstruct (package - (name "ocaml-cstruct") + (name "ocaml4.02-cstruct") (version "2.3.1") (source (origin (method url-fetch) @@ -3186,7 +4099,9 @@ big- and little-endian, with their unsafe counter-parts.") (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (arguments - `(#:configure-flags + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:configure-flags (list "--enable-lwt" "--enable-async") #:phases (modify-phases %standard-phases @@ -3199,14 +4114,14 @@ big- and little-endian, with their unsafe counter-parts.") (symlink (string-append lib "/dllcstruct_stubs.so") (string-append stubs "/dllcstruct_stubs.so")))))))) (native-inputs - `(("ounit" ,ocaml-ounit) - ("ppx-tools" ,ocaml-ppx-tools) - ("camlp4" ,camlp4))) + `(("ounit" ,ocaml4.02-ounit) + ("ppx-tools" ,ocaml4.02-ppx-tools) + ("camlp4" ,camlp4-4.02))) (propagated-inputs - `(("ocplib-endian" ,ocaml-ocplib-endian) - ("lwt" ,ocaml-lwt) - ("async" ,ocaml-async) - ("sexplib" ,ocaml-sexplib))) + `(("ocplib-endian" ,ocaml4.02-ocplib-endian) + ("lwt" ,ocaml4.02-lwt) + ("async" ,ocaml4.02-async) + ("sexplib" ,ocaml4.02-sexplib))) (home-page "https://github.com/mirage/ocaml-cstruct") (synopsis "Access C structures via a camlp4 extension") (description "Cstruct is a library and syntax extension to make it easier @@ -3214,9 +4129,9 @@ to access C-like structures directly from OCaml. It supports both reading and writing to these structures, and they are accessed via the Bigarray module.") (license license:isc))) -(define-public ocaml-hex +(define-public ocaml4.02-hex (package - (name "ocaml-hex") + (name "ocaml4.02-hex") (version "1.0.0") (source (origin (method url-fetch) @@ -3227,15 +4142,19 @@ writing to these structures, and they are accessed via the Bigarray module.") "0s63g0b8gfv2xm6fv6xg7bva8h76b5pcjb0zw3f8cygs0lq9072v")) (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) - (propagated-inputs `(("cstruct" ,ocaml-cstruct))) + (arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib)) + (propagated-inputs + `(("cstruct" ,ocaml4.02-cstruct))) (home-page "https://github.com/mirage/ocaml-hex/") (synopsis "Minimal library providing hexadecimal converters") (description "Hex is a minimal library providing hexadecimal converters.") (license license:isc))) -(define-public ocaml-ezjsonm +(define-public ocaml4.02-ezjsonm (package - (name "ocaml-ezjsonm") + (name "ocaml4.02-ezjsonm") (version "0.4.3") (source (origin (method url-fetch) @@ -3247,14 +4166,16 @@ writing to these structures, and they are accessed via the Bigarray module.") (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (native-inputs - `(("alcotest" ,ocaml-alcotest))) + `(("alcotest" ,ocaml4.02-alcotest))) (propagated-inputs - `(("hex" ,ocaml-hex) - ("jsonm" ,ocaml-jsonm) - ("lwt" ,ocaml-lwt) - ("sexplib" ,ocaml-sexplib))) + `(("hex" ,ocaml4.02-hex) + ("jsonm" ,ocaml4.02-jsonm) + ("lwt" ,ocaml4.02-lwt) + ("sexplib" ,ocaml4.02-sexplib))) (arguments - `(#:configure-flags (list "--enable-lwt"))) + `(#:configure-flags (list "--enable-lwt") + #:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib)) (home-page "https://github.com/mirage/ezjsonm/") (synopsis "Read and write JSON data") (description "Ezjsonm provides more convenient (but far less flexible) input @@ -3263,9 +4184,9 @@ the need to write signal code, which is useful for quick scripts that manipulate JSON.") (license license:isc))) -(define-public ocaml-uri +(define-public ocaml4.02-uri (package - (name "ocaml-uri") + (name "ocaml4.02-uri") (version "1.9.2") (source (origin (method url-fetch) @@ -3276,14 +4197,17 @@ JSON.") "02bzrag79prx261rxf9mlak749pwf4flpfl8p012x1xznv9m0clc")) (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) + (arguments + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib)) (native-inputs - `(("ounit" ,ocaml-ounit))) + `(("ounit" ,ocaml4.02-ounit))) (propagated-inputs - `(("ppx-sexp-conv" ,ocaml-ppx-sexp-conv) - ("re" ,ocaml-re) - ("ppx-deriving" ,ocaml-ppx-deriving) - ("sexplib" ,ocaml-sexplib) - ("stringext" ,ocaml-stringext))) + `(("ppx-sexp-conv" ,ocaml4.02-ppx-sexp-conv) + ("re" ,ocaml4.02-re) + ("ppx-deriving" ,ocaml4.02-ppx-deriving) + ("sexplib" ,ocaml4.02-sexplib) + ("stringext" ,ocaml4.02-stringext))) (home-page "https://github.com/mirage/ocaml-uri") (synopsis "RFC3986 URI/URL parsing library") (description "OCaml-uri is a library for parsing URI/URL in the RFC3986 format.") @@ -3312,6 +4236,9 @@ JSON.") Format module of the OCaml standard library.") (license license:bsd-3))) +(define-public ocaml4.02-easy-format + (package-with-ocaml4.02 ocaml-easy-format)) + (define-public optcomp (package (name "optcomp") @@ -3326,13 +4253,15 @@ Format module of the OCaml standard library.") (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (arguments - `(#:use-make? #t + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:use-make? #t #:make-flags (list (string-append "BUILDFLAGS=\"-cflags -I," (assoc-ref %build-inputs "camlp4") "/lib/ocaml/site-lib/camlp4/Camlp4Parsers\"")))) - (native-inputs `(("camlp4" ,camlp4))) - (propagated-inputs `(("camlp4" ,camlp4))) + (native-inputs `(("camlp4" ,camlp4-4.02))) + (propagated-inputs `(("camlp4" ,camlp4-4.02))) (home-page "https://github.com/diml/optcomp") (synopsis "Optional compilation for OCaml") (description "Optcomp provides an optional compilation facility with @@ -3342,14 +4271,14 @@ cpp-like directives.") (define-public ocaml-piqilib (package (name "ocaml-piqilib") - (version "0.6.13") + (version "0.6.14") (source (origin (method url-fetch) (uri (string-append "https://github.com/alavrik/piqi/archive/v" version ".tar.gz")) (sha256 (base32 - "1whqr2bb3gds2zmrzqnv8vqka9928w4lx6mi6g244kmbwb2h8d8l")) + "1ssccnwqzfyf7syfq2fv4zyhwayxwd75rhq9y28mvq1w6qbww4l7")) (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (arguments @@ -3365,14 +4294,17 @@ cpp-like directives.") (let ((out (assoc-ref outputs "out"))) (substitute* "make/OCamlMakefile" (("/bin/sh") (which "bash"))) - (zero? (system* "./configure" "--prefix" out "--ocaml-libdir" - (string-append out "/lib/ocaml/site-lib")))))) + (invoke "./configure" "--prefix" out "--ocaml-libdir" + (string-append out "/lib/ocaml/site-lib"))) + #t)) (add-after 'build 'build-ocaml (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "make" "ocaml")))) + (invoke "make" "ocaml") + #t)) (add-after 'install 'install-ocaml (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "make" "ocaml-install")))) + (invoke "make" "ocaml-install") + #t)) (add-after 'install-ocaml 'link-stubs (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -3388,7 +4320,6 @@ cpp-like directives.") (propagated-inputs `(("xmlm" ,ocaml-xmlm) ("ulex" ,ocaml-ulex) - ("optcomp" ,optcomp) ("easy-format" ,ocaml-easy-format) ("base64" ,ocaml-base64))) (home-page "http://piqi.org") @@ -3397,6 +4328,9 @@ cpp-like directives.") tool and piqi-ocaml.") (license license:asl2.0))) +(define-public ocaml4.02-piqilib + (package-with-ocaml4.02 ocaml-piqilib)) + (define-public ocaml-uuidm (package (name "ocaml-uuidm") @@ -3416,7 +4350,8 @@ tool and piqi-ocaml.") (modify-phases %standard-phases (delete 'configure)))) (native-inputs - `(("opam" ,opam))) + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam))) (propagated-inputs `(("cmdliner" ,ocaml-cmdliner) ("topkg" ,ocaml-topkg))) @@ -3427,21 +4362,24 @@ unique identifiers (UUIDs) version 3, 5 (named based with MD5, SHA-1 hashing) and 4 (random based) according to RFC 4122.") (license license:isc))) +(define-public ocaml4.02-uuidm + (package-with-ocaml4.02 ocaml-uuidm)) + (define-public ocaml-graph (package (name "ocaml-graph") - (version "1.8.7") + (version "1.8.8") (source (origin (method url-fetch) (uri (string-append "http://ocamlgraph.lri.fr/download/" "ocamlgraph-" version ".tar.gz")) (sha256 (base32 - "1845r537swjil2fcj7lgbibc2zybfwqqasrd2s7bncajs83cl1nz")) - (patches (search-patches "ocaml-graph-honor-source-date-epoch.patch")))) + "0m9g16wrrr86gw4fz2fazrh8nkqms0n863w7ndcvrmyafgxvxsnr")))) (build-system ocaml-build-system) (arguments `(#:install-target "install-findlib" + #:tests? #f #:phases (modify-phases %standard-phases (add-before 'configure 'set-shell @@ -3454,10 +4392,13 @@ and 4 (random based) according to RFC 4122.") (description "OCamlgraph is a generic graph library for OCaml.") (license license:lgpl2.1))) +(define-public ocaml4.02-graph + (package-with-ocaml4.02 ocaml-graph)) + (define-public ocaml-piqi (package (name "ocaml-piqi") - (version "0.7.5") + (version "0.7.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/alavrik/piqi-ocaml/" @@ -3465,7 +4406,7 @@ and 4 (random based) according to RFC 4122.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0ngz6y8i98i5v2ma8nk6mc83pdsmf2z0ks7m3xi6clfg3zqbddrv")))) + "0da0v2v28aj65b0cwpvvmcqyrfvz94pp3j5zgfdr1jrl5s37c21g")))) (build-system ocaml-build-system) (arguments `(#:make-flags @@ -3477,9 +4418,13 @@ and 4 (random based) according to RFC 4122.") (delete 'configure)))) (native-inputs `(("which" ,which) + ("camlp4" ,camlp4) ("protobuf" ,protobuf))) ; for tests (propagated-inputs - `(("piqilib" ,ocaml-piqilib))) + `(("num" ,ocaml-num) + ("piqilib" ,ocaml-piqilib))) + (properties + `((ocaml4.02-variant . ,(delay ocaml4.02-piqi)))) (home-page "https://github.com/alavrik/piqi-ocaml") (synopsis "Protocol serialization system for OCaml") (description "Piqi is a multi-format data serialization system for OCaml. @@ -3487,67 +4432,73 @@ It provides a uniform interface for serializing OCaml data structures to JSON, XML and Protocol Buffers formats.") (license license:asl2.0))) +(define-public ocaml4.02-piqi + (let ((base (package-with-ocaml4.02 (strip-ocaml4.02-variant ocaml-piqi)))) + (package + (inherit base) + (propagated-inputs + `(("piqilib" ,ocaml4.02-piqilib)))))) + (define-public bap (package (name "bap") - (version "1.1.0") + (version "1.3.0") (home-page "https://github.com/BinaryAnalysisPlatform/bap") (source (origin (method url-fetch) (uri (string-append home-page "/archive/v" version ".tar.gz")) (sha256 (base32 - "1ms95m4j1qrmy7zqmsn2izh7gq68lnmssl7chyhk977kd3sxj66m")) + "0v95v9mp7mg8fj25ry0w7566zd9xp6cs8nnqj4l38q54fb1hfav9")) (file-name (string-append name "-" version ".tar.gz")))) (build-system ocaml-build-system) (native-inputs - `(("oasis" ,ocaml-oasis) + `(("oasis" ,ocaml4.02-oasis) ("clang" ,clang-3.8) - ("ounit" ,ocaml-ounit))) + ("ounit" ,ocaml4.02-ounit))) (propagated-inputs - `(("core-kernel" ,ocaml-core-kernel) - ("ppx-driver" ,ocaml-ppx-driver) - ("uri" ,ocaml-uri) + `(("core-kernel" ,ocaml4.02-core-kernel) + ("ppx-driver" ,ocaml4.02-ppx-driver) + ("bin-prot" ,ocaml4.02-bin-prot) + ("uri" ,ocaml4.02-uri) ("llvm" ,llvm-3.8) ("gmp" ,gmp) ("clang-runtime" ,clang-runtime) - ("fileutils" ,ocaml-fileutils) - ("cmdliner" ,ocaml-cmdliner) - ("zarith" ,ocaml-zarith) - ("uuidm" ,ocaml-uuidm) - ("camlzip" ,camlzip) + ("fileutils" ,ocaml4.02-fileutils) + ("cmdliner" ,ocaml4.02-cmdliner) + ("zarith" ,ocaml4.02-zarith) + ("uuidm" ,ocaml4.02-uuidm) + ("camlzip" ,ocaml4.02-camlzip) ("frontc" ,ocaml-frontc) - ("ezjsonm" ,ocaml-ezjsonm) - ("ocurl" ,ocaml-ocurl) - ("piqi" ,ocaml-piqi) - ("ocamlgraph" ,ocaml-graph) - ("bitstring" ,ocaml-bitstring) - ("ppx-jane" ,ocaml-ppx-jane) - ("re" ,ocaml-re))) + ("ezjsonm" ,ocaml4.02-ezjsonm) + ("ocurl" ,ocaml4.02-ocurl) + ("piqi" ,ocaml4.02-piqi) + ("ocamlgraph" ,ocaml4.02-graph) + ("bitstring" ,ocaml4.02-bitstring) + ("ppx-jane" ,ocaml4.02-ppx-jane) + ("re" ,ocaml4.02-re))) (inputs `(("llvm" ,llvm-3.8))) (arguments - `(#:use-make? #t + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:use-make? #t #:phases (modify-phases %standard-phases (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "./configure" "--prefix" - (assoc-ref outputs "out") - "--libdir" - (string-append - (assoc-ref outputs "out") - "/lib/ocaml/site-lib") - "--with-llvm-version=3.8" - "--with-llvm-config=llvm-config" - "--enable-everything")))) - (add-after 'install 'link-stubs - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (stubs (string-append out "/lib/ocaml/site-lib/stubslibs")) - (lib (string-append out "/lib/ocaml/site-lib/bap-plugin-llvm"))) - (mkdir-p stubs) - (symlink (string-append lib "/dllllvm_plugin_stubs.so") - (string-append stubs "/dllllvm_plugin_stubs.so")))))))) + (lambda* (#:key outputs inputs #:allow-other-keys) + (invoke "./configure" "--prefix" + (assoc-ref outputs "out") + "--libdir" + (string-append + (assoc-ref outputs "out") + "/lib/ocaml/site-lib") + "--with-llvm-version=3.8" + "--with-llvm-config=llvm-config" + "--enable-everything") + (substitute* "plugins/objdump/objdump_main.ml" + (("Re_perl") "Re.Perl")) + (substitute* "oasis/objdump" + (("re.pcre") "re.pcre, re.perl"))))))) (synopsis "Binary Analysis Platform") (description "Binary Analysis Platform is a framework for writing program analysis tools, that target binary files. The framework consists of a plethora @@ -3558,23 +4509,33 @@ the plugins facilitate extensibility, and the frontends serve as entry points.") (define-public ocaml-camomile (package (name "ocaml-camomile") - (version "0.8.5") + (version "1.0.1") (home-page "https://github.com/yoriyuki/Camomile") (source (origin (method url-fetch) - (uri (string-append home-page "/releases/download/rel-" version - "/camomile-" version ".tar.bz2")) + (uri (string-append home-page "/releases/download/" version + "/camomile-" version ".tbz")) (sha256 (base32 - "003ikpvpaliy5hblhckfmln34zqz0mk3y2m1fqvbjngh3h2np045")))) + "01ssjrqz41jvrqh27jxnh9cx7ywi9b5sgsykd00i7z9nrcwhlfy2")))) (build-system ocaml-build-system) - (native-inputs `(("camlp4" ,camlp4))) + (native-inputs + `(("camlp4" ,camlp4) + ("dune" ,dune))) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'configure 'fix-bin/sh + (delete 'configure) + (replace 'build (lambda _ - (setenv "CONFIG_SHELL" (which "bash"))))))) + (invoke "dune" "build" "@install" "--profile" "release") + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))) + #:tests? #f)) (synopsis "Comprehensive Unicode library") (description "Camomile is a Unicode library for OCaml. Camomile provides Unicode character type, UTF-8, UTF-16, UTF-32 strings, conversion to/from about @@ -3583,6 +4544,9 @@ library is currently designed for Unicode Standard 3.2.") ;; with an exception for linked libraries to use a different license (license license:lgpl2.0+))) +(define-public ocaml4.02-camomile + (package-with-ocaml4.02 ocaml-camomile)) + (define-public ocaml-jbuilder (package (name "ocaml-jbuilder") @@ -3595,10 +4559,12 @@ library is currently designed for Unicode Standard 3.2.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0gcy52y0mkg450yxwszp3lww303a1154566r8jb4hh5l61dh4dwj")))) + "1cy07pwvbrlysszs938yd74yyvvbgkffpb82qrjph77zf0h2gdi7")))) (build-system ocaml-build-system) (arguments - `(#:phases + `(#:ocaml ,ocaml-4.02 + #:findlib ,ocaml4.02-findlib + #:phases (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) @@ -3606,7 +4572,7 @@ library is currently designed for Unicode Standard 3.2.") (setenv "PREFIX" out)) #t))))) (native-inputs - `(("menhir" ,ocaml-menhir))) + `(("menhir" ,ocaml4.02-menhir))) (propagated-inputs `(("opam" ,opam))) (home-page "https://github.com/janestreet/jbuilder") @@ -3654,10 +4620,13 @@ to write text editors, edition widgets, readlines, etc. You just have to connect an engine to your inputs and rendering functions to get an editor.") (license license:bsd-3))) +(define-public ocaml4.02-zed + (package-with-ocaml4.02 ocaml-zed)) + (define-public ocaml-lambda-term (package (name "ocaml-lambda-term") - (version "1.11") + (version "1.13") (source (origin (method url-fetch) @@ -3665,26 +4634,27 @@ connect an engine to your inputs and rendering functions to get an editor.") version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "10lx1jqgmmfwwlv64di4a8nia9l53v7179z70n9fx6aq5l7r8nba")))) + (base32 "1hy5ryagqclgdm9lzh1qil5mrynlypv7mn6qm858hdcnmz9zzn0l")))) (build-system ocaml-build-system) (arguments - `(#:test-target "test" - #:phases + `(#:phases (modify-phases %standard-phases (delete 'configure) - ;; currently, ocaml-lwt is an old version of lwt from before lwt.react - ;; was split into a separate module called lwt_react - (add-before 'build 'use-old-lwt-react-name + (replace 'build (lambda _ - (substitute* "src/jbuild" (("lwt_react") "lwt.react")))) + (invoke "dune" "build" "@install" "--profile" "release") + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (zero? (system* "jbuilder" "install" "--prefix" out)))))))) + (invoke "dune" "install" + "--prefix" (assoc-ref outputs "out")) + #t))) + #:tests? #f)) (native-inputs - `(("jbuilder" ,ocaml-jbuilder))) + `(("dune" ,dune))) (propagated-inputs `(("lwt" ,ocaml-lwt) + ("lwt-log" ,ocaml-lwt-log) ("zed" ,ocaml-zed))) (home-page "https://github.com/diml/lambda-term") (synopsis "Terminal manipulation library for OCaml") @@ -3696,18 +4666,21 @@ manipulation than, for example, ncurses, by providing a native OCaml interface instead of bindings to a C library.") (license license:bsd-3))) +(define-public ocaml4.02-lambda-term + (package-with-ocaml4.02 ocaml-lambda-term)) + (define-public ocaml-utop (package (name "ocaml-utop") - (version "2.0.2") + (version "2.2.0") (source (origin (method url-fetch) - (uri (string-append "https://github.com/diml/utop/archive/" + (uri (string-append "https://github.com/ocaml-community/utop/archive/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0rglznh4prcix8spi3f060jz2gngk7x8vkd291fxs10b88aqcpxf")))) + "1414snwmqaxs1x8wbpjf6fn3jsl01hq0phrr7639xmb5vh15mgd4")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -3761,6 +4734,8 @@ sensitive completion, colors, and more.") #:phases (modify-phases %standard-phases (delete 'configure)))) + (native-inputs + `(("ocamlbuild" ,ocamlbuild))) (inputs `(("topkg" ,ocaml-topkg) ("opam" ,opam))) @@ -3773,7 +4748,7 @@ long and size_t whose sizes depend on the host platform.") (define-public ocaml-ctypes (package (name "ocaml-ctypes") - (version "0.13.1") + (version "0.14.0") (home-page "https://github.com/ocamllabs/ocaml-ctypes") (source (origin (method url-fetch) @@ -3781,10 +4756,11 @@ long and size_t whose sizes depend on the host platform.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "17w0pr5k0zjcjns4y9n36rjpfl35zhvp3h8ggqs9lz12qhshdk2m")))) + "0zrsd42q2nciyg9375g2kydqax6ay299rhyfgms59qiw7d9ylyp9")))) (build-system ocaml-build-system) (arguments - `(#:make-flags + `(#:tests? #f; require an old lwt + #:make-flags (list (string-append "INSTALL_HEADERS = $(wildcard $($(PROJECT).dir)/*.h)")) #:phases (modify-phases %standard-phases @@ -3832,7 +4808,8 @@ without writing or generating any C!") `(("topkg" ,ocaml-topkg) ("opam" ,opam))) (native-inputs - `(("astring" ,ocaml-astring))) + `(("astring" ,ocaml-astring) + ("ocamlbuild" ,ocamlbuild))) (synopsis "OCamlbuild plugin for C stubs") (description "Ocb-stubblr is about ten lines of code that you need to repeat over, over, over and over again if you are using ocamlbuild to build @@ -3860,7 +4837,8 @@ OCaml projects that contain C stubs.") (modify-phases %standard-phases (delete 'configure)))) (native-inputs - `(("opam" ,opam) + `(("ocamlbuild" ,ocamlbuild) + ("opam" ,opam) ("pkg-config" ,pkg-config))) (inputs `(("topkg" ,ocaml-topkg) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index b78190b6dc..ae8612491f 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -101,9 +101,9 @@ ;; Latest version of Guix, which may or may not correspond to a release. ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. - (let ((version "0.15.0") - (commit "f9a8fce10f2d99efec7cb1dd0f6c5f0df9d1b2df") - (revision 6)) + (let ((version "0.16.0") + (commit "6ddc63e599a26c302f74d0622f67cfd987f0dc5f") + (revision 3)) (package (name "guix") @@ -119,7 +119,7 @@ (commit commit))) (sha256 (base32 - "1733d5id0h44rrkyj9xw4fcqr1wawcfi8igpgk5wsn1iq4qqwv5f")) + "0vzxrsfbr4phhy60m7pc6klb61whqc404c3x76ydj70xvi1xa0wz")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -316,6 +316,7 @@ the Nix package manager.") (inputs `(("gnutls" ,gnutls) ("guile-git" ,guile-git) + ("guile-json" ,guile-json) ("guile-gcrypt" ,guile-gcrypt) ,@(fold alist-delete (package-inputs guix) '("boot-guile" "boot-guile/i686" "util-linux")))) @@ -387,7 +388,7 @@ the Nix package manager.") (propagated-inputs (fold alist-delete (package-propagated-inputs guix) - '("guile-json" "guile-ssh"))))))) + '("guile-ssh"))))))) (define (source-file? file stat) "Return true if FILE is likely a source file, false if it is a typical @@ -568,13 +569,13 @@ transactions from C or Python.") (define-public diffoscope (package (name "diffoscope") - (version "102") + (version "106") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "0v2z98xx7n4viw12yq83flpb9ir5ahy1gn44pic0i3dam18xhcm6")))) + "0qrfp7nha2n2s9h5ibcf7rqji1amh4cqbcf80m6anim6p3ik26da")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -585,6 +586,12 @@ transactions from C or Python.") (lambda _ (substitute* "setup.py" (("'python-magic',") "")))) + ;; This test is broken because our `file` package has a + ;; bug in berkeley-db file type detection. + (add-after 'unpack 'remove-berkeley-test + (lambda _ + (delete-file "tests/comparators/test_berkeley_db.py") + #t)) (add-after 'unpack 'embed-tool-references (lambda* (#:key inputs #:allow-other-keys) (substitute* "diffoscope/comparators/utils/compare.py" diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 3dba2b8c00..df8ac180b3 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -48,7 +48,7 @@ (define-public parallel (package (name "parallel") - (version "20180922") + (version "20181122") (source (origin (method url-fetch) @@ -56,7 +56,7 @@ version ".tar.bz2")) (sha256 (base32 - "07q7lzway2qf8mx6fb4q45jmirsc8pw6rgv03ifrp32jw3q8w1za")))) + "1mcqymf6vg8jhnjv71sswcz5xrwpq2h2ishi8m1hz8rwhc65h1ig")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index e09bbea5cc..357ef86d56 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -735,15 +735,15 @@ password cracking.") (define-public hashcat-utils (package (name "hashcat-utils") - (version "1.8") + (version "1.9") (source (origin (method url-fetch) - (uri (string-append "https://github.com/hashcat/hashcat-utils/releases/download/v" - version "/hashcat-utils-1.8.7z")) + (uri (string-append "https://github.com/hashcat/hashcat-utils/releases/" + "download/v" version "/" + "hashcat-utils-" version ".7z")) (sha256 - (base32 - "1x80rngjz7gkhwplhw1iqr0wzb6hjkrjfld2kz9kmgp5dr9nys1p")))) + (base32 "0kq555kb338691qd7zjmi8vhq4km3apnsl2w63zh0igwzcjx6lx1")))) (native-inputs `(("p7zip" ,p7zip))) (inputs @@ -767,12 +767,16 @@ password cracking.") (lambda* (#:key outputs #:allow-other-keys) (let ((out (string-append (assoc-ref outputs "out") "/bin"))) (mkdir-p out) - (for-each (lambda (file) - (copy-file file (string-append out "/" (basename file ".bin")))) - (find-files "." "\\.bin$")) - (for-each (lambda (file) - (copy-file file (string-append out "/" (basename file ".pl")))) - (find-files "../bin" "\\.pl$")) + (for-each + (lambda (file) + (copy-file file (string-append out "/" + (basename file ".bin")))) + (find-files "." "\\.bin$")) + (for-each + (lambda (file) + (copy-file file (string-append out "/" + (basename file ".pl")))) + (find-files "../bin" "\\.pl$")) #t)))))) (home-page "https://github.com/hashcat/hashcat-utils/") (synopsis "Small utilities that are useful in advanced password cracking") diff --git a/gnu/packages/patches/aegisub-boost68.patch b/gnu/packages/patches/aegisub-boost68.patch new file mode 100644 index 0000000000..013721f3bd --- /dev/null +++ b/gnu/packages/patches/aegisub-boost68.patch @@ -0,0 +1,35 @@ +Source: https://git.archlinux.org/svntogit/community.git/plain/trunk/boost-1.68.patch?h=packages/aegisub +From d8336d2fed73c72d1227b343d6acfb991bc1651b Mon Sep 17 00:00:00 2001 +From: Jan Beich <jbeich@FreeBSD.org> +Date: Mon, 9 Jul 2018 20:15:29 +0000 +Subject: [PATCH] Keep using std::distance after Boost 1.68 + +src/search_replace_engine.cpp:256:14: error: call to + 'distance' is ambiguous + count += distance( + ^~~~~~~~ +/usr/include/c++/v1/iterator:511:1: note: candidate function [with _InputIter = + boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >] +distance(_InputIter __first, _InputIter __last) +^ +/usr/local/include/boost/iterator/distance.hpp:49:9: note: candidate function [with SinglePassIterator = + boost::u32regex_iterator<std::__1::__wrap_iter<const char *> >] + distance(SinglePassIterator first, SinglePassIterator last) + ^ +--- + src/search_replace_engine.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/search_replace_engine.cpp b/src/search_replace_engine.cpp +index 594c21e5e..14c71680d 100644 +--- a/src/search_replace_engine.cpp ++++ b/src/search_replace_engine.cpp +@@ -253,7 +253,7 @@ bool SearchReplaceEngine::ReplaceAll() { + if (MatchState ms = matches(&diag, 0)) { + auto& diag_field = diag.*get_dialogue_field(settings.field); + std::string const& text = diag_field.get(); +- count += distance( ++ count += std::distance( + boost::u32regex_iterator<std::string::const_iterator>(begin(text), end(text), *ms.re), + boost::u32regex_iterator<std::string::const_iterator>()); + diag_field = u32regex_replace(text, *ms.re, settings.replace_with); diff --git a/gnu/packages/patches/beets-python-3.7-fix.patch b/gnu/packages/patches/beets-python-3.7-fix.patch new file mode 100644 index 0000000000..43707cd9d0 --- /dev/null +++ b/gnu/packages/patches/beets-python-3.7-fix.patch @@ -0,0 +1,57 @@ +Fix compatibility issue with Python 3.7: + +https://github.com/beetbox/beets/issues/2978 + +Patch copied from upstream source repository: + +https://github.com/beetbox/beets/commit/15d44f02a391764da1ce1f239caef819f08beed8 + +From 15d44f02a391764da1ce1f239caef819f08beed8 Mon Sep 17 00:00:00 2001 +From: Adrian Sampson <adrian@radbox.org> +Date: Sun, 22 Jul 2018 12:34:19 -0400 +Subject: [PATCH] Fix Python 3.7 compatibility (#2978) + +--- + beets/autotag/hooks.py | 8 +++++++- + docs/changelog.rst | 2 ++ + 2 files changed, 9 insertions(+), 1 deletion(-) + +diff --git a/beets/autotag/hooks.py b/beets/autotag/hooks.py +index 3615a9333..1c62a54c5 100644 +--- a/beets/autotag/hooks.py ++++ b/beets/autotag/hooks.py +@@ -31,6 +31,12 @@ + + log = logging.getLogger('beets') + ++# The name of the type for patterns in re changed in Python 3.7. ++try: ++ Pattern = re._pattern_type ++except AttributeError: ++ Pattern = re.Pattern ++ + + # Classes used to represent candidate options. + +@@ -433,7 +439,7 @@ def _eq(self, value1, value2): + be a compiled regular expression, in which case it will be + matched against `value2`. + """ +- if isinstance(value1, re._pattern_type): ++ if isinstance(value1, Pattern): + return bool(value1.match(value2)) + return value1 == value2 + +#diff --git a/docs/changelog.rst b/docs/changelog.rst +#index be6de2904..d487f31f5 100644 +#--- a/docs/changelog.rst +#+++ b/docs/changelog.rst +#@@ -19,6 +19,8 @@ New features: +# +# Fixes: +# +#+* Fix compatibility Python 3.7 and its change to a name in the ``re`` module. +#+ :bug:`2978` +# * R128 normalization tags are now properly deleted from files when the values +# are missing. +# Thanks to :user:`autrimpo`. diff --git a/gnu/packages/patches/blender-newer-ffmpeg.patch b/gnu/packages/patches/blender-newer-ffmpeg.patch new file mode 100644 index 0000000000..363489bc70 --- /dev/null +++ b/gnu/packages/patches/blender-newer-ffmpeg.patch @@ -0,0 +1,80 @@ +https://sources.debian.org/data/main/b/blender/2.79.b+dfsg0-4/debian/patches/0008-fix_building_with_latest_versions_of_FFmpeg.patch + +From: Bastien Montagne <montagne29@wanadoo.fr> +Date: Tue, 8 May 2018 16:00:52 +0200 +Subject: fix_building_with_latest_versions_of_FFmpeg + +Some years-old deprecated stuff has now been removed. + +Correct solution is probably to use valid defines etc. in own code, but +this is more FFMEPG maintainer task (since it also may change how old +FFMPEG we do support...). +--- + intern/ffmpeg/ffmpeg_compat.h | 39 ++++++++++++++++++++++++++ + source/blender/blenkernel/intern/writeffmpeg.c | 3 +- + 2 files changed, 41 insertions(+), 1 deletion(-) + +diff --git a/intern/ffmpeg/ffmpeg_compat.h b/intern/ffmpeg/ffmpeg_compat.h +index 9c06c8a..f7f437c 100644 +--- a/intern/ffmpeg/ffmpeg_compat.h ++++ b/intern/ffmpeg/ffmpeg_compat.h +@@ -109,6 +109,45 @@ int av_sample_fmt_is_planar(enum AVSampleFormat sample_fmt) + + #endif + ++/* XXX TODO Probably fix to correct modern flags in code? Not sure how old FFMPEG we want to support though, ++ * so for now this will do. */ ++ ++#ifndef FF_MIN_BUFFER_SIZE ++# ifdef AV_INPUT_BUFFER_MIN_SIZE ++# define FF_MIN_BUFFER_SIZE AV_INPUT_BUFFER_MIN_SIZE ++# endif ++#endif ++ ++#ifndef FF_INPUT_BUFFER_PADDING_SIZE ++# ifdef AV_INPUT_BUFFER_PADDING_SIZE ++# define FF_INPUT_BUFFER_PADDING_SIZE AV_INPUT_BUFFER_PADDING_SIZE ++# endif ++#endif ++ ++#ifndef CODEC_FLAG_GLOBAL_HEADER ++# ifdef AV_CODEC_FLAG_GLOBAL_HEADER ++# define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER ++# endif ++#endif ++ ++#ifndef CODEC_FLAG_GLOBAL_HEADER ++# ifdef AV_CODEC_FLAG_GLOBAL_HEADER ++# define CODEC_FLAG_GLOBAL_HEADER AV_CODEC_FLAG_GLOBAL_HEADER ++# endif ++#endif ++ ++#ifndef CODEC_FLAG_INTERLACED_DCT ++# ifdef AV_CODEC_FLAG_INTERLACED_DCT ++# define CODEC_FLAG_INTERLACED_DCT AV_CODEC_FLAG_INTERLACED_DCT ++# endif ++#endif ++ ++#ifndef CODEC_FLAG_INTERLACED_ME ++# ifdef AV_CODEC_FLAG_INTERLACED_ME ++# define CODEC_FLAG_INTERLACED_ME AV_CODEC_FLAG_INTERLACED_ME ++# endif ++#endif ++ + /* FFmpeg upstream 1.0 is the first who added AV_ prefix. */ + #if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 59, 100) + # define AV_CODEC_ID_NONE CODEC_ID_NONE +diff --git a/source/blender/blenkernel/intern/writeffmpeg.c b/source/blender/blenkernel/intern/writeffmpeg.c +index a19e414..04d508a 100644 +--- a/source/blender/blenkernel/intern/writeffmpeg.c ++++ b/source/blender/blenkernel/intern/writeffmpeg.c +@@ -605,7 +605,8 @@ static AVStream *alloc_video_stream(FFMpegContext *context, RenderData *rd, int + c->rc_buffer_aggressivity = 1.0; + #endif + +- c->me_method = ME_EPZS; ++ /* Deprecated and not doing anything since July 2015, deleted in recent ffmpeg */ ++ //c->me_method = ME_EPZS; + + codec = avcodec_find_encoder(c->codec_id); + if (!codec) diff --git a/gnu/packages/patches/borg-respect-storage-quota.patch b/gnu/packages/patches/borg-respect-storage-quota.patch deleted file mode 100644 index d23d1ffc01..0000000000 --- a/gnu/packages/patches/borg-respect-storage-quota.patch +++ /dev/null @@ -1,32 +0,0 @@ -Make sure the client respects the storage quota set by the server: - -https://github.com/borgbackup/borg/issues/4093 - -Patch copied from upstream source repository: - -https://github.com/borgbackup/borg/commit/975cc33206e0e3644626fb7204c34d2157715b61 - -From 975cc33206e0e3644626fb7204c34d2157715b61 Mon Sep 17 00:00:00 2001 -From: Manu <manu@snapdragon.cc> -Date: Wed, 3 Oct 2018 23:47:36 +0800 -Subject: [PATCH] Add storage_quota for forced_result if set by serve command. - ---- - src/borg/archiver.py | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/borg/archiver.py b/src/borg/archiver.py -index 916725e7..279194c1 100644 ---- a/src/borg/archiver.py -+++ b/src/borg/archiver.py -@@ -4276,6 +4276,7 @@ def get_args(self, argv, cmd): - result.restrict_to_paths = forced_result.restrict_to_paths - result.restrict_to_repositories = forced_result.restrict_to_repositories - result.append_only = forced_result.append_only -+ result.storage_quota = forced_result.storage_quota - return result - - def parse_args(self, args=None): --- -2.19.1 - diff --git a/gnu/packages/patches/casync-renameat2-declaration.patch b/gnu/packages/patches/casync-renameat2-declaration.patch new file mode 100644 index 0000000000..74c2ca7b3c --- /dev/null +++ b/gnu/packages/patches/casync-renameat2-declaration.patch @@ -0,0 +1,27 @@ +Fix build failure on glibc 2.28 where 'renameat2' would end up being +declared twice: <https://github.com/systemd/casync/issues/166>. + +From 625244ca47e8ee1375d2d0092271bfd13b0913ea Mon Sep 17 00:00:00 2001 +From: Daniel Mack <daniel@zonque.org> +Date: Tue, 13 Nov 2018 17:52:48 +0100 +Subject: [PATCH] meson.build: pass -D_GNU_SOURCE when checking for functions + +As described in #166, -D_GNU_SOURCE needs to be passed to the meson function +availability checker. h/t to @tomeon for providing a link to the solution as +well. +--- + meson.build | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/meson.build b/meson.build +index f42ed16..c0f741e 100644 +--- a/meson.build ++++ b/meson.build +@@ -78,6 +78,6 @@ foreach ident : [ + ['copy_file_range', '''#include <sys/syscall.h> + #include <unistd.h>'''], + ] +- have = cc.has_function(ident[0], prefix : ident[1]) ++ have = cc.has_function(ident[0], args : '-D_GNU_SOURCE', prefix : ident[1]) + conf.set10('HAVE_' + ident[0].to_upper(), have) + endforeach diff --git a/gnu/packages/patches/ceph-detect-rocksdb.patch b/gnu/packages/patches/ceph-detect-rocksdb.patch new file mode 100644 index 0000000000..badad6d1b9 --- /dev/null +++ b/gnu/packages/patches/ceph-detect-rocksdb.patch @@ -0,0 +1,24 @@ +Help the build system find system RocksDB. + +Taken from this upstream commit: +https://github.com/ceph/ceph/commit/2ac26bd0e01fd6c82bd59936cf25c25173f7775a + +diff --git a/cmake/modules/Findrocksdb.cmake b/cmake/modules/Findrocksdb.cmake +index f8369f73fc..5926647348 100644 +--- a/cmake/modules/Findrocksdb.cmake ++++ b/cmake/modules/Findrocksdb.cmake +@@ -15,11 +15,11 @@ find_library(ROCKSDB_LIBRARIES rocksdb) + + if(ROCKSDB_INCLUDE_DIR AND EXISTS "${ROCKSDB_INCLUDE_DIR}/rocksdb/version.h") + foreach(ver "MAJOR" "MINOR" "PATCH") +- file(STRINGS "${ROCKSDB_INCLUDE_DIR}/version.h" ROCKSDB_VER_${ver}_LINE ++ file(STRINGS "${ROCKSDB_INCLUDE_DIR}/rocksdb/version.h" ROCKSDB_VER_${ver}_LINE + REGEX "^#define[ \t]+ROCKSDB_${ver}[ \t]+[0-9]+$") + string(REGEX REPLACE "^#define[ \t]+ROCKSDB_${ver}[ \t]+([0-9]+)$" +- "\\1" ROCKSDB_VERSION_${ver} "${ROCKDB_VER_${ver}_LINE}") +- unset(${ROCKDB_VER_${ver}_LINE}) ++ "\\1" ROCKSDB_VERSION_${ver} "${ROCKSDB_VER_${ver}_LINE}") ++ unset(${ROCKSDB_VER_${ver}_LINE}) + endforeach() + set(ROCKSDB_VERSION_STRING + "${ROCKSDB_VERSION_MAJOR}.${ROCKSDB_VERSION_MINOR}.${ROCKSDB_VERSION_PATCH}") diff --git a/gnu/packages/patches/ceph-rocksdb-compat.patch b/gnu/packages/patches/ceph-rocksdb-compat.patch deleted file mode 100644 index 1a3c6b0b23..0000000000 --- a/gnu/packages/patches/ceph-rocksdb-compat.patch +++ /dev/null @@ -1,63 +0,0 @@ -Fix compatibility with newer versions of RocksDB. - -Adapted from this upstream patch, with some additional changes for 12.2: -https://github.com/ceph/ceph/commit/9d73a7121fdb1ae87cb1aa6f7d9d7a13f329ae68 - -diff --git a/src/kv/RocksDBStore.cc b/src/kv/RocksDBStore.cc -index 8660afe1886d..bc0de79e23cb 100644 ---- a/src/kv/RocksDBStore.cc -+++ b/src/kv/RocksDBStore.cc -@@ -505,7 +505,7 @@ - // considering performance overhead, default is disabled - if (g_conf->rocksdb_perf) { - rocksdb::SetPerfLevel(rocksdb::PerfLevel::kEnableTimeExceptForMutex); -- rocksdb::perf_context.Reset(); -+ rocksdb::get_perf_context()->Reset(); - } - - RocksDBTransactionImpl * _t = -@@ -532,13 +532,13 @@ - utime_t write_wal_time; - utime_t write_pre_and_post_process_time; - write_wal_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_wal_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_wal_time)/1000000000); - write_memtable_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_memtable_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_memtable_time)/1000000000); - write_delay_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_delay_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_delay_time)/1000000000); - write_pre_and_post_process_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_pre_and_post_process_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_pre_and_post_process_time)/1000000000); - logger->tinc(l_rocksdb_write_memtable_time, write_memtable_time); - logger->tinc(l_rocksdb_write_delay_time, write_delay_time); - logger->tinc(l_rocksdb_write_wal_time, write_wal_time); -@@ -558,7 +558,7 @@ - // considering performance overhead, default is disabled - if (g_conf->rocksdb_perf) { - rocksdb::SetPerfLevel(rocksdb::PerfLevel::kEnableTimeExceptForMutex); -- rocksdb::perf_context.Reset(); -+ rocksdb::get_perf_context()->Reset(); - } - - RocksDBTransactionImpl * _t = -@@ -586,13 +586,13 @@ - utime_t write_wal_time; - utime_t write_pre_and_post_process_time; - write_wal_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_wal_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_wal_time)/1000000000); - write_memtable_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_memtable_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_memtable_time)/1000000000); - write_delay_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_delay_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_delay_time)/1000000000); - write_pre_and_post_process_time.set_from_double( -- static_cast<double>(rocksdb::perf_context.write_pre_and_post_process_time)/1000000000); -+ static_cast<double>(rocksdb::get_perf_context()->write_pre_and_post_process_time)/1000000000); - logger->tinc(l_rocksdb_write_memtable_time, write_memtable_time); - logger->tinc(l_rocksdb_write_delay_time, write_delay_time); - logger->tinc(l_rocksdb_write_wal_time, write_wal_time); diff --git a/gnu/packages/patches/ceph-skip-unittest_blockdev.patch b/gnu/packages/patches/ceph-skip-unittest_blockdev.patch index 43b9984862..407bd93278 100644 --- a/gnu/packages/patches/ceph-skip-unittest_blockdev.patch +++ b/gnu/packages/patches/ceph-skip-unittest_blockdev.patch @@ -4,25 +4,21 @@ This test tries to walk a sysfs path and hits a null pointer exception. Expected: (dir) != (nullptr), actual: NULL vs 8-byte object <00-00 00-00 00-00 00-00> diff --git a/src/test/common/CMakeLists.txt b/src/test/common/CMakeLists.txt -index 5172663898..ac84085eaa 100644 --- a/src/test/common/CMakeLists.txt +++ b/src/test/common/CMakeLists.txt -@@ -12,15 +12,6 @@ target_link_libraries(get_command_descriptions +@@ -12,15 +12,6 @@ ${CMAKE_DL_LIBS} ) -if(HAVE_BLKID) --# unittest_blkdev --add_executable(unittest_blkdev -- test_blkdev.cc -- ) --add_ceph_unittest(unittest_blkdev ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/unittest_blkdev) --target_link_libraries(unittest_blkdev global ${BLKID_LIBRARIES}) --endif(HAVE_BLKID) +- # unittest_blkdev +- add_executable(unittest_blkdev +- test_blkdev.cc +- ) +- add_ceph_unittest(unittest_blkdev) +- target_link_libraries(unittest_blkdev ceph-common ${BLKID_LIBRARIES}) +-endif() - # unittest_bloom_filter add_executable(unittest_bloom_filter test_bloom_filter.cc --- -2.11.1 - diff --git a/gnu/packages/patches/ceph-volume-respect-PATH.patch b/gnu/packages/patches/ceph-volume-respect-PATH.patch new file mode 100644 index 0000000000..08a9a15ddd --- /dev/null +++ b/gnu/packages/patches/ceph-volume-respect-PATH.patch @@ -0,0 +1,22 @@ +Look for required tools in $PATH instead of just a handful locations. + +diff --git a/src/ceph-volume/ceph_volume/util/system.py b/src/ceph-volume/ceph_volume/util/system.py +index b637f023a4..14516e1c65 100644 +--- a/src/ceph-volume/ceph_volume/util/system.py ++++ b/src/ceph-volume/ceph_volume/util/system.py +@@ -33,14 +33,7 @@ def generate_uuid(): + + def which(executable): + """find the location of an executable""" +- locations = ( +- '/usr/local/bin', +- '/bin', +- '/usr/bin', +- '/usr/local/sbin', +- '/usr/sbin', +- '/sbin', +- ) ++ locations = os.getenv('PATH').split(':') + + for location in locations: + executable_path = os.path.join(location, executable) diff --git a/gnu/packages/patches/clamav-config-llvm-libs.patch b/gnu/packages/patches/clamav-config-llvm-libs.patch new file mode 100644 index 0000000000..054264ee2e --- /dev/null +++ b/gnu/packages/patches/clamav-config-llvm-libs.patch @@ -0,0 +1,14 @@ +Our llvm does not contain a single top-level library, so consult llvm-config +for the libraries that need to be linked against. + +--- clamav-0.100.2/libclamav/c++/configure.ac 2018-09-19 14:29:07.000000000 -0500 ++++ clamav-0.100.2/libclamav/c++/configure.ac 2018-10-06 21:45:09.377249158 -0500 +@@ -105,7 +105,7 @@ + + if test "x$llvm_linking" = "xdynamic"; then + AC_SUBST(LLVMCONFIG_LDFLAGS, [`$llvmconfig --ldflags`]) +- AC_SUBST(LLVMCONFIG_LIBS, [-lLLVM-$llvmver]) ++ AC_SUBST(LLVMCONFIG_LIBS, [`$llvmconfig --libs $llvmcomp`]) + AC_SUBST(LLVMCONFIG_LIBFILES, []) + else + if test $llvmver_test -ge 350; then diff --git a/gnu/packages/patches/clamav-system-tomsfastmath.patch b/gnu/packages/patches/clamav-system-tomsfastmath.patch new file mode 100644 index 0000000000..07ab79f3f7 --- /dev/null +++ b/gnu/packages/patches/clamav-system-tomsfastmath.patch @@ -0,0 +1,102 @@ +From 756ff89526b5ffaa7a4f49b1bbecf2ecbd6f85f9 Mon Sep 17 00:00:00 2001 +From: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> +Date: Wed, 11 Mar 2015 20:03:15 +0100 +Subject: add support for system tomsfastmath + +Patch-Name: add-support-for-system-tomsfastmath.patch +--- + configure.ac | 2 ++ + libclamav/Makefile.am | 10 ++++++++-- + libclamav/bignum.h | 6 +++++- + libclamav/xdp.c | 2 +- + m4/reorganization/libs/tomsfastmath.m4 | 12 ++++++++++++ + 5 files changed, 28 insertions(+), 4 deletions(-) + create mode 100644 m4/reorganization/libs/tomsfastmath.m4 + +--- a/configure.ac ++++ b/configure.ac +@@ -82,6 +82,7 @@ m4_include([m4/reorganization/libs/xml.m + m4_include([m4/reorganization/libs/openssl.m4]) + m4_include([m4/reorganization/libs/json.m4]) + m4_include([m4/reorganization/libs/pcre.m4]) ++m4_include([m4/reorganization/libs/tomsfastmath.m4]) + + AM_MAINTAINER_MODE + m4_include([m4/reorganization/libs/libz.m4]) +@@ -285,6 +286,7 @@ else + fi + CL_MSG_STATUS([yara ],[$enable_yara],[$enable_yara]) + CL_MSG_STATUS([fts ],[yes],[$lfs_fts_msg]) ++CL_MSG_STATUS([tomsfastmath],[yes],[$tomsfastmath_msg]) + + + # Yep, downgrading the compiler avoids the bug too: +--- a/libclamav/Makefile.am ++++ b/libclamav/Makefile.am +@@ -496,8 +496,10 @@ libclamav_la_SOURCES += yara_arena.c \ + yara_clam.h + endif + +-libclamav_la_SOURCES += bignum.h\ +- bignum_fast.h\ ++libclamav_la_SOURCES += bignum.h ++ ++if !SYSTEM_TOMSFASTMATH ++libclamav_la_SOURCES += bignum_fast.h\ + tomsfastmath/addsub/fp_add.c\ + tomsfastmath/addsub/fp_add_d.c\ + tomsfastmath/addsub/fp_addmod.c\ +@@ -579,6 +581,10 @@ libclamav_la_SOURCES += bignum.h\ + tomsfastmath/sqr/fp_sqr_comba_generic.c\ + tomsfastmath/sqr/fp_sqr_comba_small_set.c\ + tomsfastmath/sqr/fp_sqrmod.c ++else ++libclamav_la_CFLAGS += $(TOMSFASTMATH_CFLAGS) ++libclamav_la_LIBADD += $(TOMSFASTMATH_LIBS) ++endif + + .PHONY: version.h.tmp + version.c: version.h +--- a/libclamav/bignum.h ++++ b/libclamav/bignum.h +@@ -1,9 +1,13 @@ + #ifndef BIGNUM_H_ + #define BIGNUM_H_ + ++#if HAVE_SYSTEM_TOMSFASTMATH ++#include <tfm.h> ++#else + #define TFM_CHECK +- + #include "bignum_fast.h" ++#endif ++ + typedef fp_int mp_int; + #define mp_cmp fp_cmp + #define mp_toradix_n(a,b,c,d) fp_toradix_n(a,b,c,d) +--- a/libclamav/xdp.c ++++ b/libclamav/xdp.c +@@ -57,7 +57,7 @@ + #include "scanners.h" + #include "conv.h" + #include "xdp.h" +-#include "bignum_fast.h" ++#include "bignum.h" + #include "filetypes.h" + + static char *dump_xdp(cli_ctx *ctx, const char *start, size_t sz); +--- /dev/null ++++ b/m4/reorganization/libs/tomsfastmath.m4 +@@ -0,0 +1,12 @@ ++dnl Check for system tomsfastmath ++PKG_CHECK_MODULES([TOMSFASTMATH], [tomsfastmath], [have_system_tomsfastmath=yes], [have_system_tomsfastmath=no]) ++ ++AM_CONDITIONAL([SYSTEM_TOMSFASTMATH], [test "x$have_system_tomsfastmath" = "xyes"]) ++ ++if test "x$have_system_tomsfastmath" = "xyes"; then ++ AC_DEFINE([HAVE_SYSTEM_TOMSFASTMATH], [1], [link against system-wide tomsfastmath library]) ++ tomsfastmath_msg="External, $TOMSFASTMATH_CFLAGS $TOMSFASTMATH_LIBS" ++else ++ AC_DEFINE([HAVE_SYSTEM_TOMSFASTMATH], [0], [don't link against system-wide tomsfastmath library]) ++ tomsfastmath_msg="Internal" ++fi diff --git a/gnu/packages/patches/crossmap-allow-system-pysam.patch b/gnu/packages/patches/crossmap-allow-system-pysam.patch deleted file mode 100644 index 611c4ff74d..0000000000 --- a/gnu/packages/patches/crossmap-allow-system-pysam.patch +++ /dev/null @@ -1,121 +0,0 @@ -This patch modifies the build process such that the bundled copy of pysam does -not need to be built if CROSSMAP_USE_SYSTEM_PYSAM is set and the pysam module -can be imported. - -Upstream has agreed to apply the patch in the next maintenance release of -crossmap. The patch has already been uploaded to -http://sourceforge.net/projects/crossmap/files/patch/. - -diff --git a/setup.py b/setup.py ---- a/setup.py 2015-02-26 15:28:49.771189185 +0100 -+++ b/setup.py 2015-02-26 15:55:03.440327752 +0100 -@@ -19,6 +19,15 @@ - except: - have_numpy = False - -+try: -+ import pysam -+ if os.environ['CROSSMAP_USE_SYSTEM_PYSAM']: -+ have_pysam = True -+ else: -+ have_pysam = False -+except ImportError: -+ have_pysam = False -+ - if platform.system()=='Windows': - print >> sys.stderr, "Sorry, Windows platform is not supported!" - sys.exit() -@@ -165,49 +174,50 @@ - - - #================= pysam samtools ==================== -- extensions.append(Extension( -- "pysam.csamtools", -- csamtools_sources + [ "lib/pysam/%s" % x for x in ("pysam_util.c", )] +\ -- glob.glob( os.path.join( "lib/samtools", "*.pysam.c" )) +\ -- os_c_files + \ -- glob.glob( os.path.join( "lib/samtools", "*", "*.pysam.c" ) ), -- library_dirs=[], -- include_dirs=[ "lib/samtools", "lib/pysam" ] + include_os, -- libraries=[ "z", ], -- language="c", -- define_macros = [('_FILE_OFFSET_BITS','64'),('_USE_KNETFILE','')], -- )) -- -- extensions.append(Extension( -- "pysam.ctabix", -- tabix_sources + [ "lib/pysam/%s" % x for x in ( "tabix_util.c", )] +\ -- os_c_files + \ -- glob.glob( os.path.join( "lib/tabix", "*.pysam.c" ) ), -- library_dirs=[], -- include_dirs=[ "lib/tabix", "lib/pysam" ] + include_os, -- libraries=[ "z", ], -- language="c", -- define_macros = [('_FILE_OFFSET_BITS','64'), -- ('_USE_KNETFILE','')], -- )) -- -- extensions.append(Extension( -- "pysam.TabProxies", -- tabproxies_sources + os_c_files, -- library_dirs=[], -- include_dirs= include_os, -- libraries=[ "z", ], -- language="c", -- )) -- -- extensions.append(Extension( -- "pysam.cvcf", -- cvcf_sources + os_c_files, -- library_dirs=[], -- include_dirs= ["lib/tabix",] + include_os, -- libraries=[ "z", ], -- language="c", -- )) -+ if not have_pysam: -+ extensions.append(Extension( -+ "pysam.csamtools", -+ csamtools_sources + [ "lib/pysam/%s" % x for x in ("pysam_util.c", )] +\ -+ glob.glob( os.path.join( "lib/samtools", "*.pysam.c" )) +\ -+ os_c_files + \ -+ glob.glob( os.path.join( "lib/samtools", "*", "*.pysam.c" ) ), -+ library_dirs=[], -+ include_dirs=[ "lib/samtools", "lib/pysam" ] + include_os, -+ libraries=[ "z", ], -+ language="c", -+ define_macros = [('_FILE_OFFSET_BITS','64'),('_USE_KNETFILE','')], -+ )) -+ -+ extensions.append(Extension( -+ "pysam.ctabix", -+ tabix_sources + [ "lib/pysam/%s" % x for x in ( "tabix_util.c", )] +\ -+ os_c_files + \ -+ glob.glob( os.path.join( "lib/tabix", "*.pysam.c" ) ), -+ library_dirs=[], -+ include_dirs=[ "lib/tabix", "lib/pysam" ] + include_os, -+ libraries=[ "z", ], -+ language="c", -+ define_macros = [('_FILE_OFFSET_BITS','64'), -+ ('_USE_KNETFILE','')], -+ )) -+ -+ extensions.append(Extension( -+ "pysam.TabProxies", -+ tabproxies_sources + os_c_files, -+ library_dirs=[], -+ include_dirs= include_os, -+ libraries=[ "z", ], -+ language="c", -+ )) -+ -+ extensions.append(Extension( -+ "pysam.cvcf", -+ cvcf_sources + os_c_files, -+ library_dirs=[], -+ include_dirs= ["lib/tabix",] + include_os, -+ libraries=[ "z", ], -+ language="c", -+ )) - - - return extensions diff --git a/gnu/packages/patches/delly-use-system-libraries.patch b/gnu/packages/patches/delly-use-system-libraries.patch deleted file mode 100644 index 3315c2a176..0000000000 --- a/gnu/packages/patches/delly-use-system-libraries.patch +++ /dev/null @@ -1,56 +0,0 @@ ---- a/Makefile 2017-04-09 12:48:15.000000000 +0200 -+++ b/Makefile 2017-06-21 14:26:02.749282787 +0200 -@@ -9,8 +9,8 @@ - - # Flags - CXX=g++ --CXXFLAGS += -isystem ${SEQTK_ROOT} -isystem ${BOOST_ROOT} -pedantic -W -Wall -Wno-unknown-pragmas -D__STDC_LIMIT_MACROS -fno-strict-aliasing --LDFLAGS += -L${SEQTK_ROOT} -L${BOOST_ROOT}/stage/lib -lboost_iostreams -lboost_filesystem -lboost_system -lboost_program_options -lboost_date_time -+CXXFLAGS += -pedantic -W -Wall -Wno-unknown-pragmas -D__STDC_LIMIT_MACROS -fno-strict-aliasing -+LDFLAGS += -lboost_iostreams -lboost_filesystem -lboost_system -lboost_program_options -lboost_date_time - - # Additional flags for release/debug - ifeq (${PARALLEL}, 1) -@@ -23,7 +23,7 @@ - ifeq (${STATIC}, 1) - LDFLAGS += -static -static-libgcc -pthread -lhts -lz - else -- LDFLAGS += -lhts -lz -Wl,-rpath,${SEQTK_ROOT},-rpath,${BOOST_ROOT}/stage/lib -+ LDFLAGS += -lhts -lz - endif - ifeq (${DEBUG}, 1) - CXXFLAGS += -g -O0 -fno-inline -DDEBUG -@@ -41,29 +41,17 @@ - DELLYSOURCES = $(wildcard src/*.h) $(wildcard src/*.cpp) - - # Targets --TARGETS = .htslib .bcftools .boost src/delly src/cov src/dpe -+TARGETS = src/delly src/cov src/dpe - - all: $(TARGETS) - --.htslib: $(HTSLIBSOURCES) -- cd src/htslib && make && make lib-static && cd ../../ && touch .htslib -- --.bcftools: $(HTSLIBSOURCES) -- cd src/bcftools && make && cd ../../ && touch .bcftools -- --.boost: $(BOOSTSOURCES) -- cd src/modular-boost && ./bootstrap.sh --prefix=${PWD}/src/modular-boost --without-icu --with-libraries=iostreams,filesystem,system,program_options,date_time && ./b2 && ./b2 headers && cd ../../ && touch .boost -- --src/delly: .htslib .bcftools .boost $(DELLYSOURCES) -- $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS) -- --src/cov: .htslib .bcftools .boost $(DELLYSOURCES) -+src/cov: $(DELLYSOURCES) - $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS) - --src/dpe: .htslib .bcftools .boost $(DELLYSOURCES) -+src/dpe: $(DELLYSOURCES) - $(CXX) $(CXXFLAGS) $@.cpp -o $@ $(LDFLAGS) - - clean: - cd src/htslib && make clean - cd src/modular-boost && ./b2 --clean-all -- rm -f $(TARGETS) $(TARGETS:=.o) .htslib .boost .bcftools -+ rm -f $(TARGETS) $(TARGETS:=.o) diff --git a/gnu/packages/patches/elogind-glibc-2.27.patch b/gnu/packages/patches/elogind-glibc-2.27.patch deleted file mode 100644 index 4ade587b5e..0000000000 --- a/gnu/packages/patches/elogind-glibc-2.27.patch +++ /dev/null @@ -1,22 +0,0 @@ -Look for memfd_create in sys/mman.h instead of linux/memfd.h. -Needed to build with glibc-2.27. - ---- a/configure.ac 1969-12-31 19:00:00.000000000 -0500 -+++ b/configure.ac 2018-03-27 23:54:15.414589005 -0400 -@@ -360,7 +360,7 @@ - # ------------------------------------------------------------------------------ - - AC_CHECK_HEADERS([sys/capability.h], [], [AC_MSG_ERROR([*** POSIX caps headers not found])]) --AC_CHECK_HEADERS([linux/memfd.h], [], []) -+AC_CHECK_HEADERS([sys/mman.h], [], []) - - AC_CHECK_HEADERS([printf.h], [have_printf_h=yes], [have_printf_h=no]) - AS_IF([test x$have_printf_h = xyes], [ -@@ -395,6 +395,7 @@ - [], [], [[ - #include <sys/types.h> - #include <unistd.h> -+#include <sys/mman.h> - #include <sys/mount.h> - #include <fcntl.h> - #include <sched.h> diff --git a/gnu/packages/patches/emacs-pdf-tools-poppler.patch b/gnu/packages/patches/emacs-pdf-tools-poppler.patch new file mode 100644 index 0000000000..0477508fa9 --- /dev/null +++ b/gnu/packages/patches/emacs-pdf-tools-poppler.patch @@ -0,0 +1,41 @@ +Fix build issue with recent Poppler: + <https://github.com/politza/pdf-tools/issues/372>. + +This combines upstream commits +6cd76dec9aece2a8daa90f17ab77fbf773157a1d..50a5297b82e26cfd52f6c00645ddc1057099d6a7 +for this file. + +diff --git a/server/poppler-hack.cc b/server/poppler-hack.cc +index 0c62f73..427f9df 100644 +--- a/server/poppler-hack.cc ++++ b/server/poppler-hack.cc +@@ -51,7 +51,10 @@ GType poppler_annot_markup_get_type (void) G_GNUC_CONST; + double y2; + }; + +- char *_xpoppler_goo_string_to_utf8(GooString *s) ++ // This function does not modify its argument s, but for ++ // compatibility reasons (e.g. getLength in GooString.h before 2015) ++ // with older poppler code, it can't be declared as such. ++ char *_xpoppler_goo_string_to_utf8(/* const */ GooString *s) + { + char *result; + +@@ -85,7 +88,7 @@ GType poppler_annot_markup_get_type (void) G_GNUC_CONST; + // Set the rectangle of an annotation. It was first added in v0.26. + void xpoppler_annot_set_rectangle (PopplerAnnot *a, PopplerRectangle *rectangle) + { +- GooString *state = a->annot->getAppearState (); ++ GooString *state = (GooString*) a->annot->getAppearState (); + char *ustate = _xpoppler_goo_string_to_utf8 (state); + + a->annot->setRect (rectangle->x1, rectangle->y1, +@@ -105,7 +108,7 @@ GType poppler_annot_markup_get_type (void) G_GNUC_CONST; + g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), NULL); + + annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot); +- text = annot->getDate (); ++ text = (GooString*) annot->getDate (); + + return text ? _xpoppler_goo_string_to_utf8 (text) : NULL; + } diff --git a/gnu/packages/patches/emacs-realgud-fix-configure-ac.patch b/gnu/packages/patches/emacs-realgud-fix-configure-ac.patch new file mode 100644 index 0000000000..8165857c87 --- /dev/null +++ b/gnu/packages/patches/emacs-realgud-fix-configure-ac.patch @@ -0,0 +1,27 @@ +From a293690f29407ac54a218d6d20c2142e1a0319d1 Mon Sep 17 00:00:00 2001 +From: Maxim Cournoyer <maxim.cournoyer@gmail.com> +Date: Wed, 31 Oct 2018 00:08:34 -0400 +Subject: [PATCH] configure.ac: Fix NO_CHECK_EMACS_PACKAGES elisp. + +Remove the extraneous trailing parenthesis. +--- + configure.ac | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index de0d932..69bcea7 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -25,8 +25,7 @@ AC_MSG_NOTICE("Checking prerequiste packages") + $EMACS -batch -q --no-site-file -eval \ + '(dolist (package + (quote (cl-lib loc-changes load-relative test-simple))) +- (require package)) +- )' ++ (require package))' + fi + if test $? -ne 0 ; then + AC_MSG_ERROR([Can't continue until above error is corrected.]) +-- +2.19.0 + diff --git a/gnu/packages/patches/gcc-libsanitizer-fix.patch b/gnu/packages/patches/gcc-libsanitizer-fix.patch deleted file mode 100644 index 67aa44bed4..0000000000 --- a/gnu/packages/patches/gcc-libsanitizer-fix.patch +++ /dev/null @@ -1,113 +0,0 @@ -https://gcc.gnu.org/git/?p=gcc.git;a=patch;h=8937b94d1a643fd9760714642296d034a45254a8 -https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81066 - -This patch can be removed when gcc-6.5.0 is released - -From 8937b94d1a643fd9760714642296d034a45254a8 Mon Sep 17 00:00:00 2001 -From: doko <doko@138bc75d-0d04-0410-961f-82ee72b054a4> -Date: Thu, 7 Sep 2017 07:15:24 +0000 -Subject: [PATCH] 2017-09-07 Matthias Klose <doko@ubuntu.com> - - Backported from mainline - 2017-07-14 Jakub Jelinek <jakub@redhat.com> - - PR sanitizer/81066 - * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969. - * sanitizer_common/sanitizer_linux.cc: Likewise. - * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise. - * tsan/tsan_platform_linux.cc: Likewise. - - -git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-6-branch@251828 138bc75d-0d04-0410-961f-82ee72b054a4 ---- - libsanitizer/ChangeLog | 11 +++++++++++ - libsanitizer/sanitizer_common/sanitizer_linux.cc | 3 +-- - libsanitizer/sanitizer_common/sanitizer_linux.h | 4 +--- - .../sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc | 2 +- - libsanitizer/tsan/tsan_platform_linux.cc | 2 +- - 5 files changed, 15 insertions(+), 7 deletions(-) - -diff --git a/libsanitizer/ChangeLog b/libsanitizer/ChangeLog -index 252cd09..d988b28 100644 ---- a/libsanitizer/ChangeLog -+++ b/libsanitizer/ChangeLog -@@ -1,3 +1,14 @@ -+2017-09-07 Matthias Klose <doko@ubuntu.com> -+ -+ Backported from mainline -+ 2017-07-14 Jakub Jelinek <jakub@redhat.com> -+ -+ PR sanitizer/81066 -+ * sanitizer_common/sanitizer_linux.h: Cherry-pick upstream r307969. -+ * sanitizer_common/sanitizer_linux.cc: Likewise. -+ * sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc: Likewise. -+ * tsan/tsan_platform_linux.cc: Likewise. -+ - 2017-07-04 Release Manager - - * GCC 6.4.0 released. -diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.cc b/libsanitizer/sanitizer_common/sanitizer_linux.cc -index 2cefa20..223d9c6 100644 ---- a/libsanitizer/sanitizer_common/sanitizer_linux.cc -+++ b/libsanitizer/sanitizer_common/sanitizer_linux.cc -@@ -546,8 +546,7 @@ uptr internal_prctl(int option, uptr arg2, uptr arg3, uptr arg4, uptr arg5) { - } - #endif - --uptr internal_sigaltstack(const struct sigaltstack *ss, -- struct sigaltstack *oss) { -+uptr internal_sigaltstack(const void *ss, void *oss) { - return internal_syscall(SYSCALL(sigaltstack), (uptr)ss, (uptr)oss); - } - -diff --git a/libsanitizer/sanitizer_common/sanitizer_linux.h b/libsanitizer/sanitizer_common/sanitizer_linux.h -index 4497702..1594058 100644 ---- a/libsanitizer/sanitizer_common/sanitizer_linux.h -+++ b/libsanitizer/sanitizer_common/sanitizer_linux.h -@@ -19,7 +19,6 @@ - #include "sanitizer_platform_limits_posix.h" - - struct link_map; // Opaque type returned by dlopen(). --struct sigaltstack; - - namespace __sanitizer { - // Dirent structure for getdents(). Note that this structure is different from -@@ -28,8 +27,7 @@ struct linux_dirent; - - // Syscall wrappers. - uptr internal_getdents(fd_t fd, struct linux_dirent *dirp, unsigned int count); --uptr internal_sigaltstack(const struct sigaltstack* ss, -- struct sigaltstack* oss); -+uptr internal_sigaltstack(const void* ss, void* oss); - uptr internal_sigprocmask(int how, __sanitizer_sigset_t *set, - __sanitizer_sigset_t *oldset); - void internal_sigfillset(__sanitizer_sigset_t *set); -diff --git a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc -index c919e4f..014162af 100644 ---- a/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc -+++ b/libsanitizer/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cc -@@ -267,7 +267,7 @@ static int TracerThread(void* argument) { - - // Alternate stack for signal handling. - InternalScopedBuffer<char> handler_stack_memory(kHandlerStackSize); -- struct sigaltstack handler_stack; -+ stack_t handler_stack; - internal_memset(&handler_stack, 0, sizeof(handler_stack)); - handler_stack.ss_sp = handler_stack_memory.data(); - handler_stack.ss_size = kHandlerStackSize; -diff --git a/libsanitizer/tsan/tsan_platform_linux.cc b/libsanitizer/tsan/tsan_platform_linux.cc -index 09cec5f..908f4fe 100644 ---- a/libsanitizer/tsan/tsan_platform_linux.cc -+++ b/libsanitizer/tsan/tsan_platform_linux.cc -@@ -291,7 +291,7 @@ bool IsGlobalVar(uptr addr) { - int ExtractResolvFDs(void *state, int *fds, int nfd) { - #if SANITIZER_LINUX - int cnt = 0; -- __res_state *statp = (__res_state*)state; -+ struct __res_state *statp = (struct __res_state*)state; - for (int i = 0; i < MAXNS && cnt < nfd; i++) { - if (statp->_u._ext.nsaddrs[i] && statp->_u._ext.nssocks[i] != -1) - fds[cnt++] = statp->_u._ext.nssocks[i]; --- -2.9.3 - diff --git a/gnu/packages/patches/gemma-intel-compat.patch b/gnu/packages/patches/gemma-intel-compat.patch deleted file mode 100644 index f12ec56d9b..0000000000 --- a/gnu/packages/patches/gemma-intel-compat.patch +++ /dev/null @@ -1,44 +0,0 @@ -From da1ed24209121f7b0f03f360b1029d7125a38e70 Mon Sep 17 00:00:00 2001 -From: Efraim Flashner <efraim@flashner.co.il> -Date: Tue, 4 Jul 2017 12:44:53 +0300 -Subject: [PATCH] Add NO_INTEL_COMPAT flag to Makefile. - -see also: https://github.com/xiangzhou/GEMMA/pull/47 - ---- - Makefile | 12 ++++++++---- - 1 file changed, 8 insertions(+), 4 deletions(-) - -diff --git a/Makefile b/Makefile -index 5bb8748..712b1ad 100644 ---- a/Makefile -+++ b/Makefile -@@ -11,6 +11,7 @@ - SYS = LNX - # Leave blank after "=" to disable; put "= 1" to enable - WITH_LAPACK = 1 -+NO_INTEL_COMPAT = - FORCE_32BIT = - FORCE_DYNAMIC = - DIST_NAME = gemma-0.96 -@@ -64,10 +65,13 @@ endif - HDR += $(SRC_DIR)/lapack.h - endif - --ifdef FORCE_32BIT -- CPPFLAGS += -m32 --else -- CPPFLAGS += -m64 -+ifdef NO_INTEL_COMPAT -+ else -+ ifdef FORCE_32BIT -+ CPPFLAGS += -m32 -+ else -+ CPPFLAGS += -m64 -+ endif - endif - - ifdef FORCE_DYNAMIC --- -2.13.2 - diff --git a/gnu/packages/patches/handbrake-pkg-config-path.patch b/gnu/packages/patches/handbrake-pkg-config-path.patch deleted file mode 100644 index 18f3953eaa..0000000000 --- a/gnu/packages/patches/handbrake-pkg-config-path.patch +++ /dev/null @@ -1,24 +0,0 @@ -Do not clobber PKG_CONFIG_PATH during configure. - ---- HandBrake-0.10.5/gtk/module.rules.orig 2016-02-11 14:14:05.000000000 -0600 -+++ HandBrake-0.10.5/gtk/module.rules 2016-10-29 22:27:50.550960848 -0500 -@@ -15,7 +15,7 @@ - set -e; cd $(GTK.src/); NOCONFIGURE=1 ./autogen.sh - set -e; cd $(GTK.build/); $(call fn.ABSOLUTE,$(GTK.src/))configure \ - $(GTK.CONFIGURE.extra) \ -- PKG_CONFIG_PATH=$(BUILD/)contrib/lib/pkgconfig \ -+ PKG_CONFIG_PATH=$(BUILD/)contrib/lib/pkgconfig$(if $(PKG_CONFIG_PATH),:)$(PKG_CONFIG_PATH) \ - CFLAGS="$(call fn.ARGS,GTK.GCC,.g .O *D ?extra)" \ - LDFLAGS="$(call fn.ARGS,GTK.GCC,?strip .g .O ?extra.exe)" \ - --prefix=$(PREFIX) \ ---- Handbrake-0.10.5-0.77d09e9-checkout/make/include/contrib.defs 1969-12-31 18:00:00.000000000 -0600 -+++ Handbrake-0.10.5-0.77d09e9-checkout/make/include/contrib.defs 2016-11-01 13:11:43.826144311 -0500 -@@ -119,7 +119,7 @@ - endif - $(1).CONFIGURE.env.CPPFLAGS = CPPFLAGS="-I$$(call fn.ABSOLUTE,$(CONTRIB.build/))include $$(call fn.ARGS,$(1).GCC,*archs *sysroot *minver ?extra *D)" - $(1).CONFIGURE.env.LDFLAGS = LDFLAGS="-L$$(call fn.ABSOLUTE,$(CONTRIB.build/))lib $$(call fn.ARGS,$(1).GCC,*archs *sysroot *minver ?extra.exe *D)" -- $(1).CONFIGURE.env.PKG_CONFIG_PATH = PKG_CONFIG_PATH="$$(call fn.ABSOLUTE,$$(CONTRIB.build/))lib/pkgconfig" -+ $(1).CONFIGURE.env.PKG_CONFIG_PATH = PKG_CONFIG_PATH="$$(call fn.ABSOLUTE,$$(CONTRIB.build/))lib/pkgconfig$(if $(PKG_CONFIG_PATH),:)$(PKG_CONFIG_PATH)" - - $(1).CONFIGURE.env.args = !CC !CFLAGS !CXX !CXXFLAGS !CPPFLAGS !LD !LDFLAGS !PKG_CONFIG_PATH !LOCAL_PATH !CROSS - $(1).CONFIGURE.env = $$(call fn.ARGS,$(1).CONFIGURE.env,$$($(1).CONFIGURE.env.args)) diff --git a/gnu/packages/patches/hplip-remove-imageprocessor.patch b/gnu/packages/patches/hplip-remove-imageprocessor.patch new file mode 100644 index 0000000000..cde3ecba2d --- /dev/null +++ b/gnu/packages/patches/hplip-remove-imageprocessor.patch @@ -0,0 +1,232 @@ +This patch is based heavily on the Debian patch. + +https://salsa.debian.org/printing-team/hplip/raw/debian/3.18.10+dfsg0-1/debian/patches/0025-Remove-all-ImageProcessor-functionality-which-is-clo.patch + +--- + Makefile.am | 22 +++------------------- + Makefile.in | 33 +++++---------------------------- + prnt/hpcups/HPCupsFilter.cpp | 21 --------------------- + 3 files changed, 8 insertions(+), 68 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index ef6480f..ecada5c 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -166,7 +166,7 @@ if !HPLIP_CLASS_DRIVER + dist_hplip_SCRIPTS = hpssd.py __init__.py hpdio.py + endif #HPLIP_CLASS_DRIVER + +-dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template prnt/hpcups/libImageProcessor-x86_64.so prnt/hpcups/libImageProcessor-x86_32.so ++dist_noinst_DATA += prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template + dist_noinst_SCRIPTS += dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv + + if !HPLIP_CLASS_DRIVER +@@ -590,11 +590,10 @@ hpcups_SOURCES = prnt/hpcups/HPCupsFilter.cpp prnt/hpcups/HPCupsFilter.h prnt/hp + prnt/hpcups/flate_colorspace.h prnt/hpcups/RunLenEncoding.h prnt/hpcups/common_defines.h \ + prnt/hpcups/genPCLm.h \ + common/utils.c common/utils.h prnt/hpcups/Hbpl1_Wrapper.cpp prnt/hpcups/genPCLm.cpp \ +- prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp \ +- prnt/hpcups/ImageProcessor.h ++ prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp + + hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS) +-hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lImageProcessor -lcups -lcupsimage -lz $(DBUS_LIBS) ++hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lcups -lcupsimage -lz $(DBUS_LIBS) + #else + #hpcupsdir = $(cupsfilterdir) + #hpcups_PROGRAMS = hpcups +@@ -679,21 +678,10 @@ printpluginsdir=$(cupsfilterdir) + + + dist_filter_DATA = hpcups hpps dat2drv +-dist_printplugins_DATA = prnt/plugins/hbpl1-arm32.so prnt/plugins/hbpl1-arm64.so prnt/plugins/hbpl1-x86_32.so prnt/plugins/hbpl1-x86_64.so prnt/plugins/lj-arm32.so prnt/plugins/lj-arm64.so prnt/plugins/lj-x86_32.so prnt/plugins/lj-x86_64.so + endif #HPLIP_CLASS_DRIVER + + install-data-hook: + if HPLIP_BUILD +- if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \ +- cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \ +- chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \ +- ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \ +- fi; \ +- if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \ +- cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \ +- chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \ +- ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \ +- fi + if !HPLIP_CLASS_DRIVER + # If scanner build, add hpaio entry to sane dll.conf. + if [ "$(scan_build)" = "yes" ]; then \ +@@ -874,10 +862,6 @@ if HPLIP_CLASS_DRIVER + rm -rf $(distdir)/setup.py + rm -rf $(distdir)/systray.py + rm -rf $(distdir)/timedate.py +- rm -rf $(distdir)/prnt/plugins/lj-arm32.so +- rm -rf $(distdir)/prnt/plugins/lj-arm64.so +- rm -rf $(distdir)/prnt/plugins/lj-x86_32.so +- rm -rf $(distdir)/prnt/plugins/lj-x86_64.so + rm -rf $(distdir)/hpijs-drv + rm -rf $(distdir)/prnt/hpcups/ + rm -rf $(distdir)/prnt/ps/ +diff --git a/Makefile.in b/Makefile.in +index 910a268..cd44203 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -103,7 +103,7 @@ DIST_COMMON = $(am__configure_deps) \ + + # ip library + @HPLIP_BUILD_TRUE@am__append_12 = libhpip.la +-@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_13 = prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template prnt/hpcups/libImageProcessor-x86_64.so prnt/hpcups/libImageProcessor-x86_32.so ++@FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_13 = prnt/drv/hpijs.drv.in.template prnt/drv/hpcups.drv.in.template + @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@am__append_14 = dat2drv.py install.py hplip-install init-suse-firewall init-iptables-firewall class_rpm_build.sh hplipclassdriver.spec createPPD.sh Makefile_dat2drv hpijs-drv + @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@am__append_15 = scan/sane/hpaio.desc \ + @FULL_BUILD_TRUE@@HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@ installer/text_install.py \ +@@ -500,8 +500,7 @@ am__hpcups_SOURCES_DIST = prnt/hpcups/HPCupsFilter.cpp \ + prnt/hpcups/RunLenEncoding.h prnt/hpcups/common_defines.h \ + prnt/hpcups/genPCLm.h common/utils.c common/utils.h \ + prnt/hpcups/Hbpl1_Wrapper.cpp prnt/hpcups/genPCLm.cpp \ +- prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp \ +- prnt/hpcups/ImageProcessor.h ++ prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp + @HPCUPS_INSTALL_TRUE@am_hpcups_OBJECTS = \ + @HPCUPS_INSTALL_TRUE@ hpcups-HPCupsFilter.$(OBJEXT) \ + @HPCUPS_INSTALL_TRUE@ hpcups-dbuscomm.$(OBJEXT) \ +@@ -723,8 +722,7 @@ am__dist_locatedriver_DATA_DIST = locatedriver + am__dist_models_DATA_DIST = data/models/models.dat + am__dist_noinst_DATA_DIST = prnt/drv/hpijs.drv.in.template \ + prnt/drv/hpcups.drv.in.template \ +- prnt/hpcups/libImageProcessor-x86_64.so \ +- prnt/hpcups/libImageProcessor-x86_32.so scan/sane/hpaio.desc \ ++ scan/sane/hpaio.desc \ + installer/text_install.py data/localization/hplip_de.ts \ + data/localization/hplip_es.ts data/localization/hplip_fr.ts \ + data/localization/hplip_it.ts data/localization/hplip_pt.ts \ +@@ -1932,11 +1930,6 @@ am__dist_ppd_DATA_DIST = prnt/ps/hp-designjet_z6810ps_42in-ps.ppd.gz \ + ppd/classppd/ps/hp-postscript-inkjet.ppd.gz \ + ppd/classppd/ps/hp-postscript-laserjet-pro.ppd.gz \ + ppd/classppd/ps/hp-postscript-laserjet.ppd.gz +-am__dist_printplugins_DATA_DIST = prnt/plugins/hbpl1-arm32.so \ +- prnt/plugins/hbpl1-arm64.so prnt/plugins/hbpl1-x86_32.so \ +- prnt/plugins/hbpl1-x86_64.so prnt/plugins/lj-arm32.so \ +- prnt/plugins/lj-arm64.so prnt/plugins/lj-x86_32.so \ +- prnt/plugins/lj-x86_64.so + am__dist_prnt_DATA_DIST = prnt/cups.py prnt/__init__.py prnt/ldl.py \ + prnt/pcl.py prnt/colorcal.py + am__dist_rules_DATA_DIST = data/rules/56-hpmud.rules \ +@@ -4665,11 +4658,10 @@ libapdk_la_CFLAGS = $(libapdk_la_CXXFLAGS) -Iprnt/hpijs + @HPCUPS_INSTALL_TRUE@ prnt/hpcups/flate_colorspace.h prnt/hpcups/RunLenEncoding.h prnt/hpcups/common_defines.h \ + @HPCUPS_INSTALL_TRUE@ prnt/hpcups/genPCLm.h \ + @HPCUPS_INSTALL_TRUE@ common/utils.c common/utils.h prnt/hpcups/Hbpl1_Wrapper.cpp prnt/hpcups/genPCLm.cpp \ +-@HPCUPS_INSTALL_TRUE@ prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp \ +-@HPCUPS_INSTALL_TRUE@ prnt/hpcups/ImageProcessor.h ++@HPCUPS_INSTALL_TRUE@ prnt/hpcups/genJPEGStrips.cpp prnt/hpcups/RunLenEncoding.cpp + + @HPCUPS_INSTALL_TRUE@hpcups_CXXFLAGS = $(APDK_ENDIAN_FLAG) $(DBUS_CFLAGS) +-@HPCUPS_INSTALL_TRUE@hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lImageProcessor -lcups -lcupsimage -lz $(DBUS_LIBS) ++@HPCUPS_INSTALL_TRUE@hpcups_LDADD = -L./prnt/hpcups/ -ljpeg -ldl -lcups -lcupsimage -lz $(DBUS_LIBS) + #else + #hpcupsdir = $(cupsfilterdir) + #hpcups_PROGRAMS = hpcups +@@ -4717,7 +4709,6 @@ ppddir = $(hpppddir) + @HPLIP_CLASS_DRIVER_TRUE@filterdir = $(cupsfilterdir) + @HPLIP_CLASS_DRIVER_TRUE@printpluginsdir = $(cupsfilterdir) + @HPLIP_CLASS_DRIVER_TRUE@dist_filter_DATA = hpcups hpps dat2drv +-@HPLIP_CLASS_DRIVER_TRUE@dist_printplugins_DATA = prnt/plugins/hbpl1-arm32.so prnt/plugins/hbpl1-arm64.so prnt/plugins/hbpl1-x86_32.so prnt/plugins/hbpl1-x86_64.so prnt/plugins/lj-arm32.so prnt/plugins/lj-arm64.so prnt/plugins/lj-x86_32.so prnt/plugins/lj-x86_64.so + all: all-am + + .SUFFIXES: +@@ -9380,16 +9371,6 @@ uninstall-am: uninstall-apparmor_abstractionDATA \ + + + install-data-hook: +-@HPLIP_BUILD_TRUE@ if [ \( "$(UNAME)" = "x86_64" -a -d "$(libdir)/" \) ]; then \ +-@HPLIP_BUILD_TRUE@ cp prnt/hpcups/libImageProcessor-x86_64.so $(libdir)/ ; \ +-@HPLIP_BUILD_TRUE@ chmod 775 $(libdir)/libImageProcessor-x86_64.so ; \ +-@HPLIP_BUILD_TRUE@ ln -sf $(libdir)/libImageProcessor-x86_64.so $(libdir)/libImageProcessor.so ; \ +-@HPLIP_BUILD_TRUE@ fi; \ +-@HPLIP_BUILD_TRUE@ if [ \( \( "$(UNAME)" = "i686" -o "$(UNAME)" = "i386" \) -a -d "$(libdir)/" \) ]; then \ +-@HPLIP_BUILD_TRUE@ cp prnt/hpcups/libImageProcessor-x86_32.so $(libdir)/ ; \ +-@HPLIP_BUILD_TRUE@ chmod 775 $(libdir)/libImageProcessor-x86_32.so ; \ +-@HPLIP_BUILD_TRUE@ ln -sf $(libdir)/libImageProcessor-x86_32.so $(libdir)/libImageProcessor.so ; \ +-@HPLIP_BUILD_TRUE@ fi + # If scanner build, add hpaio entry to sane dll.conf. + @HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@ if [ "$(scan_build)" = "yes" ]; then \ + @HPLIP_BUILD_TRUE@@HPLIP_CLASS_DRIVER_FALSE@ $(mkinstalldirs) $(DESTDIR)/etc/sane.d; \ +@@ -9556,10 +9537,6 @@ dist-hook: + @HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/setup.py + @HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/systray.py + @HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/timedate.py +-@HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/prnt/plugins/lj-arm32.so +-@HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/prnt/plugins/lj-arm64.so +-@HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/prnt/plugins/lj-x86_32.so +-@HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/prnt/plugins/lj-x86_64.so + @HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/hpijs-drv + @HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/prnt/hpcups/ + @HPLIP_CLASS_DRIVER_TRUE@ rm -rf $(distdir)/prnt/ps/ +diff --git a/prnt/hpcups/HPCupsFilter.cpp b/prnt/hpcups/HPCupsFilter.cpp +index 5b282d8..0bacfaf 100644 +--- a/prnt/hpcups/HPCupsFilter.cpp ++++ b/prnt/hpcups/HPCupsFilter.cpp +@@ -31,7 +31,6 @@ + \*****************************************************************************/ + + #include "HPCupsFilter.h" +-#include "ImageProcessor.h" + + #include <signal.h> + #include <sys/wait.h> +@@ -637,16 +636,10 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + + + sprintf(hpPreProcessedRasterFile, "%s/hp_%s_cups_SwapedPagesXXXXXX",CUPS_TMP_DIR, m_JA.user_name); +- image_processor_t* imageProcessor = imageProcessorCreate(); + + while (cupsRasterReadHeader2(cups_raster, &cups_header)) + { + +- IMAGE_PROCESSOR_ERROR result = imageProcessorStartPage(imageProcessor, &cups_header); +- if (result != IPE_SUCCESS){ +- dbglog("DEBUG: imageProcessorStartPage failed result = %d\n", result); +- } +- + current_page_number++; + + if (current_page_number == 1) { +@@ -745,12 +738,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + color_raster = rgbRaster; + black_raster = kRaster; + +- result = imageProcessorProcessLine(imageProcessor, m_pPrinterBuffer, cups_header.cupsBytesPerLine); +- if (result != IPE_SUCCESS){ +- dbglog("DEBUG: imageProcessorProcessLine failed result = %d\n", result); +- } +- +- + if ((y == 0) && !is_ljmono) { + //For ljmono, make sure that first line is not a blankRaster line.Otherwise printer + //may not skip blank lines before actual data +@@ -780,12 +767,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + } + } // for() loop end + +- result = imageProcessorEndPage(imageProcessor); +- if (result != IPE_SUCCESS){ +- dbglog("DEBUG: imageProcessorEndPage failed result = %d\n", result); +- } +- +- + m_Job.NewPage(); + if (err != NO_ERROR) { + break; +@@ -800,8 +781,6 @@ int HPCupsFilter::processRasterData(cups_raster_t *cups_raster) + rgbRaster = NULL; + } + +- imageProcessorDestroy(imageProcessor); +- + unlink(hpPreProcessedRasterFile); + return ret_status; + } +-- +2.19.1 + diff --git a/gnu/packages/patches/icecat-CVE-2018-12383.patch b/gnu/packages/patches/icecat-CVE-2018-12383.patch deleted file mode 100644 index 17ca0f3773..0000000000 --- a/gnu/packages/patches/icecat-CVE-2018-12383.patch +++ /dev/null @@ -1,103 +0,0 @@ -Based on upstream changeset: - https://hg.mozilla.org/releases/mozilla-esr60/rev/300efdbc9fe1 -but with the git binary patch and related test changes omitted, -and adapted to apply cleanly to GNU IceCat. - -# HG changeset patch -# User David Keeler <dkeeler@mozilla.com> -# Date 1531860660 25200 -# Node ID 300efdbc9fe1f9165428c7934861033935b5abfa -# Parent 80a4a7ef281374dbb2afda8edac54665b14b9ef8 -Bug 1475775 - Clean up old NSS DB file after upgrade if necessary. r=franziskus, r=mattn, a=RyanVM - -Reviewers: franziskus, mattn - -Bug #: 1475775 - -Differential Revision: https://phabricator.services.mozilla.com/D2202 - -diff --git a/security/manager/ssl/nsNSSComponent.cpp b/security/manager/ssl/nsNSSComponent.cpp ---- a/security/manager/ssl/nsNSSComponent.cpp -+++ b/security/manager/ssl/nsNSSComponent.cpp -@@ -1935,16 +1935,61 @@ AttemptToRenameBothPKCS11ModuleDBVersion - NS_NAMED_LITERAL_CSTRING(sqlModuleDBFilename, "pkcs11.txt"); - nsresult rv = AttemptToRenamePKCS11ModuleDB(profilePath, - legacyModuleDBFilename); - if (NS_FAILED(rv)) { - return rv; - } - return AttemptToRenamePKCS11ModuleDB(profilePath, sqlModuleDBFilename); - } -+ -+// When we changed from the old dbm database format to the newer sqlite -+// implementation, the upgrade process left behind the existing files. Suppose a -+// user had not set a password for the old key3.db (which is about 99% of -+// users). After upgrading, both the old database and the new database are -+// unprotected. If the user then sets a password for the new database, the old -+// one will not be protected. In this scenario, we should probably just remove -+// the old database (it would only be relevant if the user downgraded to a -+// version of IceCat before 58, but we have to trade this off against the -+// user's old private keys being unexpectedly unprotected after setting a -+// password). -+// This was never an issue on Android because we always used the new -+// implementation. -+static void -+MaybeCleanUpOldNSSFiles(const nsACString& profilePath) -+{ -+ UniquePK11SlotInfo slot(PK11_GetInternalKeySlot()); -+ if (!slot) { -+ return; -+ } -+ // Unfortunately we can't now tell the difference between "there already was a -+ // password when the upgrade happened" and "there was not a password but then -+ // the user added one after upgrading". -+ bool hasPassword = PK11_NeedLogin(slot.get()) && -+ !PK11_NeedUserInit(slot.get()); -+ if (!hasPassword) { -+ return; -+ } -+ nsCOMPtr<nsIFile> dbFile = do_CreateInstance("@mozilla.org/file/local;1"); -+ if (!dbFile) { -+ return; -+ } -+ nsresult rv = dbFile->InitWithNativePath(profilePath); -+ if (NS_FAILED(rv)) { -+ return; -+ } -+ NS_NAMED_LITERAL_CSTRING(keyDBFilename, "key3.db"); -+ rv = dbFile->AppendNative(keyDBFilename); -+ if (NS_FAILED(rv)) { -+ return; -+ } -+ // Since this isn't a directory, the `recursive` argument to `Remove` is -+ // irrelevant. -+ Unused << dbFile->Remove(false); -+} - #endif // ifndef ANDROID - - // Given a profile directory, attempt to initialize NSS. If nocertdb is true, - // (or if we don't have a profile directory) simply initialize NSS in no DB mode - // and return. Otherwise, first attempt to initialize in read/write mode, and - // then read-only mode if that fails. If both attempts fail, we may be failing - // to initialize an NSS DB collection that has FIPS mode enabled. Attempt to - // ascertain if this is the case, and if so, rename the offending PKCS#11 module -@@ -1966,16 +2011,19 @@ InitializeNSSWithFallbacks(const nsACStr - - // Try read/write mode. If we're in safeMode, we won't load PKCS#11 modules. - #ifndef ANDROID - PRErrorCode savedPRErrorCode1; - #endif // ifndef ANDROID - SECStatus srv = ::mozilla::psm::InitializeNSS(profilePath, false, !safeMode); - if (srv == SECSuccess) { - MOZ_LOG(gPIPNSSLog, LogLevel::Debug, ("initialized NSS in r/w mode")); -+#ifndef ANDROID -+ MaybeCleanUpOldNSSFiles(profilePath); -+#endif // ifndef ANDROID - return NS_OK; - } - #ifndef ANDROID - savedPRErrorCode1 = PR_GetError(); - PRErrorCode savedPRErrorCode2; - #endif // ifndef ANDROID - // That failed. Try read-only mode. - srv = ::mozilla::psm::InitializeNSS(profilePath, true, !safeMode); diff --git a/gnu/packages/patches/jq-CVE-2015-8863.patch b/gnu/packages/patches/jq-CVE-2015-8863.patch deleted file mode 100644 index 20b3bb3f06..0000000000 --- a/gnu/packages/patches/jq-CVE-2015-8863.patch +++ /dev/null @@ -1,45 +0,0 @@ -Fix CVE-2015-8863 (Off-by-one error in the tokenadd function in -jv_parse.c in jq allows remote attackers to cause a denial of service -(crash) via a long JSON-encoded number, which triggers a heap-based -buffer overflow): - -<https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2015-8863> - -Copied from upstream code repository: - -<https://github.com/stedolan/jq/commit/8eb1367ca44e772963e704a700ef72ae2e12babd> - -From 8eb1367ca44e772963e704a700ef72ae2e12babd Mon Sep 17 00:00:00 2001 -From: Nicolas Williams <nico@cryptonector.com> -Date: Sat, 24 Oct 2015 17:24:57 -0500 -Subject: [PATCH] Heap buffer overflow in tokenadd() (fix #105) - -This was an off-by one: the NUL terminator byte was not allocated on -resize. This was triggered by JSON-encoded numbers longer than 256 -bytes. ---- - jv_parse.c | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/jv_parse.c b/jv_parse.c -index 3102ed4..84245b8 100644 ---- a/jv_parse.c -+++ b/jv_parse.c -@@ -383,7 +383,7 @@ static pfunc stream_token(struct jv_parser* p, char ch) { - - static void tokenadd(struct jv_parser* p, char c) { - assert(p->tokenpos <= p->tokenlen); -- if (p->tokenpos == p->tokenlen) { -+ if (p->tokenpos >= (p->tokenlen - 1)) { - p->tokenlen = p->tokenlen*2 + 256; - p->tokenbuf = jv_mem_realloc(p->tokenbuf, p->tokenlen); - } -@@ -485,7 +485,7 @@ static pfunc check_literal(struct jv_parser* p) { - TRY(value(p, v)); - } else { - // FIXME: better parser -- p->tokenbuf[p->tokenpos] = 0; // FIXME: invalid -+ p->tokenbuf[p->tokenpos] = 0; - char* end = 0; - double d = jvp_strtod(&p->dtoa, p->tokenbuf, &end); - if (end == 0 || *end != 0) diff --git a/gnu/packages/patches/libgit2-oom-test.patch b/gnu/packages/patches/libgit2-oom-test.patch new file mode 100644 index 0000000000..9667d1c0da --- /dev/null +++ b/gnu/packages/patches/libgit2-oom-test.patch @@ -0,0 +1,62 @@ +Fix a test failure on 32-bit platforms as reported +at <https://github.com/libgit2/libgit2/issues/4868>. + +From 415a8ae9c9b6ac18f0524b6af8e58408b426457d Mon Sep 17 00:00:00 2001 +From: Edward Thomson <ethomson@edwardthomson.com> +Date: Thu, 13 Sep 2018 13:27:07 +0100 +Subject: [PATCH] tests: don't run buf::oom on 32-bit systems + +On a 32-bit Linux systems, the value large enough to make malloc +guarantee a failure is also large enough that valgrind considers it +"fishy". Skip this test on those systems entirely. +--- + tests/buf/oom.c | 14 +++++++++----- + 1 file changed, 9 insertions(+), 5 deletions(-) + +diff --git a/tests/buf/oom.c b/tests/buf/oom.c +index 2741a8ddf2..ec3bad9979 100644 +--- a/tests/buf/oom.c ++++ b/tests/buf/oom.c +@@ -11,12 +11,8 @@ + */ + #if defined(GIT_ARCH_64) && defined(__linux__) + # define TOOBIG 0x0fffffffffffffff +-#elif defined(__linux__) +-# define TOOBIG 0x0fffffff + #elif defined(GIT_ARCH_64) + # define TOOBIG 0xffffffffffffff00 +-#else +-# define TOOBIG 0xffffff00 + #endif + + /** +@@ -25,13 +21,18 @@ + * will fail. And because the git_buf_grow() wrapper always + * sets mark_oom, the code in git_buf_try_grow() will free + * the internal buffer and set it to git_buf__oom. +- * ++ * + * We initialized the internal buffer to (the static variable) + * git_buf__initbuf. The purpose of this test is to make sure + * that we don't try to free the static buffer. ++ * ++ * Skip this test entirely on 32-bit platforms; a buffer large enough ++ * to guarantee malloc failures is so large that valgrind considers ++ * it likely to be an error. + */ + void test_buf_oom__grow(void) + { ++#ifdef GIT_ARCH_64 + git_buf buf = GIT_BUF_INIT; + + git_buf_clear(&buf); +@@ -40,6 +41,9 @@ void test_buf_oom__grow(void) + cl_assert(git_buf_oom(&buf)); + + git_buf_free(&buf); ++#else ++ cl_skip(); ++#endif + } + + void test_buf_oom__grow_by(void) diff --git a/gnu/packages/patches/liblxqt-include.patch b/gnu/packages/patches/liblxqt-include.patch deleted file mode 100644 index 4e8cf04789..0000000000 --- a/gnu/packages/patches/liblxqt-include.patch +++ /dev/null @@ -1,14 +0,0 @@ -Patch to fix build with Qt 5.5, taken from upstream: - https://github.com/lxde/liblxqt/commit/7303ea207de0771d6f450a31ec4a1ce69202869b - -diff -u -r liblxqt-0.9.0.orig/lxqtnotification.h liblxqt-0.9.0/lxqtnotification.h ---- liblxqt-0.9.0.orig/lxqtnotification.h 2015-07-27 22:49:05.365166482 +0200 -+++ liblxqt-0.9.0/lxqtnotification.h 2015-07-27 22:49:36.897606619 +0200 -@@ -25,6 +25,7 @@ - #ifndef LXQTNOTIFICATION_H - #define LXQTNOTIFICATION_H - -+#include <QObject> - #include <QStringList> - #include "lxqtglobals.h" - diff --git a/gnu/packages/patches/libopenshot-tests-with-system-libs.patch b/gnu/packages/patches/libopenshot-tests-with-system-libs.patch new file mode 100644 index 0000000000..a18c4b8bba --- /dev/null +++ b/gnu/packages/patches/libopenshot-tests-with-system-libs.patch @@ -0,0 +1,95 @@ +Combination of two patches that fix libopenshot tests when built with +system-provided ffmpeg and jsoncpp. See + + https://github.com/OpenShot/libopenshot/pull/163 + +From 0d7691ab53433e1583f6a66ea96683b0f7af8a57 Mon Sep 17 00:00:00 2001 +From: "FeRD (Frank Dana)" <ferdnyc@gmail.com> +Date: Mon, 17 Sep 2018 14:04:40 -0400 +Subject: [PATCH] tests/CMakeFiles: Use FFMpeg like src/ + +--- + tests/CMakeLists.txt | 32 +++++++++++++++++++++++++++++++- + 1 file changed, 31 insertions(+), 1 deletion(-) + +diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt +index 2c45550..4df8464 100644 +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -79,7 +79,37 @@ ENDIF (ImageMagick_FOUND) + FIND_PACKAGE(FFmpeg REQUIRED) + + # Include FFmpeg headers (needed for compile) +-include_directories(${FFMPEG_INCLUDE_DIR}) ++message('AVCODEC_FOUND: ${AVCODEC_FOUND}') ++message('AVCODEC_INCLUDE_DIRS: ${AVCODEC_INCLUDE_DIRS}') ++message('AVCODEC_LIBRARIES: ${AVCODEC_LIBRARIES}') ++ ++IF (AVCODEC_FOUND) ++ include_directories(${AVCODEC_INCLUDE_DIRS}) ++ENDIF (AVCODEC_FOUND) ++IF (AVDEVICE_FOUND) ++ include_directories(${AVDEVICE_INCLUDE_DIRS}) ++ENDIF (AVDEVICE_FOUND) ++IF (AVFORMAT_FOUND) ++ include_directories(${AVFORMAT_INCLUDE_DIRS}) ++ENDIF (AVFORMAT_FOUND) ++IF (AVFILTER_FOUND) ++ include_directories(${AVFILTER_INCLUDE_DIRS}) ++ENDIF (AVFILTER_FOUND) ++IF (AVUTIL_FOUND) ++ include_directories(${AVUTIL_INCLUDE_DIRS}) ++ENDIF (AVUTIL_FOUND) ++IF (POSTPROC_FOUND) ++ include_directories(${POSTPROC_INCLUDE_DIRS}) ++ENDIF (POSTPROC_FOUND) ++IF (SWSCALE_FOUND) ++ include_directories(${SWSCALE_INCLUDE_DIRS}) ++ENDIF (SWSCALE_FOUND) ++IF (SWRESAMPLE_FOUND) ++ include_directories(${SWRESAMPLE_INCLUDE_DIRS}) ++ENDIF (SWRESAMPLE_FOUND) ++IF (AVRESAMPLE_FOUND) ++ include_directories(${AVRESAMPLE_INCLUDE_DIRS}) ++ENDIF (AVRESAMPLE_FOUND) + + ################# LIBOPENSHOT-AUDIO ################### + # Find JUCE-based openshot Audio libraries + + +From e9e85cdfd036587adb86341f7f81619dc69f102c Mon Sep 17 00:00:00 2001 +From: "FeRD (Frank Dana)" <ferdnyc@gmail.com> +Date: Mon, 17 Sep 2018 19:23:25 -0400 +Subject: [PATCH] Use system jsoncpp in tests, too + +The tests/ build needs to use the same jsoncpp as the src/ build, +or tests in Clip_Tests.cpp can fail. +--- + tests/CMakeLists.txt | 10 ++++++++-- + 1 file changed, 8 insertions(+), 2 deletions(-) + +diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt +index 4df8464..a1a0356 100644 +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -180,12 +180,18 @@ endif(OPENMP_FOUND) + # Find ZeroMQ library (used for socket communication & logging) + FIND_PACKAGE(ZMQ REQUIRED) + +-# Include FFmpeg headers (needed for compile) ++# Include ZeroMQ headers (needed for compile) + include_directories(${ZMQ_INCLUDE_DIRS}) + + ################### JSONCPP ##################### + # Include jsoncpp headers (needed for JSON parsing) +-include_directories("../thirdparty/jsoncpp/include") ++if (USE_SYSTEM_JSONCPP) ++ find_package(JsonCpp REQUIRED) ++ include_directories(${JSONCPP_INCLUDE_DIRS}) ++else() ++ message("Using embedded JsonCpp") ++ include_directories("../thirdparty/jsoncpp/include") ++endif(USE_SYSTEM_JSONCPP) + + IF (NOT DISABLE_TESTS) + ############### SET TEST SOURCE FILES ################# diff --git a/gnu/packages/patches/lirc-reproducible-build.patch b/gnu/packages/patches/lirc-reproducible-build.patch new file mode 100644 index 0000000000..20f9344715 --- /dev/null +++ b/gnu/packages/patches/lirc-reproducible-build.patch @@ -0,0 +1,72 @@ +Build Lirc reproducibly. + +https://sourceforge.net/p/lirc/tickets/301/ +https://sourceforge.net/p/lirc/git/merge-requests/33/ +https://sourceforge.net/p/lirc/git/merge-requests/34/ +https://sourceforge.net/p/lirc/git/merge-requests/36/ + +Index: lirc-0.10.1/tools/lirc-lsplugins.cpp +=================================================================== +--- lirc-0.10.1.orig/tools/lirc-lsplugins.cpp ++++ lirc-0.10.1/tools/lirc-lsplugins.cpp +@@ -415,10 +415,9 @@ static void print_header(void) + static void print_yaml_header(void) + { + static const char* const YAML_HEADER = +- "#\n# Generated by lirc-lsplugins --yaml (%s) at %s#\n "; +- const time_t now = time(NULL); ++ "#\n# Generated by lirc-lsplugins --yaml (%s)#\n "; + +- printf(YAML_HEADER, VERSION, ctime(&now)); ++ printf(YAML_HEADER, VERSION); + printf("\ndrivers:\n"); + } + +Index: lirc-0.10.1/python-pkg/lirc/database.py +=================================================================== +--- lirc-0.10.1.orig/python-pkg/lirc/database.py ++++ lirc-0.10.1/python-pkg/lirc/database.py +@@ -156,7 +156,7 @@ class Database(object): + d['device_hint'] = hint + + configs = {} +- for path in glob.glob(configdir + '/*.conf'): ++ for path in sorted(glob.glob(configdir + '/*.conf')): + with open(path) as f: + cf = yaml.load(f.read()) + configs[cf['config']['id']] = cf['config'] +Index: lirc-0.10.1/tools/irdb-get +=================================================================== +--- lirc-0.10.1.orig/tools/irdb-get ++++ lirc-0.10.1/tools/irdb-get +@@ -9,7 +9,6 @@ import fnmatch + import os + import os.path + import sys +-import time + import urllib.error # pylint: disable=no-name-in-module,F0401,E0611 + import urllib.request # pylint: disable=no-name-in-module,F0401,E0611 + +@@ -193,7 +192,7 @@ def do_yaml_config(): + lircmd_by_driver[driver].append("%s/%s" % (tokens[0], tokens[2])) + + print("#") +- print("# Created by 'irdb-get yaml-config' at " + time.ctime()) ++ print("# Created by 'irdb-get yaml-config'") + print("#") + print("\nlircd_by_driver:") + print_yaml_dict(lircd_by_driver) +Index: lirc-0.10.1/tools/lirc-make-devinput +=================================================================== +--- lirc-0.10.1.orig/tools/lirc-make-devinput ++++ lirc-0.10.1/tools/lirc-make-devinput +@@ -61,8 +61,7 @@ if test -n "$lirc_map"; then + fi + + +-echo "# Generated by $(basename $0) on $(uname -r)" +-echo "# Date: $(date)" ++echo "# Generated by $(basename $0)" + cat <<EOF + + begin remote diff --git a/gnu/packages/patches/mailutils-uninitialized-memory.patch b/gnu/packages/patches/mailutils-uninitialized-memory.patch deleted file mode 100644 index ef4daf94cb..0000000000 --- a/gnu/packages/patches/mailutils-uninitialized-memory.patch +++ /dev/null @@ -1,87 +0,0 @@ -Without this patch, the MH test suite would fail when building with -glibc 2.26, with 'ali' segfaulting like this: - - Core was generated by `/tmp/guix-build-mailutils-3.4.drv-0/mailutils-3.4/mh/.libs/ali -a ./Mail/mh_ali'. - Program terminated with signal SIGSEGV, Segmentation fault. - #0 0x00007f8eac263a14 in hash ( - name=0x72642e342e332d73 <error: Cannot access memory at address 0x72642e342e332d73>, hash_num=0) at assoc.c:102 - 102 for (i = 0; *name; name++) - (gdb) bt - #0 0x00007f8eac263a14 in hash ( - name=0x72642e342e332d73 <error: Cannot access memory at address 0x72642e342e332d73>, hash_num=0) at assoc.c:102 - #1 0x00007f8eac263e6b in assoc_find_slot (assoc=0xaa59e0, - name=0x72642e342e332d73 <error: Cannot access memory at address 0x72642e342e332d73>, install=0x0, slot=0x7ffcddcbf2b8) at assoc.c:219 - #2 0x00007f8eac264124 in mu_assoc_lookup (assoc=0xaa59e0, - name=0x72642e342e332d73 <error: Cannot access memory at address 0x72642e342e332d73>, dataptr=0x7ffcddcbf2e0) at assoc.c:308 - #3 0x00007f8eac29e8ac in mu_ident_deref ( - name=0x72642e342e332d73 <error: Cannot access memory at address 0x72642e342e332d73>) at ident.c:98 - #4 0x00007f8eac29f8a6 in mu_locus_point_deinit (pt=0xaa5718) at locus.c:48 - #5 0x00007f8eac29fa1b in mu_locus_range_deinit (lr=0xaa5718) at locus.c:99 - #6 0x00007f8eac29f9db in mu_locus_range_copy (dest=0xaa5718, - src=0x622be0 <ali_yylloc>) at locus.c:89 - #7 0x0000000000408a2a in push_source (name=0xaa74bc "mh_aliases2", fail=1) - at mh_alias_lex.l:170 - -commit b330af9008e4c9168b379867b854f5900a539ad7 -Author: Sergey Poznyakoff <gray@gnu.org> -Date: Sat Nov 18 10:15:48 2017 +0200 - - Fix the use of uninitialized memory - - * mh/mh_alias_lex.l (push_source): Initialize locus range prior to copying - to it. - * libmailutils/cfg/parser.y (mu_cfg_tree_create_node): Likewise. - * libmu_sieve/util.c: (mu_sieve_value_create): Likewise. - -diff --git a/libmailutils/cfg/parser.y b/libmailutils/cfg/parser.y -index 4503c7781..3436b8d90 100644 ---- a/libmailutils/cfg/parser.y -+++ b/libmailutils/cfg/parser.y -@@ -1134,10 +1134,9 @@ mu_cfg_tree_create_node (struct mu_cfg_tree *tree, - - np = mu_alloc (size); - np->type = type; -+ mu_locus_range_init (&np->locus); - if (loc) - mu_locus_range_copy (&np->locus, loc); -- else -- memset (&np->locus, 0, sizeof np->locus); - p = (char*) (np + 1); - np->tag = p; - strcpy (p, tag); -diff --git a/libmu_sieve/sieve-lex.l b/libmu_sieve/sieve-lex.l -index fd145bfe1..f14e80194 100644 ---- a/libmu_sieve/sieve-lex.l -+++ b/libmu_sieve/sieve-lex.l -@@ -190,6 +190,7 @@ push_source (const char *name) - { - ctx = mu_sieve_malloc (mu_sieve_machine, sizeof (*ctx)); - ctx->trk = trk; -+ mu_locus_range_init (&ctx->incl_range); - mu_locus_range_copy (&ctx->incl_range, &yylloc); - ctx->i_node = sieve_source_inode; - ctx->input = input_stream; -diff --git a/libmu_sieve/util.c b/libmu_sieve/util.c -index 8d62a60c2..7d71b5509 100644 ---- a/libmu_sieve/util.c -+++ b/libmu_sieve/util.c -@@ -55,6 +55,7 @@ mu_sieve_value_create (mu_sieve_machine_t mach, mu_sieve_data_type type, - val->locus.end.mu_line = locus->end.mu_line; - val->locus.end.mu_col = locus->end.mu_col; - -+ mu_locus_range_init (&val->locus); - mu_locus_range_copy (&val->locus, locus); - switch (type) - { -diff --git a/mh/mh_alias_lex.l b/mh/mh_alias_lex.l -index 371353ed3..b97264b38 100644 ---- a/mh/mh_alias_lex.l -+++ b/mh/mh_alias_lex.l -@@ -167,6 +167,7 @@ push_source (const char *name, int fail) - { - ctx = mu_alloc (sizeof (*ctx)); - ctx->trk = trk; -+ mu_locus_range_init (&ctx->incl_range); - mu_locus_range_copy (&ctx->incl_range, &yylloc); - ctx->exec_p = exec_p; - ctx->i_node = ali_source_inode; diff --git a/gnu/packages/patches/meandmyshadow-define-paths-earlier.patch b/gnu/packages/patches/meandmyshadow-define-paths-earlier.patch new file mode 100644 index 0000000000..505cbd23fe --- /dev/null +++ b/gnu/packages/patches/meandmyshadow-define-paths-earlier.patch @@ -0,0 +1,50 @@ +From: Tobias Geerinckx-Rice <me@tobias.gr> +Date: Wed, 31 Oct 2018 02:24:26 +0100 +Subject: [PATCH] gnu: meandmyshadow: Define paths earlier. + +The following patch was taken verbatim from the upstream repository[0] +and will be included in the next release. + +[0]: https://github.com/acmepjz/meandmyshadow/pull/29 +--- +From 4847e6b5755258a1e0534f2d4b91dce2ce3b459e Mon Sep 17 00:00:00 2001 +From: Dmitry Marakasov <amdmi3@amdmi3.ru> +Date: Wed, 24 Oct 2018 23:31:19 +0300 +Subject: [PATCH] Define paths earlier in CMakeLists.txt + +At the very least, paths should be defined before Configure_File(), otherwise empty DATAROOTDIR is substituted in config.h +--- + CMakeLists.txt | 13 +++++++------ + 1 file changed, 7 insertions(+), 6 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index e79639a..6321d9d 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2,6 +2,13 @@ Project (meandmyshadow) + CMake_Minimum_Required (VERSION 3.1)
+ Set (CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/Modules/")
+
++#Path options
++Set (BINDIR "bin" CACHE STRING "Where to install binaries")
++Set (DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share" CACHE STRING "Sets the root of data directories to a non-default location")
++Set (ICONDIR "${DATAROOTDIR}/icons" CACHE STRING "Sets the icon directory for desktop entry to a non-default location.")
++Set (DESKTOPDIR "${DATAROOTDIR}/applications" CACHE STRING "Sets the desktop file directory for desktop entry to a non-default location.")
++
++#Options
+ Option (DEBUG_MODE "Compile the game with debug mode enabled" OFF)
+ Option (DISABLED_DEBUG_STUFF "Enable this you'll see a lot of annoying script debug messages which will lag the game." OFF)
+
+@@ -164,12 +171,6 @@ Target_Link_Libraries ( + ${LUA_LIBRARIES}
+ )
+
+-#Path options
+-Set (BINDIR "bin" CACHE STRING "Where to install binaries")
+-Set (DATAROOTDIR "${CMAKE_INSTALL_PREFIX}/share" CACHE STRING "Sets the root of data directories to a non-default location")
+-Set (ICONDIR "${DATAROOTDIR}/icons" CACHE STRING "Sets the icon directory for desktop entry to a non-default location.")
+-Set (DESKTOPDIR "${DATAROOTDIR}/applications" CACHE STRING "Sets the desktop file directory for desktop entry to a non-default location.")
+-
+ #Install locations
+ Install (DIRECTORY ${PROJECT_SOURCE_DIR}/data DESTINATION ${DATAROOTDIR}/meandmyshadow/)
+ Install (FILES AUTHORS DESTINATION ${DATAROOTDIR}/meandmyshadow/)
diff --git a/gnu/packages/patches/mono-mdoc-timestamping.patch b/gnu/packages/patches/mono-mdoc-timestamping.patch new file mode 100644 index 0000000000..d5191a93eb --- /dev/null +++ b/gnu/packages/patches/mono-mdoc-timestamping.patch @@ -0,0 +1,15 @@ +--- mono-4.4.1/mcs/class/monodoc/Monodoc/storage/ZipStorage.cs.orig 2018-11-26 22:16:25.008879747 +0100 ++++ mono-4.4.1/mcs/class/monodoc/Monodoc/storage/ZipStorage.cs 2018-11-26 22:21:53.969770985 +0100 +@@ -74,6 +74,12 @@ + id = GetNewCode (); + + ZipEntry entry = new ZipEntry (id); ++ var SOURCE_DATE_EPOCH_string = Environment.GetEnvironmentVariable("SOURCE_DATE_EPOCH"); ++ if (SOURCE_DATE_EPOCH_string != null) ++ { ++ var SOURCE_DATE_EPOCH = Convert.ToInt64(SOURCE_DATE_EPOCH_string); ++ entry.DateTime = new DateTime(SOURCE_DATE_EPOCH, DateTimeKind.Utc); ++ } + zipOutput.PutNextEntry (entry); + } + diff --git a/gnu/packages/patches/myrepos-CVE-2018-7032.patch b/gnu/packages/patches/myrepos-CVE-2018-7032.patch deleted file mode 100644 index ce9493e5f9..0000000000 --- a/gnu/packages/patches/myrepos-CVE-2018-7032.patch +++ /dev/null @@ -1,69 +0,0 @@ -http://source.myrepos.branchable.com/?p=source.git;a=patch;h=40a3df21c73f1bb1b6915cc6fa503f50814664c8 -This can be removed with the next release. It was modified slightly to apply - -From 40a3df21c73f1bb1b6915cc6fa503f50814664c8 Mon Sep 17 00:00:00 2001 -From: Paul Wise <pabs3@bonedaddy.net> -Date: Sun, 11 Feb 2018 21:57:49 +0800 -Subject: [PATCH] Mitigate vulnerabilities caused by some git remotes being - able to execute code - -Set GIT_PROTOCOL_FROM_USER=0 with git versions newer than 2.12. - -Prevent remote websites from causing cloning of local repositories. - -Manually whitelist known-safe protocols (http, https, git, ssh) -when using git versions older than 2.12. - -Fixes: CVE-2018-7032 -Fixes: https://bugs.debian.org/840014 -Suggestions-by: Jakub Wilk <jwilk@jwilk.net> -Reported-by: Jakub Wilk <jwilk@jwilk.net> ---- - webcheckout | 22 +++++++++++++++++++++- - 1 file changed, 21 insertions(+), 1 deletion(-) - -diff --git a/webcheckout b/webcheckout -index e98da5c..de497ba 100755 ---- a/webcheckout -+++ b/webcheckout -@@ -71,6 +71,16 @@ use Getopt::Long; - use warnings; - use strict; - -+# Mitigate some git remote types being dangerous -+my $git_unsafe = 1; -+my $git_version = `git --version`; -+$git_version =~ s{^git version }{}; -+my ($major, $minor) = split(/\./, $git_version); -+if (int($major) >= 2 && int($minor) >= 12) { -+ $ENV{GIT_PROTOCOL_FROM_USER} = 0; -+ $git_unsafe = 0; -+} -+ - # What to download. - my $url; - -@@ -89,7 +99,17 @@ my $destdir; - - # how to perform checkouts - my %handlers=( -- git => sub { doit("git", "clone", shift, $destdir) }, -- svn => sub { doit("svn", "checkout", shift, $destdir) }, -- bzr => sub { doit("bzr", "branch", shift, $destdir) }, -+ git => sub { -+ my $git_url = shift; -+ # Reject unsafe URLs with older versions of git -+ # that do not already check the URL safety. -+ if ($git_unsafe && $git_url !~ m{^(?:(?:https?|git|ssh):[^:]|(?:[-_.A-Za-z0-9]+@)?[-_.A-Za-z0-9]+:(?!:|//))}) { -+ print STDERR "potentially unsafe git URL, may fail, touch local files or execute arbitrary code\n"; -+ return 1; -+ } -+ # Reject cloning local directories too, webcheckout is for remote repos -+ doit(qw(git -c protocol.file.allow=user clone --), $git_url, $destdir) -+ }, -+ svn => sub { doit(qw(svn checkout --), shift, $destdir) }, -+ bzr => sub { doit(qw(bzr branch --), shift, $destdir) }, - ); --- -2.11.0 - diff --git a/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch b/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch index 2056b42356..fd9a4c9401 100644 --- a/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch +++ b/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch @@ -1,16 +1,28 @@ -From 26cac62fe0154cf65c06faaee10805531e9dade8 Mon Sep 17 00:00:00 2001 +From bc3b353cb2f26cf10aa5c5caebddf6d3d5b1e318 Mon Sep 17 00:00:00 2001 From: Julien Lepiller <julien@lepiller.eu> -Date: Wed, 14 Dec 2016 14:14:59 +0100 +Date: Fri, 21 Sep 2018 22:31:29 +0200 Subject: [PATCH] fix camlp4 in another directory --- - Makefile | 11 ++++++----- - configure | 13 ++++++++++++- - myocamlbuild.ml | 2 +- - 3 files changed, 19 insertions(+), 7 deletions(-) + Makefile | 11 ++++++----- + configure | 13 ++++++++++++- + tests/Makefile | 2 +- + tests/camlp4-comments/Makefile | 2 +- + tests/camlp4-exclude-file/Makefile | 2 +- + tests/camlp4-exclude/Makefile | 2 +- + tests/camlp4-instrument-fast/Makefile | 2 +- + tests/camlp4-instrument/Makefile | 2 +- + tests/combine-expr/Makefile | 2 +- + tests/ppx-comments/Makefile | 2 +- + tests/ppx-exclude-file/Makefile | 2 +- + tests/ppx-exclude/Makefile | 2 +- + tests/ppx-instrument-fast/Makefile | 2 +- + tests/ppx-instrument/Makefile | 2 +- + tests/report/Makefile | 2 +- + 15 files changed, 31 insertions(+), 19 deletions(-) diff --git a/Makefile b/Makefile -index 4a8ce17..d94a6d5 100644 +index b0980ee..6697922 100644 --- a/Makefile +++ b/Makefile @@ -25,7 +25,7 @@ PATH_BUILD=$(PATH_BASE)/_build @@ -19,12 +31,12 @@ index 4a8ce17..d94a6d5 100644 PATH_TESTS=$(PATH_BASE)/tests -PATH_INSTALL=$(PATH_OCAML_PREFIX)/lib/ocaml/bisect +PATH_INSTALL=$(PREFIX)/lib/ocaml/bisect - - + + # DEFINITIONS @@ -33,7 +33,8 @@ PATH_INSTALL=$(PATH_OCAML_PREFIX)/lib/ocaml/bisect PROJECT_NAME=bisect - OCAMLBUILD=$(PATH_OCAML_PREFIX)/bin/ocamlbuild + OCAMLBUILD=ocamlbuild OCAMLBUILD_ENV=WARNINGS=$(WARNINGS) PATH_OCAML_PREFIX=$(PATH_OCAML_PREFIX) -OCAMLBUILD_FLAGS=-classic-display -no-links +CAMLP4_INCLUDE=$(shell test -z $(CAMLP4_LIBDIR) || echo "-cflags -I,$(CAMLP4_LIBDIR)") @@ -33,22 +45,22 @@ index 4a8ce17..d94a6d5 100644 MODULES_MLPACK=$(PROJECT_NAME).mlpack MODULES_MLPACK_PP=$(PROJECT_NAME)_pp.mlpack @@ -80,11 +81,11 @@ veryclean: clean - rm -f $(PATH_OCAMLDOC)/*.html $(PATH_OCAMLDOC)/*.css - + rm -f $(PATH_OCAMLDOC)/*.html $(PATH_OCAMLDOC)/*.css + install: FORCE - cp $(PATH_BUILD)/src/report/report.byte $(PATH_OCAML_PREFIX)/bin/bisect-report; \ + cp $(PATH_BUILD)/src/report/report.byte $(PREFIX)/bin/bisect-report; \ - if [ "$(PPX)" = "TRUE" ]; then \ + if [ "$(PPX)" = "TRUE" ]; then \ - cp $(PATH_BUILD)/src/syntax/bisect_ppx.byte $(PATH_OCAML_PREFIX)/bin; \ + cp $(PATH_BUILD)/src/syntax/bisect_ppx.byte $(PREFIX)/bin; \ - fi; \ -- (test -x $(PATH_OCAML_PREFIX)/bin/ocamlopt && cp $(PATH_BUILD)/src/report/report.native $(PATH_OCAML_PREFIX)/bin/bisect-report.opt || true); \ -+ (test -x $(PATH_OCAML_PREFIX)/bin/ocamlopt && cp $(PATH_BUILD)/src/report/report.native $(PREFIX)/bin/bisect-report.opt || true); \ - if [ -x "$(PATH_OCAMLFIND)" ]; then \ - $(PATH_OCAMLFIND) query $(PROJECT_NAME) && $(PATH_OCAMLFIND) remove $(PROJECT_NAME) || true; \ - $(PATH_OCAMLFIND) install $(PROJECT_NAME) META -optional \ + fi; \ +- (which ocamlopt && cp $(PATH_BUILD)/src/report/report.native $(PATH_OCAML_PREFIX)/bin/bisect-report.opt || true); \ ++ (which ocamlopt && cp $(PATH_BUILD)/src/report/report.native $(PREFIX)/bin/bisect-report.opt || true); \ + if [ -x "$(PATH_OCAMLFIND)" ]; then \ + $(PATH_OCAMLFIND) query $(PROJECT_NAME) && $(PATH_OCAMLFIND) remove $(PROJECT_NAME) || true; \ + $(PATH_OCAMLFIND) install $(PROJECT_NAME) META -optional \ diff --git a/configure b/configure -index bb7ebf4..61a3095 100755 +index bb7ebf4..43ef46b 100755 --- a/configure +++ b/configure @@ -21,7 +21,9 @@ @@ -79,47 +91,193 @@ index bb7ebf4..61a3095 100755 ppx='TRUE';; *) - echo "usage: $0 [-ocaml-prefix <path>] [-ocamlfind <path>] [-no-native-dynlink] [-devel]"; -+ echo "usage: $0 [-prefix <path>] [-ocaml-prefix <path>] [-ocamlfind <path>] [-no-native-dynlink] [-devel]"; ++ echo "usage: $0 [-prefix <path>] [-ocaml-prefix <path>] [-camlp4-prefix <path>] [-ocamlfind <path>] [-no-native-dynlink] [-devel]"; exit 1;; esac shift @@ -57,6 +63,9 @@ if [ "$no_camlp4" = "TRUE" -a "$ppx" = "FALSE" ]; then exit 1 fi - + +# prefix default value +test -z $prefix && prefix=$ocaml_prefix + # make options make_quiet=`make -f - <<EOF default: gnumake -@@ -67,11 +76,13 @@ EOF` +@@ -66,7 +75,9 @@ EOF` + # file creation echo "# timestamp: `date`" > Makefile.config ++echo "PREFIX=$prefix" >> Makefile.config echo "PATH_OCAML_PREFIX=$ocaml_prefix" >> Makefile.config +echo "PATH_CAMLP4_PREFIX=$camlp4_prefix" >> Makefile.config echo "PATH_OCAMLFIND=$ocamlfind" >> Makefile.config echo "NATIVE_DYNLINK=$native_dynlink" >> Makefile.config echo "WARNINGS=$devel" >> Makefile.config - echo "NO_CAMLP4=$no_camlp4" >> Makefile.config - echo "PPX=$ppx" >> Makefile.config - echo "MAKE_QUIET=$make_quiet" >> Makefile.config -+echo "PREFIX=$prefix" >> Makefile.config - echo "" >> Makefile.config - echo 'Makefile.config successfully created' -diff --git a/myocamlbuild.ml b/myocamlbuild.ml -index 8aa25fd..09a7d48 100644 ---- a/myocamlbuild.ml -+++ b/myocamlbuild.ml -@@ -70,7 +70,7 @@ let () = - | After_rules -> - let camlp4of = - try -- let path_bin = Filename.concat (Sys.getenv "PATH_OCAML_PREFIX") "bin" in -+ let path_bin = Filename.concat (Sys.getenv "PATH_CAMLP4_PREFIX") "bin" in - Filename.concat path_bin "camlp4of" - with _ -> "camlp4of" in - flag ["ocaml"; "compile"; "pp_camlp4of"] (S[A"-pp"; A camlp4of]); --- -2.7.4 +diff --git a/tests/Makefile b/tests/Makefile +index 1aba27f..9642323 100644 +--- a/tests/Makefile ++++ b/tests/Makefile +@@ -41,7 +41,7 @@ one: FORCE + else \ + echo "Running tests for '$(NAME)'..." | tee -a _log; \ + (cd $(NAME) && \ +- $(MAKE) PATH_OCAML_BIN=$(PATH_OCAML_PREFIX)/bin \ ++ $(MAKE) PATH_OCAML_BIN=$(PATH_OCAML_PREFIX)/bin PATH_CAMLP4_PREFIX=$(PATH_CAMLP4_PREFIX) \ + COMPILER=ocamlc EXECUTABLE=bytecode RUN=./ LIB_EXT=cma EXE_SUFFIX='' \ + REPORT=../../_build/src/report/report.byte && \ + cd ..) || echo '*** error' >> _log; \ +diff --git a/tests/camlp4-comments/Makefile b/tests/camlp4-comments/Makefile +index 33fca72..a918118 100644 +--- a/tests/camlp4-comments/Makefile ++++ b/tests/camlp4-comments/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cmp + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cmp +diff --git a/tests/camlp4-exclude-file/Makefile b/tests/camlp4-exclude-file/Makefile +index ab13983..e2520fa 100644 +--- a/tests/camlp4-exclude-file/Makefile ++++ b/tests/camlp4-exclude-file/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cmp + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude-file exclusions -o $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude-file exclusions -o $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cmp +diff --git a/tests/camlp4-exclude/Makefile b/tests/camlp4-exclude/Makefile +index 18aada4..d71a7bc 100644 +--- a/tests/camlp4-exclude/Makefile ++++ b/tests/camlp4-exclude/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cmp + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude 'f.*' -o $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude 'f.*' -o $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cmp +diff --git a/tests/camlp4-instrument-fast/Makefile b/tests/camlp4-instrument-fast/Makefile +index f60767f..8506e38 100644 +--- a/tests/camlp4-instrument-fast/Makefile ++++ b/tests/camlp4-instrument-fast/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cmp + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo -mode fast $$file -o $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo -mode fast $$file -o $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cmp +diff --git a/tests/camlp4-instrument/Makefile b/tests/camlp4-instrument/Makefile +index 33fca72..a918118 100644 +--- a/tests/camlp4-instrument/Makefile ++++ b/tests/camlp4-instrument/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cmp + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cmp +diff --git a/tests/combine-expr/Makefile b/tests/combine-expr/Makefile +index 46ae9eb..e8e2af2 100644 +--- a/tests/combine-expr/Makefile ++++ b/tests/combine-expr/Makefile +@@ -1,4 +1,4 @@ +-COMPILE_FLAGS=-I ../../_build -pp '$(PATH_OCAML_BIN)/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) ++COMPILE_FLAGS=-I ../../_build -pp '$(PATH_CAMLP4_PREFIX)/bin/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) + + default: clean compile run report + +diff --git a/tests/ppx-comments/Makefile b/tests/ppx-comments/Makefile +index f8c645a..667526f 100644 +--- a/tests/ppx-comments/Makefile ++++ b/tests/ppx-comments/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cm* + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cm* +diff --git a/tests/ppx-exclude-file/Makefile b/tests/ppx-exclude-file/Makefile +index a575a77..0dd1a20 100644 +--- a/tests/ppx-exclude-file/Makefile ++++ b/tests/ppx-exclude-file/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cm* + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -exclude-file exclusions' -dsource $$file 2> $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -exclude-file exclusions' -dsource $$file 2> $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cm* +diff --git a/tests/ppx-exclude/Makefile b/tests/ppx-exclude/Makefile +index a517af4..f502a42 100644 +--- a/tests/ppx-exclude/Makefile ++++ b/tests/ppx-exclude/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cm* + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx "../../_build/src/syntax/bisect_ppx.byte -exclude 'f.*'" -dsource $$file 2> $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx "../../_build/src/syntax/bisect_ppx.byte -exclude 'f.*'" -dsource $$file 2> $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cm* +diff --git a/tests/ppx-instrument-fast/Makefile b/tests/ppx-instrument-fast/Makefile +index da78bb6..1195988 100644 +--- a/tests/ppx-instrument-fast/Makefile ++++ b/tests/ppx-instrument-fast/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cm* + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -mode fast' -dsource $$file 2> $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -mode fast' -dsource $$file 2> $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cm* +diff --git a/tests/ppx-instrument/Makefile b/tests/ppx-instrument/Makefile +index f8c645a..667526f 100644 +--- a/tests/ppx-instrument/Makefile ++++ b/tests/ppx-instrument/Makefile +@@ -2,7 +2,7 @@ default: + @rm -fr *.result *.cm* + @for file in *.ml; do \ + echo " testing '$$file' ..."; \ +- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ ++ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ + diff -q $$file.reference $$file.result || exit 1; \ + done + @rm -fr *.result *.cm* +diff --git a/tests/report/Makefile b/tests/report/Makefile +index a7ffe44..a968bf9 100644 +--- a/tests/report/Makefile ++++ b/tests/report/Makefile +@@ -1,4 +1,4 @@ +-COMPILE_FLAGS=-I ../../_build -pp '$(PATH_OCAML_BIN)/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) ++COMPILE_FLAGS=-I ../../_build -pp '$(PATH_CAMLP4_PREFIX)/bin/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) + XMLLINT=$(shell which xmllint) + + default: clean compile run report +-- +2.18.0 diff --git a/gnu/packages/patches/openjdk-10-idlj-reproducibility.patch b/gnu/packages/patches/openjdk-10-idlj-reproducibility.patch new file mode 100644 index 0000000000..b29a06f272 --- /dev/null +++ b/gnu/packages/patches/openjdk-10-idlj-reproducibility.patch @@ -0,0 +1,36 @@ +From a0a0c6a43b88d946f2b5484892cf0209bd7c0e68 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com> +Date: Sat, 8 Dec 2018 21:25:31 +0100 +Subject: [PATCH] Make idlj respect SOURCE_DATE_EPOCH. + +--- + .../sun/tools/corba/se/idl/toJavaPortable/Util.java | 13 ++++++++++++- + 1 file changed, 12 insertions(+), 1 deletion(-) + +diff --git a/src/java.corba/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/Util.java b/src/java.corba/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/Util.java +index 7397619f2..583d6b8e4 100644 +--- a/src/java.corba/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/Util.java ++++ b/src/java.corba/share/classes/com/sun/tools/corba/se/idl/toJavaPortable/Util.java +@@ -1146,7 +1146,18 @@ public class Util extends com.sun.tools.corba.se.idl.Util + else + formatter.setTimeZone (java.util.TimeZone.getDefault ()); + +- stream.println ("* " + formatter.format (new Date ())); ++ try { ++ String epoch = System.getenv("SOURCE_DATE_EPOCH"); ++ if(epoch != null) { ++ long unixTime = Long.parseLong(epoch); ++ stream.println ("* " + formatter.format (new Date (unixTime*1000L))); ++ } else { ++ stream.println ("* " + formatter.format (new Date ())); ++ } ++ } catch (Exception e) { ++ //in case of error fall back to default ++ stream.println ("* " + formatter.format (new Date ())); ++ } + + // <daz> + /////////////// +-- +2.19.2 + diff --git a/gnu/packages/patches/patchutils-test-perms.patch b/gnu/packages/patches/patchutils-test-perms.patch new file mode 100644 index 0000000000..c7652b9af2 --- /dev/null +++ b/gnu/packages/patches/patchutils-test-perms.patch @@ -0,0 +1,14 @@ +Need to mark one of the tests as PHONY to get permissions set correctly on +built scripts. + +--- a/Makefile.in 2011-02-10 09:44:43.000000000 -0600 ++++ b/Makefile.in 2018-11-29 21:52:05.000000000 -0600 +@@ -1106,5 +1108,6 @@ + rm -f $(DESTDIR)$(bindir)/"`echo lsdiff|sed '$(transform)'`" + rm -f $(DESTDIR)$(bindir)/"`echo grepdiff|sed '$(transform)'`" + ++.PHONY: tests/newline1/run-test + tests/newline1/run-test: src/combinediff$(EXEEXT) src/flipdiff$(EXEEXT) \ + src/lsdiff$(EXEEXT) src/grepdiff$(EXEEXT) \ + scripts/splitdiff + diff --git a/gnu/packages/patches/patchutils-xfail-gendiff-tests.patch b/gnu/packages/patches/patchutils-xfail-gendiff-tests.patch deleted file mode 100644 index b2e77d22f2..0000000000 --- a/gnu/packages/patches/patchutils-xfail-gendiff-tests.patch +++ /dev/null @@ -1,26 +0,0 @@ -The gendiff1 and gendiff2 tests need the gendiff script that's distributed -with the rpm package management tool. Without that script, these tests are -expected to fail. - -Need to mark one of the tests as PHONY to get permissions set correctly on -built scripts. - ---- a/Makefile.in 2011-02-10 09:44:43.000000000 -0600 -+++ b/Makefile.in 2014-03-06 17:27:55.610048953 -0600 -@@ -378,6 +378,8 @@ - # These ones don't work yet. - # Feel free to send me patches. :-) - XFAIL_TESTS = \ -+ tests/gendiff1/run-test \ -+ tests/gendiff2/run-test \ - tests/delhunk5/run-test \ - tests/delhunk6/run-test - -@@ -1106,6 +1108,7 @@ - rm -f $(DESTDIR)$(bindir)/"`echo lsdiff|sed '$(transform)'`" - rm -f $(DESTDIR)$(bindir)/"`echo grepdiff|sed '$(transform)'`" - -+.PHONY: tests/combine1/run-test - tests/combine1/run-test: src/combinediff$(EXEEXT) src/flipdiff$(EXEEXT) \ - src/lsdiff$(EXEEXT) src/grepdiff$(EXEEXT) - for script in $(bin_SCRIPTS); do \ diff --git a/gnu/packages/patches/pinentry-efl.patch b/gnu/packages/patches/pinentry-efl.patch new file mode 100644 index 0000000000..5ba79e28df --- /dev/null +++ b/gnu/packages/patches/pinentry-efl.patch @@ -0,0 +1,798 @@ +https://git.gnupg.org/cgi-bin/gitweb.cgi?p=pinentry.git;a=commit;h=948105b7a34ec9a9e5479d376b7c86bafee50a01 +This patch can be removed with the next release of pinentry. + +From 948105b7a34ec9a9e5479d376b7c86bafee50a01 Mon Sep 17 00:00:00 2001 +From: "William L. Thomson Jr" <wlt@o-sinc.com> +Date: Tue, 29 May 2018 22:50:47 +0100 +Subject: [PATCH] efl: Add an EFL-based pinentry. + +* NEWS: Update. +* Makefile.am: Add new efl subdirectory. +* configure.ac: Add --enable-pinentry-efl option. +* efl/Makefile.am: New file. +* efl/pinentry-efl.c: New file. + +Signed-off-by: Damien Goutte-Gattat <dgouttegattat@incenp.org> +--- + Makefile.am | 8 +- + configure.ac | 44 +++- + efl/Makefile.am | 38 ++++ + efl/pinentry-efl.c | 623 +++++++++++++++++++++++++++++++++++++++++++++++++++++ + 6 files changed, 716 insertions(+), 2 deletions(-) + create mode 100644 efl/Makefile.am + create mode 100644 efl/pinentry-efl.c + +diff --git a/Makefile.am b/Makefile.am +index 8c8b8e5..b8fd0e1 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -82,10 +82,16 @@ else + pinentry_fltk = + endif + ++if BUILD_PINENTRY_EFL ++pinentry_efl = efl ++else ++pinentry_efl = ++endif ++ + SUBDIRS = m4 secmem pinentry ${pinentry_curses} ${pinentry_tty} \ + ${pinentry_emacs} ${pinentry_gtk_2} ${pinentry_gnome_3} \ + ${pinentry_qt} ${pinentry_tqt} ${pinentry_w32} \ +- ${pinentry_fltk} doc ++ ${pinentry_fltk} ${pinentry_efl} doc + + + install-exec-local: +diff --git a/configure.ac b/configure.ac +index ff6c2e0..e305e44 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -419,6 +419,42 @@ fi + + + dnl ++dnl Check for EFL pinentry programs. ++dnl ++AC_ARG_ENABLE(pinentry-efl, ++ AC_HELP_STRING([--enable-pinentry-efl], [build EFL pinentry]), ++ pinentry_efl=$enableval, pinentry_efl=maybe) ++ ++dnl check for pkg-config ++if test "$pinentry_efl" != "no"; then ++ AC_PATH_PROG(PKG_CONFIG, pkg-config, no) ++ if test x"${PKG_CONFIG}" = xno ; then ++ pinentry_efl=no ++ fi ++fi ++ ++if test "$pinentry_efl" != "no"; then ++ AC_MSG_CHECKING([for efl]) ++ "${PKG_CONFIG}" --exists 'elementary >= 1.18' ++ if test $? -ne 0 ; then ++ AC_MSG_RESULT([no]) ++ AC_MSG_WARN([efl >= 1.18 is required for efl pinentry]) ++ pinentry_efl=no ++ else ++ AC_MSG_RESULT([yes]) ++ EFL_CFLAGS=`"${PKG_CONFIG}" --cflags ecore-x elementary` ++ EFL_LIBS=`"${PKG_CONFIG}" --libs ecore-x elementary` ++ AC_SUBST(EFL_CFLAGS) ++ AC_SUBST(EFL_LIBS) ++ if test "$pinentry_efl" != "no" ++ then ++ pinentry_efl=yes ++ fi ++ fi ++fi ++AM_CONDITIONAL(BUILD_PINENTRY_EFL, test "$pinentry_efl" = "yes") ++ ++dnl + dnl Check for GTK+-2 / GNOME3 pinentry programs. + dnl + AC_ARG_ENABLE(pinentry-gtk2, +@@ -645,7 +681,11 @@ else + if test "$pinentry_tqt" = "yes"; then + PINENTRY_DEFAULT=pinentry-tqt + else +- AC_MSG_ERROR([[No pinentry enabled.]]) ++ if test "$pinentry_efl" = "yes"; then ++ PINENTRY_DEFAULT=pinentry-efl ++ else ++ AC_MSG_ERROR([[No pinentry enabled.]]) ++ fi + fi + fi + fi +@@ -721,6 +761,7 @@ secmem/Makefile + pinentry/Makefile + curses/Makefile + tty/Makefile ++efl/Makefile + emacs/Makefile + gtk+-2/Makefile + gnome3/Makefile +@@ -744,6 +785,7 @@ AC_MSG_NOTICE([ + Curses Pinentry ..: $pinentry_curses + TTY Pinentry .....: $pinentry_tty + Emacs Pinentry ...: $pinentry_emacs ++ EFL Pinentry .....: $pinentry_efl + GTK+-2 Pinentry ..: $pinentry_gtk_2 + GNOME 3 Pinentry .: $pinentry_gnome_3 + Qt Pinentry ......: $pinentry_qt $pinentry_qt_lib_version +diff --git a/efl/Makefile.am b/efl/Makefile.am +new file mode 100644 +index 0000000..b986a04 +--- /dev/null ++++ b/efl/Makefile.am +@@ -0,0 +1,38 @@ ++# Makefile.am - PIN entry EFL frontend. ++# Copyright (C) 2017 Obsidian-Studios, Inc. ++# Author William L. Thomson Jr. <wlt@o-sinc.com> ++# ++# This file is part of PINENTRY. ++# ++# PINENTRY 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 2 of the License, or ++# (at your option) any later version. ++# ++# PINENTRY 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, write to the Free Software ++# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA ++ ++## Process this file with automake to produce Makefile.in ++ ++bin_PROGRAMS = pinentry-efl ++ ++if FALLBACK_CURSES ++ncurses_include = $(NCURSES_INCLUDE) ++libcurses = ../pinentry/libpinentry-curses.a $(LIBCURSES) $(LIBICONV) ++else ++ncurses_include = ++libcurses = ++endif ++ ++AM_CPPFLAGS = $(COMMON_CFLAGS) $(EFL_CFLAGS) $(ncurses_include) \ ++ -I$(top_srcdir)/secmem -I$(top_srcdir)/pinentry ++LDADD = ../pinentry/libpinentry.a ../secmem/libsecmem.a \ ++ $(COMMON_LIBS) $(LIBCAP) $(EFL_LIBS) $(libcurses) ++ ++pinentry_efl_SOURCES = pinentry-efl.c +diff --git a/efl/pinentry-efl.c b/efl/pinentry-efl.c +new file mode 100644 +index 0000000..ca99693 +--- /dev/null ++++ b/efl/pinentry-efl.c +@@ -0,0 +1,623 @@ ++/* pinentry-efl.c ++ Copyright (C) 2017 Obsidian-Studios, Inc. ++ Author William L. Thomson Jr. <wlt@o-sinc.com> ++ ++ Based on pinentry-gtk2.c ++ Copyright (C) 1999 Robert Bihlmeyer <robbe@orcus.priv.at> ++ Copyright (C) 2001, 2002, 2007, 2015 g10 Code GmbH ++ Copyright (C) 2004 by Albrecht Dreà <albrecht.dress@arcor.de> ++ ++ pinentry-efl is a pinentry application for the EFL widget set. ++ It tries to follow the Gnome Human Interface Guide as close as ++ possible. ++ ++ 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 2 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, write to the Free Software ++ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. ++ */ ++ ++#ifdef HAVE_CONFIG_H ++#include "config.h" ++#endif ++#include <Elementary.h> ++#include <Ecore_X.h> ++#include <gpg-error.h> ++#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7) ++#pragma GCC diagnostic push ++#pragma GCC diagnostic ignored "-Wstrict-prototypes" ++#endif ++#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 7) ++#pragma GCC diagnostic pop ++#endif ++ ++#ifdef HAVE_GETOPT_H ++#include <getopt.h> ++#else ++#include "getopt.h" ++#endif /* HAVE_GETOPT_H */ ++ ++#include "pinentry.h" ++ ++#ifdef FALLBACK_CURSES ++#include "pinentry-curses.h" ++#endif ++ ++#define PGMNAME "pinentry-efl" ++ ++#ifndef VERSION ++#define VERSION ++#endif ++ ++#define ENTRY_HIDE "Hide entry" ++#define ENTRY_SHOW "Show entry" ++ ++typedef enum { CONFIRM_CANCEL, CONFIRM_OK, CONFIRM_NOTOK } confirm_value_t; ++ ++static const int WIDTH = 480; ++static const int BUTTON_HEIGHT = 27; ++static const int BUTTON_WIDTH = 70; ++static const int BUTTON_ICON_SIZE = 13; ++static const int PADDING = 5; ++ ++static Eina_Bool got_input; ++static Ecore_Timer *timer; ++static Evas_Object *check_label; ++static Evas_Object *error_label; ++static Evas_Object *entry; ++static Evas_Object *repeat_entry; ++static Evas_Object *qualitybar; ++static Evas_Object *win; ++static char **pargv; ++static int grab_failed; ++static int passphrase_ok; ++static int confirm_mode; ++static int pargc; ++static confirm_value_t confirm_value; ++static pinentry_t pinentry; ++ ++pinentry_cmd_handler_t pinentry_cmd_handler; ++ ++static void ++quit (void) ++{ ++ evas_object_del(win); ++ elm_exit(); ++ ecore_main_loop_quit (); ++} ++ ++static void ++delete_event (void *data EINA_UNUSED, ++ Evas_Object *obj EINA_UNUSED, ++ void *event EINA_UNUSED) ++{ ++ pinentry->close_button = 1; ++ quit (); ++} ++ ++static void ++changed_text_handler (void *data EINA_UNUSED, ++ Evas_Object *obj, ++ void *event EINA_UNUSED) ++{ ++ const char *s; ++ int length; ++ int percent; ++ ++ got_input = EINA_TRUE; ++ ++ if (pinentry->repeat_passphrase && repeat_entry) ++ { ++ elm_object_text_set (repeat_entry, ""); ++ elm_object_text_set (error_label, ""); ++ } ++ ++ if (!qualitybar || !pinentry->quality_bar) ++ return; ++ ++ s = elm_object_text_get (obj); ++ if (!s) ++ s = ""; ++ length = strlen (s); ++ percent = length? pinentry_inq_quality (pinentry, s, length) : 0; ++ evas_object_color_set(qualitybar, ++ 255 - ( 2.55 * percent ), ++ 2.55 * percent, 0, 255); ++ elm_progressbar_value_set (qualitybar, (double) percent / 100.0); ++} ++ ++static void ++on_check (void *data EINA_UNUSED, Evas_Object *obj, void *event EINA_UNUSED) ++{ ++ if(elm_check_state_get(obj)) ++ { ++ elm_entry_password_set(entry, EINA_FALSE); ++ elm_object_text_set(check_label,ENTRY_HIDE); ++ } ++ else ++ { ++ elm_entry_password_set(entry, EINA_TRUE); ++ elm_object_text_set(check_label,ENTRY_SHOW); ++ } ++ evas_object_size_hint_min_set(check_label, ++ ELM_SCALE_SIZE(BUTTON_WIDTH), ++ ELM_SCALE_SIZE(BUTTON_HEIGHT)); ++ evas_object_size_hint_align_set(check_label, 0, 1); ++} ++ ++static void ++on_click (void *data, Evas_Object *obj EINA_UNUSED, void *event EINA_UNUSED) ++{ ++ if (confirm_mode) ++ { ++ confirm_value = (confirm_value_t) data; ++ quit (); ++ return; ++ } ++ ++ if (data) ++ { ++ const char *s; ++ const char *s2; ++ ++ s = elm_entry_entry_get (entry); ++ if (!s) ++ s = ""; ++ ++ if (pinentry->repeat_passphrase && repeat_entry) ++ { ++ s2 = elm_entry_entry_get (repeat_entry); ++ if (!s2) ++ s2 = ""; ++ if (strcmp (s, s2)) ++ { ++ elm_object_text_set(error_label, ++ pinentry->repeat_error_string? ++ pinentry->repeat_error_string: ++ "not correctly repeated"); ++ elm_object_focus_set(entry,EINA_TRUE); ++ return; ++ } ++ pinentry->repeat_okay = 1; ++ } ++ ++ passphrase_ok = 1; ++ pinentry_setbufferlen (pinentry, strlen (s) + 1); ++ if (pinentry->pin) ++ strncpy (pinentry->pin, s, strlen(s) + 1); ++ } ++ quit (); ++} ++ ++static void ++enter_callback (void *data, Evas_Object * obj, void *event_info EINA_UNUSED) ++{ ++ if (data) ++ elm_object_focus_set (data, 1); ++ else ++ on_click ((void *) CONFIRM_OK, obj, NULL); ++} ++ ++static Eina_Bool ++timeout_cb (const void * data) ++{ ++ pinentry_t pe = (pinentry_t)data; ++ if (!got_input) ++ { ++ ecore_main_loop_quit(); ++ if (pe) ++ pe->specific_err = gpg_error (GPG_ERR_TIMEOUT); ++ } ++ ++ timer = NULL; ++ return ECORE_CALLBACK_DONE; ++} ++ ++static void ++create_window (void) ++{ ++ char *txt; ++ Evas_Object *icon; ++ Evas_Object *obj; ++ Evas_Object *table; ++ int btn_txt_len = 0; ++ int row = 0; ++ int ok_len = 0; ++ ++ win = elm_win_util_dialog_add(NULL,"pinentry","enter pin"); ++ elm_win_autodel_set(win, EINA_TRUE); ++ elm_win_center(win,EINA_TRUE,EINA_TRUE); ++ evas_object_smart_callback_add(win, "delete,request", delete_event, NULL); ++ ++ table = elm_table_add(win); ++ elm_table_padding_set(table,ELM_SCALE_SIZE(PADDING),0); ++ evas_object_size_hint_padding_set (table, ++ ELM_SCALE_SIZE(PADDING), ++ ELM_SCALE_SIZE(PADDING), ++ ELM_SCALE_SIZE(PADDING), ++ ELM_SCALE_SIZE(PADDING)); ++ evas_object_show(table); ++ ++ if (pinentry->title) ++ { ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, ++ pinentry->title); ++ elm_win_title_set ( win, txt ); ++ free (txt); ++ } ++ ++ /* Description Label */ ++ if (pinentry->description) ++ { ++ char* aligned; ++ int len; ++ ++ obj = elm_label_add(table); ++ elm_label_line_wrap_set (obj, ELM_WRAP_WORD); ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, pinentry->description); ++ len = strlen(txt)+20; // 20 chars for align tag ++ aligned = calloc(len+1,sizeof(char)); ++ if(aligned) ++ { ++ snprintf(aligned,len, "<align=left>%s</align>",txt); ++ elm_object_text_set(obj,aligned); ++ free (aligned); ++ } else ++ elm_object_text_set(obj,txt); ++ free (txt); ++ evas_object_size_hint_weight_set(obj, EVAS_HINT_EXPAND, 0); ++ evas_object_size_hint_align_set(obj, EVAS_HINT_FILL, 0); ++ elm_table_pack(table, obj, 1, row, 5, 1); ++ evas_object_show(obj); ++ row++; ++ } ++ if (!confirm_mode && (pinentry->error || pinentry->repeat_passphrase)) ++ { ++ /* Error Label */ ++ if (pinentry->error) ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, pinentry->error); ++ else ++ txt = ""; ++ obj = elm_label_add(table); ++ evas_object_color_set(obj, 255, 0, 0, 255); ++ elm_object_text_set(obj,txt); ++ elm_object_style_set(obj,"slide_bounce"); ++ elm_label_slide_duration_set(obj, 10); ++ elm_label_slide_mode_set(obj, ELM_LABEL_SLIDE_MODE_ALWAYS); ++ elm_label_slide_go(obj); ++ evas_object_size_hint_weight_set(obj, EVAS_HINT_EXPAND, 0); ++ evas_object_size_hint_align_set(obj, EVAS_HINT_FILL, 0); ++ elm_table_pack(table, obj, 1, row, 5, 1); ++ evas_object_show(obj); ++ if (pinentry->error) ++ free (txt); ++ row++; ++ } ++ ++ qualitybar = NULL; ++ ++ if (!confirm_mode) ++ { ++ ++ if (pinentry->prompt) ++ { ++ /* Entry/Prompt Label */ ++ obj = elm_label_add(table); ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, pinentry->prompt); ++ elm_object_text_set(obj,txt); ++ free (txt); ++ evas_object_size_hint_weight_set(obj, 0, EVAS_HINT_EXPAND); ++ evas_object_size_hint_align_set(obj, 1, EVAS_HINT_FILL); ++ elm_table_pack(table, obj, 1, row, 1, 1); ++ evas_object_show(obj); ++ } ++ ++ entry = elm_entry_add(table); ++ elm_entry_scrollable_set(entry, EINA_TRUE); ++ elm_scroller_policy_set(entry, ++ ELM_SCROLLER_POLICY_OFF, ++ ELM_SCROLLER_POLICY_OFF); ++ elm_entry_password_set(entry, EINA_TRUE); ++ elm_entry_single_line_set(entry, EINA_TRUE); ++ evas_object_size_hint_weight_set(entry, 0, 0); ++ evas_object_size_hint_align_set(entry, EVAS_HINT_FILL, 0); ++ elm_table_pack(table, entry, 2, row, 4, 1); ++ evas_object_smart_callback_add(entry, ++ "changed", ++ changed_text_handler, ++ NULL); ++ evas_object_show(entry); ++ row++; ++ ++ /* Check box */ ++ obj = elm_check_add(table); ++ evas_object_size_hint_align_set(obj, 1, EVAS_HINT_FILL); ++ elm_table_pack(table, obj, 1, row, 1, 1); ++ evas_object_smart_callback_add(obj, "changed", on_check, NULL); ++ evas_object_show(obj); ++ ++ /* Check Label */ ++ check_label = elm_label_add(table); ++ on_check((void *)NULL, obj, (void *)NULL); ++ elm_table_pack(table, check_label, 2, row, 4, 1); ++ evas_object_show(check_label); ++ row++; ++ ++ if (pinentry->quality_bar) ++ { ++ /* Quality Bar Label */ ++ obj = elm_label_add(table); ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, ++ pinentry->quality_bar); ++ elm_object_text_set(obj,txt); ++ free (txt); ++ evas_object_size_hint_weight_set(obj, 0, EVAS_HINT_EXPAND); ++ evas_object_size_hint_align_set(obj, 1, EVAS_HINT_FILL); ++ elm_table_pack(table, obj, 1, row, 1, 1); ++ evas_object_show(obj); ++ ++ qualitybar = elm_progressbar_add(table); ++ evas_object_color_set(qualitybar, 255, 0, 0, 255); ++ evas_object_show(qualitybar); ++ if (pinentry->quality_bar_tt) ++ elm_object_tooltip_text_set (qualitybar, ++ pinentry->quality_bar_tt); ++ evas_object_size_hint_weight_set(qualitybar, EVAS_HINT_EXPAND, 0); ++ evas_object_size_hint_align_set(qualitybar, EVAS_HINT_FILL, 0); ++ elm_table_pack(table, qualitybar, 2, row, 4, 1); ++ row++; ++ } ++ ++ if (pinentry->repeat_passphrase) ++ { ++ /* Repeat Label */ ++ obj = elm_label_add(table); ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, ++ pinentry->repeat_passphrase); ++ elm_object_text_set(obj,txt); ++ free (txt); ++ evas_object_size_hint_weight_set(obj, 0, EVAS_HINT_EXPAND); ++ evas_object_size_hint_align_set(obj, 1, EVAS_HINT_FILL); ++ elm_table_pack(table, obj, 1, row, 1, 1); ++ evas_object_show(obj); ++ ++ repeat_entry = elm_entry_add(table); ++ elm_entry_scrollable_set(repeat_entry, EINA_TRUE); ++ elm_scroller_policy_set(repeat_entry, ++ ELM_SCROLLER_POLICY_OFF, ++ ELM_SCROLLER_POLICY_OFF); ++ elm_entry_password_set(repeat_entry, EINA_TRUE); ++ elm_entry_single_line_set(repeat_entry, EINA_TRUE); ++ evas_object_size_hint_weight_set(repeat_entry, 0, 0); ++ evas_object_size_hint_align_set(repeat_entry, EVAS_HINT_FILL, 0); ++ elm_table_pack(table, repeat_entry, 2, row, 4, 1); ++ evas_object_smart_callback_add (repeat_entry, "activated", ++ enter_callback, NULL); ++ evas_object_show(repeat_entry); ++ evas_object_smart_callback_add (entry, ++ "activated", ++ enter_callback, ++ repeat_entry); ++ evas_object_smart_callback_add(repeat_entry, ++ "activated", ++ on_click, ++ (void *) CONFIRM_OK); ++ row++; ++ } ++ else ++ evas_object_smart_callback_add(entry, ++ "activated", ++ on_click, ++ (void *) CONFIRM_OK); ++ } ++ ++ /* Cancel Button */ ++ if (!pinentry->one_button) ++ { ++ obj = elm_button_add(table); ++ icon = elm_icon_add (table); ++ evas_object_size_hint_aspect_set (icon, EVAS_ASPECT_CONTROL_BOTH, 1, 1); ++ if (elm_icon_standard_set (icon, "dialog-cancel") || ++ elm_icon_standard_set (icon, "window-close")) ++ { ++ evas_object_size_hint_min_set(icon, ++ ELM_SCALE_SIZE(BUTTON_ICON_SIZE), ++ ELM_SCALE_SIZE(BUTTON_ICON_SIZE)); ++ elm_object_part_content_set(obj, "icon", icon); ++ evas_object_show (icon); ++ } ++ else ++ evas_object_del(icon); ++ if (pinentry->cancel || pinentry->default_cancel) ++ { ++ if(pinentry->cancel) ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, pinentry->cancel); ++ else ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, ++ pinentry->default_cancel); ++ if(txt[0]=='_') ++ elm_object_text_set(obj,txt+1); ++ else ++ elm_object_text_set(obj,txt); ++ btn_txt_len = ELM_SCALE_SIZE(strlen(txt) * (PADDING * 1.5)); ++ free (txt); ++ } ++ else ++ elm_object_text_set(obj, "Cancel"); //STOCK_CANCEL ++ evas_object_size_hint_align_set(obj, 0, 0); ++ if(btn_txt_len>ELM_SCALE_SIZE(BUTTON_WIDTH)) ++ evas_object_size_hint_min_set(obj, ++ btn_txt_len, ++ ELM_SCALE_SIZE(BUTTON_HEIGHT)); ++ else ++ evas_object_size_hint_min_set(obj, ++ ELM_SCALE_SIZE(BUTTON_WIDTH), ++ ELM_SCALE_SIZE(BUTTON_HEIGHT)); ++ elm_table_pack(table, obj, 4, row, 1, 1); ++ evas_object_smart_callback_add(obj, ++ "clicked", ++ on_click, ++ (void *) CONFIRM_CANCEL); ++ evas_object_show(obj); ++ } ++ ++ /* OK Button */ ++ obj = elm_button_add(table); ++ icon = elm_icon_add (table); ++ evas_object_size_hint_aspect_set (icon, EVAS_ASPECT_CONTROL_BOTH, 1, 1); ++ if (elm_icon_standard_set (icon, "dialog-ok") || ++ elm_icon_standard_set (icon, "list-add")) ++ { ++ evas_object_size_hint_min_set(icon, ++ ELM_SCALE_SIZE(BUTTON_ICON_SIZE), ++ ELM_SCALE_SIZE(BUTTON_ICON_SIZE)); ++ elm_object_part_content_set(obj, "icon", icon); ++ evas_object_show (icon); ++ } ++ else ++ evas_object_del(icon); ++ if (pinentry->ok || pinentry->default_ok) ++ { ++ if(pinentry->ok) ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, pinentry->ok); ++ else ++ txt = pinentry_utf8_to_local (pinentry->lc_ctype, pinentry->default_ok); ++ if(txt[0]=='_') ++ elm_object_text_set(obj,txt+1); ++ else ++ elm_object_text_set(obj,txt); ++ ok_len = ELM_SCALE_SIZE(strlen(txt) * (PADDING * 1.5)); ++ if(ok_len>btn_txt_len) ++ btn_txt_len = ok_len; ++ free (txt); ++ } ++ else ++ elm_object_text_set(obj,"OK"); //STOCK_OK ++ evas_object_size_hint_align_set(obj, 0, 0); ++ if(btn_txt_len>ELM_SCALE_SIZE(BUTTON_WIDTH)) ++ evas_object_size_hint_min_set(obj, ++ btn_txt_len, ++ ELM_SCALE_SIZE(BUTTON_HEIGHT)); ++ else ++ evas_object_size_hint_min_set(obj, ++ ELM_SCALE_SIZE(BUTTON_WIDTH), ++ ELM_SCALE_SIZE(BUTTON_HEIGHT)); ++ elm_table_pack(table, obj, 5, row, 1, 1); ++ evas_object_smart_callback_add(obj, "clicked", on_click, (void *) CONFIRM_OK); ++ evas_object_show(obj); ++ ++ /* Key/Lock Icon */ ++ obj = elm_icon_add (win); ++ evas_object_size_hint_aspect_set (obj, EVAS_ASPECT_CONTROL_BOTH, 1, 1); ++ if (elm_icon_standard_set (obj, "dialog-password")) ++ { ++ double ic_size = WIDTH/5; ++ if(row==0) ++ ic_size = ic_size/3.5; ++ else if(row<4) ++ ic_size = ic_size - ic_size/row; ++ evas_object_size_hint_min_set(obj, ++ ELM_SCALE_SIZE(ic_size), ++ ELM_SCALE_SIZE(ic_size)); ++ evas_object_size_hint_weight_set(obj, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND); ++ evas_object_size_hint_align_set(obj, EVAS_HINT_FILL, 0.5); ++ elm_table_pack(table, obj, 0, 0, 1, row? row:1); ++ evas_object_show (obj); ++ } ++ else ++ evas_object_del(obj); ++ ++ /* Box for padding */ ++ obj = elm_box_add (win); ++ elm_box_pack_end (obj, table); ++ evas_object_show (obj); ++ ++ elm_win_resize_object_add(win,obj); ++ evas_object_show(win); ++ ++ if(entry) ++ elm_object_focus_set (entry, EINA_TRUE); ++ ++ if (pinentry->timeout > 0) ++ timer = ecore_timer_add (pinentry->timeout, ++ (Ecore_Task_Cb)timeout_cb, ++ pinentry); ++} ++ ++static int ++efl_cmd_handler (pinentry_t pe) ++{ ++ int want_pass = !!pe->pin; ++ ++ got_input = EINA_FALSE; ++ pinentry = pe; ++ confirm_value = CONFIRM_CANCEL; ++ passphrase_ok = 0; ++ confirm_mode = want_pass ? 0 : 1; ++ /* init ecore-x explicitly using DISPLAY since this can launch ++ * from console ++ */ ++ if (pe->display) ++ ecore_x_init (pe->display); ++ elm_init (pargc, pargv); ++ create_window (); ++ ecore_main_loop_begin (); ++ ++ if (timer) ++ { ++ ecore_timer_del (timer); ++ timer = NULL; ++ } ++ ++ if (confirm_value == CONFIRM_CANCEL || grab_failed) ++ pe->canceled = 1; ++ ++ pinentry = NULL; ++ if (want_pass) ++ { ++ if (passphrase_ok && pe->pin) ++ return strlen (pe->pin); ++ else ++ return -1; ++ } ++ else ++ return (confirm_value == CONFIRM_OK) ? 1 : 0; ++} ++ ++int ++main (int argc, char *argv[]) ++{ ++ pinentry_init (PGMNAME); ++ ++#ifdef FALLBACK_CURSES ++ if (pinentry_have_display (argc, argv)) ++ { ++#endif ++ ++ pinentry_cmd_handler = efl_cmd_handler; ++ pargc = argc; ++ pargv = argv; ++ ++#ifdef FALLBACK_CURSES ++ } ++ else ++ { ++ pinentry_cmd_handler = curses_cmd_handler; ++ } ++#endif ++ ++ pinentry_parse_opts (argc, argv); ++ if (pinentry_loop ()) ++ return 1; ++ ++ return 0; ++} +-- +2.8.0.rc3 + diff --git a/gnu/packages/patches/podofo-cmake-3.12.patch b/gnu/packages/patches/podofo-cmake-3.12.patch new file mode 100644 index 0000000000..0a3c19b21a --- /dev/null +++ b/gnu/packages/patches/podofo-cmake-3.12.patch @@ -0,0 +1,19 @@ +The build fails with cmake 3.12.0. This patch will be obsolete with the next +release. + +https://sourceforge.net/p/podofo/tickets/24/attachment/podofo-cmake-3.12.patch + + +--- a/test/TokenizerTest/CMakeLists.txt 2018-07-20 18:26:02.921494293 +0200 ++++ b/test/TokenizerTest/CMakeLists.txt 2018-07-20 18:34:53.727136443 +0200 +@@ -2,10 +2,3 @@ + TARGET_LINK_LIBRARIES(TokenizerTest ${PODOFO_LIB} ${PODOFO_LIB_DEPENDS}) + SET_TARGET_PROPERTIES(TokenizerTest PROPERTIES COMPILE_FLAGS "${PODOFO_CFLAGS}") + ADD_DEPENDENCIES(TokenizerTest ${PODOFO_DEPEND_TARGET}) +- +-# Copy the test samples over to the build tree +-ADD_CUSTOM_COMMAND( +- TARGET TokenizerTest +- POST_BUILD +- COMMAND "${CMAKE_COMMAND}" -E copy_directory "${CMAKE_CURRENT_SOURCE_DIR}/objects" "${CMAKE_CURRENT_BINARY_DIR}/objects" +- ) diff --git a/gnu/packages/patches/polkit-CVE-2018-19788.patch b/gnu/packages/patches/polkit-CVE-2018-19788.patch new file mode 100644 index 0000000000..58cde6c5dc --- /dev/null +++ b/gnu/packages/patches/polkit-CVE-2018-19788.patch @@ -0,0 +1,197 @@ +Fix CVE-2018-19788: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19788 +https://gitlab.freedesktop.org/polkit/polkit/issues/74 + +Patch copied from upstream source repository: + +https://gitlab.freedesktop.org/polkit/polkit/commit/2cb40c4d5feeaa09325522bd7d97910f1b59e379 + +From 2cb40c4d5feeaa09325522bd7d97910f1b59e379 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl> +Date: Mon, 3 Dec 2018 10:28:58 +0100 +Subject: [PATCH] Allow negative uids/gids in PolkitUnixUser and Group objects + +(uid_t) -1 is still used as placeholder to mean "unset". This is OK, since +there should be no users with such number, see +https://systemd.io/UIDS-GIDS#special-linux-uids. + +(uid_t) -1 is used as the default value in class initialization. + +When a user or group above INT32_MAX is created, the numeric uid or +gid wraps around to negative when the value is assigned to gint, and +polkit gets confused. Let's accept such gids, except for -1. + +A nicer fix would be to change the underlying type to e.g. uint32 to +not have negative values. But this cannot be done without breaking the +API, so likely new functions will have to be added (a +polkit_unix_user_new variant that takes a unsigned, and the same for +_group_new, _set_uid, _get_uid, _set_gid, _get_gid, etc.). This will +require a bigger patch. + +Fixes https://gitlab.freedesktop.org/polkit/polkit/issues/74. +--- + src/polkit/polkitunixgroup.c | 15 +++++++++++---- + src/polkit/polkitunixprocess.c | 12 ++++++++---- + src/polkit/polkitunixuser.c | 13 ++++++++++--- + 3 files changed, 29 insertions(+), 11 deletions(-) + +diff --git a/src/polkit/polkitunixgroup.c b/src/polkit/polkitunixgroup.c +index c57a1aa..309f689 100644 +--- a/src/polkit/polkitunixgroup.c ++++ b/src/polkit/polkitunixgroup.c +@@ -71,6 +71,7 @@ G_DEFINE_TYPE_WITH_CODE (PolkitUnixGroup, polkit_unix_group, G_TYPE_OBJECT, + static void + polkit_unix_group_init (PolkitUnixGroup *unix_group) + { ++ unix_group->gid = -1; /* (git_t) -1 is not a valid GID under Linux */ + } + + static void +@@ -100,11 +101,14 @@ polkit_unix_group_set_property (GObject *object, + GParamSpec *pspec) + { + PolkitUnixGroup *unix_group = POLKIT_UNIX_GROUP (object); ++ gint val; + + switch (prop_id) + { + case PROP_GID: +- unix_group->gid = g_value_get_int (value); ++ val = g_value_get_int (value); ++ g_return_if_fail (val != -1); ++ unix_group->gid = val; + break; + + default: +@@ -131,9 +135,9 @@ polkit_unix_group_class_init (PolkitUnixGroupClass *klass) + g_param_spec_int ("gid", + "Group ID", + "The UNIX group ID", +- 0, ++ G_MININT, + G_MAXINT, +- 0, ++ -1, + G_PARAM_CONSTRUCT | + G_PARAM_READWRITE | + G_PARAM_STATIC_NAME | +@@ -166,9 +170,10 @@ polkit_unix_group_get_gid (PolkitUnixGroup *group) + */ + void + polkit_unix_group_set_gid (PolkitUnixGroup *group, +- gint gid) ++ gint gid) + { + g_return_if_fail (POLKIT_IS_UNIX_GROUP (group)); ++ g_return_if_fail (gid != -1); + group->gid = gid; + } + +@@ -183,6 +188,8 @@ polkit_unix_group_set_gid (PolkitUnixGroup *group, + PolkitIdentity * + polkit_unix_group_new (gint gid) + { ++ g_return_val_if_fail (gid != -1, NULL); ++ + return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_GROUP, + "gid", gid, + NULL)); +diff --git a/src/polkit/polkitunixprocess.c b/src/polkit/polkitunixprocess.c +index 972b777..b02b258 100644 +--- a/src/polkit/polkitunixprocess.c ++++ b/src/polkit/polkitunixprocess.c +@@ -159,9 +159,14 @@ polkit_unix_process_set_property (GObject *object, + polkit_unix_process_set_pid (unix_process, g_value_get_int (value)); + break; + +- case PROP_UID: +- polkit_unix_process_set_uid (unix_process, g_value_get_int (value)); ++ case PROP_UID: { ++ gint val; ++ ++ val = g_value_get_int (value); ++ g_return_if_fail (val != -1); ++ polkit_unix_process_set_uid (unix_process, val); + break; ++ } + + case PROP_START_TIME: + polkit_unix_process_set_start_time (unix_process, g_value_get_uint64 (value)); +@@ -239,7 +244,7 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass) + g_param_spec_int ("uid", + "User ID", + "The UNIX user ID", +- -1, ++ G_MININT, + G_MAXINT, + -1, + G_PARAM_CONSTRUCT | +@@ -303,7 +308,6 @@ polkit_unix_process_set_uid (PolkitUnixProcess *process, + gint uid) + { + g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process)); +- g_return_if_fail (uid >= -1); + process->uid = uid; + } + +diff --git a/src/polkit/polkitunixuser.c b/src/polkit/polkitunixuser.c +index 8bfd3a1..234a697 100644 +--- a/src/polkit/polkitunixuser.c ++++ b/src/polkit/polkitunixuser.c +@@ -72,6 +72,7 @@ G_DEFINE_TYPE_WITH_CODE (PolkitUnixUser, polkit_unix_user, G_TYPE_OBJECT, + static void + polkit_unix_user_init (PolkitUnixUser *unix_user) + { ++ unix_user->uid = -1; /* (uid_t) -1 is not a valid UID under Linux */ + unix_user->name = NULL; + } + +@@ -112,11 +113,14 @@ polkit_unix_user_set_property (GObject *object, + GParamSpec *pspec) + { + PolkitUnixUser *unix_user = POLKIT_UNIX_USER (object); ++ gint val; + + switch (prop_id) + { + case PROP_UID: +- unix_user->uid = g_value_get_int (value); ++ val = g_value_get_int (value); ++ g_return_if_fail (val != -1); ++ unix_user->uid = val; + break; + + default: +@@ -144,9 +148,9 @@ polkit_unix_user_class_init (PolkitUnixUserClass *klass) + g_param_spec_int ("uid", + "User ID", + "The UNIX user ID", +- 0, ++ G_MININT, + G_MAXINT, +- 0, ++ -1, + G_PARAM_CONSTRUCT | + G_PARAM_READWRITE | + G_PARAM_STATIC_NAME | +@@ -182,6 +186,7 @@ polkit_unix_user_set_uid (PolkitUnixUser *user, + gint uid) + { + g_return_if_fail (POLKIT_IS_UNIX_USER (user)); ++ g_return_if_fail (uid != -1); + user->uid = uid; + } + +@@ -196,6 +201,8 @@ polkit_unix_user_set_uid (PolkitUnixUser *user, + PolkitIdentity * + polkit_unix_user_new (gint uid) + { ++ g_return_val_if_fail (uid != -1, NULL); ++ + return POLKIT_IDENTITY (g_object_new (POLKIT_TYPE_UNIX_USER, + "uid", uid, + NULL)); +-- +2.18.1 + diff --git a/gnu/packages/patches/poppler-CVE-2018-19149.patch b/gnu/packages/patches/poppler-CVE-2018-19149.patch new file mode 100644 index 0000000000..3641f5f078 --- /dev/null +++ b/gnu/packages/patches/poppler-CVE-2018-19149.patch @@ -0,0 +1,80 @@ +Fix CVE-2018-19149: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-19149 +https://gitlab.freedesktop.org/poppler/poppler/issues/664 + +Patch copied from upstream source repository: + +https://gitlab.freedesktop.org/poppler/poppler/commit/f162ecdea0dda5dbbdb45503c1d55d9afaa41d44 + +From f162ecdea0dda5dbbdb45503c1d55d9afaa41d44 Mon Sep 17 00:00:00 2001 +From: Marek Kasik <mkasik@redhat.com> +Date: Fri, 20 Apr 2018 11:38:13 +0200 +Subject: [PATCH] Fix crash on missing embedded file + +Check whether an embedded file is actually present in the PDF +and show warning in that case. + +https://bugs.freedesktop.org/show_bug.cgi?id=106137 +https://gitlab.freedesktop.org/poppler/poppler/issues/236 +--- + glib/poppler-attachment.cc | 26 +++++++++++++++++--------- + glib/poppler-document.cc | 3 ++- + 2 files changed, 19 insertions(+), 10 deletions(-) + +diff --git a/glib/poppler-attachment.cc b/glib/poppler-attachment.cc +index c6502e9d..11ba5bb5 100644 +--- a/glib/poppler-attachment.cc ++++ b/glib/poppler-attachment.cc +@@ -111,17 +111,25 @@ _poppler_attachment_new (FileSpec *emb_file) + attachment->description = _poppler_goo_string_to_utf8 (emb_file->getDescription ()); + + embFile = emb_file->getEmbeddedFile(); +- attachment->size = embFile->size (); ++ if (embFile != NULL && embFile->streamObject()->isStream()) ++ { ++ attachment->size = embFile->size (); + +- if (embFile->createDate ()) +- _poppler_convert_pdf_date_to_gtime (embFile->createDate (), (time_t *)&attachment->ctime); +- if (embFile->modDate ()) +- _poppler_convert_pdf_date_to_gtime (embFile->modDate (), (time_t *)&attachment->mtime); ++ if (embFile->createDate ()) ++ _poppler_convert_pdf_date_to_gtime (embFile->createDate (), (time_t *)&attachment->ctime); ++ if (embFile->modDate ()) ++ _poppler_convert_pdf_date_to_gtime (embFile->modDate (), (time_t *)&attachment->mtime); + +- if (embFile->checksum () && embFile->checksum ()->getLength () > 0) +- attachment->checksum = g_string_new_len (embFile->checksum ()->getCString (), +- embFile->checksum ()->getLength ()); +- priv->obj_stream = embFile->streamObject()->copy(); ++ if (embFile->checksum () && embFile->checksum ()->getLength () > 0) ++ attachment->checksum = g_string_new_len (embFile->checksum ()->getCString (), ++ embFile->checksum ()->getLength ()); ++ priv->obj_stream = embFile->streamObject()->copy(); ++ } ++ else ++ { ++ g_warning ("Missing stream object for embedded file"); ++ g_clear_object (&attachment); ++ } + + return attachment; + } +diff --git a/glib/poppler-document.cc b/glib/poppler-document.cc +index 83f6aea6..ea319344 100644 +--- a/glib/poppler-document.cc ++++ b/glib/poppler-document.cc +@@ -670,7 +670,8 @@ poppler_document_get_attachments (PopplerDocument *document) + attachment = _poppler_attachment_new (emb_file); + delete emb_file; + +- retval = g_list_prepend (retval, attachment); ++ if (attachment != NULL) ++ retval = g_list_prepend (retval, attachment); + } + return g_list_reverse (retval); + } +-- +2.19.1 + diff --git a/gnu/packages/patches/python-cffi-x87-stack-clean.patch b/gnu/packages/patches/python-cffi-x87-stack-clean.patch new file mode 100644 index 0000000000..50243505ee --- /dev/null +++ b/gnu/packages/patches/python-cffi-x87-stack-clean.patch @@ -0,0 +1,29 @@ +Fix test that fails on i686: + +https://bitbucket.org/cffi/cffi/issues/382 + +This is a squashed version of these commits: +https://bitbucket.org/cffi/cffi/commits/ef09637b2314 +https://bitbucket.org/cffi/cffi/commits/7a76a3815340 + +diff -r 99940f1f5402 testing/cffi0/test_function.py +--- a/testing/cffi0/test_function.py Tue Feb 27 21:18:33 2018 +0100 ++++ b/testing/cffi0/test_function.py Sun Nov 11 16:26:23 2018 +0100 +@@ -45,14 +45,14 @@ + assert x != math.sin(1.23) # rounding effects + assert abs(x - math.sin(1.23)) < 1E-6 + +- def test_sin_no_return_value(self): ++ def test_lround_no_return_value(self): + # check that 'void'-returning functions work too + ffi = FFI(backend=self.Backend()) + ffi.cdef(""" +- void sin(double x); ++ void lround(double x); + """) + m = ffi.dlopen(lib_m) +- x = m.sin(1.23) ++ x = m.lround(1.23) + assert x is None + + def test_dlopen_filename(self): diff --git a/gnu/packages/patches/python-networkx2-reproducible-build.patch b/gnu/packages/patches/python-networkx2-reproducible-build.patch deleted file mode 100644 index 8274767ab8..0000000000 --- a/gnu/packages/patches/python-networkx2-reproducible-build.patch +++ /dev/null @@ -1,29 +0,0 @@ -From c065b972ed294769a41936d6b9feb336473af5d1 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com> -Date: Sat, 4 Nov 2017 15:28:47 +0100 -Subject: Fix SOURCE_DATE_EPOCH ignored bug (#2735) - -* Fix SOURCE_DATE_EPOCH ignored bug - -Fix a bug in networkx/release.py that makes build -non-reproducible. ---- - networkx/release.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/networkx/release.py b/networkx/release.py -index e81fc0c0..6322cf0d 100644 ---- a/networkx/release.py -+++ b/networkx/release.py -@@ -135,7 +135,7 @@ def get_revision(): - - def get_info(dynamic=True): - # Date information -- date_info = datetime.datetime.now() -+ date_info = datetime.datetime.utcfromtimestamp(int(os.environ.get('SOURCE_DATE_EPOCH', time.time()))) - date = time.asctime(date_info.timetuple()) - - revision, version, version_info, vcs_info = None, None, None, None --- -2.14.2 - diff --git a/gnu/packages/patches/python-paste-remove-website-test.patch b/gnu/packages/patches/python-paste-remove-website-test.patch deleted file mode 100644 index 93417fbe75..0000000000 --- a/gnu/packages/patches/python-paste-remove-website-test.patch +++ /dev/null @@ -1,21 +0,0 @@ -Remove the test to see if the Python Paste website is up. - -Obviously without network access there is no way for us to check this, and -it's pretty strange to test a project's website when you really mean to test -the project anyhow... - ---- a/tests/test_proxy.py 2016-02-22 19:13:04.040117767 -0800 -+++ b/tests/test_proxy.py 2016-02-22 19:13:04.040117767 -0800 -@@ -1,12 +1,3 @@ - from paste import proxy - from paste.fixture import TestApp - --def test_paste_website(): -- # Not the most robust test... -- # need to test things like POSTing to pages, and getting from pages -- # that don't set content-length. -- app = proxy.Proxy('http://pythonpaste.org') -- app = TestApp(app) -- res = app.get('/') -- assert 'documentation' in res -- diff --git a/gnu/packages/patches/python-scikit-learn-fix-test-non-determinism.patch b/gnu/packages/patches/python-scikit-learn-fix-test-non-determinism.patch deleted file mode 100644 index 90328cc0eb..0000000000 --- a/gnu/packages/patches/python-scikit-learn-fix-test-non-determinism.patch +++ /dev/null @@ -1,25 +0,0 @@ -This patch stops a test sometimes failing because of non-determinism. See -https://github.com/scikit-learn/scikit-learn/pull/9542 - -From ff9f6db6e8b59c2b3528c8137ed4054f57c1d7c4 Mon Sep 17 00:00:00 2001 -From: Hanmin Qin <qinhanmin2005@sina.com> -Date: Sun, 13 Aug 2017 22:13:49 +0800 -Subject: [PATCH] add random_state - ---- - sklearn/tests/test_kernel_ridge.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/sklearn/tests/test_kernel_ridge.py b/sklearn/tests/test_kernel_ridge.py -index 4750a096ac6..979875870b6 100644 ---- a/sklearn/tests/test_kernel_ridge.py -+++ b/sklearn/tests/test_kernel_ridge.py -@@ -10,7 +10,7 @@ - from sklearn.utils.testing import assert_array_almost_equal - - --X, y = make_regression(n_features=10) -+X, y = make_regression(n_features=10, random_state=0) - Xcsr = sp.csr_matrix(X) - Xcsc = sp.csc_matrix(X) - Y = np.array([y, y]).T diff --git a/gnu/packages/patches/qemu-CVE-2018-16847.patch b/gnu/packages/patches/qemu-CVE-2018-16847.patch new file mode 100644 index 0000000000..c76bdf764a --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2018-16847.patch @@ -0,0 +1,158 @@ +Fix CVE-2018-16847: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16847 + +Patch copied from upstream source repository: + +https://git.qemu.org/?p=qemu.git;a=commitdiff;h=87ad860c622cc8f8916b5232bd8728c08f938fce + +From 87ad860c622cc8f8916b5232bd8728c08f938fce Mon Sep 17 00:00:00 2001 +From: Paolo Bonzini <pbonzini@redhat.com> +Date: Tue, 20 Nov 2018 19:41:48 +0100 +Subject: [PATCH] nvme: fix out-of-bounds access to the CMB +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Because the CMB BAR has a min_access_size of 2, if you read the last +byte it will try to memcpy *2* bytes from n->cmbuf, causing an off-by-one +error. This is CVE-2018-16847. + +Another way to fix this might be to register the CMB as a RAM memory +region, which would also be more efficient. However, that might be a +change for big-endian machines; I didn't think this through and I don't +know how real hardware works. Add a basic testcase for the CMB in case +somebody does this change later on. + +Cc: Keith Busch <keith.busch@intel.com> +Cc: qemu-block@nongnu.org +Reported-by: Li Qiang <liq3ea@gmail.com> +Reviewed-by: Li Qiang <liq3ea@gmail.com> +Tested-by: Li Qiang <liq3ea@gmail.com> +Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> +Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> +Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com> +Signed-off-by: Kevin Wolf <kwolf@redhat.com> +--- + hw/block/nvme.c | 2 +- + tests/Makefile.include | 2 +- + tests/nvme-test.c | 68 +++++++++++++++++++++++++++++++++++------- + 3 files changed, 60 insertions(+), 12 deletions(-) + +diff --git a/hw/block/nvme.c b/hw/block/nvme.c +index 28d284346dd..8c35cab2b43 100644 +--- a/hw/block/nvme.c ++++ b/hw/block/nvme.c +@@ -1201,7 +1201,7 @@ static const MemoryRegionOps nvme_cmb_ops = { + .write = nvme_cmb_write, + .endianness = DEVICE_LITTLE_ENDIAN, + .impl = { +- .min_access_size = 2, ++ .min_access_size = 1, + .max_access_size = 8, + }, + }; +diff --git a/tests/Makefile.include b/tests/Makefile.include +index 613242bc6ef..fb0b449c02a 100644 +--- a/tests/Makefile.include ++++ b/tests/Makefile.include +@@ -730,7 +730,7 @@ tests/test-hmp$(EXESUF): tests/test-hmp.o + tests/machine-none-test$(EXESUF): tests/machine-none-test.o + tests/drive_del-test$(EXESUF): tests/drive_del-test.o $(libqos-virtio-obj-y) + tests/qdev-monitor-test$(EXESUF): tests/qdev-monitor-test.o $(libqos-pc-obj-y) +-tests/nvme-test$(EXESUF): tests/nvme-test.o ++tests/nvme-test$(EXESUF): tests/nvme-test.o $(libqos-pc-obj-y) + tests/pvpanic-test$(EXESUF): tests/pvpanic-test.o + tests/i82801b11-test$(EXESUF): tests/i82801b11-test.o + tests/ac97-test$(EXESUF): tests/ac97-test.o +diff --git a/tests/nvme-test.c b/tests/nvme-test.c +index 7674a446e4f..2700ba838aa 100644 +--- a/tests/nvme-test.c ++++ b/tests/nvme-test.c +@@ -8,25 +8,73 @@ + */ + + #include "qemu/osdep.h" ++#include "qemu/units.h" + #include "libqtest.h" ++#include "libqos/libqos-pc.h" ++ ++static QOSState *qnvme_start(const char *extra_opts) ++{ ++ QOSState *qs; ++ const char *arch = qtest_get_arch(); ++ const char *cmd = "-drive id=drv0,if=none,file=null-co://,format=raw " ++ "-device nvme,addr=0x4.0,serial=foo,drive=drv0 %s"; ++ ++ if (strcmp(arch, "i386") == 0 || strcmp(arch, "x86_64") == 0) { ++ qs = qtest_pc_boot(cmd, extra_opts ? : ""); ++ global_qtest = qs->qts; ++ return qs; ++ } ++ ++ g_printerr("nvme tests are only available on x86\n"); ++ exit(EXIT_FAILURE); ++} ++ ++static void qnvme_stop(QOSState *qs) ++{ ++ qtest_shutdown(qs); ++} + +-/* Tests only initialization so far. TODO: Replace with functional tests */ + static void nop(void) + { ++ QOSState *qs; ++ ++ qs = qnvme_start(NULL); ++ qnvme_stop(qs); + } + +-int main(int argc, char **argv) ++static void nvmetest_cmb_test(void) + { +- int ret; ++ const int cmb_bar_size = 2 * MiB; ++ QOSState *qs; ++ QPCIDevice *pdev; ++ QPCIBar bar; + +- g_test_init(&argc, &argv, NULL); +- qtest_add_func("/nvme/nop", nop); ++ qs = qnvme_start("-global nvme.cmb_size_mb=2"); ++ pdev = qpci_device_find(qs->pcibus, QPCI_DEVFN(4,0)); ++ g_assert(pdev != NULL); ++ ++ qpci_device_enable(pdev); ++ bar = qpci_iomap(pdev, 2, NULL); ++ ++ qpci_io_writel(pdev, bar, 0, 0xccbbaa99); ++ g_assert_cmpint(qpci_io_readb(pdev, bar, 0), ==, 0x99); ++ g_assert_cmpint(qpci_io_readw(pdev, bar, 0), ==, 0xaa99); ++ ++ /* Test partially out-of-bounds accesses. */ ++ qpci_io_writel(pdev, bar, cmb_bar_size - 1, 0x44332211); ++ g_assert_cmpint(qpci_io_readb(pdev, bar, cmb_bar_size - 1), ==, 0x11); ++ g_assert_cmpint(qpci_io_readw(pdev, bar, cmb_bar_size - 1), !=, 0x2211); ++ g_assert_cmpint(qpci_io_readl(pdev, bar, cmb_bar_size - 1), !=, 0x44332211); ++ g_free(pdev); + +- qtest_start("-drive id=drv0,if=none,file=null-co://,format=raw " +- "-device nvme,drive=drv0,serial=foo"); +- ret = g_test_run(); ++ qnvme_stop(qs); ++} + +- qtest_end(); ++int main(int argc, char **argv) ++{ ++ g_test_init(&argc, &argv, NULL); ++ qtest_add_func("/nvme/nop", nop); ++ qtest_add_func("/nvme/cmb_test", nvmetest_cmb_test); + +- return ret; ++ return g_test_run(); + } +-- +2.19.2 + diff --git a/gnu/packages/patches/qemu-CVE-2018-16867.patch b/gnu/packages/patches/qemu-CVE-2018-16867.patch new file mode 100644 index 0000000000..1403d8e0f8 --- /dev/null +++ b/gnu/packages/patches/qemu-CVE-2018-16867.patch @@ -0,0 +1,49 @@ +Fix CVE-2018-16867: + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16867 +https://seclists.org/oss-sec/2018/q4/202 + +Patch copied from upstream source repository: + +https://git.qemu.org/?p=qemu.git;a=commitdiff;h=c52d46e041b42bb1ee6f692e00a0abe37a9659f6 + +From c52d46e041b42bb1ee6f692e00a0abe37a9659f6 Mon Sep 17 00:00:00 2001 +From: Gerd Hoffmann <kraxel@redhat.com> +Date: Mon, 3 Dec 2018 11:10:45 +0100 +Subject: [PATCH] usb-mtp: outlaw slashes in filenames +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Slash is unix directory separator, so they are not allowed in filenames. +Note this also stops the classic escape via "../". + +Fixes: CVE-2018-16867 +Reported-by: Michael Hanselmann <public@hansmi.ch> +Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> +Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> +Message-id: 20181203101045.27976-3-kraxel@redhat.com +--- + hw/usb/dev-mtp.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c +index 0f6a9702ef1..100b7171f4e 100644 +--- a/hw/usb/dev-mtp.c ++++ b/hw/usb/dev-mtp.c +@@ -1719,6 +1719,12 @@ static void usb_mtp_write_metadata(MTPState *s) + + filename = utf16_to_str(dataset->length, dataset->filename); + ++ if (strchr(filename, '/')) { ++ usb_mtp_queue_result(s, RES_PARAMETER_NOT_SUPPORTED, d->trans, ++ 0, 0, 0, 0); ++ return; ++ } ++ + o = usb_mtp_object_lookup_name(p, filename, dataset->length); + if (o != NULL) { + next_handle = o->handle; +-- +2.19.2 + diff --git a/gnu/packages/patches/qt-5-renameat2.patch b/gnu/packages/patches/qt-5-renameat2.patch new file mode 100644 index 0000000000..036070c7ff --- /dev/null +++ b/gnu/packages/patches/qt-5-renameat2.patch @@ -0,0 +1,35 @@ +Avoid conflicting declaration of 'renameat2' on glibc 2.28 +(see <https://github.com/meta-qt5/meta-qt5/issues/94>.) + +Patch from <https://github.com/meta-qt5/meta-qt5/pull/95> +by Andreas Müller <schnitzeltony@gmail.com>. + +--- + src/corelib/io/qfilesystemengine_unix.cpp | 11 ++++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp +index be6ce48d0cb..1bf1bebc7f1 100644 +--- a/qtbase/src/corelib/io/qfilesystemengine_unix.cpp ++++ b/qtbase/src/corelib/io/qfilesystemengine_unix.cpp +@@ -98,6 +98,17 @@ extern "C" NSString *NSTemporaryDirectory(); + # define FICLONE _IOW(0x94, 9, int) + #endif + ++// renameat2/statx features for non bootstrapped build ++#ifndef QT_BOOTSTRAPPED ++#ifdef __GLIBC_PREREQ ++# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1) ++# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1) ++#else ++# define QT_FEATURE_renameat2 -1 ++# define QT_FEATURE_statx -1 ++#endif ++#endif ++ + # if defined(Q_OS_ANDROID) + // renameat2() and statx() are disabled on Android because quite a few systems + // come with sandboxes that kill applications that make system calls outside a +-- +2.14.4 + diff --git a/gnu/packages/patches/qtbase-glibc-compat.patch b/gnu/packages/patches/qtbase-glibc-compat.patch deleted file mode 100644 index 15a2540b3a..0000000000 --- a/gnu/packages/patches/qtbase-glibc-compat.patch +++ /dev/null @@ -1,50 +0,0 @@ -Fix qmake build with glibc 2.28. - -Taken from upstream: -https://code.qt.io/cgit/qt/qtbase.git/commit/?id=25feee4e061b99edab79503d81f5bd045c6c8e3d - -diff --git a/src/corelib/global/qconfig-bootstrapped.h b/src/corelib/global/qconfig-bootstrapped.h -index 3469ebe5e6..c5585ea32a 100644 ---- a/src/corelib/global/qconfig-bootstrapped.h -+++ b/src/corelib/global/qconfig-bootstrapped.h -@@ -98,10 +98,18 @@ - #define QT_NO_QOBJECT - #define QT_FEATURE_process -1 - #define QT_FEATURE_regularexpression -1 --#define QT_FEATURE_renameat2 -1 -+#ifdef __GLIBC_PREREQ -+# define QT_FEATURE_renameat2 (__GLIBC_PREREQ(2, 28) ? 1 : -1) -+#else -+# define QT_FEATURE_renameat2 -1 -+#endif - #define QT_FEATURE_sharedmemory -1 - #define QT_FEATURE_slog2 -1 --#define QT_FEATURE_statx -1 -+#ifdef __GLIBC_PREREQ -+# define QT_FEATURE_statx (__GLIBC_PREREQ(2, 28) ? 1 : -1) -+#else -+# define QT_FEATURE_statx -1 -+#endif - #define QT_FEATURE_syslog -1 - #define QT_NO_SYSTEMLOCALE - #define QT_FEATURE_systemsemaphore -1 -diff --git a/src/corelib/io/qfilesystemengine_unix.cpp b/src/corelib/io/qfilesystemengine_unix.cpp -index 0c9cdb8667..deb4a9f220 100644 ---- a/src/corelib/io/qfilesystemengine_unix.cpp -+++ b/src/corelib/io/qfilesystemengine_unix.cpp -@@ -91,7 +91,6 @@ extern "C" NSString *NSTemporaryDirectory(); - # include <sys/syscall.h> - # include <sys/sendfile.h> - # include <linux/fs.h> --# include <linux/stat.h> - - // in case linux/fs.h is too old and doesn't define it: - #ifndef FICLONE -@@ -112,6 +111,7 @@ static int renameat2(int oldfd, const char *oldpath, int newfd, const char *newp - # endif - - # if !QT_CONFIG(statx) && defined(SYS_statx) -+# include <linux/stat.h> - static int statx(int dirfd, const char *pathname, int flag, unsigned mask, struct statx *statxbuf) - { return syscall(SYS_statx, dirfd, pathname, flag, mask, statxbuf); } - # elif !QT_CONFIG(statx) && !defined(SYS_statx) diff --git a/gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch b/gnu/packages/patches/quilt-getopt-nondigit-param.patch index 6bbec67e75..6bbec67e75 100644 --- a/gnu/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch +++ b/gnu/packages/patches/quilt-getopt-nondigit-param.patch diff --git a/gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch b/gnu/packages/patches/quilt-getopt-second-separator.patch index cde2c8d41c..cde2c8d41c 100644 --- a/gnu/packages/patches/quilt-compat-getopt-fix-second-separator.patch +++ b/gnu/packages/patches/quilt-getopt-second-separator.patch diff --git a/gnu/packages/patches/randomjungle-disable-static-build.patch b/gnu/packages/patches/randomjungle-disable-static-build.patch new file mode 100644 index 0000000000..3de6c269fd --- /dev/null +++ b/gnu/packages/patches/randomjungle-disable-static-build.patch @@ -0,0 +1,14 @@ +Drop build time dependency on the static executables. + +--- a/src/Makefile.in 2018-11-25 20:27:10.691508925 +0100 ++++ b/src/Makefile.in 2018-11-25 20:27:43.565631413 +0100 +@@ -34,8 +34,7 @@ + POST_UNINSTALL = : + build_triplet = @build@ + host_triplet = @host@ +-bin_PROGRAMS = rjungle$(EXEEXT) rjungle_static$(EXEEXT) \ +- rjunglesparse$(EXEEXT) rjunglesparse_static$(EXEEXT) ++bin_PROGRAMS = rjungle$(EXEEXT) rjunglesparse$(EXEEXT) + subdir = src + DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 diff --git a/gnu/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch b/gnu/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch index 6ffc897297..a2bad55117 100644 --- a/gnu/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch +++ b/gnu/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch @@ -1,5 +1,6 @@ GDB responds with some overly detailed lines - which makes the tests fail. Patch rust to accept those instead. +See <https://github.com/rust-lang/rust/issues/54178>. diff -ur orig/rustc-1.25.0-src/src/test/debuginfo/generic-enum-with-different-disr-sizes.rs rustc-1.25.0-src/src/test/debuginfo/generic-enum-with-different-disr-sizes.rs --- orig/rustc-1.25.0-src/src/test/debuginfo/generic-enum-with-different-disr-sizes.rs 2018-09-13 10:24:33.775565159 +0200 +++ rustc-1.25.0-src/src/test/debuginfo/generic-enum-with-different-disr-sizes.rs 2018-09-13 10:25:56.322513658 +0200 @@ -92,3 +93,19 @@ diff -ur orig/rustc-1.25.0-src/src/test/debuginfo/generic-tuple-style-enum.rs ru // gdb-command:print univariant // gdbg-check:$4 = {{__0 = -1}} +--- orig/rustc-1.25.0-src/src/test/debuginfo/nil-enum.rs 2018-09-13 10:24:33.783565071 +0200 ++++ rustc-1.25.0-src/src/test/debuginfo/nil-enum.rs 2018-10-26 18:19:20.404564587 +0200 +@@ -17,11 +17,11 @@ + + // gdb-command:print first + // gdbg-check:$1 = {<No data fields>} +-// gdbr-check:$1 = <error reading variable> ++// gdbr-check:$1 = nil_enum::ANilEnum + + // gdb-command:print second + // gdbg-check:$2 = {<No data fields>} +-// gdbr-check:$2 = <error reading variable> ++// gdbr-check:$2 = nil_enum::AnotherNilEnum + + #![allow(unused_variables)] + #![feature(omit_gdb_pretty_printer_section)] diff --git a/gnu/packages/patches/rust-reproducible-builds.patch b/gnu/packages/patches/rust-reproducible-builds.patch new file mode 100644 index 0000000000..ef7bf53b5d --- /dev/null +++ b/gnu/packages/patches/rust-reproducible-builds.patch @@ -0,0 +1,25 @@ +From b9ca108fcae2b738ca3f0c88c84ae5dc5a6f843f Mon Sep 17 00:00:00 2001 +From: Tim Ryan <id@timryan.org> +Date: Mon, 14 May 2018 06:22:21 -0400 +Subject: [PATCH] Support reproducible builds by forcing window.search to use + stable key ordering. (#692) +See <https://github.com/rust-lang-nursery/mdBook/pull/692> +--- + src/vendor/mdbook/src/renderer/html_handlebars/search.rs | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/src/vendor/mdbook/src/renderer/html_handlebars/search.rs b/src/vendor/mdbook/src/renderer/html_handlebars/search.rs +index d49772f8b..1ee66a511 100644 +--- a/src/vendor/mdbook/src/renderer/html_handlebars/search.rs ++++ b/src/vendor/mdbook/src/renderer/html_handlebars/search.rs +@@ -205,6 +205,10 @@ fn write_to_js(index: Index, search_config: &Search) -> Result<String> { + searchoptions, + index, + }; ++ ++ // By converting to serde_json::Value as an intermediary, we use a ++ // BTreeMap internally and can force a stable ordering of map keys. ++ let json_contents = serde_json::to_value(&json_contents)?; + let json_contents = serde_json::to_string(&json_contents)?; + + Ok(format!("window.search = {};", json_contents)) diff --git a/gnu/packages/patches/scribus-poppler.patch b/gnu/packages/patches/scribus-poppler.patch new file mode 100644 index 0000000000..9b969e4cb6 --- /dev/null +++ b/gnu/packages/patches/scribus-poppler.patch @@ -0,0 +1,72 @@ +Fix build with recent Poppler. + +From d867ec3c386baaed1b8e076dd70b278863411480 Mon Sep 17 00:00:00 2001 +From: Jean Ghali <jghali@libertysurf.fr> +Date: Mon, 30 Apr 2018 09:19:33 +0000 +Subject: [PATCH] =?UTF-8?q?#15289:=20FTBFS=201.5.4=20with=20error:=20inval?= + =?UTF-8?q?id=20conversion=20from=20=E2=80=98const=20GooString*=E2=80=99?= + =?UTF-8?q?=20to=20=E2=80=98GooString*=E2=80=99?= +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +git-svn-id: svn://scribus.net/trunk/Scribus@22498 11d20701-8431-0410-a711-e3c959e3b870 +--- + scribus/plugins/import/pdf/importpdf.cpp | 2 +- + scribus/plugins/import/pdf/importpdf.h | 2 +- + scribus/plugins/import/pdf/slaoutput.cpp | 2 +- + scribus/plugins/import/pdf/slaoutput.h | 2 +- + 4 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/scribus/plugins/import/pdf/importpdf.cpp b/scribus/plugins/import/pdf/importpdf.cpp +index c1802861aa..d4c5a9ba49 100644 +--- a/scribus/plugins/import/pdf/importpdf.cpp ++++ b/scribus/plugins/import/pdf/importpdf.cpp +@@ -1081,7 +1081,7 @@ QRectF PdfPlug::getCBox(int box, int pgNum) + return cRect;
+ }
+
+-QString PdfPlug::UnicodeParsedString(GooString *s1)
++QString PdfPlug::UnicodeParsedString(const GooString *s1)
+ {
+ if ( !s1 || s1->getLength() == 0 )
+ return QString();
+diff --git a/scribus/plugins/import/pdf/importpdf.h b/scribus/plugins/import/pdf/importpdf.h +index c8c5efcd0d..5249562692 100644 +--- a/scribus/plugins/import/pdf/importpdf.h ++++ b/scribus/plugins/import/pdf/importpdf.h +@@ -81,7 +81,7 @@ class PdfPlug : public QObject + private: + bool convert(const QString& fn); + QRectF getCBox(int box, int pgNum); +- QString UnicodeParsedString(GooString *s1); ++ QString UnicodeParsedString(const GooString *s1); + + QList<PageItem*> Elements; + double baseX, baseY; +diff --git a/scribus/plugins/import/pdf/slaoutput.cpp b/scribus/plugins/import/pdf/slaoutput.cpp +index be1815dc29..17b6357246 100644 +--- a/scribus/plugins/import/pdf/slaoutput.cpp ++++ b/scribus/plugins/import/pdf/slaoutput.cpp +@@ -4252,7 +4252,7 @@ void SlaOutputDev::pushGroup(QString maskName, GBool forSoftMask, GBool alpha, b + m_groupStack.push(gElements);
+ }
+
+-QString SlaOutputDev::UnicodeParsedString(GooString *s1)
++QString SlaOutputDev::UnicodeParsedString(const GooString *s1)
+ {
+ if ( !s1 || s1->getLength() == 0 )
+ return QString();
+diff --git a/scribus/plugins/import/pdf/slaoutput.h b/scribus/plugins/import/pdf/slaoutput.h +index 20e8b2d311..6698c030e0 100644 +--- a/scribus/plugins/import/pdf/slaoutput.h ++++ b/scribus/plugins/import/pdf/slaoutput.h +@@ -266,7 +266,7 @@ class SlaOutputDev : public OutputDev + int getBlendMode(GfxState *state); + void applyMask(PageItem *ite); + void pushGroup(QString maskName = "", GBool forSoftMask = gFalse, GBool alpha = gFalse, bool inverted = false); +- QString UnicodeParsedString(GooString *s1); ++ QString UnicodeParsedString(const GooString *s1); + bool checkClip(); + bool pathIsClosed; + QString CurrColorFill; diff --git a/gnu/packages/patches/teeworlds-use-latest-wavpack.patch b/gnu/packages/patches/teeworlds-use-latest-wavpack.patch index e9fd991087..3ad1340d2e 100644 --- a/gnu/packages/patches/teeworlds-use-latest-wavpack.patch +++ b/gnu/packages/patches/teeworlds-use-latest-wavpack.patch @@ -1,10 +1,20 @@ -Downloaded from https://anonscm.debian.org/cgit/pkg-games/teeworlds.git/plain/debian/patches/new-wavpack.patch. +Downloaded from https://salsa.debian.org/games-team/teeworlds/raw/master/debian/patches/new-wavpack.patch. -This patch lets us build teeworlds with wavpack 5.1.0. +From: Markus Koschany <apo@debian.org> +Date: Thu, 25 Oct 2018 20:52:27 +0200 +Subject: new-wavpack +Make wavpack compatible with Debian's version. +--- + src/engine/client/sound.cpp | 33 +++++++++++++++------------------ + src/engine/client/sound.h | 4 ---- + 2 files changed, 15 insertions(+), 22 deletions(-) + +diff --git a/src/engine/client/sound.cpp b/src/engine/client/sound.cpp +index 048ec24..80de3c5 100644 --- a/src/engine/client/sound.cpp +++ b/src/engine/client/sound.cpp -@@ -328,17 +328,14 @@ void CSound::RateConvert(int SampleID) +@@ -325,10 +325,6 @@ void CSound::RateConvert(int SampleID) pSample->m_NumFrames = NumFrames; } @@ -12,10 +22,10 @@ This patch lets us build teeworlds with wavpack 5.1.0. -{ - return io_read(ms_File, pBuffer, Size); -} -- - int CSound::LoadWV(const char *pFilename) + + ISound::CSampleHandle CSound::LoadWV(const char *pFilename) { - CSample *pSample; +@@ -336,6 +332,8 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) int SampleID = -1; char aError[100]; WavpackContext *pContext; @@ -24,17 +34,18 @@ This patch lets us build teeworlds with wavpack 5.1.0. // don't waste memory on sound when we are stress testing if(g_Config.m_DbgStress) -@@ -351,19 +348,23 @@ int CSound::LoadWV(const char *pFilename - if(!m_pStorage) - return -1; +@@ -349,25 +347,29 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) + return CSampleHandle(); + lock_wait(m_SoundLock); - ms_File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL); - if(!ms_File) + File = m_pStorage->OpenFile(pFilename, IOFLAG_READ, IStorage::TYPE_ALL, aWholePath, sizeof(aWholePath)); + if(!File) { dbg_msg("sound/wv", "failed to open file. filename='%s'", pFilename); - return -1; + lock_unlock(m_SoundLock); + return CSampleHandle(); } + else + { @@ -43,7 +54,14 @@ This patch lets us build teeworlds with wavpack 5.1.0. SampleID = AllocID(); if(SampleID < 0) - return -1; + { +- io_close(ms_File); +- ms_File = 0; ++ io_close(File); ++ File = 0; + lock_unlock(m_SoundLock); + return CSampleHandle(); + } pSample = &m_aSamples[SampleID]; - pContext = WavpackOpenFileInput(ReadData, aError); @@ -51,7 +69,29 @@ This patch lets us build teeworlds with wavpack 5.1.0. if (pContext) { int m_aSamples = WavpackGetNumSamples(pContext); -@@ -419,9 +420,6 @@ int CSound::LoadWV(const char *pFilename +@@ -385,8 +387,8 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) + if(pSample->m_Channels > 2) + { + dbg_msg("sound/wv", "file is not mono or stereo. filename='%s'", pFilename); +- io_close(ms_File); +- ms_File = 0; ++ io_close(File); ++ File = 0; + lock_unlock(m_SoundLock); + return CSampleHandle(); + } +@@ -401,8 +403,8 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) + if(BitsPerSample != 16) + { + dbg_msg("sound/wv", "bps is %d, not 16, filname='%s'", BitsPerSample, pFilename); +- io_close(ms_File); +- ms_File = 0; ++ io_close(File); ++ File = 0; + lock_unlock(m_SoundLock); + return CSampleHandle(); + } +@@ -429,9 +431,6 @@ ISound::CSampleHandle CSound::LoadWV(const char *pFilename) dbg_msg("sound/wv", "failed to open %s: %s", pFilename, aError); } @@ -61,14 +101,16 @@ This patch lets us build teeworlds with wavpack 5.1.0. if(g_Config.m_Debug) dbg_msg("sound/wv", "loaded %s", pFilename); -@@ -527,7 +525,5 @@ void CSound::StopAll() - lock_unlock(m_SoundLock); +@@ -560,7 +559,5 @@ bool CSound::IsPlaying(CSampleHandle SampleID) + return Ret; } -IOHANDLE CSound::ms_File = 0; - IEngineSound *CreateEngineSound() { return new CSound; } +diff --git a/src/engine/client/sound.h b/src/engine/client/sound.h +index ff357c0..cec2cde 100644 --- a/src/engine/client/sound.h +++ b/src/engine/client/sound.h @@ -21,10 +21,6 @@ public: @@ -81,4 +123,4 @@ This patch lets us build teeworlds with wavpack 5.1.0. - virtual bool IsSoundEnabled() { return m_SoundEnabled != 0; } - virtual int LoadWV(const char *pFilename); + virtual CSampleHandle LoadWV(const char *pFilename); diff --git a/gnu/packages/patches/telegram-purple-adjust-test.patch b/gnu/packages/patches/telegram-purple-adjust-test.patch new file mode 100644 index 0000000000..db3b497d5d --- /dev/null +++ b/gnu/packages/patches/telegram-purple-adjust-test.patch @@ -0,0 +1,14 @@ +This test incorrectly expects the libpurple search path to initially +contain exactly one element. Remove this incorrect assertion. + +--- telegram-purple-1.3.1-checkout/test/loadtest.c 2018-10-27 16:25:06.258459600 +0200 ++++ telegram-purple-1.3.1-checkout/test/loadtest.c 2018-10-27 16:25:11.830434770 +0200 +@@ -156,7 +156,7 @@ static void tdf_inject_plugin (void) { + printf ("Injecting our module into purple_plugins_* ...\n"); + purple_plugins_init (); + GList *search_paths = purple_plugins_get_search_paths (); +- assert (!search_paths->prev && !search_paths->next && search_paths->data); ++ assert (!search_paths->prev && search_paths->data); + GList *new_paths = g_list_append (search_paths, g_strdup ("bin/")); + assert (new_paths == search_paths); + // Load "my" path before the default. diff --git a/gnu/packages/patches/tomsfastmath-constness.patch b/gnu/packages/patches/tomsfastmath-constness.patch new file mode 100644 index 0000000000..7c6ab5bbec --- /dev/null +++ b/gnu/packages/patches/tomsfastmath-constness.patch @@ -0,0 +1,76 @@ +From dac089515901d6bf315cd15a6e744b8d2c02c1cb Mon Sep 17 00:00:00 2001 +From: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> +Date: Sat, 31 Oct 2015 22:48:07 +0100 +Subject: [PATCH] tfm: make a few functions static + +clamav expects them to be static and it does not seem bad to do so. + +Signed-off-by: Sebastian Andrzej Siewior <sebastian@breakpoint.cc> +--- + src/bin/fp_read_radix.c | 2 +- + src/bin/fp_read_signed_bin.c | 2 +- + src/bin/fp_read_unsigned_bin.c | 2 +- + src/headers/tfm.h | 6 +++--- + 4 files changed, 6 insertions(+), 6 deletions(-) + +diff --git a/src/bin/fp_read_radix.c b/src/bin/fp_read_radix.c +index 0b5e826..431afa0 100644 +--- a/src/bin/fp_read_radix.c ++++ b/src/bin/fp_read_radix.c +@@ -9,7 +9,7 @@ + */ + #include <tfm_private.h> + +-int fp_read_radix(fp_int *a, char *str, int radix) ++int fp_read_radix(fp_int *a, const char *str, int radix) + { + int y, neg; + char ch; +diff --git a/src/bin/fp_read_signed_bin.c b/src/bin/fp_read_signed_bin.c +index e2b8003..6467d19 100644 +--- a/src/bin/fp_read_signed_bin.c ++++ b/src/bin/fp_read_signed_bin.c +@@ -9,7 +9,7 @@ + */ + #include <tfm_private.h> + +-void fp_read_signed_bin(fp_int *a, unsigned char *b, int c) ++void fp_read_signed_bin(fp_int *a, const unsigned char *b, int c) + { + /* read magnitude */ + fp_read_unsigned_bin (a, b + 1, c - 1); +diff --git a/src/bin/fp_read_unsigned_bin.c b/src/bin/fp_read_unsigned_bin.c +index 3ee64c0..2ee89cb 100644 +--- a/src/bin/fp_read_unsigned_bin.c ++++ b/src/bin/fp_read_unsigned_bin.c +@@ -9,7 +9,7 @@ + */ + #include <tfm_private.h> + +-void fp_read_unsigned_bin(fp_int *a, unsigned char *b, int c) ++void fp_read_unsigned_bin(fp_int *a, const unsigned char *b, int c) + { + /* zero the int */ + fp_zero (a); +diff --git a/src/headers/tfm.h b/src/headers/tfm.h +index af87b56..f406388 100644 +--- a/src/headers/tfm.h ++++ b/src/headers/tfm.h +@@ -467,14 +467,14 @@ int fp_prime_random_ex(fp_int *a, int t, int size, int flags, tfm_prime_callback + int fp_count_bits(fp_int *a); + + int fp_unsigned_bin_size(fp_int *a); +-void fp_read_unsigned_bin(fp_int *a, unsigned char *b, int c); ++void fp_read_unsigned_bin(fp_int *a, const unsigned char *b, int c); + void fp_to_unsigned_bin(fp_int *a, unsigned char *b); + + int fp_signed_bin_size(fp_int *a); +-void fp_read_signed_bin(fp_int *a, unsigned char *b, int c); ++void fp_read_signed_bin(fp_int *a, const unsigned char *b, int c); + void fp_to_signed_bin(fp_int *a, unsigned char *b); + +-int fp_read_radix(fp_int *a, char *str, int radix); ++int fp_read_radix(fp_int *a, const char *str, int radix); + + int fp_radix_size(fp_int *a, int radix, int *size); + int fp_toradix(fp_int *a, char *str, int radix); diff --git a/gnu/packages/patches/tophat-build-with-later-seqan.patch b/gnu/packages/patches/tophat-build-with-later-seqan.patch deleted file mode 100644 index fc742e2a7d..0000000000 --- a/gnu/packages/patches/tophat-build-with-later-seqan.patch +++ /dev/null @@ -1,24 +0,0 @@ -This patch resolves a build failure when building TopHat 2.1.0 with SeqAn 1.4. -This is the relevant part of a patch originally posted here: -https://lists.fu-berlin.de/pipermail/seqan-dev/2014-July/msg00001.html - ---- a/src/segment_juncs.cpp -+++ b/src/segment_juncs.cpp -@@ -2050,10 +2050,13 @@ void juncs_from_ref_segs(RefSequenceTabl - typedef map<uint32_t, IntronMotifs> MotifMap; - - MotifMap ims; -- -- seqan::DnaStringReverseComplement rev_donor_dinuc(donor_dinuc); -- seqan::DnaStringReverseComplement rev_acceptor_dinuc(acceptor_dinuc); -- -+ -+ typedef seqan::ModifiedString< -+ seqan::ModifiedString<seqan::DnaString const, seqan::ModView<seqan::FunctorComplement<seqan::Dna> > >, -+ seqan::ModReverse> ConstDnaStringReverseComplement; -+ ConstDnaStringReverseComplement rev_donor_dinuc(donor_dinuc); -+ ConstDnaStringReverseComplement rev_acceptor_dinuc(acceptor_dinuc); -+ - if (talkative) - fprintf(stderr, "Collecting potential splice sites in islands\n"); - diff --git a/gnu/packages/patches/u-boot-pinebook-a64-update-dts.patch b/gnu/packages/patches/u-boot-pinebook-a64-update-dts.patch new file mode 100644 index 0000000000..9d0a08c8bf --- /dev/null +++ b/gnu/packages/patches/u-boot-pinebook-a64-update-dts.patch @@ -0,0 +1,1485 @@ +From 1b39a1834ed182bbd8036a5cd74a9ea111fa4691 Mon Sep 17 00:00:00 2001 +From: Andre Przywara <andre.przywara@arm.com> +Date: Mon, 29 Oct 2018 00:56:47 +0000 +Subject: [PATCH 03/13] sunxi: A64: Update .dts/.dtsi files +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Update the .dts/.dtsi file from the Linux sunxi/dt64-for-4.20 tree: +commit 679294497be31596e1c9c61507746d72b6b05f26 +Author: Rodrigo Exterckötter Tjäder <rodrigo@tjader.xyz> +Date: Wed Sep 26 19:48:24 2018 +0000 + arm64: dts: allwinner: a64: a64-olinuxino: set the PHY TX delay + +Signed-off-by: Andre Przywara <andre.przywara@arm.com> +Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> +Reviewed-by: Jagan Teki <jagan@openedev.com> +--- + arch/arm/dts/sun50i-a64-amarula-relic.dts | 168 +++++++++++++- + arch/arm/dts/sun50i-a64-bananapi-m64.dts | 34 ++- + arch/arm/dts/sun50i-a64-nanopi-a64.dts | 89 +++++++- + arch/arm/dts/sun50i-a64-olinuxino.dts | 103 ++++++++- + arch/arm/dts/sun50i-a64-orangepi-win.dts | 179 ++++++++++++++- + arch/arm/dts/sun50i-a64-pine64.dts | 32 ++- + arch/arm/dts/sun50i-a64-sopine-baseboard.dts | 32 ++- + arch/arm/dts/sun50i-a64-sopine.dtsi | 15 ++ + arch/arm/dts/sun50i-a64.dtsi | 313 +++++++++++++++++++++++++-- + 9 files changed, 920 insertions(+), 45 deletions(-) + +diff --git a/arch/arm/dts/sun50i-a64-amarula-relic.dts b/arch/arm/dts/sun50i-a64-amarula-relic.dts +index f3b4e93ece..6cb2b7f0c8 100644 +--- a/arch/arm/dts/sun50i-a64-amarula-relic.dts ++++ b/arch/arm/dts/sun50i-a64-amarula-relic.dts +@@ -22,11 +22,11 @@ + stdout-path = "serial0:115200n8"; + }; + +- reg_vcc3v3: vcc3v3 { +- compatible = "regulator-fixed"; +- regulator-name = "vcc3v3"; +- regulator-min-microvolt = <3300000>; +- regulator-max-microvolt = <3300000>; ++ wifi_pwrseq: wifi-pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ clocks = <&rtc 1>; ++ clock-names = "ext_clock"; ++ reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* WL-PMU-EN: PL2 */ + }; + }; + +@@ -34,10 +34,34 @@ + status = "okay"; + }; + ++&mmc1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; ++ vmmc-supply = <®_dcdc1>; ++ /* ++ * Schematic shows both dldo4 and eldo1 connected for vcc-io-wifi, but ++ * dldo4 connection shows DNP(Do Not Populate) and eldo1 connected with ++ * 0Ohm register to vcc-io-wifi so eldo1 is used. ++ */ ++ vqmmc-supply = <®_eldo1>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ status = "okay"; ++ ++ brcmf: wifi@1 { ++ reg = <1>; ++ compatible = "brcm,bcm4329-fmac"; ++ interrupt-parent = <&r_pio>; ++ interrupts = <0 3 IRQ_TYPE_LEVEL_LOW>; /* WL-WAKE-AP: PL3 */ ++ interrupt-names = "host-wake"; ++ }; ++}; ++ + &mmc2 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc2_pins>; +- vmmc-supply = <®_vcc3v3>; ++ vmmc-supply = <®_dcdc1>; + bus-width = <8>; + non-removable; + cap-mmc-hw-reset; +@@ -48,9 +72,138 @@ + status = "okay"; + }; + ++&r_rsb { ++ status = "okay"; ++ ++ axp803: pmic@3a3 { ++ compatible = "x-powers,axp803"; ++ reg = <0x3a3>; ++ interrupt-parent = <&r_intc>; ++ interrupts = <0 IRQ_TYPE_LEVEL_LOW>; ++ x-powers,drive-vbus-en; /* set N_VBUSEN as output pin */ ++ }; ++}; ++ ++#include "axp803.dtsi" ++ ++®_aldo1 { ++ regulator-always-on; ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ regulator-name = "avdd-csi"; ++}; ++ ++®_aldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-pl"; ++}; ++ ++®_aldo3 { ++ regulator-always-on; ++ regulator-min-microvolt = <3000000>; ++ regulator-max-microvolt = <3000000>; ++ regulator-name = "vcc-pll-avcc"; ++}; ++ ++®_dcdc1 { ++ regulator-always-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-3v3"; ++}; ++ ++®_dcdc2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1040000>; ++ regulator-max-microvolt = <1300000>; ++ regulator-name = "vdd-cpux"; ++}; ++ ++/* DCDC3 is polyphased with DCDC2 */ ++ ++®_dcdc5 { ++ regulator-always-on; ++ regulator-min-microvolt = <1500000>; ++ regulator-max-microvolt = <1500000>; ++ regulator-name = "vcc-dram"; ++}; ++ ++®_dcdc6 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-sys"; ++}; ++ ++®_dldo1 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-hdmi-dsi-sensor"; ++}; ++ ++®_dldo2 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-mipi"; ++}; ++ ++®_dldo3 { ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ regulator-name = "dovdd-csi"; ++}; ++ ++®_dldo4 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-wifi-io"; ++}; ++ ++®_drivevbus { ++ regulator-name = "usb0-vbus"; ++ status = "okay"; ++}; ++ ++®_eldo1 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "cpvdd"; ++}; ++ ++®_eldo3 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "dvdd-csi"; ++}; ++ ++®_fldo1 { ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-1v2-hsic"; ++}; ++ ++/* ++ * The A64 chip cannot work without this regulator off, although ++ * it seems to be only driving the AR100 core. ++ * Maybe we don't still know well about CPUs domain. ++ */ ++®_fldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-cpus"; ++}; ++ ++®_rtc_ldo { ++ regulator-name = "vcc-rtc"; ++}; ++ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; + }; + +@@ -61,5 +214,6 @@ + + &usbphy { + usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ ++ usb0_vbus-supply = <®_drivevbus>; + status = "okay"; + }; +diff --git a/arch/arm/dts/sun50i-a64-bananapi-m64.dts b/arch/arm/dts/sun50i-a64-bananapi-m64.dts +index 0716b14411..ef1c90401b 100644 +--- a/arch/arm/dts/sun50i-a64-bananapi-m64.dts ++++ b/arch/arm/dts/sun50i-a64-bananapi-m64.dts +@@ -60,6 +60,17 @@ + stdout-path = "serial0:115200n8"; + }; + ++ hdmi-connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++ + leds { + compatible = "gpio-leds"; + +@@ -86,6 +97,10 @@ + }; + }; + ++&de { ++ status = "okay"; ++}; ++ + &ehci0 { + status = "okay"; + }; +@@ -103,6 +118,17 @@ + status = "okay"; + }; + ++&hdmi { ++ hvcc-supply = <®_dldo1>; ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ + &i2c1 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c1_pins>; +@@ -151,7 +177,7 @@ + + &mmc2 { + pinctrl-names = "default"; +- pinctrl-0 = <&mmc2_pins>; ++ pinctrl-0 = <&mmc2_pins>, <&mmc2_ds_pin>; + vmmc-supply = <®_dcdc1>; + bus-width = <8>; + non-removable; +@@ -296,9 +322,13 @@ + regulator-name = "vcc-rtc"; + }; + ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; + }; + +diff --git a/arch/arm/dts/sun50i-a64-nanopi-a64.dts b/arch/arm/dts/sun50i-a64-nanopi-a64.dts +index e2dce48fa2..31884dbc88 100644 +--- a/arch/arm/dts/sun50i-a64-nanopi-a64.dts ++++ b/arch/arm/dts/sun50i-a64-nanopi-a64.dts +@@ -51,12 +51,44 @@ + compatible = "friendlyarm,nanopi-a64", "allwinner,sun50i-a64"; + + aliases { ++ ethernet0 = &emac; + serial0 = &uart0; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; ++ ++ hdmi-connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++ ++ leds { ++ compatible = "gpio-leds"; ++ ++ blue { ++ label = "nanopi-a64:blue:status"; ++ gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */ ++ }; ++ }; ++ ++ wifi_pwrseq: wifi_pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ clocks = <&rtc 1>; ++ clock-names = "ext_clock"; ++ reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ ++ }; ++}; ++ ++&de { ++ status = "okay"; + }; + + &ehci0 { +@@ -67,6 +99,26 @@ + status = "okay"; + }; + ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rgmii_pins>; ++ phy-mode = "rgmii"; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-supply = <®_dcdc1>; ++ status = "okay"; ++}; ++ ++&hdmi { ++ hvcc-supply = <®_dldo1>; ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ + /* i2c1 connected with gpio headers like pine64, bananapi */ + &i2c1 { + pinctrl-names = "default"; +@@ -78,6 +130,13 @@ + bias-pull-up; + }; + ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ compatible = "ethernet-phy-ieee802.3-c22"; ++ reg = <7>; ++ }; ++}; ++ + &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; +@@ -88,6 +147,24 @@ + status = "okay"; + }; + ++&mmc1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; ++ vmmc-supply = <®_dcdc1>; ++ vqmmc-supply = <®_dldo4>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ status = "okay"; ++ ++ rtl8189etv: wifi@1 { ++ reg = <1>; ++ interrupt-parent = <&r_pio>; ++ interrupts = <0 3 IRQ_TYPE_LEVEL_LOW>; /* PL3 */ ++ interrupt-names = "host-wake"; ++ }; ++}; ++ + &ohci0 { + status = "okay"; + }; +@@ -125,9 +202,9 @@ + + ®_dcdc1 { + regulator-always-on; +- regulator-min-microvolt = <3000000>; +- regulator-max-microvolt = <3000000>; +- regulator-name = "vcc-3v"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-3v3"; + }; + + ®_dcdc2 { +@@ -195,9 +272,13 @@ + regulator-name = "vcc-rtc"; + }; + ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; + }; + +diff --git a/arch/arm/dts/sun50i-a64-olinuxino.dts b/arch/arm/dts/sun50i-a64-olinuxino.dts +index 3b3081b10e..f7a4bccaa5 100644 +--- a/arch/arm/dts/sun50i-a64-olinuxino.dts ++++ b/arch/arm/dts/sun50i-a64-olinuxino.dts +@@ -51,6 +51,7 @@ + compatible = "olimex,a64-olinuxino", "allwinner,sun50i-a64"; + + aliases { ++ ethernet0 = &emac; + serial0 = &uart0; + }; + +@@ -58,12 +59,74 @@ + stdout-path = "serial0:115200n8"; + }; + ++ hdmi-connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++ ++ reg_usb1_vbus: usb1-vbus { ++ compatible = "regulator-fixed"; ++ regulator-name = "usb1-vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ regulator-boot-on; ++ enable-active-high; ++ gpio = <&pio 6 9 GPIO_ACTIVE_HIGH>; /* PG9 */ ++ status = "okay"; ++ }; ++ + wifi_pwrseq: wifi_pwrseq { + compatible = "mmc-pwrseq-simple"; + reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ + }; + }; + ++&de { ++ status = "okay"; ++}; ++ ++&ehci0 { ++ status = "okay"; ++}; ++ ++&ehci1 { ++ status = "okay"; ++}; ++ ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rgmii_pins>; ++ phy-mode = "rgmii"; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-supply = <®_dcdc1>; ++ allwinner,tx-delay-ps = <600>; ++ status = "okay"; ++}; ++ ++&hdmi { ++ hvcc-supply = <®_dldo1>; ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ compatible = "ethernet-phy-ieee802.3-c22"; ++ reg = <1>; ++ }; ++}; ++ + &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; +@@ -92,6 +155,14 @@ + }; + }; + ++&ohci0 { ++ status = "okay"; ++}; ++ ++&ohci1 { ++ status = "okay"; ++}; ++ + &r_rsb { + status = "okay"; + +@@ -100,6 +171,7 @@ + reg = <0x3a3>; + interrupt-parent = <&r_intc>; + interrupts = <0 IRQ_TYPE_LEVEL_LOW>; ++ x-powers,drive-vbus-en; /* set N_VBUSEN as output pin */ + }; + }; + +@@ -142,10 +214,14 @@ + + /* DCDC3 is polyphased with DCDC2 */ + ++/* ++ * The board uses DDR3L DRAM chips. 1.36V is the closest to the nominal ++ * 1.35V that the PMIC can drive. ++ */ + ®_dcdc5 { + regulator-always-on; +- regulator-min-microvolt = <1500000>; +- regulator-max-microvolt = <1500000>; ++ regulator-min-microvolt = <1360000>; ++ regulator-max-microvolt = <1360000>; + regulator-name = "vcc-ddr3"; + }; + +@@ -180,6 +256,11 @@ + regulator-name = "vcc-wifi-io"; + }; + ++®_drivevbus { ++ regulator-name = "usb0-vbus"; ++ status = "okay"; ++}; ++ + ®_eldo1 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; +@@ -214,8 +295,24 @@ + regulator-name = "vcc-rtc"; + }; + ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; ++ status = "okay"; ++}; ++ ++&usb_otg { ++ dr_mode = "otg"; ++ status = "okay"; ++}; ++ ++&usbphy { + status = "okay"; ++ usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ ++ usb0_vbus-supply = <®_drivevbus>; ++ usb1_vbus-supply = <®_usb1_vbus>; + }; +diff --git a/arch/arm/dts/sun50i-a64-orangepi-win.dts b/arch/arm/dts/sun50i-a64-orangepi-win.dts +index bf42690a33..b0c64f7579 100644 +--- a/arch/arm/dts/sun50i-a64-orangepi-win.dts ++++ b/arch/arm/dts/sun50i-a64-orangepi-win.dts +@@ -1,5 +1,6 @@ + /* + * Copyright (C) 2017 Jagan Teki <jteki@openedev.com> ++ * Copyright (C) 2017-2018 Samuel Holland <samuel@sholland.org> + * + * This file is dual-licensed: you can use it either under the terms + * of the GPL or the X11 license, at your option. Note that this dual +@@ -51,23 +52,127 @@ + compatible = "xunlong,orangepi-win", "allwinner,sun50i-a64"; + + aliases { ++ ethernet0 = &emac; + serial0 = &uart0; ++ serial1 = &uart1; ++ serial2 = &uart2; ++ serial3 = &uart3; ++ serial4 = &uart4; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; ++ ++ hdmi-connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++ ++ leds { ++ compatible = "gpio-leds"; ++ ++ status { ++ label = "orangepi:green:status"; ++ gpios = <&pio 7 11 GPIO_ACTIVE_HIGH>; /* PH11 */ ++ }; ++ }; ++ ++ reg_gmac_3v3: gmac-3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "gmac-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-boot-on; ++ enable-active-high; ++ gpio = <&pio 3 14 GPIO_ACTIVE_HIGH>; /* PD14 */ ++ status = "okay"; ++ }; ++ ++ reg_usb1_vbus: usb1-vbus { ++ compatible = "regulator-fixed"; ++ regulator-name = "usb1-vbus"; ++ regulator-min-microvolt = <5000000>; ++ regulator-max-microvolt = <5000000>; ++ regulator-boot-on; ++ enable-active-high; ++ gpio = <&pio 3 7 GPIO_ACTIVE_HIGH>; /* PD7 */ ++ status = "okay"; ++ }; ++ ++ wifi_pwrseq: wifi_pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 0 8 GPIO_ACTIVE_LOW>; /* PL8 */ ++ }; ++}; ++ ++&de { ++ status = "okay"; ++}; ++ ++&ehci0 { ++ status = "okay"; + }; + + &ehci1 { + status = "okay"; + }; + ++&emac { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&rgmii_pins>; ++ phy-mode = "rgmii"; ++ phy-handle = <&ext_rgmii_phy>; ++ phy-supply = <®_gmac_3v3>; ++ status = "okay"; ++}; ++ ++&hdmi { ++ hvcc-supply = <®_dldo1>; ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ ++&mdio { ++ ext_rgmii_phy: ethernet-phy@1 { ++ compatible = "ethernet-phy-ieee802.3-c22"; ++ reg = <1>; ++ }; ++}; ++ + &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; + vmmc-supply = <®_dcdc1>; +- cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ ++ disable-wp; ++ bus-width = <4>; ++ status = "okay"; ++}; ++ ++&mmc1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; ++ vmmc-supply = <®_dldo2>; ++ vqmmc-supply = <®_dldo4>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ status = "okay"; ++}; ++ ++&ohci0 { + status = "okay"; + }; + +@@ -89,9 +194,8 @@ + #include "axp803.dtsi" + + ®_aldo1 { +- regulator-always-on; +- regulator-min-microvolt = <1800000>; +- regulator-max-microvolt = <3300000>; ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; + regulator-name = "afvcc-csi"; + }; + +@@ -163,12 +267,23 @@ + regulator-name = "vcc-wifi-io"; + }; + ++®_drivevbus { ++ regulator-name = "usb0-vbus"; ++ status = "okay"; ++}; ++ + ®_eldo1 { + regulator-min-microvolt = <1800000>; + regulator-max-microvolt = <1800000>; + regulator-name = "cpvdd"; + }; + ++®_eldo3 { ++ regulator-min-microvolt = <1500000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "dvdd-csi"; ++}; ++ + ®_fldo1 { + regulator-min-microvolt = <1200000>; + regulator-max-microvolt = <1200000>; +@@ -191,13 +306,65 @@ + regulator-name = "vcc-rtc"; + }; + ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ ++&spi0 { ++ status = "okay"; ++ ++ spi-flash@0 { ++ compatible = "mxicy,mx25l1606e", "jedec,spi-nor"; ++ reg = <0>; ++ spi-max-frequency = <80000000>; ++ m25p,fast-read; ++ status = "okay"; ++ }; ++}; ++ ++/* On debug connector */ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; + }; + +-&usbphy { ++/* Bluetooth */ ++&uart1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart1_pins>, <&uart1_rts_cts_pins>; ++ status = "okay"; ++}; ++ ++/* On Pi-2 connector, RTS/CTS optional */ ++&uart2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart2_pins>; ++ status = "disabled"; ++}; ++ ++/* On Pi-2 connector, RTS/CTS optional */ ++&uart3 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart3_pins>; ++ status = "disabled"; ++}; ++ ++/* On Pi-2 connector (labeled for SPI1), RTS/CTS optional */ ++&uart4 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart4_pins>; ++ status = "disabled"; ++}; ++ ++&usb_otg { ++ dr_mode = "otg"; + status = "okay"; + }; + ++&usbphy { ++ usb0_id_det-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ ++ usb0_vbus-supply = <®_drivevbus>; ++ usb1_vbus-supply = <®_usb1_vbus>; ++ status = "okay"; ++}; +diff --git a/arch/arm/dts/sun50i-a64-pine64.dts b/arch/arm/dts/sun50i-a64-pine64.dts +index a75825798a..c077b6c1f4 100644 +--- a/arch/arm/dts/sun50i-a64-pine64.dts ++++ b/arch/arm/dts/sun50i-a64-pine64.dts +@@ -62,6 +62,21 @@ + chosen { + stdout-path = "serial0:115200n8"; + }; ++ ++ hdmi-connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++}; ++ ++&de { ++ status = "okay"; + }; + + &ehci0 { +@@ -82,6 +97,17 @@ + + }; + ++&hdmi { ++ hvcc-supply = <®_dldo1>; ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ + &i2c1 { + pinctrl-names = "default"; + pinctrl-0 = <&i2c1_pins>; +@@ -229,6 +255,10 @@ + regulator-name = "vcc-rtc"; + }; + ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ + /* On Euler connector */ + &spdif { + status = "disabled"; +@@ -237,7 +267,7 @@ + /* On Exp and Euler connectors */ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; + }; + +diff --git a/arch/arm/dts/sun50i-a64-sopine-baseboard.dts b/arch/arm/dts/sun50i-a64-sopine-baseboard.dts +index abe179de35..53fcc9098d 100644 +--- a/arch/arm/dts/sun50i-a64-sopine-baseboard.dts ++++ b/arch/arm/dts/sun50i-a64-sopine-baseboard.dts +@@ -61,6 +61,17 @@ + stdout-path = "serial0:115200n8"; + }; + ++ hdmi-connector { ++ compatible = "hdmi-connector"; ++ type = "a"; ++ ++ port { ++ hdmi_con_in: endpoint { ++ remote-endpoint = <&hdmi_out_con>; ++ }; ++ }; ++ }; ++ + reg_vcc1v8: vcc1v8 { + compatible = "regulator-fixed"; + regulator-name = "vcc1v8"; +@@ -69,6 +80,10 @@ + }; + }; + ++&de { ++ status = "okay"; ++}; ++ + &ehci0 { + status = "okay"; + }; +@@ -86,6 +101,17 @@ + status = "okay"; + }; + ++&hdmi { ++ hvcc-supply = <®_dldo1>; ++ status = "okay"; ++}; ++ ++&hdmi_out { ++ hdmi_out_con: endpoint { ++ remote-endpoint = <&hdmi_con_in>; ++ }; ++}; ++ + &mdio { + ext_rgmii_phy: ethernet-phy@1 { + compatible = "ethernet-phy-ieee802.3-c22"; +@@ -134,9 +160,13 @@ + regulator-name = "vcc-wifi"; + }; + ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ + &uart0 { + pinctrl-names = "default"; +- pinctrl-0 = <&uart0_pins_a>; ++ pinctrl-0 = <&uart0_pb_pins>; + status = "okay"; + }; + +diff --git a/arch/arm/dts/sun50i-a64-sopine.dtsi b/arch/arm/dts/sun50i-a64-sopine.dtsi +index 43418bd881..6723b8695e 100644 +--- a/arch/arm/dts/sun50i-a64-sopine.dtsi ++++ b/arch/arm/dts/sun50i-a64-sopine.dtsi +@@ -45,6 +45,8 @@ + + #include "sun50i-a64.dtsi" + ++#include <dt-bindings/gpio/gpio.h> ++ + &mmc0 { + pinctrl-names = "default"; + pinctrl-0 = <&mmc0_pins>; +@@ -52,6 +54,7 @@ + non-removable; + disable-wp; + bus-width = <4>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */ + status = "okay"; + }; + +@@ -66,6 +69,18 @@ + }; + }; + ++&spi0 { ++ status = "okay"; ++ ++ flash@0 { ++ #address-cells = <1>; ++ #size-cells = <1>; ++ compatible = "jedec,spi-nor"; ++ reg = <0>; ++ spi-max-frequency = <40000000>; ++ }; ++}; ++ + #include "axp803.dtsi" + + ®_aldo2 { +diff --git a/arch/arm/dts/sun50i-a64.dtsi b/arch/arm/dts/sun50i-a64.dtsi +index 7a083637c4..f3a66f8882 100644 +--- a/arch/arm/dts/sun50i-a64.dtsi ++++ b/arch/arm/dts/sun50i-a64.dtsi +@@ -43,9 +43,12 @@ + */ + + #include <dt-bindings/clock/sun50i-a64-ccu.h> ++#include <dt-bindings/clock/sun8i-de2.h> + #include <dt-bindings/clock/sun8i-r-ccu.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + #include <dt-bindings/reset/sun50i-a64-ccu.h> ++#include <dt-bindings/reset/sun8i-de2.h> ++#include <dt-bindings/reset/sun8i-r-ccu.h> + + / { + interrupt-parent = <&gic>; +@@ -57,17 +60,21 @@ + #size-cells = <1>; + ranges; + +-/* +- * The pipeline mixer0-lcd0 depends on clock CLK_MIXER0 from DE2 CCU. +- * However there is no support for this clock on A64 yet, so we depend +- * on the upstream clocks here to keep them (and thus CLK_MIXER0) up. +- */ + simplefb_lcd: framebuffer-lcd { + compatible = "allwinner,simple-framebuffer", + "simple-framebuffer"; + allwinner,pipeline = "mixer0-lcd0"; + clocks = <&ccu CLK_TCON0>, +- <&ccu CLK_DE>, <&ccu CLK_BUS_DE>; ++ <&display_clocks CLK_MIXER0>; ++ status = "disabled"; ++ }; ++ ++ simplefb_hdmi: framebuffer-hdmi { ++ compatible = "allwinner,simple-framebuffer", ++ "simple-framebuffer"; ++ allwinner,pipeline = "mixer1-lcd1-hdmi"; ++ clocks = <&display_clocks CLK_MIXER1>, ++ <&ccu CLK_TCON1>, <&ccu CLK_HDMI>; + status = "disabled"; + }; + }; +@@ -81,6 +88,7 @@ + device_type = "cpu"; + reg = <0>; + enable-method = "psci"; ++ next-level-cache = <&L2>; + }; + + cpu1: cpu@1 { +@@ -88,6 +96,7 @@ + device_type = "cpu"; + reg = <1>; + enable-method = "psci"; ++ next-level-cache = <&L2>; + }; + + cpu2: cpu@2 { +@@ -95,6 +104,7 @@ + device_type = "cpu"; + reg = <2>; + enable-method = "psci"; ++ next-level-cache = <&L2>; + }; + + cpu3: cpu@3 { +@@ -102,7 +112,20 @@ + device_type = "cpu"; + reg = <3>; + enable-method = "psci"; ++ next-level-cache = <&L2>; + }; ++ ++ L2: l2-cache { ++ compatible = "cache"; ++ cache-level = <2>; ++ }; ++ }; ++ ++ de: display-engine { ++ compatible = "allwinner,sun50i-a64-display-engine"; ++ allwinner,pipelines = <&mixer0>, ++ <&mixer1>; ++ status = "disabled"; + }; + + osc24M: osc24M_clk { +@@ -168,10 +191,92 @@ + #size-cells = <1>; + ranges; + ++ de2@1000000 { ++ compatible = "allwinner,sun50i-a64-de2"; ++ reg = <0x1000000 0x400000>; ++ allwinner,sram = <&de2_sram 1>; ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ranges = <0 0x1000000 0x400000>; ++ ++ display_clocks: clock@0 { ++ compatible = "allwinner,sun50i-a64-de2-clk"; ++ reg = <0x0 0x100000>; ++ clocks = <&ccu CLK_DE>, ++ <&ccu CLK_BUS_DE>; ++ clock-names = "mod", ++ "bus"; ++ resets = <&ccu RST_BUS_DE>; ++ #clock-cells = <1>; ++ #reset-cells = <1>; ++ }; ++ ++ mixer0: mixer@100000 { ++ compatible = "allwinner,sun50i-a64-de2-mixer-0"; ++ reg = <0x100000 0x100000>; ++ clocks = <&display_clocks CLK_BUS_MIXER0>, ++ <&display_clocks CLK_MIXER0>; ++ clock-names = "bus", ++ "mod"; ++ resets = <&display_clocks RST_MIXER0>; ++ ++ ports { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ mixer0_out: port@1 { ++ reg = <1>; ++ ++ mixer0_out_tcon0: endpoint { ++ remote-endpoint = <&tcon0_in_mixer0>; ++ }; ++ }; ++ }; ++ }; ++ ++ mixer1: mixer@200000 { ++ compatible = "allwinner,sun50i-a64-de2-mixer-1"; ++ reg = <0x200000 0x100000>; ++ clocks = <&display_clocks CLK_BUS_MIXER1>, ++ <&display_clocks CLK_MIXER1>; ++ clock-names = "bus", ++ "mod"; ++ resets = <&display_clocks RST_MIXER1>; ++ ++ ports { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ mixer1_out: port@1 { ++ reg = <1>; ++ ++ mixer1_out_tcon1: endpoint { ++ remote-endpoint = <&tcon1_in_mixer1>; ++ }; ++ }; ++ }; ++ }; ++ }; ++ + syscon: syscon@1c00000 { +- compatible = "allwinner,sun50i-a64-system-controller", +- "syscon"; ++ compatible = "allwinner,sun50i-a64-system-control"; + reg = <0x01c00000 0x1000>; ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ranges; ++ ++ sram_c: sram@18000 { ++ compatible = "mmio-sram"; ++ reg = <0x00018000 0x28000>; ++ #address-cells = <1>; ++ #size-cells = <1>; ++ ranges = <0 0x00018000 0x28000>; ++ ++ de2_sram: sram-section@0 { ++ compatible = "allwinner,sun50i-a64-sram-c"; ++ reg = <0x0000 0x28000>; ++ }; ++ }; + }; + + dma: dma-controller@1c02000 { +@@ -185,6 +290,75 @@ + #dma-cells = <1>; + }; + ++ tcon0: lcd-controller@1c0c000 { ++ compatible = "allwinner,sun50i-a64-tcon-lcd", ++ "allwinner,sun8i-a83t-tcon-lcd"; ++ reg = <0x01c0c000 0x1000>; ++ interrupts = <GIC_SPI 86 IRQ_TYPE_LEVEL_HIGH>; ++ clocks = <&ccu CLK_BUS_TCON0>, <&ccu CLK_TCON0>; ++ clock-names = "ahb", "tcon-ch0"; ++ clock-output-names = "tcon-pixel-clock"; ++ resets = <&ccu RST_BUS_TCON0>, <&ccu RST_BUS_LVDS>; ++ reset-names = "lcd", "lvds"; ++ ++ ports { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ tcon0_in: port@0 { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ reg = <0>; ++ ++ tcon0_in_mixer0: endpoint@0 { ++ reg = <0>; ++ remote-endpoint = <&mixer0_out_tcon0>; ++ }; ++ }; ++ ++ tcon0_out: port@1 { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ reg = <1>; ++ }; ++ }; ++ }; ++ ++ tcon1: lcd-controller@1c0d000 { ++ compatible = "allwinner,sun50i-a64-tcon-tv", ++ "allwinner,sun8i-a83t-tcon-tv"; ++ reg = <0x01c0d000 0x1000>; ++ interrupts = <GIC_SPI 87 IRQ_TYPE_LEVEL_HIGH>; ++ clocks = <&ccu CLK_BUS_TCON1>, <&ccu CLK_TCON1>; ++ clock-names = "ahb", "tcon-ch1"; ++ resets = <&ccu RST_BUS_TCON1>; ++ reset-names = "lcd"; ++ ++ ports { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ tcon1_in: port@0 { ++ reg = <0>; ++ ++ tcon1_in_mixer1: endpoint { ++ remote-endpoint = <&mixer1_out_tcon1>; ++ }; ++ }; ++ ++ tcon1_out: port@1 { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ reg = <1>; ++ ++ tcon1_out_hdmi: endpoint@1 { ++ reg = <1>; ++ remote-endpoint = <&hdmi_in_tcon1>; ++ }; ++ }; ++ }; ++ }; ++ + mmc0: mmc@1c0f000 { + compatible = "allwinner,sun50i-a64-mmc"; + reg = <0x01c0f000 0x1000>; +@@ -227,6 +401,11 @@ + #size-cells = <0>; + }; + ++ sid: eeprom@1c14000 { ++ compatible = "allwinner,sun50i-a64-sid"; ++ reg = <0x1c14000 0x400>; ++ }; ++ + usb_otg: usb@1c19000 { + compatible = "allwinner,sun8i-a33-musb"; + reg = <0x01c19000 0x0400>; +@@ -356,7 +535,7 @@ + }; + + mmc2_pins: mmc2-pins { +- pins = "PC1", "PC5", "PC6", "PC8", "PC9", ++ pins = "PC5", "PC6", "PC8", "PC9", + "PC10","PC11", "PC12", "PC13", + "PC14", "PC15", "PC16"; + function = "mmc2"; +@@ -364,6 +543,18 @@ + bias-pull-up; + }; + ++ mmc2_ds_pin: mmc2-ds-pin { ++ pins = "PC1"; ++ function = "mmc2"; ++ drive-strength = <30>; ++ bias-pull-up; ++ }; ++ ++ pwm_pin: pwm_pin { ++ pins = "PD22"; ++ function = "pwm"; ++ }; ++ + rmii_pins: rmii_pins { + pins = "PD10", "PD11", "PD13", "PD14", "PD17", + "PD18", "PD19", "PD20", "PD22", "PD23"; +@@ -394,7 +585,7 @@ + function = "spi1"; + }; + +- uart0_pins_a: uart0 { ++ uart0_pb_pins: uart0-pb-pins { + pins = "PB8", "PB9"; + function = "uart0"; + }; +@@ -474,15 +665,6 @@ + status = "disabled"; + }; + +- pwm: pwm@1c21400 { +- compatible = "allwinner,sun50i-a64-pwm", +- "allwinner,sun5i-a13-pwm"; +- reg = <0x01c21400 0x8>; +- clocks = <&osc24M>; +- #pwm-cells = <3>; +- status = "disabled"; +- }; +- + uart0: serial@1c28000 { + compatible = "snps,dw-apb-uart"; + reg = <0x01c28000 0x400>; +@@ -617,8 +799,6 @@ + clocks = <&ccu CLK_BUS_EMAC>; + clock-names = "stmmaceth"; + status = "disabled"; +- #address-cells = <1>; +- #size-cells = <0>; + + mdio: mdio { + compatible = "snps,dwmac-mdio"; +@@ -638,11 +818,69 @@ + #interrupt-cells = <3>; + }; + ++ pwm: pwm@1c21400 { ++ compatible = "allwinner,sun50i-a64-pwm", ++ "allwinner,sun5i-a13-pwm"; ++ reg = <0x01c21400 0x400>; ++ clocks = <&osc24M>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&pwm_pin>; ++ #pwm-cells = <3>; ++ status = "disabled"; ++ }; ++ ++ hdmi: hdmi@1ee0000 { ++ compatible = "allwinner,sun50i-a64-dw-hdmi", ++ "allwinner,sun8i-a83t-dw-hdmi"; ++ reg = <0x01ee0000 0x10000>; ++ reg-io-width = <1>; ++ interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>; ++ clocks = <&ccu CLK_BUS_HDMI>, <&ccu CLK_HDMI_DDC>, ++ <&ccu CLK_HDMI>; ++ clock-names = "iahb", "isfr", "tmds"; ++ resets = <&ccu RST_BUS_HDMI1>; ++ reset-names = "ctrl"; ++ phys = <&hdmi_phy>; ++ phy-names = "hdmi-phy"; ++ status = "disabled"; ++ ++ ports { ++ #address-cells = <1>; ++ #size-cells = <0>; ++ ++ hdmi_in: port@0 { ++ reg = <0>; ++ ++ hdmi_in_tcon1: endpoint { ++ remote-endpoint = <&tcon1_out_hdmi>; ++ }; ++ }; ++ ++ hdmi_out: port@1 { ++ reg = <1>; ++ }; ++ }; ++ }; ++ ++ hdmi_phy: hdmi-phy@1ef0000 { ++ compatible = "allwinner,sun50i-a64-hdmi-phy"; ++ reg = <0x01ef0000 0x10000>; ++ clocks = <&ccu CLK_BUS_HDMI>, <&ccu CLK_HDMI_DDC>, ++ <&ccu 7>; ++ clock-names = "bus", "mod", "pll-0"; ++ resets = <&ccu RST_BUS_HDMI0>; ++ reset-names = "phy"; ++ #phy-cells = <0>; ++ }; ++ + rtc: rtc@1f00000 { + compatible = "allwinner,sun6i-a31-rtc"; + reg = <0x01f00000 0x54>; + interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; ++ clock-output-names = "rtc-osc32k", "rtc-osc32k-out"; ++ clocks = <&osc32k>; ++ #clock-cells = <1>; + }; + + r_intc: interrupt-controller@1f00c00 { +@@ -664,6 +902,29 @@ + #reset-cells = <1>; + }; + ++ r_i2c: i2c@1f02400 { ++ compatible = "allwinner,sun50i-a64-i2c", ++ "allwinner,sun6i-a31-i2c"; ++ reg = <0x01f02400 0x400>; ++ interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>; ++ clocks = <&r_ccu CLK_APB0_I2C>; ++ resets = <&r_ccu RST_APB0_I2C>; ++ status = "disabled"; ++ #address-cells = <1>; ++ #size-cells = <0>; ++ }; ++ ++ r_pwm: pwm@1f03800 { ++ compatible = "allwinner,sun50i-a64-pwm", ++ "allwinner,sun5i-a13-pwm"; ++ reg = <0x01f03800 0x400>; ++ clocks = <&osc24M>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&r_pwm_pin>; ++ #pwm-cells = <3>; ++ status = "disabled"; ++ }; ++ + r_pio: pinctrl@1f02c00 { + compatible = "allwinner,sun50i-a64-r-pinctrl"; + reg = <0x01f02c00 0x400>; +@@ -675,6 +936,16 @@ + interrupt-controller; + #interrupt-cells = <3>; + ++ r_i2c_pl89_pins: r-i2c-pl89-pins { ++ pins = "PL8", "PL9"; ++ function = "s_i2c"; ++ }; ++ ++ r_pwm_pin: pwm { ++ pins = "PL10"; ++ function = "s_pwm"; ++ }; ++ + r_rsb_pins: rsb { + pins = "PL0", "PL1"; + function = "s_rsb"; +-- +2.11.0 + diff --git a/gnu/packages/patches/u-boot-pinebook-dts.patch b/gnu/packages/patches/u-boot-pinebook-dts.patch new file mode 100644 index 0000000000..48c004fdfc --- /dev/null +++ b/gnu/packages/patches/u-boot-pinebook-dts.patch @@ -0,0 +1,388 @@ +From b972831c3cd24f3c9bb0995ed61db8f8239f3391 Mon Sep 17 00:00:00 2001 +From: Vasily Khoruzhick <anarsoul@gmail.com> +Date: Mon, 5 Nov 2018 20:24:31 -0800 +Subject: [PATCH 10/13] sunxi: DT: add support for Pinebook + +Pinebook is a laptop produced by Pine64, with USB-connected keyboard, +USB-connected touchpad and an eDP LCD panel connected via a RGB-eDP +bridge from Analogix. + +Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> +Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> +Tested-by: Maxime Ripard <maxime.ripard@bootlin.com> +Cc: Vagrant Cascadian <vagrant@debian.org> +Reviewed-by: Jagan Teki <jagan@openedev.com> +--- + arch/arm/dts/Makefile | 1 + + arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi | 15 ++ + arch/arm/dts/sun50i-a64-pinebook.dts | 294 +++++++++++++++++++++++++++ + configs/pinebook_defconfig | 22 ++ + 4 files changed, 332 insertions(+) + create mode 100644 arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi + create mode 100644 arch/arm/dts/sun50i-a64-pinebook.dts + create mode 100644 configs/pinebook_defconfig + +diff --git a/arch/arm/dts/Makefile b/arch/arm/dts/Makefile +index 3093c1185e..eae6b9ee5d 100644 +--- a/arch/arm/dts/Makefile ++++ b/arch/arm/dts/Makefile +@@ -406,6 +406,7 @@ dtb-$(CONFIG_MACH_SUN50I) += \ + sun50i-a64-orangepi-win.dtb \ + sun50i-a64-pine64-plus.dtb \ + sun50i-a64-pine64.dtb \ ++ sun50i-a64-pinebook.dtb \ + sun50i-a64-sopine-baseboard.dtb + dtb-$(CONFIG_MACH_SUN9I) += \ + sun9i-a80-optimus.dtb \ +diff --git a/arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi b/arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi +new file mode 100644 +index 0000000000..a99b7171d0 +--- /dev/null ++++ b/arch/arm/dts/sun50i-a64-pinebook-u-boot.dtsi +@@ -0,0 +1,15 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++/* ++ * Copyright (C) 2018 Vasily Khoruzhick <anarsoul@gmail.com> ++ * ++ */ ++ ++/* The ANX6345 eDP-bridge is on r_i2c */ ++&r_i2c { ++ anx6345: edp-bridge@38 { ++ compatible = "analogix,anx6345"; ++ reg = <0x38>; ++ reset-gpios = <&pio 3 24 GPIO_ACTIVE_LOW>; /* PD24 */ ++ status = "okay"; ++ }; ++}; +diff --git a/arch/arm/dts/sun50i-a64-pinebook.dts b/arch/arm/dts/sun50i-a64-pinebook.dts +new file mode 100644 +index 0000000000..ec537c5297 +--- /dev/null ++++ b/arch/arm/dts/sun50i-a64-pinebook.dts +@@ -0,0 +1,294 @@ ++// SPDX-License-Identifier: (GPL-2.0+ OR MIT) ++/* ++ * Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.xyz> ++ * Copyright (C) 2018 Vasily Khoruzhick <anarsoul@gmail.com> ++ * ++ */ ++ ++/dts-v1/; ++ ++#include "sun50i-a64.dtsi" ++ ++#include <dt-bindings/gpio/gpio.h> ++#include <dt-bindings/input/input.h> ++#include <dt-bindings/pwm/pwm.h> ++ ++/ { ++ model = "Pinebook"; ++ compatible = "pine64,pinebook", "allwinner,sun50i-a64"; ++ ++ aliases { ++ serial0 = &uart0; ++ ethernet0 = &rtl8723cs; ++ }; ++ ++ vdd_bl: regulator@0 { ++ compatible = "regulator-fixed"; ++ regulator-name = "bl-3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ gpio = <&pio 7 6 GPIO_ACTIVE_HIGH>; /* PH6 */ ++ enable-active-high; ++ }; ++ ++ backlight: backlight { ++ compatible = "pwm-backlight"; ++ pwms = <&pwm 0 50000 0>; ++ brightness-levels = <0 5 10 15 20 30 40 55 70 85 100>; ++ default-brightness-level = <2>; ++ enable-gpios = <&pio 3 23 GPIO_ACTIVE_HIGH>; /* PD23 */ ++ power-supply = <&vdd_bl>; ++ }; ++ ++ chosen { ++ stdout-path = "serial0:115200n8"; ++ ++ framebuffer-lcd { ++ panel-supply = <®_dc1sw>; ++ dvdd25-supply = <®_dldo2>; ++ dvdd12-supply = <®_fldo1>; ++ }; ++ }; ++ ++ gpio_keys { ++ compatible = "gpio-keys"; ++ ++ lid_switch { ++ label = "Lid Switch"; ++ gpios = <&r_pio 0 12 GPIO_ACTIVE_LOW>; /* PL12 */ ++ linux,input-type = <EV_SW>; ++ linux,code = <SW_LID>; ++ linux,can-disable; ++ wakeup-source; ++ }; ++ }; ++ ++ reg_vcc3v3: vcc3v3 { ++ compatible = "regulator-fixed"; ++ regulator-name = "vcc3v3"; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ }; ++ ++ wifi_pwrseq: wifi_pwrseq { ++ compatible = "mmc-pwrseq-simple"; ++ reset-gpios = <&r_pio 0 2 GPIO_ACTIVE_LOW>; /* PL2 */ ++ }; ++}; ++ ++&ehci0 { ++ phys = <&usbphy 0>; ++ phy-names = "usb"; ++ status = "okay"; ++}; ++ ++&ehci1 { ++ status = "okay"; ++}; ++ ++&mmc0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc0_pins>; ++ vmmc-supply = <®_dcdc1>; ++ cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; ++ disable-wp; ++ bus-width = <4>; ++ status = "okay"; ++}; ++ ++&mmc1 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc1_pins>; ++ vmmc-supply = <®_dldo4>; ++ vqmmc-supply = <®_eldo1>; ++ mmc-pwrseq = <&wifi_pwrseq>; ++ bus-width = <4>; ++ non-removable; ++ status = "okay"; ++ ++ rtl8723cs: wifi@1 { ++ reg = <1>; ++ }; ++}; ++ ++&mmc2 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&mmc2_pins>, <&mmc2_ds_pin>; ++ vmmc-supply = <®_dcdc1>; ++ vqmmc-supply = <®_eldo1>; ++ bus-width = <8>; ++ non-removable; ++ cap-mmc-hw-reset; ++ mmc-hs200-1_8v; ++ status = "okay"; ++}; ++ ++&ohci0 { ++ phys = <&usbphy 0>; ++ phy-names = "usb"; ++ status = "okay"; ++}; ++ ++&ohci1 { ++ status = "okay"; ++}; ++ ++&pwm { ++ status = "okay"; ++}; ++ ++&r_rsb { ++ status = "okay"; ++ ++ axp803: pmic@3a3 { ++ compatible = "x-powers,axp803"; ++ reg = <0x3a3>; ++ interrupt-parent = <&r_intc>; ++ interrupts = <0 IRQ_TYPE_LEVEL_LOW>; ++ }; ++}; ++ ++/* The ANX6345 eDP-bridge is on r_i2c */ ++&r_i2c { ++ clock-frequency = <100000>; ++ pinctrl-names = "default"; ++ pinctrl-0 = <&r_i2c_pl89_pins>; ++ status = "okay"; ++}; ++ ++#include "axp803.dtsi" ++ ++®_aldo1 { ++ regulator-min-microvolt = <2800000>; ++ regulator-max-microvolt = <2800000>; ++ regulator-name = "vcc-csi"; ++}; ++ ++®_aldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-pl"; ++}; ++ ++®_aldo3 { ++ regulator-always-on; ++ regulator-min-microvolt = <2700000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-pll-avcc"; ++}; ++ ++®_dc1sw { ++ regulator-name = "vcc-lcd"; ++}; ++ ++®_dcdc1 { ++ regulator-always-on; ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-3v3"; ++}; ++ ++®_dcdc2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1000000>; ++ regulator-max-microvolt = <1300000>; ++ regulator-name = "vdd-cpux"; ++}; ++ ++/* DCDC3 is polyphased with DCDC2 */ ++ ++®_dcdc5 { ++ regulator-always-on; ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-dram"; ++}; ++ ++®_dcdc6 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-sys"; ++}; ++ ++®_dldo1 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-hdmi"; ++}; ++ ++®_dldo2 { ++ regulator-min-microvolt = <2500000>; ++ regulator-max-microvolt = <2500000>; ++ regulator-name = "vcc-edp"; ++}; ++ ++®_dldo3 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "avdd-csi"; ++}; ++ ++®_dldo4 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-wifi"; ++}; ++ ++®_eldo1 { ++ regulator-always-on; ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "cpvdd"; ++}; ++ ++®_eldo3 { ++ regulator-min-microvolt = <1800000>; ++ regulator-max-microvolt = <1800000>; ++ regulator-name = "vdd-1v8-csi"; ++}; ++ ++®_fldo1 { ++ regulator-min-microvolt = <1200000>; ++ regulator-max-microvolt = <1200000>; ++ regulator-name = "vcc-1v2-hsic"; ++}; ++ ++®_fldo2 { ++ regulator-always-on; ++ regulator-min-microvolt = <1100000>; ++ regulator-max-microvolt = <1100000>; ++ regulator-name = "vdd-cpus"; ++}; ++ ++®_ldo_io0 { ++ regulator-min-microvolt = <3300000>; ++ regulator-max-microvolt = <3300000>; ++ regulator-name = "vcc-usb"; ++ status = "okay"; ++}; ++ ++®_rtc_ldo { ++ regulator-name = "vcc-rtc"; ++}; ++ ++&simplefb_hdmi { ++ vcc-hdmi-supply = <®_dldo1>; ++}; ++ ++&uart0 { ++ pinctrl-names = "default"; ++ pinctrl-0 = <&uart0_pb_pins>; ++ status = "okay"; ++}; ++ ++&usb_otg { ++ dr_mode = "host"; ++}; ++ ++&usbphy { ++ usb0_vbus-supply = <®_ldo_io0>; ++ usb1_vbus-supply = <®_ldo_io0>; ++ status = "okay"; ++}; +diff --git a/configs/pinebook_defconfig b/configs/pinebook_defconfig +new file mode 100644 +index 0000000000..5294dbd2eb +--- /dev/null ++++ b/configs/pinebook_defconfig +@@ -0,0 +1,22 @@ ++CONFIG_ARM=y ++CONFIG_ARCH_SUNXI=y ++CONFIG_SPL=y ++CONFIG_MACH_SUN50I=y ++CONFIG_SUNXI_DRAM_LPDDR3_STOCK=y ++CONFIG_DRAM_CLK=552 ++CONFIG_DRAM_ZQ=3881949 ++CONFIG_MMC_SUNXI_SLOT_EXTRA=2 ++CONFIG_R_I2C_ENABLE=y ++# CONFIG_CMD_FLASH is not set ++# CONFIG_SPL_DOS_PARTITION is not set ++# CONFIG_SPL_EFI_PARTITION is not set ++CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pinebook" ++CONFIG_DM_REGULATOR=y ++CONFIG_DM_REGULATOR_FIXED=y ++CONFIG_DM_PWM=y ++CONFIG_PWM_SUNXI=y ++CONFIG_USB_EHCI_HCD=y ++CONFIG_SYS_USB_EVENT_POLL_VIA_INT_QUEUE=y ++# CONFIG_USB_GADGET is not set ++CONFIG_VIDEO_BRIDGE=y ++CONFIG_VIDEO_BRIDGE_ANALOGIX_ANX6345=y +-- +2.11.0 + diff --git a/gnu/packages/patches/u-boot-pinebook-mmc-calibration.patch b/gnu/packages/patches/u-boot-pinebook-mmc-calibration.patch new file mode 100644 index 0000000000..118bdf8e0c --- /dev/null +++ b/gnu/packages/patches/u-boot-pinebook-mmc-calibration.patch @@ -0,0 +1,98 @@ +From 20940ef2a397446a209350900d3bd618c3fd5b94 Mon Sep 17 00:00:00 2001 +From: Vasily Khoruzhick <anarsoul@gmail.com> +Date: Mon, 5 Nov 2018 20:24:28 -0800 +Subject: [PATCH 07/13] mmc: sunxi: add support for automatic delay calibration + +A64 and H6 support automatic delay calibration and Linux driver uses it +instead of hardcoded delays. Add support for it to u-boot driver. + +Fixes eMMC instability on Pinebook + +Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> +Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> +Tested-by: Maxime Ripard <maxime.ripard@bootlin.com> +Reviewed-by: Andre Przywara <andre.przywara@arm.com> +Cc: Vagrant Cascadian <vagrant@debian.org> +Reviewed-by: Jagan Teki <jagan@openedev.com> +--- + arch/arm/include/asm/arch-sunxi/mmc.h | 6 +++++- + drivers/mmc/sunxi_mmc.c | 21 ++++++++++++++++++++- + 2 files changed, 25 insertions(+), 2 deletions(-) + +diff --git a/arch/arm/include/asm/arch-sunxi/mmc.h b/arch/arm/include/asm/arch-sunxi/mmc.h +index d98c53faaa..f2deafddd2 100644 +--- a/arch/arm/include/asm/arch-sunxi/mmc.h ++++ b/arch/arm/include/asm/arch-sunxi/mmc.h +@@ -46,7 +46,9 @@ struct sunxi_mmc { + u32 cbda; /* 0x94 */ + u32 res2[26]; + #if defined(CONFIG_SUNXI_GEN_SUN6I) || defined(CONFIG_MACH_SUN50I_H6) +- u32 res3[64]; ++ u32 res3[17]; ++ u32 samp_dl; ++ u32 res4[46]; + #endif + u32 fifo; /* 0x100 / 0x200 FIFO access address */ + }; +@@ -130,5 +132,7 @@ struct sunxi_mmc { + #define SUNXI_MMC_COMMON_CLK_GATE (1 << 16) + #define SUNXI_MMC_COMMON_RESET (1 << 18) + ++#define SUNXI_MMC_CAL_DL_SW_EN (0x1 << 7) ++ + struct mmc *sunxi_mmc_init(int sdc_no); + #endif /* _SUNXI_MMC_H */ +diff --git a/drivers/mmc/sunxi_mmc.c b/drivers/mmc/sunxi_mmc.c +index 39f15eb423..147eb9b4d5 100644 +--- a/drivers/mmc/sunxi_mmc.c ++++ b/drivers/mmc/sunxi_mmc.c +@@ -99,11 +99,16 @@ static int mmc_set_mod_clk(struct sunxi_mmc_priv *priv, unsigned int hz) + { + unsigned int pll, pll_hz, div, n, oclk_dly, sclk_dly; + bool new_mode = false; ++ bool calibrate = false; + u32 val = 0; + + if (IS_ENABLED(CONFIG_MMC_SUNXI_HAS_NEW_MODE) && (priv->mmc_no == 2)) + new_mode = true; + ++#if defined(CONFIG_MACH_SUN50I) || defined(CONFIG_MACH_SUN50I_H6) ++ calibrate = true; ++#endif ++ + /* + * The MMC clock has an extra /2 post-divider when operating in the new + * mode. +@@ -174,7 +179,11 @@ static int mmc_set_mod_clk(struct sunxi_mmc_priv *priv, unsigned int hz) + val = CCM_MMC_CTRL_MODE_SEL_NEW; + setbits_le32(&priv->reg->ntsr, SUNXI_MMC_NTSR_MODE_SEL_NEW); + #endif +- } else { ++ } else if (!calibrate) { ++ /* ++ * Use hardcoded delay values if controller doesn't support ++ * calibration ++ */ + val = CCM_MMC_CTRL_OCLK_DLY(oclk_dly) | + CCM_MMC_CTRL_SCLK_DLY(sclk_dly); + } +@@ -228,6 +237,16 @@ static int mmc_config_clock(struct sunxi_mmc_priv *priv, struct mmc *mmc) + rval &= ~SUNXI_MMC_CLK_DIVIDER_MASK; + writel(rval, &priv->reg->clkcr); + ++#if defined(CONFIG_MACH_SUN50I) || defined(CONFIG_MACH_SUN50I_H6) ++ /* A64 supports calibration of delays on MMC controller and we ++ * have to set delay of zero before starting calibration. ++ * Allwinner BSP driver sets a delay only in the case of ++ * using HS400 which is not supported by mainline U-Boot or ++ * Linux at the moment ++ */ ++ writel(SUNXI_MMC_CAL_DL_SW_EN, &priv->reg->samp_dl); ++#endif ++ + /* Re-enable Clock */ + rval |= SUNXI_MMC_CLK_ENABLE; + writel(rval, &priv->reg->clkcr); +-- +2.11.0 + diff --git a/gnu/packages/patches/u-boot-pinebook-r_i2c-controller.patch b/gnu/packages/patches/u-boot-pinebook-r_i2c-controller.patch new file mode 100644 index 0000000000..824a16b9db --- /dev/null +++ b/gnu/packages/patches/u-boot-pinebook-r_i2c-controller.patch @@ -0,0 +1,70 @@ +From 31a4ac4d79d75baeede3edfa95515fd4169ef502 Mon Sep 17 00:00:00 2001 +From: Vasily Khoruzhick <anarsoul@gmail.com> +Date: Mon, 5 Nov 2018 20:24:30 -0800 +Subject: [PATCH 09/13] sun50i: A64: add support for R_I2C controller + +Allwinner A64 has a I2C controller, which is in the R_ MMIO zone and has +two groups of pinmuxes on PL bank, so it's called R_I2C. + +Add support for this I2C controller and the pinmux which doesn't conflict +with RSB. + +Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> +Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> +Tested-by: Maxime Ripard <maxime.ripard@bootlin.com> +Cc: Vagrant Cascadian <vagrant@debian.org> +Acked-by: Jagan Teki <jagan@openedev.com> +--- + arch/arm/include/asm/arch-sunxi/gpio.h | 1 + + arch/arm/mach-sunxi/Kconfig | 1 + + board/sunxi/board.c | 6 ++++++ + 3 files changed, 8 insertions(+) + +diff --git a/arch/arm/include/asm/arch-sunxi/gpio.h b/arch/arm/include/asm/arch-sunxi/gpio.h +index 6a5eafc3d3..2daf23f6f5 100644 +--- a/arch/arm/include/asm/arch-sunxi/gpio.h ++++ b/arch/arm/include/asm/arch-sunxi/gpio.h +@@ -211,6 +211,7 @@ enum sunxi_gpio_number { + #define SUN8I_H3_GPL_R_TWI 2 + #define SUN8I_A23_GPL_R_TWI 3 + #define SUN8I_GPL_R_UART 2 ++#define SUN50I_GPL_R_TWI 2 + + #define SUN9I_GPN_R_RSB 3 + +diff --git a/arch/arm/mach-sunxi/Kconfig b/arch/arm/mach-sunxi/Kconfig +index 6277abc3cc..560dc9b25d 100644 +--- a/arch/arm/mach-sunxi/Kconfig ++++ b/arch/arm/mach-sunxi/Kconfig +@@ -278,6 +278,7 @@ config MACH_SUN50I + select ARM64 + select DM_I2C + select PHY_SUN4I_USB ++ select SUN6I_PRCM + select SUNXI_DE2 + select SUNXI_GEN_SUN6I + select SUPPORT_SPL +diff --git a/board/sunxi/board.c b/board/sunxi/board.c +index b196d48674..64ccbc7245 100644 +--- a/board/sunxi/board.c ++++ b/board/sunxi/board.c +@@ -168,10 +168,16 @@ void i2c_init_board(void) + #endif + + #ifdef CONFIG_R_I2C_ENABLE ++#ifdef CONFIG_MACH_SUN50I ++ clock_twi_onoff(5, 1); ++ sunxi_gpio_set_cfgpin(SUNXI_GPL(8), SUN50I_GPL_R_TWI); ++ sunxi_gpio_set_cfgpin(SUNXI_GPL(9), SUN50I_GPL_R_TWI); ++#else + clock_twi_onoff(5, 1); + sunxi_gpio_set_cfgpin(SUNXI_GPL(0), SUN8I_H3_GPL_R_TWI); + sunxi_gpio_set_cfgpin(SUNXI_GPL(1), SUN8I_H3_GPL_R_TWI); + #endif ++#endif + } + + #if defined(CONFIG_ENV_IS_IN_MMC) && defined(CONFIG_ENV_IS_IN_FAT) +-- +2.11.0 + diff --git a/gnu/packages/patches/u-boot-pinebook-syscon-node.patch b/gnu/packages/patches/u-boot-pinebook-syscon-node.patch new file mode 100644 index 0000000000..9289645bec --- /dev/null +++ b/gnu/packages/patches/u-boot-pinebook-syscon-node.patch @@ -0,0 +1,38 @@ +From ababb5920e8992c9bb7956df3cc85dc68d27dfe8 Mon Sep 17 00:00:00 2001 +From: Andre Przywara <andre.przywara@arm.com> +Date: Mon, 29 Oct 2018 00:56:48 +0000 +Subject: [PATCH 04/13] sunxi: A64: Re-add syscon to DT node + +The sun50i-a64.dtsi changes introduced in Linux v4.19-rc1 changed the +compatible name for the syscon controller, dropping the generic "syscon" +fallback. Using this new DT node will make the Ethernet driver in every +older kernel (or non-Linux kernels) fail to initialise the MAC device. + +To allow booting distribution kernels (from installer images via UEFI, +for instance), re-add the syscon compatible string as a fallback. This +works with both older and newer kernels. + +Signed-off-by: Andre Przywara <andre.przywara@arm.com> +Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> +Reviewed-by: Jagan Teki <jagan@openedev.com> +--- + arch/arm/dts/sun50i-a64.dtsi | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/arch/arm/dts/sun50i-a64.dtsi b/arch/arm/dts/sun50i-a64.dtsi +index f3a66f8882..ff41abc96a 100644 +--- a/arch/arm/dts/sun50i-a64.dtsi ++++ b/arch/arm/dts/sun50i-a64.dtsi +@@ -259,7 +259,8 @@ + }; + + syscon: syscon@1c00000 { +- compatible = "allwinner,sun50i-a64-system-control"; ++ compatible = "allwinner,sun50i-a64-system-control", ++ "syscon"; + reg = <0x01c00000 0x1000>; + #address-cells = <1>; + #size-cells = <1>; +-- +2.11.0 + diff --git a/gnu/packages/patches/u-boot-pinebook-video-bridge.patch b/gnu/packages/patches/u-boot-pinebook-video-bridge.patch new file mode 100644 index 0000000000..8c6ca8a992 --- /dev/null +++ b/gnu/packages/patches/u-boot-pinebook-video-bridge.patch @@ -0,0 +1,50 @@ +From 8336a43792a103c13d939b3925cb75322911f7fb Mon Sep 17 00:00:00 2001 +From: Vasily Khoruzhick <anarsoul@gmail.com> +Date: Mon, 5 Nov 2018 20:24:29 -0800 +Subject: [PATCH 08/13] dm: video: bridge: don't fail to activate bridge if + reset or sleep GPIO is missing + +Both GPIOs are optional, so we shouldn't fail if any is missing. +Without this fix reset is not deasserted if sleep GPIO is missing. + +Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com> +Acked-by: Maxime Ripard <maxime.ripard@bootlin.com> +Tested-by: Maxime Ripard <maxime.ripard@bootlin.com> +Reviewed-by: Andre Przywara <andre.przywara@arm.com> +Cc: Vagrant Cascadian <vagrant@debian.org> +--- + drivers/video/bridge/video-bridge-uclass.c | 16 +++++++++++----- + 1 file changed, 11 insertions(+), 5 deletions(-) + +diff --git a/drivers/video/bridge/video-bridge-uclass.c b/drivers/video/bridge/video-bridge-uclass.c +index cd4959cc71..5fecb4cfd5 100644 +--- a/drivers/video/bridge/video-bridge-uclass.c ++++ b/drivers/video/bridge/video-bridge-uclass.c +@@ -106,13 +106,19 @@ static int video_bridge_pre_probe(struct udevice *dev) + int video_bridge_set_active(struct udevice *dev, bool active) + { + struct video_bridge_priv *uc_priv = dev_get_uclass_priv(dev); +- int ret; ++ int ret = 0; + + debug("%s: %d\n", __func__, active); +- ret = dm_gpio_set_value(&uc_priv->sleep, !active); +- if (ret) +- return ret; +- if (active) { ++ if (uc_priv->sleep.dev) { ++ ret = dm_gpio_set_value(&uc_priv->sleep, !active); ++ if (ret) ++ return ret; ++ } ++ ++ if (!active) ++ return 0; ++ ++ if (uc_priv->reset.dev) { + ret = dm_gpio_set_value(&uc_priv->reset, true); + if (ret) + return ret; +-- +2.11.0 + diff --git a/gnu/packages/patches/vsearch-unbundle-cityhash.patch b/gnu/packages/patches/vsearch-unbundle-cityhash.patch index b1ecb1f063..2a2ab13a73 100644 --- a/gnu/packages/patches/vsearch-unbundle-cityhash.patch +++ b/gnu/packages/patches/vsearch-unbundle-cityhash.patch @@ -6,7 +6,7 @@ index e56a8a2..4adcc48 100644 if TARGET_PPC AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g -mcpu=power8 else --AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g +-AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g -march=x86-64 -mtune=generic +AM_CXXFLAGS=-Wall -Wsign-compare -O3 -g -lcityhash endif @@ -39,7 +39,7 @@ index e56a8a2..4adcc48 100644 - if TARGET_WIN --libcityhash_a_CXXFLAGS = -Wall -Wno-sign-compare -O3 -g -D_MSC_VER +-libcityhash_a_CXXFLAGS = $(AM_CXXFLAGS) -Wno-sign-compare -D_MSC_VER -__top_builddir__bin_vsearch_LDFLAGS = -static -__top_builddir__bin_vsearch_LDADD = libregex.a libcityhash.a libcpu_ssse3.a libcpu_sse2.a +__top_builddir__bin_vsearch_LDFLAGS = -static -lcityhash @@ -47,7 +47,7 @@ index e56a8a2..4adcc48 100644 else --libcityhash_a_CXXFLAGS = -Wall -Wno-sign-compare -O3 -g +-libcityhash_a_CXXFLAGS = $(AM_CXXFLAGS) -Wno-sign-compare - if TARGET_PPC -__top_builddir__bin_vsearch_LDADD = libcityhash.a libcpu.a diff --git a/gnu/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch b/gnu/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch deleted file mode 100644 index 345101bd3a..0000000000 --- a/gnu/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch +++ /dev/null @@ -1,26 +0,0 @@ -This fixes the wxplot2d plotting issue found at -https://github.com/andrejv/wxmaxima/issues/973. - -From 5a0693c97ceaa4935b908f1e478126896952f399 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Gunter=20K=C3=B6nigsmann?= <gunter@peterpall.de> -Date: Mon, 19 Feb 2018 05:37:35 +0100 -Subject: [PATCH] Seems I accidentally made wxMaxima to default to parameters - for old gnuplots. Resolves #973 - ---- - data/wxmathml.lisp.in | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/data/wxmathml.lisp.in b/data/wxmathml.lisp.in -index a32e3fc3..4e19acaf 100644 ---- a/data/wxmathml.lisp.in -+++ b/data/wxmathml.lisp.in -@@ -43,7 +43,7 @@ - (defvar $wxsubscripts t - "Recognize TeX-style subscripts") - (defvar $wxplot_pngcairo nil "Use gnuplot's pngcairo terminal for new plots?") --(defmvar $wxplot_old_gnuplot t) -+(defmvar $wxplot_old_gnuplot nil) - - (defun $wxstatusbar (status) - (format t "<statusbar>~a</statusbar>~%" status)) diff --git a/gnu/packages/patches/x265-arm-flags.patch b/gnu/packages/patches/x265-arm-flags.patch new file mode 100644 index 0000000000..f17e26f6f1 --- /dev/null +++ b/gnu/packages/patches/x265-arm-flags.patch @@ -0,0 +1,36 @@ +https://sources.debian.org/src/x265/2.9-3/debian/patches/0001-Fix-arm-flags.patch/ + +From: Sebastian Ramacher <sramacher@debian.org> +Date: Wed, 26 Apr 2017 22:05:06 +0200 +Subject: Fix arm* flags + +--- + source/CMakeLists.txt | 6 +----- + 1 file changed, 1 insertion(+), 5 deletions(-) + +diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt +index 33b6523..25aecbb 100644 +--- a/source/CMakeLists.txt ++++ b/source/CMakeLists.txt +@@ -72,7 +72,7 @@ elseif(ARMMATCH GREATER "-1") + endif() + message(STATUS "Detected ARM target processor") + set(ARM 1) +- add_definitions(-DX265_ARCH_ARM=1 -DHAVE_ARMV6=1) ++ # add_definitions(-DX265_ARCH_ARM=1 -DHAVE_ARMV6=1) + else() + message(STATUS "CMAKE_SYSTEM_PROCESSOR value `${CMAKE_SYSTEM_PROCESSOR}` is unknown") + message(STATUS "Please add this value near ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE}") +@@ -230,12 +230,8 @@ if(GCC) + if(ARM AND CROSS_COMPILE_ARM) + set(ARM_ARGS -march=armv6 -mfloat-abi=soft -mfpu=vfp -marm -fPIC) + elseif(ARM) +- find_package(Neon) + if(CPU_HAS_NEON) +- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=neon -marm -fPIC) + add_definitions(-DHAVE_NEON) +- else() +- set(ARM_ARGS -mcpu=native -mfloat-abi=hard -mfpu=vfp -marm) + endif() + endif() + add_definitions(${ARM_ARGS}) diff --git a/gnu/packages/patches/xapian-revert-5489fb2f8.patch b/gnu/packages/patches/xapian-revert-5489fb2f8.patch deleted file mode 100644 index 7b78e2abb5..0000000000 --- a/gnu/packages/patches/xapian-revert-5489fb2f8.patch +++ /dev/null @@ -1,23 +0,0 @@ -Revert this upstream commit which breaks a test case in "notmuch": - -https://git.xapian.org/?p=xapian;a=commitdiff;h=5489fb2f838c0f0b0a593b4c17df282a93a1fe5a - -See the notmuch FAQ entry: - -https://notmuchmail.org/faq/#index12h2 - -This should be fixed for later releases. - -diff --git a/backends/glass/glass_postlist.cc b/xapian-core/backends/glass/glass_postlist.cc -index 80e578b85..a47f14a68 100644 ---- a/backends/glass/glass_postlist.cc -+++ b/backends/glass/glass_postlist.cc -@@ -759,7 +759,7 @@ GlassPostList::open_nearby_postlist(const std::string & term_, - (void)need_pos; - if (term_.empty()) - RETURN(NULL); -- if (!this_db.get() || this_db->postlist_table.is_modified()) -+ if (!this_db.get() || this_db->postlist_table.is_writable()) - RETURN(NULL); - RETURN(new GlassPostList(this_db, term_, cursor->clone())); - } diff --git a/gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch b/gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch deleted file mode 100644 index 63e058bbef..0000000000 --- a/gnu/packages/patches/zathura-pdf-mupdf-link-to-jpeg-libraries.patch +++ /dev/null @@ -1,55 +0,0 @@ -From: Tobias Geerinckx-Rice <me@tobias.gr> -Date: Mon, 18 Jun 2018 02:37:41 +0200 -Subject: zathura-pdf-mupdf: Link to JPEG libraries. - -As of version 0.3.3, zathura-pdf-mupdf no longer links to some required -JPEG libraries, leading to such errors as: - - $ zathura foo.pdf - error: Could not load plugin '/gnu/store/...-profile/lib/zathura/libpdf-mupdf.so' (/gnu/store/...-profile/lib/zathura/libpdf-mupdf.so: undefined symbol: jpeg_resync_to_restart). - -The patch below, copied verbatim from Arch[0], fixes that. -Its description happens to match our reality, too. - -[0]: https://git.archlinux.org/svntogit/community.git/tree/trunk?h=packages/zathura-pdf-mupdf ---- -From 3fb0ff750373d45d4f5172ce1d41b74183cd07e8 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Johannes=20L=C3=B6thberg?= <johannes@kyriasis.com> -Date: Sat, 24 Mar 2018 14:31:18 +0100 -Subject: [PATCH] Explicitly link against jbig2dec, openjp2, and jpeg -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Normally these are statically linked into libmupdfthird, but we delete -those to make mupdf use the system libraries. Previously -zathura-pdf-mupdf explicitly linked against them, but this is -technically incorrect since they are supposed to be in libmupdfthird so -that was removed. This commit essentially reverts that in the new build -system. - -Signed-off-by: Johannes Löthberg <johannes@kyriasis.com> ---- - meson.build | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git a/meson.build b/meson.build -index 3b0d7b7..ae2fc9c 100644 ---- a/meson.build -+++ b/meson.build -@@ -22,7 +22,11 @@ cairo = dependency('cairo') - mupdf = cc.find_library('mupdf') - mupdfthird = cc.find_library('mupdfthird') - --build_dependencies = [zathura, girara, glib, cairo, mupdf, mupdfthird] -+jbig2dec = cc.find_library('jbig2dec') -+openjp2 = cc.find_library('openjp2') -+jpeg = cc.find_library('jpeg') -+ -+build_dependencies = [zathura, girara, glib, cairo, mupdf, mupdfthird, jbig2dec, openjp2, jpeg] - - # defines - defines = [ --- -2.16.3 - diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 688e62cdc8..b655399345 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -43,7 +43,7 @@ (define-public patchutils (package (name "patchutils") - (version "0.3.3") + (version "0.3.4") (source (origin (method url-fetch) @@ -51,8 +51,8 @@ name "-" version ".tar.xz")) (sha256 (base32 - "0g5df00cj4nczrmr4k791l7la0sq2wnf8rn981fsrz1f3d2yix4i")) - (patches (search-patches "patchutils-xfail-gendiff-tests.patch")))) + "0xp8mcfyi5nmb5a2zi5ibmyshxkb1zv1dgmnyn413m7ahgdx8mfg")) + (patches (search-patches "patchutils-test-perms.patch")))) (build-system gnu-build-system) (inputs `(("perl" ,perl))) (arguments @@ -61,10 +61,8 @@ (modify-phases %standard-phases (add-before 'check 'patch-test-scripts (lambda _ - (let ((echo (which "echo"))) - (substitute* - (find-files "tests" "^run-test$") - (("/bin/echo") echo))) + (substitute* (find-files "tests" "^run-test$") + (("/bin/echo") (which "echo"))) #t)) (add-after 'install 'wrap-program ;; Point installed scripts to the utilities they need. @@ -104,8 +102,8 @@ listing the files modified by a patch.") (base32 "06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn")) (patches (search-patches "quilt-test-fix-regex.patch" - "quilt-compat-getopt-fix-second-separator.patch" - "quilt-compat-getopt-fix-option-with-nondigit-param.patch")))) + "quilt-getopt-second-separator.patch" + "quilt-getopt-nondigit-param.patch")))) (build-system gnu-build-system) (native-inputs `(("gettext" ,gnu-gettext))) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index a28005a024..4170e4a0ae 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2015, 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2014, 2015, 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2014, 2015, 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 Nils Gillmann <ng0@n0.is> @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> -;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> +;;; Copyright © 2017, 2018 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -34,6 +34,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) @@ -58,6 +59,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) @@ -80,6 +82,7 @@ (define-public poppler (package (name "poppler") + (replacement poppler/fixed) (version "0.68.0") (source (origin (method url-fetch) @@ -129,6 +132,14 @@ (license license:gpl2+) (home-page "https://poppler.freedesktop.org/"))) +(define poppler/fixed + (package + (inherit poppler) + (source (origin + (inherit (package-source poppler)) + (patches (append (origin-patches (package-source poppler)) + (search-patches "poppler-CVE-2018-19149.patch"))))))) + (define-public poppler-data (package (name "poppler-data") @@ -160,14 +171,14 @@ When present, Poppler is able to correctly render CJK and Cyrillic text.") license:gpl2)))) (define-public poppler-qt4 - (package (inherit poppler) + (package/inherit poppler (name "poppler-qt4") (inputs `(("qt-4" ,qt-4) ,@(package-inputs poppler))) (synopsis "Qt4 frontend for the Poppler PDF rendering library"))) (define-public poppler-qt5 - (package (inherit poppler) + (package/inherit poppler (name "poppler-qt5") (inputs `(("qtbase" ,qtbase) ,@(package-inputs poppler))) @@ -225,26 +236,23 @@ Poppler PDF rendering library.") (name "libharu") (version "2.3.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/libharu/libharu/archive/" - "RELEASE_" - (string-join (string-split version #\.) "_") - ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/libharu/libharu.git") + (commit (string-append + "RELEASE_" + (string-join (string-split version #\.) "_"))))) + (file-name (git-file-name name version)) (sha256 (base32 - "1lm4v539y9cb1lvbq387j57sy7yxda3yv8b1pk8m6zazbp66i7lg")))) + "15s9hswnl3qqi7yh29jyrg0hma2n99haxznvcywmsp8kjqlyg75q")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib")) (string-append "--with-png=" - (assoc-ref %build-inputs "libpng"))) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ (invoke "autoreconf" "-vif")))))) + (assoc-ref %build-inputs "libpng"))))) (inputs `(("zlib" ,zlib) ("libpng" ,libpng))) @@ -417,17 +425,15 @@ using the DjVuLibre library.") (define-public zathura-pdf-mupdf (package (name "zathura-pdf-mupdf") - (version "0.3.3") + (version "0.3.4") (source (origin (method url-fetch) (uri (string-append "https://pwmt.org/projects/zathura-pdf-mupdf" "/download/zathura-pdf-mupdf-" version ".tar.xz")) - (patches - (search-patches "zathura-pdf-mupdf-link-to-jpeg-libraries.patch")) (sha256 (base32 - "1zbdqimav4wfgimpy3nfzl10qj7vyv23rdy2z5z7z93jwbp2rc2j")))) + "166d5nz47ixzwj4pixsd5fd9qvjf5v34cdqi3p72vr23pswk2hyn")))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("jbig2dec" ,jbig2dec) @@ -439,17 +445,9 @@ using the DjVuLibre library.") (build-system meson-build-system) (arguments `(#:tests? #f ; package does not contain tests - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-plugin-directory - ;; Something of a regression in 0.3.3: the new Meson build system - ;; now hard-codes an incorrect plugin directory. Fix it. - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "meson.build" - (("(install_dir:).*" _ key) - (string-append key - "'" (assoc-ref outputs "out") "/lib/zathura'\n"))) - #t))))) + #:configure-flags (list (string-append "-Dplugindir=" + (assoc-ref %outputs "out") + "/lib/zathura")))) (home-page "https://pwmt.org/projects/zathura-pdf-mupdf/") (synopsis "PDF support for zathura (mupdf backend)") (description "The zathura-pdf-mupdf plugin adds PDF support to zathura @@ -559,7 +557,8 @@ interaction.") "/podofo-" version ".tar.gz")) (sha256 (base32 - "0wj0y4zcmj4q79wrn3vv3xq4bb0vhhxs8yifafwy9f2sjm83c5p9")))) + "0wj0y4zcmj4q79wrn3vv3xq4bb0vhhxs8yifafwy9f2sjm83c5p9")) + (patches (search-patches "podofo-cmake-3.12.patch")))) (build-system cmake-build-system) (native-inputs `(("cppunit" ,cppunit) @@ -598,7 +597,7 @@ extracting content or merging files.") (define-public mupdf (package (name "mupdf") - (version "1.13.0") + (version "1.14.0") (source (origin (method url-fetch) @@ -606,9 +605,17 @@ extracting content or merging files.") name "-" version "-source.tar.xz")) (sha256 (base32 - "0129k92bav692l6lyw10ryldx7h2f9khjpgnp3f3n4fdsph9hrkl")) + "1psnz02w5p7wc1s1ma7vvjmkjfy641xvsh9ykaqzkk84dflnjgk0")) (modules '((guix build utils))) - (snippet '(begin (delete-file-recursively "thirdparty") #t)))) + (snippet + ;; We keep lcms2 since it is different than our lcms. + '(begin + (for-each + (lambda (dir) + (delete-file-recursively (string-append "thirdparty/" dir))) + '("curl" "freeglut" "freetype" "harfbuzz" "jbig2dec" + "libjpeg" "mujs" "openjpeg" "zlib")) + #t)))) (build-system gnu-build-system) (inputs `(("curl" ,curl) @@ -629,6 +636,8 @@ extracting content or merging files.") '(#:tests? #f ; no check target #:make-flags (list "CC=gcc" "XCFLAGS=-fpic" + "USE_SYSTEM_LIBS=yes" + "USE_SYSTEM_MUJS=yes" (string-append "prefix=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure)))) @@ -643,7 +652,11 @@ listing the table of contents and hyperlinks. The library ships with a rudimentary X11 viewer, and a set of command line tools for batch rendering @command{pdfdraw}, rewriting files @command{pdfclean}, and examining the file structure @command{pdfshow}.") - (license license:agpl3+))) + (license (list license:agpl3+ + license:bsd-3 ; resources/cmaps + license:x11 ; thirdparty/lcms2 + license:silofl1.1 ; resources/fonts/{han,noto,sil,urw} + license:asl2.0)))) ; resources/fonts/droid (define-public qpdf (package @@ -864,14 +877,14 @@ the framebuffer.") (name "pdf2svg") (version "0.2.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/dawbarton/pdf2svg/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dawbarton/pdf2svg.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "12pa1pajirnlrkz2il3h4l30lc2prryk1qr132jk6z9y1c3qdcag")))) + "14ffdm4y26imq99wjhkrhy9lp33165xci1l5ndwfia8hz53bl02k")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) @@ -988,7 +1001,7 @@ PDF. Indeed @command{pdfposter} was inspired by @command{poster}.") (define-public pdfgrep (package (name "pdfgrep") - (version "2.1.1") + (version "2.1.2") (source (origin (method url-fetch) @@ -996,7 +1009,7 @@ PDF. Indeed @command{pdfposter} was inspired by @command{poster}.") name "-" version ".tar.gz")) (sha256 (base32 - "02qcl5kmr5qzjfc99qpbpfb1890bxlrq3r208gnding51zrmb09c")))) + "1fia10djcxxl7n9jw2prargw4yzbykk6izig2443ycj9syhxrwqf")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1012,3 +1025,41 @@ Support some GNU grep options as file name output, page number output, optional case insensitivity, count occurrences, color highlights and search in multiple files.") (license license:gpl2+))) + +(define-public pdfpc + (package + (name "pdfpc") + (version "4.2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pdfpc/pdfpc.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1rmsrpf5vlqhnyyrhq8apndny88ld2qvfjx6258653pqbimv7mx5")))) + (build-system cmake-build-system) + (arguments '(#:tests? #f)) ; no test target + (inputs + `(("cairo" ,cairo) + ("gtk+" ,gtk+) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("libgee" ,libgee) + ("poppler" ,poppler) + ("pango" ,pango) + ("vala" ,vala))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://pdfpc.github.io/") + (synopsis "Presenter console with multi-monitor support for PDF files") + (description + "pdfpc is a presentation viewer application which uses multi-monitor +output to provide meta information to the speaker during the presentation. It +is able to show a normal presentation window on one screen, while showing a +more sophisticated overview on the other one providing information like a +picture of the next slide, as well as the left over time till the end of the +presentation. The input files processed by pdfpc are PDF documents.") + (license license:gpl2+))) diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm index 98b4e392c7..d0abb39254 100644 --- a/gnu/packages/perl-check.scm +++ b/gnu/packages/perl-check.scm @@ -82,7 +82,7 @@ lexically, just dynamically.") '(#:phases (modify-phases %standard-phases (add-after 'unpack 'set-env - (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t))))) (propagated-inputs `(("perl-importer" ,perl-importer) ("perl-term-table" ,perl-term-table) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index cadef602e4..8c854e88df 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -327,7 +327,7 @@ sometimes even without using a single syscall.") (define-public perl-autovivification (package (name "perl-autovivification") - (version "0.16") + (version "0.18") (source (origin (method url-fetch) @@ -335,7 +335,7 @@ sometimes even without using a single syscall.") "autovivification-" version ".tar.gz")) (sha256 (base32 - "1422kw9fknv7rbjkgdfflg1q3mb69d3yryszp38dn0bgzkqhwkc1")))) + "01giacr2sx6b9bgfz6aqw7ndcnf08j8n6kwhm7880a94hmb9g69d")))) (build-system perl-build-system) (home-page "https://metacpan.org/release/autovivification") (synopsis "Lexically disable autovivification") @@ -2877,7 +2877,8 @@ interface for the RFC 2104 HMAC mechanism.") (add-after 'build 'set-permissions (lambda _ ;; Make MD5.so read-write so it can be stripped. - (chmod "blib/arch/auto/Digest/MD5/MD5.so" #o755)))))) + (chmod "blib/arch/auto/Digest/MD5/MD5.so" #o755) + #t))))) (home-page "https://metacpan.org/release/Digest-MD5") (synopsis "Perl interface to the MD-5 algorithm") (description @@ -3003,7 +3004,7 @@ also known as JIS 2000.") '(#:phases (modify-phases %standard-phases (add-after 'unpack 'set-env - (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1")))))) + (lambda _ (setenv "PERL_USE_UNSAFE_INC" "1") #t))))) (home-page "https://metacpan.org/release/Encode-HanExtra") (synopsis "Additional Chinese encodings") (description "This Perl module provides Chinese encodings that are not @@ -4278,7 +4279,8 @@ run interactively. It also has an option to capture output/error buffers.") (lambda _ ;; This test fails, and we're not really interested in ;; it, so disable it. - (delete-file "t/win32_compile.t")))))) + (delete-file "t/win32_compile.t") + #t))))) (home-page "https://metacpan.org/release/IPC-Run") (synopsis "Run system() and background procs w/ piping, redirs, ptys") (description "IPC::Run allows you run and interact with child processes @@ -6867,7 +6869,8 @@ directory specifications in a cross-platform manner.") (substitute* "Cwd.pm" (("'/bin/pwd'") (string-append "'" (assoc-ref inputs "coreutils") - "/bin/pwd'")))))))) + "/bin/pwd'"))) + #t))))) (inputs `(("coreutils" ,coreutils))) (home-page "https://metacpan.org/release/PathTools") diff --git a/gnu/packages/phabricator.scm b/gnu/packages/phabricator.scm new file mode 100644 index 0000000000..6c94a13114 --- /dev/null +++ b/gnu/packages/phabricator.scm @@ -0,0 +1,124 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Robin Templeton <robin@igalia.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 phabricator) + #:use-module (gnu packages php) + #:use-module (gnu packages version-control) + #:use-module (guix build-system gnu) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages)) + +(define-public libphutil + (let ((commit "b29d76e1709ef018cc5edc7c03033fd9fdebc578") + (revision "1")) + (package + (name "libphutil") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/phacility/libphutil.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "06j84721r9r8624fmil62b5crs2qs0v6rr3cvv2zvkvwhxwrwv1l")))) + (build-system gnu-build-system) + ;; TODO: Unbundle jsonlint and porter-stemmer. + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda _ + (let ((lib (string-append %output "/lib/libphutil"))) + (mkdir-p lib) + (copy-recursively "." lib)) + #t))))) + (inputs + `(("php" ,php))) + (home-page "https://github.com/phacility/libphutil") + (synopsis "PHP utility library") + (description + "@code{libphutil} is a collection of utility classes and functions for +PHP.") + ;; Bundled libraries are expat-licensed. + (license (list license:asl2.0 license:expat))))) + +(define-public arcanist + (let ((commit "45a8d22c74a62624e69f5cd6ce901c9ab2658904") + (revision "1")) + (package + (name "arcanist") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/phacility/arcanist.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "13vswhqy9sap6841y93j4mj71dl27vhcivcn3rzyi0cchkhg2ac9")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda _ + (let ((bin (string-append %output "/bin")) + (lib (string-append %output "/lib/arcanist"))) + (mkdir-p lib) + (copy-recursively "." lib) + (mkdir-p bin) + (symlink (string-append lib "/bin/arc") + (string-append bin "/arc")) + (wrap-program (string-append bin "/arc") + `("ARC_PHUTIL_PATH" = + (,(string-append (assoc-ref %build-inputs "libphutil") + "/lib/libphutil"))) + `("PATH" ":" prefix + (,@(map (lambda (i) + (string-append (assoc-ref %build-inputs i) "/bin")) + '("git" "mercurial" "subversion")))))) + #t)) + (add-before 'reset-gzip-timestamps 'make-compressed-files-writable + (lambda _ + (for-each make-file-writable + (find-files %output ".*\\.t?gz$")) + #t))))) + (inputs + `(("php" ,php) + ("libphutil" ,libphutil) + ("git" ,git) + ("mercurial" ,mercurial) + ("subversion" ,subversion))) + (home-page "https://github.com/phacility/arcanist") + (synopsis "Command-line interface for Phabricator") + (description + "Arcanist is the command-line tool for the Phabricator software +development service. It allows you to interact with Phabricator installs to +send code for review, download patches, transfer files, view status, make API +calls, and various other things.") + (license license:asl2.0)))) diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index db7a9f9d45..9410d1761d 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -69,14 +69,14 @@ (define-public libraw (package (name "libraw") - (version "0.19.0") + (version "0.19.1") (source (origin (method url-fetch) (uri (string-append "https://www.libraw.org/data/LibRaw-" version ".tar.gz")) (sha256 (base32 - "0nfj7s7qmgfy1cl8s3ck7dxjvprfq5glfi6iidmvmy8r7gl52gz8")))) + "1xjyw4n9gfr2r637pjbpbi3h98h9mdjn61b0hsxwqynq2vdij452")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -131,14 +131,14 @@ data as produced by digital cameras.") (define-public libgphoto2 (package (name "libgphoto2") - (version "2.5.19") + (version "2.5.21") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gphoto/libgphoto/" version "/libgphoto2-" version ".tar.bz2")) (sha256 (base32 - "0qrcc6kajbfb237paxrl904vvwl7hd8mnqvjw00j6m5qwd93wlk2")))) + "1ccb8idjkv19p9zxg6hh8y6vbgs8flpnh550lq6a8cmga8d2nmy5")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs @@ -206,7 +206,7 @@ MTP, and much more.") (define-public perl-image-exiftool (package (name "perl-image-exiftool") - (version "11.01") + (version "11.11") (source (origin (method url-fetch) (uri (string-append @@ -214,7 +214,7 @@ MTP, and much more.") version ".tar.gz")) (sha256 (base32 - "175w34n73mypdpbaqj2vgqsfp59yvfrn8k7zmx4cawnp895bypvh")))) + "1szg1k82nz88pp5n7lg71ja7q3hh5i5f9bcbb7m482dwrmsywkp6")))) (build-system perl-build-system) (arguments '(#:phases @@ -227,7 +227,8 @@ MTP, and much more.") (pm (find-files out "^ExifTool\\.pm$")) (lib (dirname (dirname (car pm))))) (wrap-program (string-append out "/bin/exiftool") - `("PERL5LIB" prefix (,lib))))))))) + `("PERL5LIB" prefix (,lib))) + #t)))))) (home-page "https://metacpan.org/release/Image-ExifTool") (synopsis "Program and Perl library to manipulate EXIF and other metadata") (description "This package provides the @code{exiftool} command and the @@ -422,7 +423,7 @@ and enhance them.") (define-public hugin (package (name "hugin") - (version "2016.2.0") + (version "2018.0.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/hugin/hugin/hugin-" @@ -430,7 +431,7 @@ and enhance them.") "/hugin-" version ".tar.bz2")) (sha256 (base32 - "058zd63vx29yrx2pphbbll7kzcxkai22q26lpw13rn4lvp41pasl")))) + "1jv5wpqbq49fhbl5g521g1qxhdm1rm7acxd18fr3n3n5d830vbyk")))) (build-system cmake-build-system) (native-inputs `(("gettext" ,gnu-gettext) diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index 466b26c238..a28cb31e5c 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -53,7 +53,7 @@ (define-public php (package (name "php") - (version "7.2.10") + (version "7.2.12") (home-page "https://secure.php.net/") (source (origin (method url-fetch) @@ -61,7 +61,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1w0432i5wjga9z8x3rhc72h2ij1jd2aimg5xmhc0hg4f7951bhh1")) + "1qbz2j9kzqxxp0mmx02zavvz20ji7izqdnri25g1mrwyhz60974q")) (modules '((guix build utils))) (snippet '(with-directory-excursion "ext" @@ -176,6 +176,11 @@ (substitute* "ext/standard/tests/streams/bug60602.phpt" (("'ls'") (string-append "'" (which "ls") "'"))) + ;; The expected output is slightly different from what is given, + ;; in a section that's not related to the actual test + (substitute* "sapi/cli/tests/upload_2G.phpt" + (("Test\\\\n") "Test\n\n")) + ;; Drop tests that are known to fail. (for-each delete-file '("ext/posix/tests/posix_getgrgid.phpt" ; Requires /etc/group. diff --git a/gnu/packages/polkit.scm b/gnu/packages/polkit.scm index 7cc5205faa..830006d439 100644 --- a/gnu/packages/polkit.scm +++ b/gnu/packages/polkit.scm @@ -49,6 +49,7 @@ (uri (string-append "https://www.freedesktop.org/software/polkit/releases/" name "-" version ".tar.gz")) + (patches (search-patches "polkit-CVE-2018-19788.patch")) (sha256 (base32 "0c91y61y4gy6p91cwbzg32dhavw4b7fflg370rimqhdxpzdfr1rg")) diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index ad429854a2..bdb5dbbdad 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -244,7 +244,7 @@ seen in a terminal.") (define-public highlight (package (name "highlight") - (version "3.42") + (version "3.47") (source (origin (method url-fetch) @@ -252,7 +252,7 @@ seen in a terminal.") version ".tar.bz2")) (sha256 (base32 - "07iihzy8ckzdrxqd6bzbij4hy4mmlixibjnjviqfihd0hh1q30m5")))) + "0xidf8755lnx55x6p4ajgg4l145akjqswny41483fvg5lpa41i6f")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index d773b2f948..861715b569 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org> +;;; Copyright © 2018 Nam Nguyen <namn@berkeley.edu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -361,14 +362,14 @@ is used by the Requests library to verify HTTPS requests.") (define-public python-cryptography-vectors (package (name "python-cryptography-vectors") - (version "2.3.1") + (version "2.4.2") (source (origin (method url-fetch) (uri (pypi-uri "cryptography_vectors" version)) (sha256 (base32 - "0ijdck30p7jv8a0zwv8b7d30ciqrmmps62lm63l4k776vihrnkdz")))) + "013qx2hz0jv79yzfzpn0r2kk33i5qy3sdnzgwiv5779d18snblwi")))) (build-system python-build-system) (home-page "https://github.com/pyca/cryptography") (synopsis "Test vectors for the cryptography package") @@ -383,14 +384,14 @@ is used by the Requests library to verify HTTPS requests.") (define-public python-cryptography (package (name "python-cryptography") - (version "2.3.1") + (version "2.4.2") (source (origin (method url-fetch) (uri (pypi-uri "cryptography" version)) (sha256 (base32 - "1mnzf168vlxirq7fw9dm9zbvma7z8phc9cl5bffw5916m0y1244d")))) + "1pc60dksi9w9mshl6cvn7gdjazbp3pmydy3qp9wgy5wzd8n0b9h5")))) (build-system python-build-system) (inputs `(("openssl" ,openssl))) @@ -637,7 +638,7 @@ PKCS#8, PKCS#12, PKCS#5, X.509 and TSP.") (define-public python-pynacl (package (name "python-pynacl") - (version "1.2.1") + (version "1.3.0") (source (origin (method url-fetch) @@ -648,7 +649,7 @@ PKCS#8, PKCS#12, PKCS#5, X.509 and TSP.") #t)) (sha256 (base32 - "1ada3qr83cliap6dk897vnvjkynij1kjqbwizdbgarazlyh8zlz0")))) + "0330wyvggm19xhmwmz9rrr97lzbv3siwfy50gmax3vvgs7nh0q8c")))) (build-system python-build-system) (arguments `(#:phases @@ -850,16 +851,15 @@ in userspace) (define-public python-m2crypto (package (name "python-m2crypto") - (version "0.29.0") + (version "0.30.1") (source (origin (method url-fetch) (uri (pypi-uri "M2Crypto" version)) (sha256 - (base32 "1h16gpilrnlzc0iyj1mnd1iqh8wchzjsxjqw9n344glimg2s5zm0")))) + (base32 "1iizrpkn4c2n70nvcjqlmnk6fz3vddkrjmwavz1zlsnwv8f7bcm1")))) (build-system python-build-system) (inputs `(("openssl" ,openssl))) - (propagated-inputs `(("python-typing" ,python-typing))) (home-page "https://gitlab.com/m2crypto/m2crypto") (synopsis "Python crypto and TLS toolkit") (description "@code{M2Crypto} is a complete Python wrapper for OpenSSL @@ -869,10 +869,15 @@ extensions to Python's httplib, urllib, and xmlrpclib; unforgeable HMAC'ing AuthCookies for web session management; FTP/TLS client and server; S/MIME; M2Crypto can also be used to provide TLS for Twisted. Smartcards supported through the Engine interface.") + (properties `((python2-variant . ,(delay python2-m2crypto)))) (license license:expat))) (define-public python2-m2crypto - (package-with-python2 python-m2crypto)) + (let ((m2crypto (package-with-python2 + (strip-python2-variant python-m2crypto)))) + (package (inherit m2crypto) + (propagated-inputs + `(("python2-typing" ,python2-typing)))))) (define-public python-pylibscrypt (package @@ -966,3 +971,33 @@ been constructed to maintain extensive documentation on how to use (description "This is a set of Python bindings for the scrypt key derivation function.") (license license:bsd-2))) + +(define-public python-service-identity + (package + (name "python-service-identity") + (version "17.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "service_identity" version)) + (sha256 + (base32 + "1aq24cn3nnsjr9g797dayhx4g653h6bd41ksqhidzq0rvarzn0a0")))) + (build-system python-build-system) + (propagated-inputs + `(("python-attrs" ,python-attrs) + ("python-pyasn1" ,python-pyasn1) + ("python-pyasn1-modules" ,python-pyasn1-modules) + ("python-pyopenssl" ,python-pyopenssl))) + (home-page "https://service-identity.readthedocs.io/") + (synopsis "Service identity verification for PyOpenSSL") + (description + "@code{service_identity} aspires to give you all the tools you need +for verifying whether a certificate is valid for the intended purposes. +In the simplest case, this means host name verification. However, +service_identity implements RFC 6125 fully and plans to add other +relevant RFCs too.") + (license license:expat))) + +(define-public python2-service-identity + (package-with-python2 python-service-identity)) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index d11a3f8c5c..a5b4b7578d 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr> -;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net> ;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a@scratchpost.org> ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr> @@ -60,6 +60,7 @@ #:use-module (gnu packages python-crypto) #:use-module (gnu packages tls) #:use-module (gnu packages time) + #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module ((guix licenses) #:prefix license:) #:use-module (srfi srfi-1)) @@ -67,22 +68,17 @@ (define-public python-aiohttp (package (name "python-aiohttp") - (version "3.1.3") + (version "3.4.4") (source (origin (method url-fetch) (uri (pypi-uri "aiohttp" version)) (sha256 (base32 - "1b888lggmyf2d08rfayq9khszzc0pav1z70ssc0b4d9kkr4g1klz")))) + "1ykm6kdjkrg556j0zd7dx2l1rsrbh0d9g27ivr6dmaahz9pyrbsi")))) (build-system python-build-system) (arguments - `(#:tests? #f)) ;FIXME: 2 errors, 2084 passed - (native-inputs - `(("python-async-generator" ,python-async-generator) - ("python-pytest" ,python-pytest) - ("python-pytest-capturelog" ,python-pytest-capturelog) - ("python-pytest-mock" ,python-pytest-mock))) + `(#:tests? #f)) ;missing pytest-timeout (propagated-inputs `(("python-aiodns" ,python-aiodns) ("python-async-timeout" ,python-async-timeout) @@ -255,6 +251,43 @@ other HTTP libraries.") (define-public python2-httplib2 (package-with-python2 python-httplib2)) +(define-public python-mechanicalsoup + (package + (name "python-mechanicalsoup") + (version "0.11.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "MechanicalSoup" version)) + (sha256 + (base32 "0k59wwk75q7nz6i6gynvzhagy02ql0bv7py3qqcwgjw7607yq4i7")))) + (build-system python-build-system) + (arguments + ;; TODO: Enable tests when python-flake8@3.5 hits master. + `(#:tests? #f)) + (propagated-inputs + `(("python-beautifulsoup4" ,python-beautifulsoup4) + ("python-lxml" ,python-lxml) + ("python-requests" ,python-requests) + ("python-six" ,python-six))) + ;; (native-inputs + ;; ;; For tests. + ;; `(("python-pytest-flake8" ,python-pytest-flake8) + ;; ("python-pytest-httpbin" ,python-pytest-httpbin) + ;; ("python-pytest-mock" ,python-pytest-mock) + ;; ("python-pytest-runner" ,python-pytest-runner) + ;; ("python-requests-mock" ,python-requests-mock))) + (home-page "https://mechanicalsoup.readthedocs.io/") + (synopsis "Python library for automating website interaction") + (description + "MechanicalSoup is a Python library for automating interaction with +websites. It automatically stores and sends cookies, follows redirects, and can +follow links and submit forms. It doesn’t do JavaScript.") + (license license:expat))) + +(define-public python2-mechanicalsoup + (package-with-python2 python-mechanicalsoup)) + (define-public python-sockjs-tornado (package (name "python-sockjs-tornado") @@ -405,7 +438,15 @@ C, yielding parse times that can be a thirtieth of the html5lib parse times.") (arguments ;; The tests attempt to access external web servers, so we cannot run ;; them. Furthermore, they are skipped altogether when using Python 2. - '(#:tests? #f)) + '(#:tests? #f + #:phases (modify-phases %standard-phases + (add-before 'build 'configure-tls-backend + (lambda _ + ;; XXX: PycURL fails to automatically determine which TLS + ;; backend to use when cURL is built with --disable-static. + ;; See setup.py and <https://github.com/pycurl/pycurl/pull/147>. + (setenv "PYCURL_SSL_LIBRARY" "gnutls") + #t))))) (native-inputs `(("python-nose" ,python-nose) ("python-bottle" ,python-bottle))) @@ -1724,7 +1765,10 @@ library.") (add-after 'install 'check (lambda* (#:key inputs outputs #:allow-other-keys) (add-installed-pythonpath inputs outputs) - (invoke "py.test" "src/geventhttpclient/tests" "-v") + (invoke "py.test" "src/geventhttpclient/tests" "-v" + ;; Append the test modules to sys.path to avoid + ;; namespace conflict which breaks SSL tests. + "--import-mode=append") #t))))) (native-inputs `(("python-pytest" ,python-pytest))) @@ -1945,6 +1989,31 @@ transfers.") `(("python2-futures" ,python2-futures) ,@(package-native-inputs base)))))) +(define-public python-slimit + (package + (name "python-slimit") + (version "0.8.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "slimit" version ".zip")) + (sha256 + (base32 + "02vj2x728rs1127q2nc27frrqra4fczivnb7gch6n5lzi7pxqczl")))) + (build-system python-build-system) + (native-inputs + `(("unzip" ,unzip))) + (propagated-inputs + `(("python-ply" ,python-ply))) + (home-page "https://slimit.readthedocs.io/") + (synopsis "JavaScript minifier, parser and lexer written in Python") + (description + "SlimIt is a JavaScript minifier written in Python. It compiles +JavaScript into more compact code so that it downloads and runs faster. +SlimIt also provides a library that includes a JavaScript parser, lexer, +pretty printer and a tree visitor.") + (license license:expat))) + (define-public python-flask-restful (package (name "python-flask-restful") @@ -2130,6 +2199,25 @@ It comes with safe defaults and easily configurable options.") (define-public python2-flask-htmlmin (package-with-python2 python-flask-htmlmin)) +(define-public python-jsmin + (package + (name "python-jsmin") + (version "2.2.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jsmin" version)) + (sha256 + (base32 + "0fsmqbjvpxvff0984x7c0y8xmf49ax9mncz48b9xjx8wrnr9kpxn")))) + (build-system python-build-system) + (home-page "https://github.com/tikitu/jsmin/") + (synopsis "Python JavaScript minifier") + (description + "@code{jsmin} is a JavaScript minifier, usable from both Python code and +on the command line.") + (license license:expat))) + (define-public python-flask-login (package (name "python-flask-login") @@ -2590,19 +2678,25 @@ available in Django, but is a standalone package.") (define-public python-paste (package (name "python-paste") - (version "2.0.3") + (version "3.0.4") (source (origin (method url-fetch) (uri (pypi-uri "Paste" version)) (sha256 (base32 - "062jk0nlxf6lb2wwj6zc20rlvrwsnikpkh90y0dn8cjch93s6ii3")) - (patches (search-patches "python-paste-remove-website-test.patch" - "python-paste-remove-timing-test.patch")))) + "01w26w9jyfkh0mfydhfz3dwy3pj3fw7mzvj0lna3vs8hyx1hwl0n")) + (patches (search-patches "python-paste-remove-timing-test.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; This test calls out to the internet. + (delete-file "tests/test_proxy.py") #t)))) (build-system python-build-system) (native-inputs - `(("python-nose" ,python-nose))) + `(("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner) + ("python-nose" ,python-nose))) (propagated-inputs `(("python-six" ,python-six))) (home-page "http://pythonpaste.org") diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 176bbb9416..22b87eba69 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -31,7 +31,7 @@ ;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org> ;;; Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> -;;; Copyright © 2016, 2017 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> @@ -55,6 +55,7 @@ ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2018 Luther Thompson <lutheroto@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -263,6 +264,10 @@ ((or "." "..") #f) (file (not + ;; FIXME: Add the 'support' directory + ;; in the next rebuild cycle, since it + ;; moved in 2.7.14. See also + ;; python2-futures below. (string-prefix? "test_support." file)))))) (call-with-output-file "__init__.py" (const #t)) @@ -2089,13 +2094,13 @@ cutting and pasting that code over and over.") (define-public python-unidecode (package (name "python-unidecode") - (version "0.04.21") + (version "1.0.23") (source (origin (method url-fetch) (uri (pypi-uri "Unidecode" version)) (sha256 (base32 - "0lfhp9c5xrbpjvbpr12ji52g1lx04404bzzdg6pvabhzisw6l2i8")))) + "1ysjbr3nqfqj97h8zyj3v9pya413vkv7a1mzml80w37xx15kb1cb")))) (build-system python-build-system) (home-page "https://pypi.python.org/pypi/Unidecode") (synopsis "ASCII transliterations of Unicode text") @@ -2170,6 +2175,42 @@ easier to build concurrent applications.") (define-public python2-pykka (package-with-python2 python-pykka)) +(define-public python-pympler + (package + (name "python-pympler") + (home-page "https://pythonhosted.org/Pympler/") + (version "0.5") + (source (origin + (method url-fetch) + (uri (pypi-uri "Pympler" version)) + (sha256 + (base32 + "03qwsbilqgvnbl3a1jmpgixbr2kq6m3fvdlzyr3wdp01bwlc85kx")))) + (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (add-installed-pythonpath inputs outputs) + (invoke "python" "setup.py" "test")))))) + (synopsis "Measure, monitor and analyze memory behavior") + (description + "Pympler is a development tool to measure, monitor and analyze +the memory behavior of Python objects in a running Python application. + +By pympling a Python application, detailed insight in the size and the +lifetime of Python objects can be obtained. Undesirable or unexpected +runtime behavior like memory bloat and other @samp{pymples} can easily +be identified. + +A web profiling frontend exposes process statistics, garbage +visualisation and class tracker statistics.") + (license license:asl2.0))) + +(define-public python2-pympler + (package-with-python2 python-pympler)) + (define-public python-itsdangerous (package (name "python-itsdangerous") @@ -2338,48 +2379,22 @@ logic-free templating system Mustache.") (define-public python-joblib (package (name "python-joblib") - (version "0.10.3") + (version "0.13.0") (source (origin (method url-fetch) (uri (pypi-uri "joblib" version)) (sha256 (base32 - "0787k919zlfmgymprz5bzv0v1df5bbirlf3awrghmjgvkrd9dci9")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Remove pre-compiled .pyc files from source. - (for-each delete-file-recursively - (find-files "." "__pycache__" #:directories? #t)) - (for-each delete-file (find-files "." "\\.pyc$")) - #t)))) + "0612nazad8dxmn3xghfrmjax6456l4xy6hn9cngs7vydi14ds7v5")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-failing-tests - (lambda _ - ;; This numpydoc tests fails for unknown reasons - (delete-file "doc/sphinxext/numpydoc/tests/test_docscrape.py") - ;; This numpydoc test depends on matplotlib, which is not a - ;; required input. - (delete-file "doc/sphinxext/numpydoc/tests/test_plot_directive.py") - ;; These tests fail to execute sys.executable - (substitute* "joblib/test/test_parallel.py" - (("import nose" line) - (string-append "from nose.plugins.skip import SkipTest\n" line)) - (("def test_nested_parallel_warnings" line) - (string-append "@SkipTest\n" line)) - (("def test_parallel_with_interactively_defined_functions" line) - (string-append "@SkipTest\n" line))) - #t))))) - ;; Provide nose to enable tests command + (replace 'check + (lambda _ (invoke "pytest" "-v" "joblib")))))) (native-inputs - `(("python-nose" ,python-nose) - ("python-sphinx" ,python-sphinx) - ("python-docutils" ,python-docutils) - ("python-numpydoc" ,python-numpydoc))) - (home-page "http://pythonhosted.org/joblib/") + `(("python-pytest" ,python-pytest))) + (home-page "https://joblib.readthedocs.io/") (synopsis "Using Python functions as pipeline jobs") (description "Joblib is a set of tools to provide lightweight pipelining in Python. @@ -2755,14 +2770,14 @@ interested parties to subscribe to events, or \"signals\".") (define-public pelican (package (name "pelican") - (version "3.6.3") + (version "3.7.1") (source (origin (method url-fetch) (uri (pypi-uri "pelican" version)) (sha256 (base32 - "1hn94rb4q3zmcq16in055xikal4dba5hfx3zznq7warllcgc9f8k")))) + "12spygavv9b6xpb5pgp7f0p3z0mms60nx6zrpx1yfkj68zz4flra")))) (build-system python-build-system) (propagated-inputs `(("python-feedgenerator" ,python-feedgenerator) @@ -2775,7 +2790,7 @@ interested parties to subscribe to events, or \"signals\".") ("python-six" ,python-six) ("python-dateutil" ,python-dateutil) ("python-markdown" ,python-markdown))) - (home-page "http://getpelican.com/") + (home-page "https://getpelican.com/") (arguments `(;; XXX Requires a lot more packages to do unit tests :P #:tests? #f @@ -2801,29 +2816,30 @@ and is very extensible.") (define-public python-scikit-image (package (name "python-scikit-image") - (version "0.11.3") + (version "0.14.1") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/s/scikit-image/scikit-image-" - version ".tar.gz")) + (uri (pypi-uri "scikit-image" version)) (sha256 - (base32 "0jz416fqvpahqyffw8plmszzfj669w8wvf3y9clnr5lr6a7md3kn")))) + (base32 "0l1c3rl4s1jyv80i5hns4pgih09zrxfj7lygdc51w8sgyysb7ac6")))) (build-system python-build-system) (arguments ;; TODO: Some tests require running X11 server. Disable them? '(#:tests? #f)) ;; See DEPENDS.txt for the list of build and run time requiremnts (propagated-inputs - `(("python-matplotlib" ,python-matplotlib) + `(("python-cloudpickle" ,python-cloudpickle) + ("python-dask" ,python-dask) + ("python-matplotlib" ,python-matplotlib) ("python-networkx" ,python-networkx) + ("python-numpy" ,python-numpy) + ("python-pillow" ,python-pillow) + ("python-pywavelets" ,python-pywavelets) ("python-scipy" ,python-scipy) - ("python-pillow" ,python-pillow))) - (native-inputs - `(("python-numpy" ,python-numpy) - ("python-cython" ,python-cython) ("python-six" ,python-six))) + (native-inputs + `(("python-cython" ,python-cython))) (home-page "http://scikit-image.org/") (synopsis "Image processing in Python") (description @@ -2922,7 +2938,7 @@ between language specification and implementation aspects.") (define-public python-numpy (package (name "python-numpy") - (version "1.15.1") + (version "1.15.4") (source (origin (method url-fetch) @@ -2931,7 +2947,7 @@ between language specification and implementation aspects.") version "/numpy-" version ".tar.gz")) (sha256 (base32 - "1yp75fkqk7abq3mrbqdf0pdmr2phkr2mnng0dbqqvvrmv7jwq71w")))) + "102vcl2qq4pjbm7a3d67vkkvn4466ngia1d8wi5avqwqh8j0jvkn")))) (build-system python-build-system) (inputs `(("openblas" ,openblas) @@ -3035,6 +3051,8 @@ include_dirs = ~a/include:~a/include (assoc-ref inputs "openblas") (assoc-ref inputs "lapack")))) #t)))))) + (native-inputs + `(("python2-nose" ,python2-nose))) (description "NumPy is the fundamental package for scientific computing with Python. It contains among other things: a powerful N-dimensional array object, sophisticated (broadcasting) functions, tools for integrating C/C++ @@ -4147,6 +4165,49 @@ a front-end for C compilers or analysis tools.") (define-public python2-pycparser (package-with-python2 python-pycparser)) +(define-public python-pywavelets + (package + (name "python-pywavelets") + (version "1.0.1") + (home-page "https://github.com/PyWavelets/pywt") + (source (origin + (method url-fetch) + (uri (pypi-uri "PyWavelets" version)) + (sha256 + (base32 + "1p3qv2v66ghnqrb1f98wyyhp9dz71jwcd6kfpsax65sfdpiyqp1w")))) + (build-system python-build-system) + (arguments + '(#:modules ((ice-9 ftw) + (srfi srfi-1) + (srfi srfi-26) + (guix build utils) + (guix build python-build-system)) + #:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (let ((cwd (getcwd)) + (libdir (find (cut string-prefix? "lib." <>) + (scandir "build")))) + (with-directory-excursion (string-append cwd "/build/" libdir) + (invoke "nosetests" "-v" ".")))))))) + (native-inputs + `(("python-matplotlib" ,python-matplotlib) ;for tests + ("python-nose" ,python-nose))) + (propagated-inputs + `(("python-numpy" ,python-numpy))) + (synopsis "Wavelet transforms in Python") + (description + "PyWavelets is a library for wavelet transforms in Python. Wavelets are +mathematical basis functions that are localized in both time and frequency. +Wavelet transforms are time-frequency transforms employing wavelets. They are +similar to Fourier transforms, the difference being that Fourier transforms are +localized only in frequency instead of in time and frequency.") + (license license:expat))) + +(define-public python2-pywavelets + (package-with-python2 python-pywavelets)) + (define-public python-xcffib (package (name "python-xcffib") @@ -5165,25 +5226,6 @@ of the structure, dynamics, and functions of complex networks.") (define-public python2-networkx (package-with-python2 python-networkx)) -;; Define new package, because the current version of python-colormath does -;; not build against 2.0. -(define-public python-networkx2 - (package (inherit python-networkx) - (name "python-networkx2") - (version "2.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "networkx" version ".zip")) - (sha256 - (base32 - "1ajl2jp8qry9nyjzzkqpy0vmsr14d23z1qk7y0vr5iwjbpvzhpyd")) - (patches - (search-patches "python-networkx2-reproducible-build.patch")))))) - -(define-public python2-networkx2 - (package-with-python2 python-networkx2)) - (define-public python-datrie (package (name "python-datrie") @@ -5196,6 +5238,14 @@ of the structure, dynamics, and functions of complex networks.") (base32 "08r0if7dry2q7p34gf7ffyrlnf4bdvnprxgydlfxgfnvq8f3f4bs")))) (build-system python-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (add-before 'build 'cythonize + (lambda _ + ;; Regenerate Cython classes to solve ABI issues with Python + ;; 3.7.0. See <https://github.com/pytries/datrie/issues/52>. + (invoke "cython" "src/datrie.pyx" "src/cdatrie.pxd" + "src/stdio_ext.pxd" "-a")))))) (native-inputs `(("python-cython" ,python-cython) ("python-hypothesis" ,python-hypothesis) @@ -5296,20 +5346,34 @@ SVG, EPS, PNG and terminal output.") (define-public python-seaborn (package (name "python-seaborn") - (version "0.7.1") + (version "0.9.0") (source (origin (method url-fetch) (uri (pypi-uri "seaborn" version)) (sha256 - (base32 "0pawrqc3mxpwd5g9pvi9gba02637bh5c8ldpp8izfwpfn52469zs")))) + (base32 "0bqysi3fxfjl1866m5jq8z7mynhqbqnikim74dmzn8539iwkzj3n")))) (build-system python-build-system) (arguments - '(#:tests? #f)) ; Tests requires a running X11 server. + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server"))) + ;; There must be a running X server and make check doesn't + ;; start one. Therefore we must do it. + (system (format #f "~a/bin/Xvfb :1 &" xorg-server)) + (setenv "DISPLAY" ":1") + #t))) + (replace 'check (lambda _ (invoke "pytest" "seaborn") #t))))) (propagated-inputs `(("python-pandas" ,python-pandas) ("python-matplotlib" ,python-matplotlib) + ("python-numpy" ,python-numpy) ("python-scipy" ,python-scipy))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("xorg-server" ,xorg-server))) (home-page "http://stanford.edu/~mwaskom/software/seaborn/") (synopsis "Statistical data visualization") (description @@ -5317,15 +5381,10 @@ SVG, EPS, PNG and terminal output.") graphics in Python. It is built on top of matplotlib and tightly integrated with the PyData stack, including support for numpy and pandas data structures and statistical routines from scipy and statsmodels.") - (license license:bsd-3) - (properties `((python2-variant . ,(delay python2-seaborn)))))) + (license license:bsd-3))) (define-public python2-seaborn - (let ((base (package-with-python2 (strip-python2-variant python-seaborn)))) - (package - (inherit base) - (propagated-inputs `(("python2-pytz" ,python2-pytz) - ,@(package-propagated-inputs base)))))) + (package-with-python2 python-seaborn)) (define-public python-mpmath (package @@ -5601,9 +5660,12 @@ so it might be a tiny bit slower.") (lambda _ (invoke "python" "waf" "--version"))) (replace 'install - (lambda _ - (copy-file "waf" %output) - #t))))) + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (install-file "waf" (string-append out "/bin"))) + #t)) + ;; waf breaks when it is wrapped. + (delete 'wrap)))) (home-page "https://waf.io/") (synopsis "Python-based build system") (description @@ -5775,7 +5837,9 @@ complexity of Python source code.") (define-public python2-pyflakes-0.8.1 (package-with-python2 python-pyflakes-0.8.1)) -(define-public python-flake8 +;; This package is used by hypothesis which has thousands of dependent packages. +;; FIXME: Consolidate this with "python-flake8" below in the next rebuild cycle. +(define-public python-flake8-3.5 (package (name "python-flake8") (version "3.5.0") @@ -5821,17 +5885,45 @@ PEP8_PLUGIN('break_before_binary_operator'),")) "The modular source code checker: pep8, pyflakes and co") (description "Flake8 is a wrapper around PyFlakes, pep8 and python-mccabe.") - (properties `((python2-variant . ,(delay python2-flake8)))) + (properties `((python2-variant . ,(delay python2-flake8-3.5)))) (license license:expat))) -(define-public python2-flake8 - (let ((base (package-with-python2 (strip-python2-variant python-flake8)))) +(define-public python2-flake8-3.5 + (let ((base (package-with-python2 (strip-python2-variant python-flake8-3.5)))) (package (inherit base) (propagated-inputs `(("python2-configparser" ,python2-configparser) ("python2-enum34" ,python2-enum34) ,@(package-propagated-inputs base)))))) +;; Version 3.5.0 has compatibility issues with Pyflakes 2.0, so we need +;; this newer version. Keep it as a separate variable for now to avoid +;; rebuilding "python-hypothesis"; this should be removed in the next +;; rebuild cycle. +(define-public python-flake8 + (package + (inherit python-flake8-3.5) + (version "3.6.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "flake8" version)) + (sha256 + (base32 + "0w0nprx22rbvrrkbfx9v5jc5gskbm08g219l7r8wai8zfswgadba")))) + (arguments + (substitute-keyword-arguments (package-arguments python-flake8-3.5) + ((#:phases phases) + `(modify-phases ,phases + (delete 'delete-broken-test) + (delete 'fix-problem-with-pycodestyle))))) + (properties `((python2-variant . ,(delay python2-flake8)))))) + +(define-public python2-flake8 + (let ((base (package-with-python2 (strip-python2-variant python-flake8)))) + (package (inherit base) + (propagated-inputs + (package-propagated-inputs python2-flake8-3.5))))) + ;; python-hacking requires flake8 <2.6.0. (define-public python-flake8-2.5 (package @@ -5898,14 +5990,14 @@ plugins that intend to support Flake8 2.x and 3.x simultaneously.") (define-public python-mistune (package (name "python-mistune") - (version "0.8.3") + (version "0.8.4") (source (origin (method url-fetch) (uri (pypi-uri "mistune" version)) (sha256 (base32 - "06b662p6kf46wh2jsabaqhaq4bz1srh2zxkrnx4yg96azlxw645w")))) + "0vkmsh0x480rni51lhyvigfdf06b9247z868pk3bal1wnnfl58sr")))) (build-system python-build-system) (native-inputs `(("python-nose" ,python-nose) @@ -5922,25 +6014,19 @@ Python.") (define-public python-markdown (package (name "python-markdown") - (version "2.6.11") + (version "3.0.1") (source (origin (method url-fetch) (uri (pypi-uri "Markdown" version)) (sha256 (base32 - "108g80ryzykh8bj0i7jfp71510wrcixdi771lf2asyghgyf8cmm8")))) + "0z6v8649sr434d5r5zmrhydka7v7f9yas4bwcgkcs0650jdhybnh")))) (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (zero? (system* "python" "run-tests.py"))))))) (native-inputs `(("python-nose" ,python-nose) ("python-pyyaml" ,python-pyyaml))) - (home-page "https://pythonhosted.org/Markdown/") + (home-page "https://python-markdown.github.io/") (synopsis "Python implementation of Markdown") (description "This package provides a Python implementation of John Gruber's @@ -6582,14 +6668,14 @@ responses, rather than doing any computation.") (define-public python-pip (package (name "python-pip") - (version "9.0.1") + (version "18.1") (source (origin (method url-fetch) (uri (pypi-uri "pip" version)) (sha256 (base32 - "03clr9c1dih5n9c00c592zzvf6r1ffimywkaq9agcqdllzhl7wh9")))) + "188fclay154s520n43s7cxxlhdaiysvxf19zk8vr1xbyjyyr58n0")))) (build-system python-build-system) (arguments '(#:tests? #f)) ; there are no tests in the pypi archive. @@ -7724,16 +7810,20 @@ otherwise matches 3.2’s API.") (define-public python2-futures (package (name "python2-futures") - (version "3.0.5") + (version "3.2.0") (source (origin (method url-fetch) (uri (pypi-uri "futures" version)) (sha256 (base32 - "1pw1z4329xvlabdpwqa6b7v2fxf7hl64m4cgr22ckbym8m8m4hh5")))) + "0rdjmmsab550kxsssdq49jcniz77zlkpw4pvi9hvib3lsskjmh4y")))) (build-system python-build-system) - (arguments `(#:python ,python-2)) + (arguments `(#:python ,python-2 + ;; FIXME: Python 2.7.14 moved the test.support library, + ;; but our package has not yet been adjusted. Enable + ;; tests when the python2 package has been fixed. + #:tests? #f)) (home-page "https://github.com/agronholm/pythonfutures") (synopsis "Backport of the concurrent.futures package from Python 3.2") @@ -8988,6 +9078,14 @@ own code, responding to click events and updating clock every second.") (arguments `(#:phases (modify-phases %standard-phases + (add-before 'check 'adjust-tests + (lambda _ + (when (which "python3") + ;; Adjust the example output to match that of Python 3.7: + ;; <https://github.com/ionelmc/python-tblib/issues/36>. + (substitute* "README.rst" + (("Exception\\('fail',") "Exception('fail'")) + #t))) (replace 'check (lambda _ ;; Upstream runs tests after installation and the package itself @@ -8996,7 +9094,7 @@ own code, responding to click events and updating clock every second.") (setenv "PYTHONPATH" (string-append (getcwd) "/build/lib:" (getenv "PYTHONPATH"))) - (zero? (system* "py.test" "-vv" "tests" "README.rst"))))))) + (invoke "py.test" "-vv" "tests" "README.rst")))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-six" ,python-six))) @@ -9020,13 +9118,13 @@ multiple processes (imagine multiprocessing, billiard, futures, celery etc). (define-public python-greenlet (package (name "python-greenlet") - (version "0.4.14") + (version "0.4.15") (source (origin (method url-fetch) (uri (pypi-uri "greenlet" version)) (sha256 (base32 - "1bsij3bwdhz2chq4ar2v6jqbh69yc7k9ymh41jd8vrdd2n52dk7i")))) + "1g4g1wwc472ds89zmqlpyan3fbnzpa8qm48z3z1y6mlk44z485ll")))) (build-system python-build-system) (home-page "https://greenlet.readthedocs.io/") (synopsis "Lightweight in-process concurrent programming") @@ -9040,16 +9138,40 @@ are synchronized with data exchanges on \"channels\".") (define-public python2-greenlet (package-with-python2 python-greenlet)) +(define-public python-objgraph + (package + (name "python-objgraph") + (version "3.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "objgraph" version)) + (sha256 + (base32 + "184m09am5gpbqfaiy7l0hwh476mczbrly1dffs0rw2p1d1i2q32a")))) + (build-system python-build-system) + (propagated-inputs + `(("python-graphviz" ,python-graphviz))) + (native-inputs + `(("python-mock" ,python-mock) + ("graphviz" ,graphviz))) + (home-page "https://mg.pov.lt/objgraph/") + (synopsis "Draw Python object reference graphs with graphviz") + (description + "This package provides tools to draw Python object reference graphs with +graphviz.") + (license license:expat))) + (define-public python-gevent (package (name "python-gevent") - (version "1.2.2") + (version "1.3.7") (source (origin (method url-fetch) (uri (pypi-uri "gevent" version)) (sha256 (base32 - "0bbbjvi423y9k9xagrcsimnayaqymg6f2dj76m9z3mjpkjpci4a7")) + "0b0fr04qdk1p4sniv87fh8z5psac60x01pv054kpgi94520g81iz")) (modules '((guix build utils))) (snippet '(begin @@ -9059,6 +9181,7 @@ are synchronized with data exchanges on \"channels\".") (build-system python-build-system) (arguments `(#:modules ((ice-9 ftw) + (ice-9 match) (srfi srfi-26) (guix build utils) (guix build python-build-system)) @@ -9081,11 +9204,28 @@ are synchronized with data exchanges on \"channels\".") (find-files "src/greentest" "\\.py$")) #t)) (add-before 'build 'do-not-use-bundled-sources - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) (setenv "CONFIG_SHELL" (which "bash")) (setenv "LIBEV_EMBED" "false") (setenv "CARES_EMBED" "false") (setenv "EMBED" "false") + + (let ((greenlet (string-append + (assoc-ref inputs "python-greenlet") + "/include"))) + (match (scandir greenlet + (lambda (item) + (string-prefix? "python" item))) + ((python) + (setenv "CPATH" + (string-append greenlet "/" python))))) + #t)) + (add-before 'check 'skip-timer-test + (lambda _ + ;; XXX: Skip 'TestTimerResolution', which appears to be + ;; unreliable. + (substitute* "src/greentest/test__core_timer.py" + (("not greentest.RUNNING_ON_CI") "False")) #t)) (replace 'check (lambda _ @@ -9106,7 +9246,8 @@ are synchronized with data exchanges on \"channels\".") (make-regexp "test_+(subprocess|core)") <>))))))))) (propagated-inputs - `(("python-greenlet" ,python-greenlet))) + `(("python-greenlet" ,python-greenlet) + ("python-objgraph" ,python-objgraph))) (native-inputs `(("libev-source" ,(package-source libev)) ("python-six" ,python-six))) @@ -9118,10 +9259,16 @@ are synchronized with data exchanges on \"channels\".") (description "gevent is a coroutine-based Python networking library that uses greenlet to provide a high-level synchronous API on top of the libev event loop.") - (license license:expat))) + (license license:expat) + (properties `((python2-variant . ,(delay python2-gevent)))))) (define-public python2-gevent - (package-with-python2 python-gevent)) + (let ((base (package-with-python2 + (strip-python2-variant python-gevent)))) + (package + (inherit base) + (native-inputs `(,@(package-native-inputs python-gevent) + ("python-mock" ,python2-mock)))))) (define-public python-fastimport (package @@ -9180,14 +9327,14 @@ focus on event-based network programming and multiprotocol integration.") (define-public python-pika (package (name "python-pika") - (version "0.10.0") + (version "0.12.0") (source (origin (method url-fetch) (uri (pypi-uri "pika" version)) (sha256 (base32 - "0nb4h08di432lv7dy2v9kpwgk0w92f24sqc2hw2s9vwr5b8v8xvj")))) + "0ld7akgm93s8pfa4dsx9qlzlhj76zspbr5m9ms0ns09yd2w4aq9h")))) (build-system python-build-system) (native-inputs `(("python-pyev" ,python-pyev) @@ -9456,13 +9603,13 @@ docstring and colored output.") (define-public python-lazy-object-proxy (package (name "python-lazy-object-proxy") - (version "1.2.2") + (version "1.3.1") (source (origin (method url-fetch) (uri (pypi-uri "lazy-object-proxy" version)) (sha256 (base32 - "0s22aqqkdscyh8sjspyyax7qa1aiz8p4midrnyf39717fhfczm6x")))) + "0yha7q9bhw857fwaby785d63mffhngl9npwzlk9i0pwlkwvbx4gb")))) (build-system python-build-system) (home-page "https://github.com/ionelmc/python-lazy-object-proxy") (synopsis "Lazy object proxy for python") @@ -9602,13 +9749,13 @@ addresses, and phone numbers.") (define-public python-pyaml (package (name "python-pyaml") - (version "17.7.2") + (version "18.11.0") (source (origin (method url-fetch) (uri (pypi-uri "pyaml" version)) (sha256 (base32 - "132grrw0ajq4nrappi3ldbkb952k7yn9b6c7csi2rmvzm1g6ppp2")))) + "0fi604ix8lbpj1266q7js6szm771saprdzzcdwmj43wy83694qmr")))) (build-system python-build-system) (native-inputs `(("python-unidecode" ,python-unidecode))) @@ -9684,20 +9831,25 @@ characters, mouse support, and auto suggestions.") (define-public python-jedi (package (name "python-jedi") - (version "0.12.1") + (version "0.13.1") (source (origin (method url-fetch) (uri (pypi-uri "jedi" version)) (sha256 (base32 - "1h8ypnjisn57kiv1zqrkj1im6sbfnhxllqaa8znh39qkd47ys2dl")))) + "0j11q42g5vjkyhhjpyy8nb0gdxs78m3rpjai7p1hvgpyl9rkyjdp")))) (build-system python-build-system) (arguments - `(#:phases + `( ;; Many tests are failing with Python 3.7.x as of version 0.13.1 (see: + ;; https://github.com/davidhalter/jedi/issues/1263) + #:tests? #f + #:phases (modify-phases %standard-phases - (replace 'check (lambda _ - (invoke "py.test" "-vv")))))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "py.test" "-vv"))))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-docopt" ,python-docopt))) @@ -9754,32 +9906,25 @@ etc.") (define-public python-stem (package (name "python-stem") - (version "1.6.0") + (version "1.7.0") (source (origin (method url-fetch) (uri (pypi-uri "stem" version)) (sha256 (base32 - "1va9p3ij7lxg6ixfsvaql06dn11l3fgpxmss1dhlvafm7sqizznp")))) + "1awiglfiajnx2hva9aqpj3fmdvdb4qg7cwnlfyih827m68y3cq8v")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - (add-before 'check 'fix-test-environment - (lambda _ - ;; Fixes: FileNotFoundError: [Errno 2] No such file or directory: - ;; '/tmp/guix-build-python-stem-1.6.0.drv-0/stem-1.6.0/.gitignore'. - (with-output-to-file ".gitignore" - (lambda _ (format #t "%"))) - #t)) (replace 'check (lambda _ (invoke "./run_tests.py" "--unit") #t))))) (native-inputs `(("python-mock" ,python-mock) - ("python-pep8" ,python-pep8) + ("python-pycodestyle" ,python-pycodestyle) ("python-pyflakes" ,python-pyflakes))) (home-page "https://stem.torproject.org/") (synopsis @@ -9826,7 +9971,7 @@ and/or Xon/Xoff. The port is accessed in RAW mode.") (define-public python-kivy (package (name "python-kivy") - (version "1.10.0") + (version "1.10.1") (source (origin (method url-fetch) @@ -9834,7 +9979,7 @@ and/or Xon/Xoff. The port is accessed in RAW mode.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1394zh6kvf7k5d8vlzxcsfcailr3q59xwg9b1n7qaf25bvyq1h98")))) + "1zzxjdp78hfjjiklzr82l4zwibwcq4j6kgicspqs6iyyfn5yisbw")))) (build-system python-build-system) (arguments `(#:tests? #f ; Tests require many optional packages @@ -9867,25 +10012,10 @@ hardware-accelerated multitouch applications.") (package-with-python2 python-kivy)) (define-public python-kivy-next - (let ((commit "a988c5e7a47da56263ff39514264a3de516ef2fe") - (revision "1")) - (package (inherit python-kivy) - (name "python-kivy-next") - (version (string-append "1.9.1-" revision "." - (string-take commit 7))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/kivy/kivy") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "0jk92b4a8l7blkvkgkjihk171s0dfnq582cckff5srwc8kal5m0p"))))))) + (deprecated-package "python-kivy-next" python-kivy)) (define-public python2-kivy-next - (package-with-python2 python-kivy-next)) + (deprecated-package "python2-kivy-next" python2-kivy)) (define-public python-binaryornot (package @@ -9944,13 +10074,13 @@ reasoning, wrappers for natural language processing libraries.") (define-public python-pymongo (package (name "python-pymongo") - (version "3.3.0") + (version "3.7.2") (source (origin (method url-fetch) (uri (pypi-uri "pymongo" version)) (sha256 (base32 - "07mra6w86wjqy4lx5fvimidjhhfzd562gfjn8grsnbv2q8pk0i9x")))) + "0zis4707r9hdg5qgkhp3wss9camr9h56ixyfc8n9dxwlnnly4x4c")))) (build-system python-build-system) (propagated-inputs `(("python-certifi" ,python-certifi))) @@ -10077,26 +10207,41 @@ Python to manipulate OpenDocument 1.2 files.") (define-public python-natsort (package (name "python-natsort") - (version "5.0.2") + (version "5.4.1") (source (origin (method url-fetch) (uri (pypi-uri "natsort" version)) (sha256 (base32 - "0bh6j0l8iapjnsgg3bs6q075cnzjl6zw1vlgqyv3qrygm2cxypkn")))) + "0i732amg6yzkx4g4c9j09jmqq39q377x9cl2nbkm5hax2c2v0wxf")))) (build-system python-build-system) (arguments - `(#:phases + `(#:modules ((guix build utils) + (guix build python-build-system) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 ftw)) + #:phases (modify-phases %standard-phases (add-before 'check 'set-cachedir ;; Tests require write access to $HOME by default - (lambda _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t))))) + (lambda _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t)) + (replace 'check + (lambda _ + (let ((cwd (getcwd))) + (setenv "PYTHONPATH" + (string-append + cwd "/build/" + (find (cut string-prefix? "lib" <>) + (scandir (string-append cwd "/build"))) + ":" + (getenv "PYTHONPATH"))) + (invoke "pytest" "-v"))))))) (native-inputs `(("python-hypothesis" ,python-hypothesis) - ("python-pytest-cache" ,python-pytest-cache) ("python-pytest-cov" ,python-pytest-cov) - ("python-pytest-flakes" ,python-pytest-flakes) - ("python-pytest-pep8" ,python-pytest-pep8))) + ("python-pytest-mock" ,python-pytest-mock) + ("python-pytest" ,python-pytest))) (propagated-inputs ; TODO: Add python-fastnumbers. `(("python-pyicu" ,python-pyicu))) (home-page "https://github.com/SethMMorton/natsort") @@ -10118,8 +10263,6 @@ functionality in the command line.") (package (inherit base) (native-inputs `(("python2-pathlib" ,python2-pathlib) - ("python2-mock" ,python2-mock) - ("python2-enum34" ,python2-enum34) ,@(package-native-inputs base)))))) (define-public python-glances @@ -10462,6 +10605,31 @@ useful as a validator for JSON data.") (define-public python2-validictory (package-with-python2 python-validictory)) +(define-public python-pyelftools + (package + (name "python-pyelftools") + (version "0.25") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pyelftools" version)) + (sha256 + (base32 + "090vdksbz341f7ljvr0zswblw4lspa8qaiikzyjkf318arpxmil9")))) + (build-system python-build-system) + ;; Test suite requires python-setuptools + (native-inputs + `(("python-setuptools" ,python-setuptools))) + (home-page + "https://github.com/eliben/pyelftools") + (synopsis + "Analyze binary and library file information") + (description "This Python library provides interfaces for parsing and +analyzing two binary and library file formats; the Executable and Linking +Format (ELF), and debugging information in the Debugging With Attributed +Record Format (DWARF).") + (license license:public-domain))) + (define-public python-pyev (package (name "python-pyev") @@ -10598,23 +10766,53 @@ possible on all supported Python versions.") (propagated-inputs `(("python2-bz2file" ,python2-bz2file) ,@(package-propagated-inputs base)))))) -(define-public python2-cheetah +(define-public python-cheetah (package - (name "python2-cheetah") - (version "2.4.4") + (name "python-cheetah") + (version "3.1.0") (source (origin (method url-fetch) - (uri (pypi-uri "Cheetah" version)) + (uri (pypi-uri "Cheetah3" version)) (sha256 (base32 - "0l5mm4lnysjkzpjr95q5ydm9xc8bv43fxmr79ypybrf1y0lq4c5y")))) + "1ihag9cxll6b86fc8v5lkhmr3brdbi4yiz16zpgw79yylmv8fgr9")))) (build-system python-build-system) (arguments - `(#:python ,python-2)) - (propagated-inputs - `(("python2-markdown" ,python2-markdown))) - (home-page "https://pythonhosted.org/Cheetah/") + `(#:modules ((guix build utils) + (guix build python-build-system) + (ice-9 ftw) + (srfi srfi-1) + (srfi srfi-26)) + #:phases (modify-phases %standard-phases + (add-after 'unpack 'use-absolute-python + (lambda _ + (substitute* "Cheetah/CheetahWrapper.py" + (("#!/usr/bin/env python") + (string-append "#!" (which "python")))) + #t)) + (replace 'check + (lambda _ + (let ((cwd (getcwd))) + (setenv "PYTHONPATH" + (string-append + cwd "/build/" + (find (cut string-prefix? "lib" <>) + (scandir (string-append cwd "/build"))) + ":" (getenv "PYTHONPATH"))) + (setenv "PATH" + (string-append (getenv "PATH") + ":" cwd "/bin")) + (setenv "TMPDIR" "/tmp") + + (substitute* "Cheetah/Tests/Test.py" + (("unittest.TextTestRunner\\(\\)") + "unittest.TextTestRunner(verbosity=2)")) + + (invoke "python" "Cheetah/Tests/Test.py"))))))) + (propagated-inputs + `(("python-markdown" ,python-markdown))) ;optional + (home-page "http://cheetahtemplate.org/") (synopsis "Template engine") (description "Cheetah is a text-based template engine and Python code generator. @@ -10642,6 +10840,9 @@ Features: @end enumerate") (license (license:x11-style "file://LICENSE")))) +(define-public python2-cheetah + (package-with-python2 python-cheetah)) + (define-public python-dulwich (package (name "python-dulwich") @@ -11084,17 +11285,36 @@ and bit flag values.") (define-public python-attrs (package (name "python-attrs") - (version "17.4.0") + (version "18.2.0") (source (origin (method url-fetch) (uri (pypi-uri "attrs" version)) (sha256 (base32 - "1jafnn1kzd6qhxgprhx6y6ik1r5m2rilx25syzcmq03azp660y8w")))) + "0s9ydh058wmmf5v391pym877x4ahxg45dw6a0w4c7s5wgpigdjqh")))) (build-system python-build-system) + (arguments + `(#:modules ((guix build utils) + (guix build python-build-system) + (ice-9 ftw) + (srfi srfi-1) + (srfi srfi-26)) + #:phases (modify-phases %standard-phases + (replace 'check + (lambda _ + (let ((cwd (getcwd))) + (setenv "PYTHONPATH" + (string-append + cwd "/build/" + (find (cut string-prefix? "lib" <>) + (scandir (string-append cwd "/build"))) + ":" + (getenv "PYTHONPATH"))) + (invoke "python" "-m" "pytest"))))))) (native-inputs `(("python-coverage" ,python-coverage) ("python-hypothesis" ,python-hypothesis) + ("python-pympler" ,python-pympler) ("python-pytest" ,python-pytest) ("python-six" ,python-six) ("python-sphinx" ,python-sphinx) @@ -11113,6 +11333,15 @@ protocols.") (package (inherit python-attrs) (name "python-attrs-bootstrap") + ;; Keep this on a fixed version so python-attrs can be updated without + ;; triggering a mass-rebuild. FIXME: Update this in the next rebuild cycle. + (version "17.4.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "attrs" version)) + (sha256 + (base32 + "1jafnn1kzd6qhxgprhx6y6ik1r5m2rilx25syzcmq03azp660y8w")))) (native-inputs `()) (arguments `(#:tests? #f)))) @@ -11272,28 +11501,37 @@ clone, while other processes access the original tree.") (define-public python-astroid (package (name "python-astroid") - (version "1.5.3") + (version "2.0.4") (source (origin (method url-fetch) - (uri (string-append - "https://github.com/PyCQA/astroid/archive/astroid-" - version ".tar.gz")) + (uri (pypi-uri "astroid" version)) (sha256 (base32 - "0isn5p7f9n48hmksgbrj7dkm9dyglnayzn5jngk37qywg8a74ngn")))) + "138svbm88w5k0y2nvl4svyas1jfhcc5iy0d2ywkbcpn9kq8ks0f7")))) (build-system python-build-system) (propagated-inputs `(("python-lazy-object-proxy" ,python-lazy-object-proxy) ("python-six" ,python-six) ("python-wrapt" ,python-wrapt))) + (native-inputs + `(("python-dateutil" ,python-dateutil) + ("python-nose" ,python-nose) + ("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'remove-spurious-test + (lambda _ + ;; This can be removed after upgrading from python-3.7 + ;; https://github.com/PyCQA/astroid/issues/593 + ;; https://bugs.python.org/issue34056 + (delete-file "astroid/tests/unittest_modutils.py") + #t)) (replace 'check - (lambda _ - (zero? (system* "python" "-m" "unittest" "discover" - "-p" "unittest*.py"))))))) + (lambda _ + (invoke "pytest" "astroid")))))) (home-page "https://github.com/PyCQA/astroid") (synopsis "Common base representation of python source code for pylint and other projects") @@ -11313,12 +11551,35 @@ builds partial trees by inspecting living objects.") (let ((base (package-with-python2 (strip-python2-variant python-astroid)))) (package (inherit base) - (propagated-inputs - `(("python2-backports-functools-lru-cache" - ,python2-backports-functools-lru-cache) - ("python2-enum34" ,python2-enum34) - ("python2-singledispatch" ,python2-singledispatch) - ,@(package-propagated-inputs base)))))) + ;; Version 2.x removes python2 support. + (version "1.6.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "astroid" version)) + (sha256 + (base32 + "0fir4b67sm7shcacah9n61pvq313m523jb4q80sycrh3p8nmi6zw")))) + (arguments + (substitute-keyword-arguments (package-arguments base) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'remove-spurious-test + (lambda _ + ;; https://github.com/PyCQA/astroid/issues/276 + (delete-file "astroid/tests/unittest_brain.py") + #t)) + (replace 'check + (lambda _ + (invoke"python" "-m" "unittest" "discover" + "-p" "unittest*.py"))))))) + (native-inputs `()) + (propagated-inputs + `(("python2-backports-functools-lru-cache" + ,python2-backports-functools-lru-cache) + ("python2-enum34" ,python2-enum34) + ("python2-singledispatch" ,python2-singledispatch) + ,@(package-propagated-inputs base)))))) (define-public python-isort (package @@ -11843,14 +12104,14 @@ Supported metrics are: (define-public python-sure (package (name "python-sure") - (version "1.4.6") + (version "1.4.11") (source (origin (method url-fetch) (uri (pypi-uri "sure" version)) (sha256 (base32 - "1iyqsy2d6radi88g1qf0lziy5b39h5cpb3g5jiqyb4xi46ig3x1z")))) + "1and0drq8w9iplsic22n2h7hkpyq03a1mbqk4sgcdqhqzdqm539w")))) (build-system python-build-system) (propagated-inputs `(("python-mock" ,python-mock) @@ -12278,14 +12539,14 @@ validating Swagger API specifications.") (define-public python-apache-libcloud (package (name "python-apache-libcloud") - (version "2.0.0") + (version "2.3.0") (source (origin (method url-fetch) (uri (pypi-uri "apache-libcloud" version)) (sha256 (base32 - "1a71z02ckcxld72k4qgmdnkjan52c4wczncs3p2mp5yafh7dsan7")))) + "15xg79ad4g2xrk081ylvj41k5hmg9hl1xvbmb5hd0fqn08wfwbhf")))) (build-system python-build-system) (arguments `(#:phases @@ -12314,6 +12575,11 @@ class ShellOutSSHClientTests") (("'.xf0.x90.x8d.x88'") "b'\\xF0\\x90\\x8D\\x88'") (("'.xF0', '.x90', '.x8D', '.x88'") "b'\\xF0', b'\\x90', b'\\x8D', b'\\x88'")) + #t)) + (add-before 'check 'copy-secret + (lambda _ + (copy-file "libcloud/test/secrets.py-dist" + "libcloud/test/secrets.py") #t))))) (inputs `(("openssh" ,openssh))) @@ -12323,6 +12589,8 @@ class ShellOutSSHClientTests") (native-inputs `(("python-lockfile" ,python-lockfile) ("python-mock" ,python-mock) + ("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner) ("python-requests-mock" ,python-requests-mock))) (home-page "https://libcloud.apache.org/") (synopsis "Unified Cloud API") @@ -12734,15 +13002,17 @@ embeddable JavaScript engine.") (define-public python-jsonrpclib-pelix (package (name "python-jsonrpclib-pelix") - (version "0.3.1") + (version "0.3.2") (source (origin (method url-fetch) (uri (pypi-uri "jsonrpclib-pelix" version)) (sha256 (base32 - "1qs95vxplxwspbrqy8bvc195s58iy43qkf75yrjfql2sim8b25sl")))) + "0f83z5zi7w32vprhk1dyc94ir1bh4hdd57bjdbwkq9ykng8qilhl")))) (build-system python-build-system) + (arguments + `(#:tests? #f)) ; no tests in PyPI tarball (home-page "https://github.com/tcalmant/jsonrpclib/") (synopsis "JSON-RPC 2.0 client library for Python") (description @@ -12785,26 +13055,40 @@ belong to tagged versions.") (define-public python-pyclipper (package (name "python-pyclipper") - (version "1.0.6") + (version "1.1.0.post1") (source (origin (method url-fetch) (uri (pypi-uri "pyclipper" version ".zip")) (sha256 (base32 - "1zpmwv3bya3j984y5cf9x9d5108kf6mxldcba68wiq0frv5qrssw")))) + "0ldbkbnx94an4zzrwb1sxmg6k0jgk4cwmvcdyy8y5k1zslc612wa")) + (modules '((guix build utils))) + (snippet + '(begin + ;; This file is generated by Cython. + (delete-file "pyclipper/pyclipper.cpp") #t)))) (build-system python-build-system) (arguments - `(#:tests? #f)); 8 Tests fail, 37 succeed + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'cythonize-sources + (lambda _ + (with-directory-excursion "pyclipper" + (invoke "cython" "--cplus" "pyclipper.pyx"))))))) (propagated-inputs `(("python-setuptools-scm-git-archive" ,python-setuptools-scm-git-archive))) (native-inputs - `(("unzip" ,unzip))) + `(("python-cython" ,python-cython) + ("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner) + ("python-unittest2" ,python-unittest2) + ("unzip" ,unzip))) (home-page "https://github.com/greginvm/pyclipper") (synopsis "Wrapper for Angus Johnson's Clipper library") (description "Pyclipper is a Cython wrapper for the C++ translation of the - Angus Johnson's polygon clipping Clipper library (ver. 6.2.1).") +Angus Johnson's polygon clipping Clipper library (ver. 6.4.2).") (license license:expat))) (define-public python2-pyclipper @@ -13147,14 +13431,14 @@ user's @file{~/Trash} directory.") (define-public python-yapf (package (name "python-yapf") - (version "0.21.0") + (version "0.24.0") (source (origin (method url-fetch) (uri (pypi-uri "yapf" version)) (sha256 (base32 - "144gc7d6b1415vh02409rnb8qd5kxi6mxlr7y64d5cizgxbf72kx")))) + "0anwby0ydmyzcsgjc5dn1ryddwvii4dq61vck447q0n96npnzfyf")))) (build-system python-build-system) (home-page "https://github.com/google/yapf") (synopsis "Formatter for Python code") @@ -13691,14 +13975,14 @@ generators and Python 3.7's context managers into Python 3.5.") (define-public python-async-timeout (package (name "python-async-timeout") - (version "2.0.1") + (version "3.0.1") (source (origin (method url-fetch) (uri (pypi-uri "async-timeout" version)) (sha256 (base32 - "1l3kg062m02mph6rf9rdv8r5c5n356clxa6b6mrn0i77vk9g9kq0")))) + "0pscbyr840m7fyfc3r8zv9kgkwdcn9f78p7zsrczciwd09m82g0c")))) (build-system python-build-system) (home-page "https://github.com/aio-libs/async_timeout/") (synopsis "Timeout context manager for asyncio programs") @@ -13900,10 +14184,16 @@ introspection.") @item Inter-process locks @item Generic helpers @end itemize\n") + (properties `((python2-variant . ,(delay python2-fasteners)))) (license license:asl2.0))) (define-public python2-fasteners - (package-with-python2 python-fasteners)) + (let ((base (package-with-python2 (strip-python2-variant python-fasteners)))) + (package + (inherit base) + (propagated-inputs + `(("python2-futures" ,python2-futures) + ,@(package-propagated-inputs base)))))) (define-public python-requests-file (package @@ -14222,6 +14512,9 @@ library's @code{threading} module.") functions, and dictionaries.") (license license:bsd-3))) +(define-public python2-toolz + (package-with-python2 python-toolz)) + (define-public python-cytoolz (package (name "python-cytoolz") @@ -14273,14 +14566,14 @@ pure-Python.") (define-public python-cloudpickle (package (name "python-cloudpickle") - (version "0.5.5") + (version "0.6.1") (source (origin (method url-fetch) (uri (pypi-uri "cloudpickle" version)) (sha256 (base32 - "0gdg5n025v4wqmdg65rm0n6fvp6731ip30ji0rmn2kqsyr4bb93f")))) + "1wdw89mlm7fqa3fm3ymskx05jrys66n8m1z1a8s0mss0799ahsgi")))) (build-system python-build-system) ;; FIXME: there are 5 errors in 122 tests: ;; ERROR: test_function_pickle_compat_0_4_0 (tests.cloudpickle_test.CloudPickleTest) @@ -14304,6 +14597,9 @@ shipped over the network to execute on remote hosts, possibly close to the data.") (license license:bsd-3))) +(define-public python2-cloudpickle + (package-with-python2 python-cloudpickle)) + (define-public python-locket (package (name "python-locket") @@ -14323,6 +14619,9 @@ data.") they use the same path.") (license license:bsd-2))) +(define-public python2-locket + (package-with-python2 python-locket)) + (define-public python-blosc (package (name "python-blosc") @@ -14354,17 +14653,20 @@ regular-spaced values, etc. This Python package wraps the Blosc library.") (license license:bsd-3))) +(define-public python2-blosc + (package-with-python2 python-blosc)) + (define-public python-partd (package (name "python-partd") - (version "0.3.8") + (version "0.3.9") (source (origin (method url-fetch) (uri (pypi-uri "partd" version)) (sha256 (base32 - "03s0i5qfgkx6y24bmfgyd5hnsjznkbbfafwb2khf7k9790f1yab7")))) + "0sz6rwlnl4fqq220pyz863cnv0gjdxl4m7lscl71ishl5z0xkmhz")))) (build-system python-build-system) (propagated-inputs `(("python-blosc" ,python-blosc) @@ -14379,17 +14681,20 @@ This Python package wraps the Blosc library.") append on old values. Partd excels at shuffling operations.") (license license:bsd-3))) +(define-public python2-partd + (package-with-python2 python-partd)) + (define-public python-dask (package (name "python-dask") - (version "0.19.0") + (version "1.0.0") (source (origin (method url-fetch) (uri (pypi-uri "dask" version)) (sha256 (base32 - "1pm1163qb6s22p8fnvj0zlfazihvs7hxjn8l2n52bzs7shw6kdz3")))) + "1xwz8h020ipwav2p5gcq9pskya1cvzd6hjyvd06dvr3w5lxlmym1")))) (build-system python-build-system) ;; A single test out of 5000+ fails. This test is marked as xfail when ;; pytest-xdist is used. @@ -14402,7 +14707,16 @@ append on old values. Partd excels at shuffling operations.") (("def test_interrupt\\(\\)" m) (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n" m))) - #t))))) + (when (which "python2") + ;; This test fails with recent Pandas: + ;; <https://github.com/dask/dask/issues/3794>. + (substitute* "dask/dataframe/tests/test_dataframe.py" + (("def test_info\\(\\)" m) + (string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n" + m)))) + #t)) + (replace 'check + (lambda _ (invoke "pytest" "-vv")))))) (propagated-inputs `(("python-cloudpickle" ,python-cloudpickle) ("python-numpy" ,python-numpy) @@ -14423,3 +14737,143 @@ extend common interfaces like NumPy, Pandas, or Python iterators to larger-than-memory or distributed environments. These parallel collections run on top of the dynamic task schedulers. ") (license license:bsd-3))) + +(define-public python2-dask + (package-with-python2 python-dask)) + +(define-public python-ilinkedlist + (package + (name "python-ilinkedlist") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ilinkedlist" version)) + (sha256 + (base32 + "0nrw4sr3afldrp7073hvc0rgdz282s0l819jdmj1i6nn05v33h0l")))) + (build-system python-build-system) + (native-inputs `(("python-pytest" ,python-pytest))) + (inputs `(("python" ,python))) + (home-page "https://github.com/luther9/ilinkedlist-py") + (synopsis "Immutable linked list library") + (description + "This is a implementation of immutable linked lists for Python. It +contains @code{nil} (the empty linked list) and a @code{Pair} class for nodes. +Since a linked list is treated as immutable, it is hashable, and its length +can be retrieved in constant time. Some of the terminology is inspired by +LISP. It is possible to create an improper list by creating a @code{Pair} +with a non-list @code{cdr}.") + (license license:gpl3+))) + +(define-public python-readlike + (package + (name "python-readlike") + (version "0.1.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "readlike" version)) + (sha256 + (base32 "027w8fvi50ksl57q0a7kb5zvmq8jxaawnviib1jdqw0p3igvm1j4")))) + (build-system python-build-system) + (home-page "https://github.com/jangler/readlike") + (synopsis "GNU Readline-like line editing module") + (description + "This Python module provides line editing functions similar to the default +Emacs-style ones of GNU Readline. Unlike the Python standard library's +@code{readline} package, this one allows access to those capabilties in settings +outside of a standard command-line interface. It is especially well-suited to +interfacing with Urwid, due to a shared syntax for describing key inputs. + +Currently, all stateless Readline commands are implemented. Yanking and history +are not supported.") + (license license:expat))) + +(define-public python2-readlike + (package-with-python2 python-readlike)) + +(define-public python-reparser + (package + (name "python-reparser") + (version "1.4.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "ReParser" version)) + (sha256 + (base32 "0nniqb69xr0fv7ydlmrr877wyyjb61nlayka7xr08vlxl9caz776")))) + (build-system python-build-system) + (home-page "https://github.com/xmikos/reparser") + (synopsis "Simple lexer/parser for inline markup based on regular expressions") + (description + "This Python library provides a simple lexer/parser for inline markup based +on regular expressions.") + (license license:expat))) + +(define-public python2-reparser + (let ((reparser (package-with-python2 + (strip-python2-variant python-reparser)))) + (package (inherit reparser) + (propagated-inputs + `(("python2-enum34" ,python2-enum34) + ,@(package-propagated-inputs reparser)))))) + +(define-public python-precis-i18n + (package + (name "python-precis-i18n") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "precis_i18n" version)) + (sha256 + (base32 + "0gjhvwd8aifx94rl1ag08vlmndyx2q3fkyqb0c4i46x3p2bc2yi2")))) + (build-system python-build-system) + (home-page "https://github.com/byllyfish/precis_i18n") + (synopsis "Implementation of the PRECIS framework") + (description + "This module implements the PRECIS Framework as described in RFC 8264, +RFC 8265 and RFC 8266.") + (license license:expat))) + +(define-public python-wikidata + (package + (name "python-wikidata") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Wikidata" version)) + (sha256 + (base32 + "08nlnydddfp1jj0cdmshvld1irzngbp3dij928wqsg9ziklm6mw9")))) + (build-system python-build-system) + (propagated-inputs + `(("python-babel" ,python-babel))) + (home-page "https://github.com/dahlia/wikidata") + (synopsis "Wikidata client library") + (description + "This package provides a Python interface to +@url{https://www.wikidata.org/, Wikidata}.") + (properties '((upstream-name . "Wikidata"))) + (license license:gpl3+))) + +(define-public python-attr + (package + (name "python-attr") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "attr" version)) + (sha256 + (base32 + "0pbpskvxp5hzdvcaf766ljwpckshir8sf7z6jqji6zyib20594ch")))) + (build-system python-build-system) + (home-page "https://github.com/denis-ryzhkov/attr") + (synopsis "Decorator for attributes of target function or class") + (description "Simple decorator to set attributes of target function or +class in a @acronym{DRY, Don't Repeat Yourself} way.") + (license license:expat))) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 7d1a4ca585..2b8b5923aa 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> -;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be> @@ -10,6 +10,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Hartmut Goebel <h.goebel@crazy-compilers.com> +;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -64,9 +65,11 @@ #:use-module (gnu packages ruby) #:use-module (gnu packages sdl) #:use-module (gnu packages tls) + #:use-module (gnu packages vulkan) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg) - #:use-module (gnu packages xml)) + #:use-module (gnu packages xml) + #:use-module (srfi srfi-1)) (define-public grantlee (package @@ -105,7 +108,7 @@ system, and the core design of Django is reused in Grantlee.") (define-public qt (package (name "qt") - (version "5.11.1") + (version "5.11.2") (outputs '("out" "examples")) (source (origin (method url-fetch) @@ -118,7 +121,8 @@ system, and the core design of Django is reused in Grantlee.") version ".tar.xz")) (sha256 (base32 - "0azva1wx298jh0xskymz8jic83yhxs1xfxf321wqd5lwiyq2qq1r")) + "10faac59jvz6dxxljdkaknlxazpnaxgvqdcszabfbbkc1f24n466")) + (patches (search-patches "qt-5-renameat2.patch")) (modules '((guix build utils))) (snippet '(begin @@ -135,7 +139,7 @@ system, and the core design of Django is reused in Grantlee.") (lambda (dir) (delete-file-recursively (string-append "qtbase/src/3rdparty/" dir))) (list "double-conversion" "freetype" "harfbuzz-ng" - "libpng" "libjpeg" "pcre2" "xcb" + "libpng" "libjpeg" "pcre2" "sqlite" "xcb" "xkbcommon" "zlib")) (for-each (lambda (dir) @@ -206,7 +210,7 @@ system, and the core design of Django is reused in Grantlee.") ("postgresql" ,postgresql) ("pulseaudio" ,pulseaudio) ("pcre2" ,pcre2) - ;("sqlite" ,sqlite) + ("sqlite" ,sqlite-with-column-metadata) ("udev" ,eudev) ("unixodbc" ,unixodbc) ("wayland" ,wayland) @@ -224,6 +228,7 @@ system, and the core design of Django is reused in Grantlee.") ("pkg-config" ,pkg-config) ("python" ,python-2) ("ruby" ,ruby) + ("vulkan-headers" ,vulkan-headers) ("which" ,(@ (gnu packages base) which)))) (arguments `(#:parallel-build? #f ; Triggers race condition in qtbase module on Hydra. @@ -246,51 +251,51 @@ system, and the core design of Django is reused in Grantlee.") (("/bin/ls") (which "ls"))) ;; do not pass "--enable-fast-install", which makes the ;; configure process fail - (zero? (system* - "./configure" - "-verbose" - "-prefix" out - "-docdir" (string-append out "/share/doc/qt5") - "-headerdir" (string-append out "/include/qt5") - "-archdatadir" (string-append out "/lib/qt5") - "-datadir" (string-append out "/share/qt5") - "-examplesdir" (string-append - examples "/share/doc/qt5/examples") ; 151MiB - "-opensource" - "-confirm-license" - - ;; These features require higher versions of Linux than the - ;; minimum version of the glibc. See - ;; src/corelib/global/minimum-linux_p.h. By disabling these - ;; features Qt5 applications can be used on the oldest - ;; kernels that the glibc supports, including the RHEL6 - ;; (2.6.32) and RHEL7 (3.10) kernels. - "-no-feature-getentropy" ; requires Linux 3.17 - "-no-feature-renameat2" ; requires Linux 3.16 - - ;; Do not build examples; for the time being, we - ;; prefer to save the space and build time. - "-no-compile-examples" - ;; Most "-system-..." are automatic, but some use - ;; the bundled copy by default. - ;"-system-sqlite" - "-system-harfbuzz" - "-system-pcre" - ;; explicitly link with openssl instead of dlopening it - "-openssl-linked" - ;; explicitly link with dbus instead of dlopening it - "-dbus-linked" - ;; don't use the precompiled headers - "-no-pch" - ;; drop special machine instructions not supported - ;; on all instances of the target - ,@(if (string-prefix? "x86_64" - (or (%current-target-system) - (%current-system))) - '() - '("-no-sse2")) - "-no-mips_dsp" - "-no-mips_dspr2"))))) + (invoke + "./configure" + "-verbose" + "-prefix" out + "-docdir" (string-append out "/share/doc/qt5") + "-headerdir" (string-append out "/include/qt5") + "-archdatadir" (string-append out "/lib/qt5") + "-datadir" (string-append out "/share/qt5") + "-examplesdir" (string-append + examples "/share/doc/qt5/examples") ; 151MiB + "-opensource" + "-confirm-license" + + ;; These features require higher versions of Linux than the + ;; minimum version of the glibc. See + ;; src/corelib/global/minimum-linux_p.h. By disabling these + ;; features Qt5 applications can be used on the oldest + ;; kernels that the glibc supports, including the RHEL6 + ;; (2.6.32) and RHEL7 (3.10) kernels. + "-no-feature-getentropy" ; requires Linux 3.17 + "-no-feature-renameat2" ; requires Linux 3.16 + + ;; Do not build examples; for the time being, we + ;; prefer to save the space and build time. + "-no-compile-examples" + ;; Most "-system-..." are automatic, but some use + ;; the bundled copy by default. + "-system-sqlite" + "-system-harfbuzz" + "-system-pcre" + ;; explicitly link with openssl instead of dlopening it + "-openssl-linked" + ;; explicitly link with dbus instead of dlopening it + "-dbus-linked" + ;; don't use the precompiled headers + "-no-pch" + ;; drop special machine instructions not supported + ;; on all instances of the target + ,@(if (string-prefix? "x86_64" + (or (%current-target-system) + (%current-system))) + '() + '("-no-sse2")) + "-no-mips_dsp" + "-no-mips_dspr2")))) (add-after 'install 'patch-mkspecs (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -401,10 +406,16 @@ system, and the core design of Django is reused in Grantlee.") ;; Remove webkit module, which is not built. '(begin (delete-file-recursively "src/3rdparty/webkit") #t)))) - (inputs `(,@(alist-delete "harfbuzz" - (alist-delete "libjpeg" (package-inputs qt))) - ("libjepg" ,libjpeg-8) - ("libsm" ,libsm))) + (inputs + `(,@(fold alist-delete + (package-inputs qt) + '("harfbuzz" "libjpeg")) + ("libjpeg" ,libjpeg-8) + ("libsm" ,libsm))) + (native-inputs + `(,@(fold alist-delete + (package-native-inputs qt) + '("vulkan-headers")))) ;; Note: there are 37 MiB of examples and a '-exampledir' configure flags, ;; but we can't make them a separate output because "out" and "examples" @@ -421,48 +432,53 @@ system, and the core design of Django is reused in Grantlee.") (doc (assoc-ref outputs "doc"))) (substitute* '("configure") (("/bin/pwd") (which "pwd"))) - - (zero? (system* - "./configure" - "-verbose" - "-prefix" out - ;; Note: Don't pass '-docdir' since 'qmake' and - ;; libQtCore would record its value, thereby defeating - ;; the whole point of having a separate output. - "-datadir" (string-append out "/share/qt-" ,version - "/data") - "-importdir" (string-append out "/lib/qt-4" - "/imports") - "-plugindir" (string-append out "/lib/qt-4" - "/plugins") - "-translationdir" (string-append out "/share/qt-" ,version - "/translations") - "-demosdir" (string-append out "/share/qt-" ,version - "/demos") - "-examplesdir" (string-append out "/share/qt-" ,version - "/examples") - "-opensource" - "-confirm-license" - ;; explicitly link with dbus instead of dlopening it - "-dbus-linked" - ;; Skip the webkit module; it fails to build on armhf - ;; and, apart from that, may pose security risks. - "-no-webkit" - ;; drop special machine instructions not supported - ;; on all instances of the target - ,@(if (string-prefix? "x86_64" - (or (%current-target-system) - (%current-system))) - '() - '("-no-mmx" - "-no-3dnow" - "-no-sse" - "-no-sse2")) - "-no-sse3" - "-no-ssse3" - "-no-sse4.1" - "-no-sse4.2" - "-no-avx"))))) + (substitute* "src/corelib/global/global.pri" + (("/bin/ls") (which "ls"))) + + (invoke + "./configure" + "-verbose" + "-prefix" out + "-nomake" "examples demos" + ;; Note: Don't pass '-docdir' since 'qmake' and + ;; libQtCore would record its value, thereby defeating + ;; the whole point of having a separate output. + "-datadir" (string-append out "/share/qt-" ,version + "/data") + "-importdir" (string-append out "/lib/qt-4" + "/imports") + "-plugindir" (string-append out "/lib/qt-4" + "/plugins") + "-translationdir" (string-append out "/share/qt-" ,version + "/translations") + "-demosdir" (string-append out "/share/qt-" ,version + "/demos") + "-examplesdir" (string-append out "/share/qt-" ,version + "/examples") + "-opensource" + "-confirm-license" + ;; explicitly link with dbus instead of dlopening it + "-dbus-linked" + ;; Skip the webkit module; it fails to build on armhf + ;; and, apart from that, may pose security risks. + "-no-webkit" + ;; don't use the precompiled headers + "-no-pch" + ;; drop special machine instructions not supported + ;; on all instances of the target + ,@(if (string-prefix? "x86_64" + (or (%current-target-system) + (%current-system))) + '() + '("-no-mmx" + "-no-3dnow" + "-no-sse" + "-no-sse2")) + "-no-sse3" + "-no-ssse3" + "-no-sse4.1" + "-no-sse4.2" + "-no-avx")))) (add-after 'install 'move-doc (lambda* (#:key outputs #:allow-other-keys) @@ -483,7 +499,7 @@ system, and the core design of Django is reused in Grantlee.") (define-public qtbase (package (name "qtbase") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -492,10 +508,9 @@ system, and the core design of Django is reused in Grantlee.") version ".tar.xz")) (sha256 (base32 - "0ipv18ypbgpxhh49rfplqmflskmnhhwj1bjr5hrwi0jpvar4gl50")) + "01q1rn5rp9biq3z38953z2hgm4nirvp2jfv8wg7isnld8v1yg0b3")) ;; Use TZDIR to avoid depending on package "tzdata". - (patches (search-patches "qtbase-use-TZDIR.patch" - "qtbase-glibc-compat.patch")) + (patches (search-patches "qtbase-use-TZDIR.patch")) (modules '((guix build utils))) (snippet ;; corelib uses bundled harfbuzz, md4, md5, sha3 @@ -504,7 +519,7 @@ system, and the core design of Django is reused in Grantlee.") (lambda (dir) (delete-file-recursively (string-append "src/3rdparty/" dir))) (list "double-conversion" "freetype" "harfbuzz-ng" - "libpng" "libjpeg" "pcre2" "xcb" + "libpng" "libjpeg" "pcre2" "sqlite" "xcb" "xkbcommon" "zlib")) #t)))) (build-system gnu-build-system) @@ -546,7 +561,7 @@ system, and the core design of Django is reused in Grantlee.") ("pcre2" ,pcre2) ("postgresql" ,postgresql) ("pulseaudio" ,pulseaudio) - ;("sqlite" ,sqlite) + ("sqlite" ,sqlite-with-column-metadata) ("unixodbc" ,unixodbc) ("xcb-util" ,xcb-util) ("xcb-util-image" ,xcb-util-image) @@ -561,6 +576,7 @@ system, and the core design of Django is reused in Grantlee.") ("perl" ,perl) ("pkg-config" ,pkg-config) ("python" ,python-2) + ("vulkan-headers" ,vulkan-headers) ("ruby" ,ruby))) (arguments `(#:phases @@ -616,10 +632,7 @@ system, and the core design of Django is reused in Grantlee.") "-no-compile-examples" ;; Most "-system-..." are automatic, but some use ;; the bundled copy by default. - ;; System sqlite fails on 5.10+ - ;;.obj/qsql_sqlite.o: In function `QSQLiteResultPrivate::initColumns(bool)': - ;;qsql_sqlite.cpp:(.text+0x190c): undefined reference to `sqlite3_column_table_name16' - ;"-system-sqlite" + "-system-sqlite" "-system-harfbuzz" "-system-pcre" ;; explicitly link with openssl instead of dlopening it @@ -726,7 +739,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtsvg (package (inherit qtbase) (name "qtsvg") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -735,7 +748,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") version ".tar.xz")) (sha256 (base32 - "0drhig0jcss3cf01aqfmafajf8gzf6bh468g1ikyrkh46czgyshx")))) + "0rni3cdcli91v7k8ra9s9phpznvkza8qqvcrv9yyfrmlapwbn5mw")))) (propagated-inputs `()) (native-inputs `(("perl" ,perl))) (inputs @@ -801,7 +814,7 @@ HostData=lib/qt5 (define-public qtimageformats (package (inherit qtsvg) (name "qtimageformats") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -810,7 +823,7 @@ HostData=lib/qt5 version ".tar.xz")) (sha256 (base32 - "05jnyrq7klr3mdiz0r9c151vl829yc8y9cxfbw5dwbp1rkndwl7b")) + "0s1s33k0wrnf9fi1wlm1kaq9hs1fx89597nhk53vzdfha42x3r97")) (modules '((guix build utils))) (snippet '(begin @@ -832,7 +845,7 @@ support for MNG, TGA, TIFF and WBMP image formats."))) (define-public qtx11extras (package (inherit qtsvg) (name "qtx11extras") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -841,7 +854,7 @@ support for MNG, TGA, TIFF and WBMP image formats."))) version ".tar.xz")) (sha256 (base32 - "0rccpmhz48kq4xs441lj9mnwpbi6kxwl8y7dj7w7g5zvpv41kwmw")))) + "12cha7pd3cjx7zr0l7rbi1j2pfwmfpdwc7w3dsqbyi1d0mhwl1zl")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -856,7 +869,7 @@ from within Qt 5."))) (define-public qtxmlpatterns (package (inherit qtsvg) (name "qtxmlpatterns") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -865,7 +878,7 @@ from within Qt 5."))) version ".tar.xz")) (sha256 (base32 - "0n5gacpni019i2872m4b1p5qaqibhszsdl3xhw3xsckvr0hf25v1")))) + "0ik7m1a0shjsyzs8n9hfx8m9hy1p3wg505slcs0xznj0pa0gdmaz")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -885,7 +898,7 @@ xmlpatternsvalidator."))) (define-public qtdeclarative (package (inherit qtsvg) (name "qtdeclarative") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -894,7 +907,7 @@ xmlpatternsvalidator."))) version ".tar.xz")) (sha256 (base32 - "0fjg9ii64mhx2ww70rj44cy65rwwkwyjxcm435kwp3v1pzv5xkwy")))) + "1kgj6q53rk573yi47j32mn1mfk5ag98zvhv9qgrlb78y0gw8c392")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -917,7 +930,7 @@ with JavaScript and C++."))) (define-public qtconnectivity (package (inherit qtsvg) (name "qtconnectivity") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -926,7 +939,7 @@ with JavaScript and C++."))) version ".tar.xz")) (sha256 (base32 - "0mz6mbf069yqdvi6mcvp6izskcn9wzig4s3dzmygwd430pmx93kk")))) + "1ia21llw610wd7licdm81p8zpkrkvkc5yc7y4wplgg6k2jyip42q")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -941,7 +954,7 @@ with Bluetooth and NFC."))) (define-public qtwebsockets (package (inherit qtsvg) (name "qtwebsockets") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -950,7 +963,7 @@ with Bluetooth and NFC."))) version ".tar.xz")) (sha256 (base32 - "1bj82y3f1nd2adnj3ljfr4vlx4bkgdlm3zvhlsas2lz837vi5aks")))) + "13cbr2pffv1hwvm8d8kzask0pyc2j3brgq23vi5i1i70kihrfqdf")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -968,7 +981,7 @@ consume data received from the server, or both."))) (define-public qtsensors (package (inherit qtsvg) (name "qtsensors") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -977,7 +990,7 @@ consume data received from the server, or both."))) version ".tar.xz")) (sha256 (base32 - "1yn065l6kzs3fn74950pkxxglqi55lzk7alf15klsd1wnxc0zsfb")))) + "1iv3gmk121myqdr64d9lf2m816ypxrb526gn0ssxx8gp4j4c69qf")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:parallel-tests? _ #f) #f) ; can lead to race condition @@ -1001,7 +1014,7 @@ recognition API for devices."))) (define-public qtmultimedia (package (inherit qtsvg) (name "qtmultimedia") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1010,7 +1023,7 @@ recognition API for devices."))) version ".tar.xz")) (sha256 (base32 - "0369b0mh7sr718l119b07grb1v8xqlq6l4damyd6lrmlj1wbb2zj")) + "0vbjrxsdahgbgpc2zcvgg3mpijzd5kknz5clfcw2cq3310yqyq15")) (modules '((guix build utils))) (snippet '(begin @@ -1052,7 +1065,7 @@ set of plugins for interacting with pulseaudio and GStreamer."))) (define-public qtwayland (package (inherit qtsvg) (name "qtwayland") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1061,7 +1074,7 @@ set of plugins for interacting with pulseaudio and GStreamer."))) version ".tar.xz")) (sha256 (base32 - "1sj4lsza48xji1qhmi1wqpx07jgm1mpa95gmd2w1kxw240hbr6p0")) + "0wdpxjr3zfmgcfg14zlwd8mjbc191pvlchj1xxd0lj30ldfy2daf")) (modules '((guix build utils))) (snippet ;; The examples try to build and cause the build to fail @@ -1104,7 +1117,7 @@ compositor libraries."))) (define-public qtserialport (package (inherit qtsvg) (name "qtserialport") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1113,7 +1126,7 @@ compositor libraries."))) version ".tar.xz")) (sha256 (base32 - "18v4pbq7bnmrl81m8s11ksbjlvzbb4kw5py6ji2dhmnm44w9k9sn")))) + "0vkgvicm67vds2iqmhnjsqwnx1f8zhbzc31w6q198i0x8b76j6xh")))) (native-inputs `(("perl" ,perl))) (inputs `(("qtbase" ,qtbase) @@ -1138,7 +1151,7 @@ interacting with serial ports from within Qt."))) (define-public qtserialbus (package (inherit qtsvg) (name "qtserialbus") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1147,7 +1160,7 @@ interacting with serial ports from within Qt."))) version ".tar.xz")) (sha256 (base32 - "0jjmdd6vkvs5izqazp1rsrad0b1fzk6knrbdjl37lvcsawyfxfyk")))) + "07k4g5qfh657das2f5i6ph0hl4bva13yzlmxnay7qpzqcb0w4x0p")))) (inputs `(("qtbase" ,qtbase) ("qtserialport" ,qtserialport))) @@ -1159,7 +1172,7 @@ and others."))) (define-public qtwebchannel (package (inherit qtsvg) (name "qtwebchannel") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1168,7 +1181,7 @@ and others."))) version ".tar.xz")) (sha256 (base32 - "11rfjkb4h8dzxfmk889x7kkc73cbk26smc7h62lnh35f2nppd95r")))) + "1z02dhrd1h2rpdhww9py9dnhss80xwf45n568y7gr3gay7ldlpwl")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative) @@ -1183,7 +1196,7 @@ popular web engines, Qt WebKit 2 and Qt WebEngine."))) (define-public qtwebglplugin (package (inherit qtsvg) (name "qtwebglplugin") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1192,7 +1205,7 @@ popular web engines, Qt WebKit 2 and Qt WebEngine."))) version ".tar.xz")) (sha256 (base32 - "108yhi3sj6d1ysmlpka69ivb20mx9h6jpra6yq099i3jw4gc753x")))) + "0vazz9yr1qgpcq7p77vg9mrjxy6hjabvwj9irw5l5w7fmsk2ns0n")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1218,7 +1231,7 @@ OpenGL ES 2.0 and can be used in HTML5 canvas elements"))) (define-public qtwebview (package (inherit qtsvg) (name "qtwebview") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1227,7 +1240,7 @@ OpenGL ES 2.0 and can be used in HTML5 canvas elements"))) version ".tar.xz")) (sha256 (base32 - "18da6a13wpb23vb6mbg9v75gphdf5mjmch7q3v1qjrv2sdwbpjbp")))) + "1r30n9vjcgh2cd2iycfwwwpmbz7grrd3iqrc0afwnri3vylnfqil")))) (native-inputs `(("perl" ,perl))) (inputs @@ -1241,7 +1254,7 @@ native APIs where it makes sense."))) (define-public qtlocation (package (inherit qtsvg) (name "qtlocation") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1250,7 +1263,7 @@ native APIs where it makes sense."))) version ".tar.xz")) (sha256 (base32 - "03vrbymwbn4nqsypcmr4ccqv20nvwdfs9gb01pi3jxr6x0wrlb0p")))) + "0kh2c2ahg8xkpvqsva13i35ndsc0x0ypnmd6vix5pm5jvwg9366n")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1271,7 +1284,7 @@ positioning and geolocation plugins."))) (define-public qttools (package (inherit qtsvg) (name "qttools") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1280,13 +1293,14 @@ positioning and geolocation plugins."))) version ".tar.xz")) (sha256 (base32 - "1zhl8p29mbabf07rhaks13qcm45zdckzymvz9qn95nxfj9piiyxp")))) + "1f1iqvksrlgkxdbagb6vvjib3argbv9l7iis6ymb8n0rfwn37s7h")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests (native-inputs `(("perl" ,perl) - ("qtdeclarative" ,qtdeclarative))) + ("qtdeclarative" ,qtdeclarative) + ("vulkan-headers" ,vulkan-headers))) (inputs `(("mesa" ,mesa) ("qtbase" ,qtbase))) @@ -1298,7 +1312,7 @@ that helps in Qt development."))) (define-public qtscript (package (inherit qtsvg) (name "qtscript") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1307,7 +1321,7 @@ that helps in Qt development."))) version ".tar.xz")) (sha256 (base32 - "0z6sb4b9ds5lwkr0sxrnx6nim3aq2qx4a8illjy5vclfdv80yhqw")) + "0xprhd1brn30dqf5vy4inqgzpq48i8nlc428x9rr8fk5hdm4dhmj")) (patches (search-patches "qtscript-disable-tests.patch")))) (native-inputs `(("perl" ,perl) @@ -1322,7 +1336,7 @@ ECMAScript and Qt."))) (define-public qtquickcontrols (package (inherit qtsvg) (name "qtquickcontrols") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1331,7 +1345,7 @@ ECMAScript and Qt."))) version ".tar.xz")) (sha256 (base32 - "0mn662j0gkpama7zlrsn4h27sjrk49kpbha1h0zxxyiza5cpzsms")))) + "1q11nr85436xzrf4mbrbav306hrz0s2qaclqhhb0g88vzcq2wxww")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1346,7 +1360,7 @@ can be used to build complete interfaces in Qt Quick."))) (define-public qtquickcontrols2 (package (inherit qtsvg) (name "qtquickcontrols2") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1355,7 +1369,7 @@ can be used to build complete interfaces in Qt Quick."))) version ".tar.xz")) (sha256 (base32 - "0hn4kvrkz5ivwrp9p6yzwlw7cn4j72kcpm2nqyi3dbai1px6dc5x")))) + "116b5nhmsx898626s37r446yci7kxd3k7xap1dh9spqklkwlj1da")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1371,7 +1385,7 @@ not available."))) (define-public qtgraphicaleffects (package (inherit qtsvg) (name "qtgraphicaleffects") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1380,7 +1394,7 @@ not available."))) version ".tar.xz")) (sha256 (base32 - "1ws8aj7bq3rxpzjs370dcyqk8a5v1y6fwvrdhf70j8b2d4v75lnr")))) + "1zd9wjh2hhd6lby0z3ak0ff6zkbv73hh0drrg9qp2yrgjfismp59")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1426,7 +1440,7 @@ backend for QtQuick scene graph.") (define-public qtgamepad (package (inherit qtsvg) (name "qtgamepad") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1435,7 +1449,7 @@ backend for QtQuick scene graph.") version ".tar.xz")) (sha256 (base32 - "1n97w9rcbg8mzkvjgn3i8jbfmplp7w0p80ykdchpml47gxk1kwma")))) + "076874iyadj7pkprlk24h257nb8i4sni9c6kbixm5zrr2y73fbxf")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config))) @@ -1456,7 +1470,7 @@ and mobile applications targeting TV-like form factors."))) (define-public qtscxml (package (inherit qtsvg) (name "qtscxml") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1465,7 +1479,7 @@ and mobile applications targeting TV-like form factors."))) version ".tar.xz")) (sha256 (base32 - "0f1k4fnk2aydagxqvkb636pcsi17sbq2zj2fn0ad50dvq013yiph")) + "197p5x1dadgjb39pd2vw60r63lvz68i0pm5i8xbyzgzm94hwn9fn")) (modules '((guix build utils))) (snippet '(begin @@ -1487,7 +1501,7 @@ also contains functionality to support data models and executable content."))) (define-public qtpurchasing (package (inherit qtsvg) (name "qtpurchasing") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1496,7 +1510,7 @@ also contains functionality to support data models and executable content."))) version ".tar.xz")) (sha256 (base32 - "0crm39fy9aqns10mjlbxvkkna9xklic49zfp3f7v7cwl66wap6dc")))) + "1xld1yx085mhnqdipy29g2yy5af67hfm0wy4mvj7pl6y5qj8jw9d")))) (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) @@ -1507,7 +1521,7 @@ purchasing goods and services."))) (define-public qtcanvas3d (package (inherit qtsvg) (name "qtcanvas3d") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1516,7 +1530,7 @@ purchasing goods and services."))) version ".tar.xz")) (sha256 (base32 - "1pif3m1f44jrly2nh0hzid6dmdxqiy5qgx645hz6g5fmpl113d8g")) + "0h7arss7wr0jwl87kiwgbf0nlcgpbriyf7cnv9j4h7g8d09a777x")) (modules '((guix build utils))) (snippet '(begin @@ -1546,7 +1560,7 @@ drawing calls from Qt Quick JavaScript."))) (define-public qtcharts (package (inherit qtsvg) (name "qtcharts") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1555,7 +1569,7 @@ drawing calls from Qt Quick JavaScript."))) version ".tar.xz")) (sha256 (base32 - "0avscsni84zrzydilkkp456sbaypyzhkn42qygjdq7wcn045zxk2")))) + "0551qfqnsfiy8kb1ng2v0yn7s6ggy7ghcmis983sbzxzjv2i58zn")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1573,7 +1587,7 @@ selecting one of the charts themes.") (define-public qtdatavis3d (package (inherit qtsvg) (name "qtdatavis3d") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1582,7 +1596,7 @@ selecting one of the charts themes.") version ".tar.xz")) (sha256 (base32 - "0gay0dsz05xfrlx190y95hp9wipzb988h02fqbqvyn00ds3s178w")))) + "05pzvrhvxhxjlav4axrhwlnxjzlr7mi8k3f06g59ryrwmb99kd37")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1600,7 +1614,7 @@ customized by using themes or by adding custom items and labels to them.") (define-public qtnetworkauth (package (inherit qtsvg) (name "qtnetworkauth") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1609,7 +1623,7 @@ customized by using themes or by adding custom items and labels to them.") version ".tar.xz")) (sha256 (base32 - "05p4pvfp3k5612d54anvpj39bgc7v572x6kgk3fy69xgn7lhbd02")))) + "1zmpvkhf2kmnr8vsa6jq675d5cpnmsg3f8yds6g91yq1g3prqdvr")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1629,7 +1643,7 @@ implementation of OAuth and OAuth2 authenticathon methods for Qt."))) (define-public qtremoteobjects (package (inherit qtsvg) (name "qtremoteobjects") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1638,7 +1652,7 @@ implementation of OAuth and OAuth2 authenticathon methods for Qt."))) version ".tar.xz")) (sha256 (base32 - "1yv9f2329nv4viiyqmq7ciz51574wd11grj8s88qm0ndcb36jbgb")))) + "06awsaf15rch1y9p2q9kdlmlaa8g28whbzf04b10zfflyijnvg7j")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1662,7 +1676,7 @@ processes or computers."))) (define-public qtspeech (package (inherit qtsvg) (name "qtspeech") - (version "5.11.1") + (version "5.11.2") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" @@ -1671,7 +1685,7 @@ processes or computers."))) version ".tar.xz")) (sha256 (base32 - "1nwvbaijg35i98yaiqgnyn5vv0cn4v3wrxhwi1s0hfv9sv3q5iyw")))) + "110xr2y174sayi9f6swzp1wx7mx4sw9rifcdx2bkbsnbfab6zg8a")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -2158,7 +2172,15 @@ different kinds of sliders, and much more.") #:configure-flags (list ;"-DENABLE_API_TESTS=TRUE" "-DPORT=Qt" "-DUSE_LIBHYPHEN=OFF" - "-DUSE_SYSTEM_MALLOC=ON"))) + "-DUSE_SYSTEM_MALLOC=ON" + ;; XXX: relative dir installs to build dir? + (string-append "-DECM_MKSPECS_INSTALL_DIR=" + %output "/lib/qt5/mkspecs/modules") + ;; Sacrifice a little speed in order to link + ;; libraries and test executables in a + ;; reasonable amount of memory. + "-DCMAKE_SHARED_LINKER_FLAGS=-Wl,--no-keep-memory" + "-DCMAKE_EXE_LINKER_FLAGS=-Wl,--no-keep-memory"))) (home-page "https://www.webkit.org") (synopsis "Web browser engine and classes to render and interact with web content") @@ -2186,7 +2208,7 @@ time Web content can be enhanced with native controls.") (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) - (home-page "https://github.com/frankosterfeld/qtkeychain") + (home-page "https://filcuc.github.io/DOtherSide/index.html") (synopsis "C language library for creating bindings for the Qt QML language") (description "DOtherSide is a C language library for creating bindings for the diff --git a/gnu/packages/rdf.scm b/gnu/packages/rdf.scm index 48dc3cddb9..22ea21dd94 100644 --- a/gnu/packages/rdf.scm +++ b/gnu/packages/rdf.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -22,6 +22,7 @@ #:use-module ((guix licenses) #:select (non-copyleft isc gpl2 lgpl2.1 lgpl2.1+)) #:use-module (guix packages) + #:use-module (guix git-download) #:use-module (guix download) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) @@ -122,13 +123,14 @@ Java Lucene text search engine API to C++.") (name "lrdf") (version "0.6.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/swh/LRDF/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/swh/LRDF.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1vxii4mlcpyi16dizcmnqfl2j9gffgr986yd8ic67hvs8xy42yfm")))) + "00wzkfb8y0aqd519ypz067cq099dpc89w69zw8ln39vl6f9x2pd4")))) (build-system gnu-build-system) (arguments '(#:phases @@ -140,9 +142,9 @@ Java Lucene text search engine API to C++.") (("instances_test remove_test") "instances_test") (("\\$\\(TESTS\\) remove_test") "$(TESTS)")) #t)) - (add-after 'remove-out-of-tree-references 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + ;; The default bootstrap phase executes autogen.sh, which fails. + (replace 'bootstrap + (lambda _ (invoke "autoreconf" "-vif") #t))))) (inputs `(("raptor" ,raptor2) ("cyrus-sasl" ,cyrus-sasl) diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm index c05d819d65..08501aef6f 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -23,21 +23,22 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix utils)) (define-public re2 (package (name "re2") - (version "2018-10-01") + (version "2018-12-01") (home-page "https://github.com/google/re2") (source (origin - (method url-fetch) - (uri (string-append home-page "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference (url home-page) (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "10fsxsj3yip34hp2zl5rw8h2x2lgnp83fwrh7m0qfd9m99qrf4x3")))) + "181fq0idwzgfmmpyhmqdxi37rbynzgf1b8s99aaka9kqs9ffwj22")))) (build-system gnu-build-system) (arguments `(#:modules ((guix build gnu-build-system) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 7e8c8be290..52832eeeb8 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2015, 2016, 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> -;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; @@ -110,7 +110,7 @@ a focus on simplicity and productivity.") (define-public ruby-2.3 (package (inherit ruby) - (version "2.3.7") + (version "2.3.8") (source (origin (method url-fetch) @@ -119,7 +119,7 @@ a focus on simplicity and productivity.") "/ruby-" version ".tar.xz")) (sha256 (base32 - "1nwfaifq5624p1ml56qq5dy5w38z37x22r0qgrbgbzrzklmqy7y6")) + "1zhxbjff08pvbnxvn58krns6q0p6g4977q6ykfn823gxhifn63wi")) (modules '((guix build utils))) (snippet `(begin ;; Remove bundled libffi @@ -3010,7 +3010,15 @@ a native C extension.") (lambda _ ;; Regenerate gemspec so loosened dependency constraints are ;; propagated. - (invoke "rake" "gemspec")))))) + (invoke "rake" "gemspec"))) + (add-after 'regenerate-gemspec 'fix-json-java.gemspec + (lambda _ + ;; This gemspec doesn't look to be generated by the above + ;; command, so patch it separately. + (substitute* "json-java.gemspec" + (("%q<test-unit>\\.freeze, \\[\"~> 2\\.0\"\\]") + "%q<test-unit>.freeze, [\">= 2.0\"]")) + #t))))) (native-inputs `(("bundler" ,bundler) ("ragel" ,ragel) @@ -3481,7 +3489,7 @@ differences (added or removed nodes) between two XML/HTML documents.") (define-public ruby-rack (package (name "ruby-rack") - (version "2.0.5") + (version "2.0.6") (source (origin (method url-fetch) @@ -3493,7 +3501,7 @@ differences (added or removed nodes) between two XML/HTML documents.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1k1k4wk10l6bxx46pw58j2p3nmyzjqnr65hbjjqydd6517fmxgib")) + "0pb3g5ymvbf07xaxcn51dpqv3djlxavckp3qkxsjdxiqznb0d9p1")) ;; Ignore test which fails inside the build environment but works ;; outside. (patches (search-patches "ruby-rack-ignore-failing-test.patch")))) diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 40633854ae..ef40431733 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -41,7 +41,6 @@ #:use-module (gnu packages python) #:use-module (gnu packages ssh) #:use-module (gnu packages tls) - #:use-module (gnu packages version-control) #:use-module (gnu packages) #:use-module (guix build-system cargo) #:use-module (guix build-system gnu) @@ -69,88 +68,6 @@ ("mips64el-linux" "mips64el-unknown-linux-gnuabi64") (_ (nix-system->gnu-triplet system)))) -(define rust-bootstrap - (package - (name "rust-bootstrap") - (version "1.22.1") - (source #f) - (build-system gnu-build-system) - (native-inputs - `(("patchelf" ,patchelf))) - (inputs - `(("gcc" ,(canonical-package gcc)) - ("gcc:lib" ,(canonical-package gcc) "lib") - ("zlib" ,zlib) - ("source" - ,(origin - (method url-fetch) - (uri (string-append - "https://static.rust-lang.org/dist/" - "rust-" version "-" (nix-system->gnu-triplet-for-rust) - ".tar.gz")) - (sha256 - (base32 - (match (nix-system->gnu-triplet-for-rust) - ("i686-unknown-linux-gnu" - "15zqbx86nm13d5vq2gm69b7av4vg479f74b5by64hs3bcwwm08pr") - ("x86_64-unknown-linux-gnu" - "1yll78x6b3abnvgjf2b66gvp6mmcb9y9jdiqcwhmgc0z0i0fix4c") - ("armv7-unknown-linux-gnueabihf" - "138a8l528kzp5wyk1mgjaxs304ac5ms8vlpq0ggjaznm6bn2j7a5") - ("aarch64-unknown-linux-gnu" - "0z6m9m1rx4d96nvybbfmpscq4dv616m615ijy16d5wh2vx0p4na8") - ("mips64el-unknown-linux-gnuabi64" - "07k4pcv7jvfa48cscdj8752lby7m7xdl88v3a6na1vs675lhgja2") - (_ "")))))))) - (outputs '("out" "cargo")) - (arguments - `(#:tests? #f - #:strip-binaries? #f - #:phases - (modify-phases %standard-phases - (delete 'configure) - (delete 'build) - (replace 'install - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (cargo-out (assoc-ref outputs "cargo")) - (gcc:lib (assoc-ref inputs "gcc:lib")) - (libc (assoc-ref inputs "libc")) - (zlib (assoc-ref inputs "zlib")) - (ld-so (string-append libc ,(glibc-dynamic-linker))) - (rpath (string-append out "/lib:" zlib "/lib:" - libc "/lib:" gcc:lib "/lib")) - (cargo-rpath (string-append cargo-out "/lib:" libc "/lib:" - gcc:lib "/lib")) - (rustc (string-append out "/bin/rustc")) - (rustdoc (string-append out "/bin/rustdoc")) - (cargo (string-append cargo-out "/bin/cargo")) - (gcc (assoc-ref inputs "gcc"))) - ;; Install rustc/rustdoc. - (invoke "bash" "install.sh" - (string-append "--prefix=" out) - (string-append "--components=rustc," - "rust-std-" - ,(nix-system->gnu-triplet-for-rust))) - ;; Install cargo. - (invoke "bash" "install.sh" - (string-append "--prefix=" cargo-out) - (string-append "--components=cargo")) - (for-each (lambda (file) - (invoke "patchelf" "--set-rpath" rpath file)) - (cons* rustc rustdoc (find-files out "\\.so$"))) - (invoke "patchelf" "--set-rpath" cargo-rpath cargo) - (for-each (lambda (file) - (invoke "patchelf" "--set-interpreter" ld-so file)) - (list rustc rustdoc cargo)) - #t)))))) - (home-page "https://www.rust-lang.org") - (synopsis "Prebuilt rust compiler and cargo package manager") - (description "This package provides a pre-built @command{rustc} compiler -and a pre-built @command{cargo} package manager, which can -in turn be used to build the final Rust.") - (license license:asl2.0))) - (define* (rust-source version hash #:key (patches '())) (origin @@ -469,7 +386,6 @@ test = { path = \"../libtest\" } ("cmake" ,cmake) ("flex" ,flex) ; For the tests ("gdb" ,gdb) ; For the tests - ("git" ,git) ("procps" ,procps) ; For the tests ("python-2" ,python-2) ("rustc-bootstrap" ,mrustc) @@ -480,7 +396,8 @@ test = { path = \"../libtest\" } `(("jemalloc" ,jemalloc-4.5.0) ("llvm" ,llvm-3.9.1) ("openssl" ,openssl) - ("libcurl" ,curl))) ; For "cargo" + ("libssh2" ,libssh2) ; For "cargo" + ("libcurl" ,curl))) ; For "cargo" ;; rustc invokes gcc, so we need to set its search paths accordingly. ;; Note: duplicate its value here to cope with circular dependencies among @@ -527,6 +444,13 @@ safety and thread safety guarantees.") ;; i686-linux. (substitute* "src/tools/cargo/tests/test.rs" (("fn cargo_test_env") "#[ignore]\nfn cargo_test_env")) + + ;; These tests pull in a dependency on "git", which changes + ;; too frequently take part in the Rust toolchain. + (substitute* "src/tools/cargo/tests/new.rs" + (("fn author_prefers_cargo") "#[ignore]\nfn author_prefers_cargo") + (("fn finds_author_git") "#[ignore]\nfn finds_author_git") + (("fn finds_local_author_git") "#[ignore]\nfn finds_local_author_git")) #t)) (add-after 'patch-cargo-tests 'ignore-glibc-2.27-incompatible-test ;; https://github.com/rust-lang/rust/issues/47863 @@ -636,42 +560,54 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" #t)))))))))) (define-public rust-1.21 - (rust-bootstrapped-package rust-1.20 "1.21.0" - "1yj8lnxybjrybp00fqhxw8fpr641dh8wcn9mk44xjnsb4i1c21qp")) + (let ((base-rust (rust-bootstrapped-package rust-1.20 "1.21.0" + "1yj8lnxybjrybp00fqhxw8fpr641dh8wcn9mk44xjnsb4i1c21qp"))) + (package + (inherit base-rust) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'configure 'remove-ar + (lambda* (#:key inputs #:allow-other-keys) + ;; Remove because toml complains about "unknown field". + (substitute* "config.toml" + (("^ar =.*") "\n")) + #t))))))))) (define-public rust-1.22 - (rust-bootstrapped-package rust-1.21 "1.22.1" - "1lrzzp0nh7s61wgfs2h6ilaqi6iq89f1pd1yaf65l87bssyl4ylb")) + (let ((base-rust (rust-bootstrapped-package rust-1.21 "1.22.1" + "1lrzzp0nh7s61wgfs2h6ilaqi6iq89f1pd1yaf65l87bssyl4ylb"))) + (package + (inherit base-rust) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'remove-flaky-test + (lambda _ + ;; See <https://github.com/rust-lang/rust/issues/43402>. + (when (file-exists? "src/test/run-make/issue-26092") + (delete-file-recursively "src/test/run-make/issue-26092")) + #t))))))))) (define-public rust-1.23 - (package - (inherit rust-1.20) - (name "rust") - (version "1.23.0") - (source (rust-source version "14fb8vhjzsxlbi6yrn1r6fl5dlbdd1m92dn5zj5gmzfwf4w9ar3l")) - (native-inputs - `(("bison" ,bison) ; For the tests - ("cmake" ,cmake) - ("flex" ,flex) ; For the tests - ("gdb" ,gdb) ; For the tests - ("git" ,git) - ("procps" ,procps) ; For the tests - ("python-2" ,python-2) - ("rustc-bootstrap" ,rust-bootstrap) - ("cargo-bootstrap" ,rust-bootstrap "cargo") - ("pkg-config" ,pkg-config) ; For "cargo" - ("which" ,which))) - (arguments - (substitute-keyword-arguments (package-arguments rust-1.20) - ((#:phases phases) - `(modify-phases ,phases - (delete 'configure-archiver) - (add-after 'unpack 'dont-build-native - (lambda _ - ;; XXX: Revisit this when we use gcc 6. - (substitute* "src/binaryen/CMakeLists.txt" - (("ADD_COMPILE_FLAG\\(\\\"-march=native\\\"\\)") "")) - #t)))))))) + (let ((base-rust (rust-bootstrapped-package rust-1.22 "1.23.0" + "14fb8vhjzsxlbi6yrn1r6fl5dlbdd1m92dn5zj5gmzfwf4w9ar3l"))) + (package + (inherit base-rust) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + (delete 'configure-archiver) + (delete 'remove-ar) + (add-after 'unpack 'dont-build-native + (lambda _ + ;; XXX: Revisit this when we use gcc 6. + (substitute* "src/binaryen/CMakeLists.txt" + (("ADD_COMPILE_FLAG\\(\\\"-march=native\\\"\\)") "")) + #t))))))))) (define-public rust-1.24 (let ((base-rust @@ -692,6 +628,9 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (("fn test_loading_cosine") "#[ignore]\nfn test_loading_cosine")) #t))))))))) +;;; Rust 1.25 release support work with llvm 6--but build with llvm 6 is +;;; not determenistic due to <https://github.com/rust-lang/rust/issues/50556>. +;;; Keep using llvm 3.9.1 until builds become determenistic (define-public rust-1.25 (let ((base-rust (rust-bootstrapped-package rust-1.24 "1.25.0" @@ -699,10 +638,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" #:patches '("rust-1.25-accept-more-detailed-gdb-lines.patch")))) (package (inherit base-rust) - (inputs - ;; Use LLVM 6.0 - (alist-replace "llvm" (list llvm) - (package-inputs base-rust))) (arguments (substitute-keyword-arguments (package-arguments base-rust) ((#:phases phases) @@ -713,18 +648,6 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; This test wants to update the crate index. (("fn no_index_update") "#[ignore]\nfn no_index_update")) #t)) - (add-after 'configure 'enable-codegen-tests - (lambda _ - (substitute* "config.toml" - (("codegen-tests = false") "")) - #t)) - ;; FIXME: Re-enable this test if it's indeed supposed to work. - ;; See <https://github.com/rust-lang/rust/issues/54178>. - (add-after 'enable-codegen-tests 'disable-nil-enum-test - (lambda _ - (substitute* "src/test/debuginfo/nil-enum.rs" - (("ignore-lldb") "ignore-gdb")) - #t)) (replace 'patch-aarch64-test (lambda _ (substitute* "src/librustc_metadata/dynamic_lib.rs" @@ -772,6 +695,12 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; i686-linux. (substitute* "src/tools/cargo/tests/testsuite/test.rs" (("fn cargo_test_env") "#[ignore]\nfn cargo_test_env")) + + ;; Avoid dependency on "git". + (substitute* "src/tools/cargo/tests/testsuite/new.rs" + (("fn author_prefers_cargo") "#[ignore]\nfn author_prefers_cargo") + (("fn finds_author_git") "#[ignore]\nfn finds_author_git") + (("fn finds_local_author_git") "#[ignore]\nfn finds_local_author_git")) #t)) (add-after 'patch-cargo-tests 'disable-cargo-test-for-nightly-channel (lambda* _ @@ -788,14 +717,15 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (("fn no_index_update") "#[ignore]\nfn no_index_update")) #t))))))))) -(define-public rust +(define-public rust-1.27 (let ((base-rust (rust-bootstrapped-package rust-1.26 "1.27.2" "0pg1s37bhx9zqbynxyydq5j6q7kij9vxkcv8maz0m25prm88r0cs" #:patches '("rust-coresimd-doctest.patch" "rust-bootstrap-stage0-test.patch" - "rust-1.25-accept-more-detailed-gdb-lines.patch")))) + "rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-reproducible-builds.patch")))) (package (inherit base-rust) (arguments @@ -808,4 +738,44 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" ;; `prefix' directory should exist before `install' call (mkdir-p (assoc-ref outputs "out")) (mkdir-p (assoc-ref outputs "cargo")) + #t)) + (add-after 'patch-cargo-tests 'disable-thinlto-test + (lambda* _ + ;; thinlto required llvm 6.0 for work + (substitute* "src/tools/cargo/tests/testsuite/path.rs" + (("fn thin_lto_works") "#[ignore]\nfn thin_lto_works")) #t))))))))) + +(define-public rust + (let ((base-rust + (rust-bootstrapped-package rust-1.27 "1.28.0" + "11k4rn77bca2rikykkk9fmprrgjswd4x4kaq7fia08vgkir82nhx" + #:patches + '("rust-coresimd-doctest.patch" + "rust-bootstrap-stage0-test.patch" + "rust-1.25-accept-more-detailed-gdb-lines.patch" + "rust-reproducible-builds.patch")))) + (package + (inherit base-rust) + (inputs + ;; Use LLVM 6.0 + (alist-replace "llvm" (list llvm) + (package-inputs base-rust))) + (arguments + (substitute-keyword-arguments (package-arguments base-rust) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'configure 'enable-codegen-tests + ;; Codegen tests should pass with llvm 6, so enable them. + (lambda* _ + (substitute* "config.toml" + (("codegen-tests = false") "")) + #t)) + (add-after 'patch-tests 'disable-amd64-avx-test + ;; That test would fail on x86_64 machines without avx. + (lambda* _ + (substitute* "src/test/run-pass/issue-44056.rs" + (("only-x86_64") "ignore-test")) + #t)) + ;; The thinlto test should pass with llvm 6. + (delete 'disable-thinlto-test)))))))) diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 65d41a2b67..fd9bdd9724 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,20 +32,23 @@ #:use-module (gnu packages acl) #:use-module (gnu packages admin) #:use-module (gnu packages autotools) + #:use-module (gnu packages backup) #:use-module (gnu packages check) #:use-module (gnu packages crypto) #:use-module (gnu packages cups) #:use-module (gnu packages databases) #:use-module (gnu packages docbook) - #:use-module (gnu packages tls) - #:use-module (gnu packages popt) - #:use-module (gnu packages pkg-config) - #:use-module (gnu packages openldap) - #:use-module (gnu packages readline) + #:use-module (gnu packages gnupg) #:use-module (gnu packages kerberos) #:use-module (gnu packages linux) + #:use-module (gnu packages openldap) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages popt) #:use-module (gnu packages python) + #:use-module (gnu packages readline) + #:use-module (gnu packages tls) + #:use-module (gnu packages web) #:use-module (gnu packages xml)) (define-public cifs-utils @@ -73,10 +77,6 @@ (arguments `(#:phases (modify-phases %standard-phases - ;; The 6.7 tarball is missing ‘install.sh’. Create it. - (add-after 'unpack 'autoreconf - (lambda _ - (invoke "autoreconf" "-i"))) (add-before 'configure 'set-root-sbin (lambda _ ; Don't try to install in "/sbin". (setenv "ROOTSBINDIR" @@ -150,14 +150,14 @@ anywhere.") (define-public samba (package (name "samba") - (version "4.8.5") + (version "4.9.3") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 (base32 - "0mailvhjsma19k6b6zjl02z9n2hbbyfybvicjfw2hh9d4sqyd3p5")))) + "1krm47x08c0vcrq12dxs8mbicma1ck2sl1i0hgkvrmwsgrqdi3yg")))) (build-system gnu-build-system) (arguments `(#:phases @@ -202,10 +202,14 @@ anywhere.") `(("acl" ,acl) ("cups" ,cups) ;; ("gamin" ,gamin) + ("gpgme" ,gpgme) ("gnutls" ,gnutls) ("iniparser" ,iniparser) + ("jansson" ,jansson) ("libaio" ,libaio) + ("libarchive" ,libarchive) ("linux-pam" ,linux-pam) + ("lmdb" ,lmdb) ("openldap" ,openldap) ("popt" ,popt) ("readline" ,readline) @@ -341,14 +345,14 @@ many event types, including timers, signals, and the classic file descriptor eve (define-public ldb (package (name "ldb") - (version "1.3.6") + (version "1.4.3") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/ldb/ldb-" version ".tar.gz")) (sha256 (base32 - "16lkz3gyvsm9als1wyimsl573hclr72xy6454mshwjanncs33lji")) + "07vacwr941y2x31yl9knsr2rpffz5pqabvqds6sbyngqxy4r785c")) (modules '((guix build utils))) (snippet '(begin @@ -361,7 +365,10 @@ many event types, including timers, signals, and the classic file descriptor eve #t)))) (build-system gnu-build-system) (arguments - '(#:phases + '(;; LMDB is only supported on 64-bit systems, yet the test suite + ;; requires it. + #:tests? (assoc-ref %build-inputs "lmdb") + #:phases (modify-phases %standard-phases (replace 'configure ;; ldb use a custom configuration script that runs waf. @@ -381,7 +388,10 @@ many event types, including timers, signals, and the classic file descriptor eve `(("talloc" ,talloc) ("tdb" ,tdb))) (inputs - `(("popt" ,popt) + `(,@(if (target-64bit?) + `(("lmdb" ,lmdb)) + '()) + ("popt" ,popt) ("tevent" ,tevent))) (synopsis "LDAP-like embedded database") (home-page "https://ldb.samba.org/") diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 9654fe36f5..7267afd709 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -66,6 +66,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages gl) #:use-module (gnu packages libedit) + #:use-module (srfi srfi-1) #:use-module (ice-9 match)) (define (mit-scheme-source-directory system version) @@ -205,98 +206,102 @@ features an integrated Emacs-like editor and a large runtime library.") (properties '((ftp-directory . "/gnu/mit-scheme/stable.pkg"))))) (define-public bigloo - (package - (name "bigloo") - (version "4.3b") - (source (origin - (method url-fetch) - (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo" - version ".tar.gz")) - (sha256 - (base32 - "1x7xdgsls277zlf6gcaxs2cj62xj6yvb0qxh0ddmxfamvxba0cf4")) - ;; Remove bundled libraries. - (modules '((guix build utils))) - (snippet - '(begin - (for-each delete-file-recursively - '("gc" "gmp" "libuv")) - #t)))) - (build-system gnu-build-system) - (arguments - `(#:test-target "test" - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Upstream modifies source tarballs in place, making significant changes + ;; long after the initial publication: <https://bugs.gnu.org/33525>. For + ;; transparency, we give this "second 4.3b" release a different version + ;; number. + (let ((upstream-version "4.3b")) + (package + (name "bigloo") + (version "4.3b2") + (source (origin + (method url-fetch) + (uri (string-append "ftp://ftp-sop.inria.fr/indes/fp/Bigloo/bigloo" + upstream-version ".tar.gz")) + (sha256 + (base32 + "02s0wrz5b1p0yqk9x6kax1vwzil7g9cyxfvl3vmy7fzznsza9gs4")) + ;; Remove bundled libraries. + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file-recursively + '("gc" "gmp" "libuv")) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* "configure" - (("^shell=.*$") - (string-append "shell=" (which "bash") "\n")) - (("`date`") "0")) - (substitute* "autoconf/runtest.in" - ((", @DATE@") "")) - (substitute* "autoconf/osversion" - (("^version.*$") "version=\"\"\n")) - (substitute* "comptime/Makefile" - (("\\$\\(LDCOMPLIBS\\)") - "$(LDCOMPLIBS) $(LDFLAGS)")) + (substitute* "configure" + (("^shell=.*$") + (string-append "shell=" (which "bash") "\n")) + (("`date`") "0")) + (substitute* "autoconf/runtest.in" + ((", @DATE@") "")) + (substitute* "autoconf/osversion" + (("^version.*$") "version=\"\"\n")) + (substitute* "comptime/Makefile" + (("\\$\\(LDCOMPLIBS\\)") + "$(LDCOMPLIBS) $(LDFLAGS)")) - ;; The `configure' script doesn't understand options - ;; of those of Autoconf. - (let ((out (assoc-ref outputs "out"))) - (invoke "./configure" - (string-append "--prefix=" out) - ; use system libraries - "--customgc=no" - "--customunistring=no" - "--customlibuv=no" - (string-append"--mv=" (which "mv")) - (string-append "--rm=" (which "rm")) - "--cflags=-fPIC" - (string-append "--ldflags=-Wl,-rpath=" - (assoc-ref outputs "out") - "/lib/bigloo/" ,version) - (string-append "--lispdir=" out - "/share/emacs/site-lisp") - "--sharedbde=yes" - "--sharedcompiler=yes" - "--disable-patch")))) - (add-after 'install 'install-emacs-modes - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (dir (string-append out "/share/emacs/site-lisp"))) - (invoke "make" "-C" "bmacs" "all" "install" - (string-append "EMACSBRAND=emacs25") - (string-append "EMACSDIR=" dir)))))))) - (inputs - `(("emacs" ,emacs) ;UDE needs the X version of Emacs - ("libgc" ,libgc) - ("libunistring" ,libunistring) - ("libuv" ,libuv) - ("openssl" ,openssl) - ("sqlite" ,sqlite) + ;; The `configure' script doesn't understand options + ;; of those of Autoconf. + (let ((out (assoc-ref outputs "out"))) + (invoke "./configure" + (string-append "--prefix=" out) + ; use system libraries + "--customgc=no" + "--customunistring=no" + "--customlibuv=no" + (string-append"--mv=" (which "mv")) + (string-append "--rm=" (which "rm")) + "--cflags=-fPIC" + (string-append "--ldflags=-Wl,-rpath=" + (assoc-ref outputs "out") + "/lib/bigloo/" ,upstream-version) + (string-append "--lispdir=" out + "/share/emacs/site-lisp") + "--sharedbde=yes" + "--sharedcompiler=yes" + "--disable-patch")))) + (add-after 'install 'install-emacs-modes + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out "/share/emacs/site-lisp"))) + (invoke "make" "-C" "bmacs" "all" "install" + (string-append "EMACSBRAND=emacs25") + (string-append "EMACSDIR=" dir)))))))) + (inputs + `(("emacs" ,emacs) ;UDE needs the X version of Emacs + ("libgc" ,libgc) + ("libunistring" ,libunistring) + ("libuv" ,libuv) + ("openssl" ,openssl) + ("sqlite" ,sqlite) - ;; Optional APIs for which Bigloo has bindings. - ("avahi" ,avahi) - ("libphidget" ,libphidget) - ("pcre" ,pcre))) - (native-inputs - `(("pkg-config" ,pkg-config))) - (propagated-inputs - `(("gmp" ,gmp))) ; bigloo.h refers to gmp.h - (home-page "http://www-sop.inria.fr/indes/fp/Bigloo/") - (synopsis "Efficient Scheme compiler") - (description - "Bigloo is a Scheme implementation devoted to one goal: enabling -Scheme based programming style where C(++) is usually -required. Bigloo attempts to make Scheme practical by offering -features usually presented by traditional programming languages -but not offered by Scheme and functional programming. Bigloo -compiles Scheme modules. It delivers small and fast stand alone -binary executables. Bigloo enables full connections between -Scheme and C programs and between Scheme and Java programs.") - (license gpl2+))) + ;; Optional APIs for which Bigloo has bindings. + ("avahi" ,avahi) + ("libphidget" ,libphidget) + ("pcre" ,pcre))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs + `(("gmp" ,gmp))) ; bigloo.h refers to gmp.h + (home-page "http://www-sop.inria.fr/indes/fp/Bigloo/") + (synopsis "Efficient Scheme compiler") + (description + "Bigloo is a Scheme implementation devoted to one goal: enabling Scheme +based programming style where C(++) is usually required. Bigloo attempts to +make Scheme practical by offering features usually presented by traditional +programming languages but not offered by Scheme and functional programming. +Bigloo compiles Scheme modules. It delivers small and fast stand alone binary +executables. Bigloo enables full connections between Scheme and C programs +and between Scheme and Java programs.") + (license gpl2+)))) (define-public hop (package @@ -1095,3 +1100,53 @@ in-lining, unboxing, and flow-directed program-specific and program-point-specific low-level representation selection and code generation.") (license gpl2+)))) + +(define-public femtolisp + (let ((commit "68c5b1225572ecf2c52baf62f928063e5a30511b") + (revision "1")) + (package + (name "femtolisp") + (version (string-append "0.0.0-" revision "." (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JeffBezanson/femtolisp.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja")))) + ;; See "utils.h" for supported systems. Upstream bug: + ;; https://github.com/JeffBezanson/femtolisp/issues/25 + (supported-systems + (fold delete %supported-systems + '("armhf-linux" "mips64el-linux" "aarch64-linux"))) + (build-system gnu-build-system) + (arguments + `(#:make-flags '("CC=gcc" "release") + #:test-target "test" + #:phases + (modify-phases %standard-phases + (delete 'configure) ; No configure script + (replace 'install ; Makefile has no 'install phase + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "flisp" bin) + #t))) + ;; The flisp binary is now available, run bootstrap to + ;; generate flisp.boot and afterwards runs make test. + (add-after 'install 'bootstrap-gen-and-test + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (and + (zero? (system* "./bootstrap.sh")) + (install-file "flisp.boot" bin)))))))) + (synopsis "Scheme-like lisp implementation") + (description + "@code{femtolisp} is a scheme-like lisp implementation with a +simple, elegant Scheme dialect. It is a lisp-1 with lexical scope. +The core is 12 builtin special forms and 33 builtin functions.") + (home-page "https://github.com/JeffBezanson/femtolisp") + (license bsd-3)))) diff --git a/gnu/packages/scribus.scm b/gnu/packages/scribus.scm index dca1dc86e1..615d7e23a2 100644 --- a/gnu/packages/scribus.scm +++ b/gnu/packages/scribus.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> @@ -56,7 +56,7 @@ (sha256 (base32 "00ys0p6h3iq77kh72dkl0qrf7qvznq18qdrgiq10gfxja1995034")) - (modules '((guix build utils))))) + (patches (search-patches "scribus-poppler.patch")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;no test target diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm index caa1d6d1c1..6198925727 100644 --- a/gnu/packages/sdl.scm +++ b/gnu/packages/sdl.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2015, 2017 Sou Bunnbu <iyzsong@member.fsf.org> ;;; Copyright © 2015 Alex Kost <alezost@gmail.com> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> +;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; @@ -102,7 +102,7 @@ joystick, and graphics hardware.") (define-public sdl2 (package (inherit sdl) (name "sdl2") - (version "2.0.8") + (version "2.0.9") (source (origin (method url-fetch) (uri @@ -110,7 +110,7 @@ joystick, and graphics hardware.") version ".tar.gz")) (sha256 (base32 - "1v4js1gkr75hzbxzhwzzif0sf9g07234sd23x1vdaqc661bprizd")))) + "1c94ndagzkdfqaa838yqg589p1nnqln8mv0hpwfhrkbfczf8cl95")))) (arguments (substitute-keyword-arguments (package-arguments sdl) ((#:configure-flags flags) @@ -486,7 +486,7 @@ sound and device input (keyboards, joysticks, mice, etc.).") (define-public guile-sdl2 (package (name "guile-sdl2") - (version "0.3.0") + (version "0.3.1") (source (origin (method url-fetch) (uri (string-append @@ -494,7 +494,7 @@ sound and device input (keyboards, joysticks, mice, etc.).") version ".tar.gz")) (sha256 (base32 - "0iq6fw213qw292fxhrsg40al7hqyqyh4qpgl0x9rh08y949h2w97")))) + "0bw7x2lx90k4banc5k7yfkn3as93y25gr1xdr225ll7lmij21k64")))) (build-system gnu-build-system) (arguments '(#:make-flags '("GUILE_AUTO_COMPILE=0") diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 284771ab60..8237d51771 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -46,15 +46,14 @@ (define-public xapian (package (name "xapian") - (version "1.4.7") + (version "1.4.9") ;; Note: When updating Xapian, remember to update xapian-bindings below. (source (origin (method url-fetch) (uri (string-append "https://oligarchy.co.uk/xapian/" version "/xapian-core-" version ".tar.xz")) - (patches (search-patches "xapian-revert-5489fb2f8.patch")) (sha256 - (base32 "1lxmlds3v5s1gng9nk1rvmln1zcksrw5ds509y0glylwch5qmw0k")))) + (base32 "1k7m7m9jld96k16ansfw2w3c354pvd8ibhnrb6dw012g06fw7sfd")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib) ("util-linux" ,util-linux))) @@ -92,7 +91,7 @@ rich set of boolean query operators.") "/xapian-bindings-" version ".tar.xz")) (sha256 (base32 - "0sjf9ck3a6p7xnd84w09l6s0xn2g03k9a9417f4mjnywfq9pa6a5")))) + "0ll3z3418r7bzxs4kyini2cbci5xl8i5scl3wyx88s2v4ak56bcz")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-python3") diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm index 4495069c0d..fb2526c04a 100644 --- a/gnu/packages/security-token.scm +++ b/gnu/packages/security-token.scm @@ -51,6 +51,7 @@ #:use-module (gnu packages tex) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages web) #:use-module (gnu packages xml)) (define-public ccid @@ -160,7 +161,7 @@ the low-level development kit for the Yubico YubiKey authentication device.") (define-public pcsc-lite (package (name "pcsc-lite") - (version "1.8.23") + (version "1.8.24") (source (origin (method url-fetch) (uri (string-append @@ -168,7 +169,7 @@ the low-level development kit for the Yubico YubiKey authentication device.") name "-" version ".tar.bz2")) (sha256 (base32 - "1jc9ws5ra6v3plwraqixin0w0wfxj64drahrbkyrrwzghqjjc9ss")))) + "0s3mv6csbi9303vvis0hilm71xsmi6cqkbh2kiipdisydbx6865q")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--enable-usbdropdir=/var/lib/pcsc/drivers" @@ -307,3 +308,36 @@ and other operations. It includes a library and a command-line tool.") ;; license for that one file. Please see it for details. The vast ;; majority of files are licensed under bsd-2. (license license:bsd-2))) + +(define-public yubikey-personalization + (package + (name "yubikey-personalization") + (version "1.19.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://developers.yubico.com/" name + "/Releases/ykpers-" version ".tar.gz")) + (sha256 + (base32 + "104lc0nnqdr365fa7c4vrq67rxp1dp8idndsh9jlhnj9dnhszj1b")))) + (build-system gnu-build-system) + (arguments + '(#:configure-flags (list (string-append "--with-udevrulesdir=" + (assoc-ref %outputs "out") + "/lib/udev/rules.d")))) + (inputs + `(("json-c" ,json-c) + ("libusb" ,libusb) + ;; The library "libyubikey" is also known as "yubico-c". + ("libyubikey" ,libyubikey))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("eudev" ,eudev))) + (home-page "https://developers.yubico.com/yubikey-personalization/") + (synopsis "Library and tools to personalize YubiKeys") + (description + "The YubiKey Personalization package contains a C library and command +line tools for personalizing YubiKeys. You can use these to set an AES key, +retrieve a YubiKey's serial number, and so forth.") + (license license:bsd-2))) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 3064e385e2..2d61f7451b 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -99,7 +99,6 @@ arbitrary data types and reversibly turns them into different representations, such as compact binary encodings, XML, or JSON.") (license license:bsd-3))) - (define-public msgpack (package (name "msgpack") @@ -132,13 +131,6 @@ such as compact binary encodings, XML, or JSON.") ;; zbuffer.hpp) which #include <zlib.h>. However, 'guix gc --references' ;; does not detect a store reference to zlib since these headers are not ;; compiled. - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (invoke "autoreconf" "-vfi") - #t))))) (home-page "https://www.msgpack.org") (synopsis "Binary serialization library") (description "Msgpack is a library for C/C++ that implements binary @@ -225,6 +217,26 @@ that implements both the msgpack and msgpack-rpc specifications.") (home-page "https://github.com/libmpack/libmpack-lua") (synopsis "Lua bindings for the libmpack binary serialization library"))) +(define-public lua5.1-libmpack + (package (inherit lua-libmpack) + (name "lua5.1-libmpack") + (arguments + (substitute-keyword-arguments (package-arguments lua-libmpack) + ((#:make-flags flags) + `(let* ((lua-version ,(package-version lua-5.1)) + (lua-major+minor ,(version-major+minor (package-version lua-5.1)))) + (list "CC=gcc" + "USE_SYSTEM_LUA=yes" + (string-append "MPACK_LUA_VERSION=" lua-version) + (string-append "MPACK_LUA_VERSION_NOPATCH=" lua-major+minor) + (string-append "PREFIX=" + (assoc-ref %outputs "out")) + (string-append "LUA_CMOD_INSTALLDIR=" + (assoc-ref %outputs "out") + "/lib/lua/" lua-major+minor)))))) + (inputs + `(("lua" ,lua-5.1))))) + (define-public lua5.2-libmpack (package (inherit lua-libmpack) (name "lua5.2-libmpack") @@ -294,7 +306,7 @@ it a convenient format to store user input files.") (define-public capnproto (package (name "capnproto") - (version "0.6.1") + (version "0.7.0") (source (origin (method url-fetch) (uri (string-append @@ -302,7 +314,7 @@ it a convenient format to store user input files.") version ".tar.gz")) (sha256 (base32 - "010s9yhq4531wvdfrdf2477zswhck6cjfby79w73rff3v06090l0")))) + "0hfdnhlbskagzgvby8wy6lrxj53zfzpfqimbhga68c0ji2yw1969")))) (build-system gnu-build-system) (arguments `(#:phases @@ -312,6 +324,14 @@ it a convenient format to store user input files.") ;; Workaround for test that tries to resolve port name from ;; /etc/services, which is not present in build environment. (substitute* "src/kj/async-io-test.c++" ((":http") ":80")) + #t)) + (add-before 'check 'use-tmp-for-tempory-files + (lambda _ + ;; Use /tmp for tempory files, as the default /var/tmp directory + ;; doesn't exist. + (substitute* "src/kj/filesystem-disk-test.c++" + (("VAR\\_TMP \"/var/tmp\"") + "VAR_TMP \"/tmp\"")) #t))))) (home-page "https://capnproto.org") (synopsis "Capability-based RPC and serialization system") @@ -418,7 +438,7 @@ to generate and parse. The two primary functions are @code{cbor.loads} and (define-public flatbuffers (package (name "flatbuffers") - (version "1.9.0") + (version "1.10.0") (source (origin (method url-fetch) @@ -426,7 +446,7 @@ to generate and parse. The two primary functions are @code{cbor.loads} and version ".tar.gz")) (sha256 (base32 - "1qs7sa9q4q6hs12yp875lvrv6393178qcmqs1ziwmjk088g4k9aw")))) + "0z4swldxs0s31hnkqdhsbfmc8vx3p7zsvmqaw4l31r2iikdy651p")))) (build-system cmake-build-system) (arguments '(#:build-type "Release" @@ -435,7 +455,7 @@ to generate and parse. The two primary functions are @code{cbor.loads} and (assoc-ref %outputs "out") "/lib")))) (home-page "https://google.github.io/flatbuffers/") (synopsis "Memory-efficient serialization library") - (description "FlatBuffers is a cross platform serialization library for C++, + (description "FlatBuffers is a cross-platform serialization library for C++, C#, C, Go, Java, JavaScript, PHP, and Python. It was originally created for game development and other performance-critical applications.") (license license:asl2.0))) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 8362d00f60..38eeaa7831 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 Jeff Mickey <j@codemac.net> ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Stefan Reichör <stefan@xsteve.at> -;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> @@ -414,10 +414,7 @@ use of experts and novices alike.") "/rx"))) (delete-file-recursively "rx") (symlink rxpath "rx")) - #t)) - (add-after 'unpack 'autoreconf - (lambda _ - (invoke "autoreconf")))))) + #t))))) (inputs `(("scheme48" ,scheme48) ("scheme48-rx" ,scheme48-rx))) @@ -569,30 +566,30 @@ The OpenBSD Korn Shell is a cleaned up and enhanced ksh.") (define-public loksh (package (name "loksh") - (version "6.3") + (version "6.4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/dimkr/loksh/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dimkr/loksh.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 - "0i1b60g1p19s5cnzz0nmjzjnxywm9szzyp1rcwfcx3gmzvrwr2sc")))) + (base32 "1d92cf5iadj1vwg0wwksaq1691zaxjrd2y4qygj4sdd25zsahj6p")))) (build-system gnu-build-system) (inputs - `(("libbsd" ,libbsd))) + `(("libbsd" ,libbsd) + ("ncurses" ,ncurses))) (native-inputs `(("pkg-config" ,pkg-config))) (arguments - `(#:tests? #f ;No tests included + `(#:tests? #f ; no tests included #:make-flags (list "CC=gcc" "HAVE_LIBBSD=1" - (string-append "DESTDIR=" - (assoc-ref %outputs "out")) - "PREFIX=") + (string-append "PREFIX=" + (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases - (delete 'configure)))) ;No configure script + (delete 'configure)))) ; no configure script (home-page "https://github.com/dimkr/loksh") (synopsis "Korn Shell from OpenBSD") (description diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm index 425713a91f..0978300c9b 100644 --- a/gnu/packages/shellutils.scm +++ b/gnu/packages/shellutils.scm @@ -28,6 +28,7 @@ #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (gnu packages autotools) #:use-module (gnu packages ncurses) #:use-module (gnu packages readline) @@ -115,9 +116,10 @@ are already there.") '(#:test-target "test" #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure)))) + (inputs + `(("go" ,go-1.9))) (native-inputs - `(("go" ,go) - ("which" ,which))) + `(("which" ,which))) (home-page "https://direnv.net/") (synopsis "Environment switcher for the shell") (description @@ -133,16 +135,17 @@ environment variables of the current shell.") (define-public fzy (package (name "fzy") - (version "0.9") + (version "1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/jhawthorn/fzy/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/jhawthorn/fzy.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1xfgxqbkcpi2n4381kj3fq4026qs6by7xhl5gn0fgp3dh232c63j")))) + "1gkzdvj73f71388jvym47075l9zw61v6l8wdv2lnc0mns6dxig0k")))) (build-system gnu-build-system) (arguments '(#:make-flags (list "CC=gcc" diff --git a/gnu/packages/simulation.scm b/gnu/packages/simulation.scm index a5b661e34d..2132d4acf4 100644 --- a/gnu/packages/simulation.scm +++ b/gnu/packages/simulation.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Paul Garlick <pgarlick@tourbillion-technology.com> +;;; Copyright © 2017, 2018 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -18,10 +18,13 @@ (define-module (gnu packages simulation) #:use-module (gnu packages) + #:use-module (gnu packages algebra) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages boost) + #:use-module (gnu packages check) + #:use-module (gnu packages cmake) #:use-module (gnu packages compression) #:use-module (gnu packages flex) #:use-module (gnu packages gettext) @@ -35,6 +38,8 @@ #:use-module (gnu packages mpi) #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) @@ -42,7 +47,9 @@ #:use-module (gnu packages xorg) #:use-module (guix download) #:use-module (guix build utils) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) @@ -63,7 +70,16 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 "0cgxh4h2hf50qbvvdg5miwc2nympb0nrv3md96vb3gbs9vk8vq9d")) - (patches (search-patches "openfoam-4.1-cleanup.patch")))) + (patches (search-patches "openfoam-4.1-cleanup.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Include <sys/sysmacros.h>, which is where glibc >= 2.28 provides + ;; 'major' and 'minor'. + (substitute* "src/OSspecific/POSIX/fileStat.C" + (("#include <unistd\\.h>") + "#include <unistd.h>\n#include <sys/sysmacros.h>\n")) + #t)))) (build-system gnu-build-system) (inputs `(("boost" ,boost) @@ -221,3 +237,485 @@ with gas/liquid interfaces. Large problems may be split into smaller, connected problems for efficient solution on parallel systems.") (license license:gpl3+) (home-page "https://openfoam.org"))) + +(define-public python-fenics-dijitso + (package + (name "python-fenics-dijitso") + (version "2018.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fenics-dijitso" version)) + (sha256 + (base32 + "1qax2f52qsjbd1h5lk5i5shp448qlakxabjjybrfc1w823p0yql9")))) + (build-system python-build-system) + (inputs + `(("openmpi" ,openmpi) + ("python-numpy" ,python-numpy))) + (native-inputs + `(("python-pytest-cov" ,python-pytest-cov))) + (propagated-inputs + `(("python-mpi4py" ,python-mpi4py))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'build 'mpi-setup + ,%openmpi-setup) + (replace 'check + (lambda _ + (setenv "HOME" "/tmp") + (setenv "PYTHONPATH" + (string-append (getcwd) ":" (getenv "PYTHONPATH"))) + (with-directory-excursion "test" + (invoke "./runtests.sh")) + #t))))) + (home-page "https://bitbucket.org/fenics-project/dijitso/") + (synopsis "Distributed just-in-time building of shared libraries") + (description + "Dijitso provides a core component of the @code{FEniCS} framework, +namely the just-in-time compilation of C++ code that is generated from +Python modules. It is called from within a C++ library, using ctypes +to import the dynamic shared library directly. + +As long as the compiled code can provide a simple factory function to +a class implementing a predefined C++ interface, there is no limit to +the complexity of that interface. Parallel support depends on the +@code{mpi4py} interface.") + (license license:lgpl3+))) + +(define-public python-fenics-ufl + (package + (name "python-fenics-ufl") + (version "2018.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fenics-ufl" version)) + (sha256 + (base32 + "1fq8yc86s1s3c8c0b1rc2vf265q0hrkzg57100fg1nghcz0p4vla")))) + (build-system python-build-system) + (inputs + `(("python-numpy" ,python-numpy))) + (native-inputs + `(("python-pytest" ,python-pytest))) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "PYTHONPATH" + (string-append (getcwd) ":" (getenv "PYTHONPATH"))) + (with-directory-excursion "test" + (invoke "py.test")) + #t))))) + (home-page "https://bitbucket.org/fenics-project/ufl/") + (synopsis "Unified language for form-compilers") + (description "The Unified Form Language (UFL) is a domain specific +language for declaration of finite element discretizations of +variational forms. More precisely, it defines a flexible interface +for choosing finite element spaces and defining expressions for weak +forms in a notation close to mathematical notation. + +UFL is part of the FEniCS Project.") + (license license:lgpl3+))) + +(define-public python-fenics-fiat + (package + (name "python-fenics-fiat") + (version "2018.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fenics-fiat" version)) + (sha256 + (base32 + "0fmjd93r6bwf6xs8csw86qzphrnr66xwv7f372w59gmq8mg6rljc")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) + (propagated-inputs + `(("python-numpy" ,python-numpy) + ("python-sympy" ,python-sympy))) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "PYTHONPATH" + (string-append (getcwd) ":" (getenv "PYTHONPATH"))) + (with-directory-excursion "test" + (invoke "py.test" "unit/")) + #t))))) + (home-page "https://bitbucket.org/fenics-project/fiat/") + (synopsis "Tabulation of finite element function spaces") + (description + "The FInite element Automatic Tabulator (FIAT) supports +generation of arbitrary order instances of the Lagrange elements on +lines, triangles, and tetrahedra. It is also capable of generating +arbitrary order instances of Jacobi-type quadrature rules on the same +element shapes. Further, H(div) and H(curl) conforming finite element +spaces such as the families of Raviart-Thomas, Brezzi-Douglas-Marini +and Nedelec are supported on triangles and tetrahedra. Upcoming +versions will also support Hermite and nonconforming elements. + +FIAT is part of the FEniCS Project.") + (license license:lgpl3+))) + +(define-public python-fenics-ffc + (package + (name "python-fenics-ffc") + (version "2018.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fenics-ffc" version)) + (sha256 + (base32 + "1b2ia5vlkw298x7rf0k2p3ihlpwkwgc98p3s6sbpds3hqmfrzdz9")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) + (propagated-inputs + `(("python-fenics-dijitso" ,python-fenics-dijitso) + ("python-fenics-fiat" ,python-fenics-fiat) + ("python-fenics-ufl" ,python-fenics-ufl))) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (setenv "HOME" (getcwd)) + (setenv "PYTHONPATH" + (string-append (getcwd) ":" (getenv "PYTHONPATH"))) + (with-directory-excursion "test" + ;; FIXME: the tests in subdirectory + ;; 'unit/ufc/finite_element' require the ffc_factory + ;; extension module. This module, located in the 'libs' + ;; subdirectory, needs to be built and made accessible + ;; prior to running the tests. + (invoke "py.test" "unit/" "--ignore=unit/ufc/") + (with-directory-excursion "uflacs" + (invoke "py.test" "unit/"))) + #t))))) + (home-page "https://bitbucket.org/fenics-project/ffc/") + (synopsis "Compiler for finite element variational forms") + (description "The FEniCS Form Compiler (FFC) is a compiler for +finite element variational forms. From a high-level description of +the form, it generates efficient low-level C++ code that can be used +to assemble the corresponding discrete operator (tensor). In +particular, a bilinear form may be assembled into a matrix and a +linear form may be assembled into a vector. FFC may be used either +from the command line (by invoking the @code{ffc} command) or as a +Python module (@code{import ffc}). + +FFC is part of the FEniCS Project.") + ;; There are two files released with a public domain licence; + ;; ufc.h and ufc_geometry.h, in subdirectory 'ffc/backends/ufc'. + (license (list license:public-domain license:lgpl3+)))) + +(define-public fenics-dolfin + (package + (name "fenics-dolfin") + (version "2018.1.0.post1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://bitbucket.org/fenics-project/dolfin/get/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "12zkk8j3xsg6l8p0ggwsl03084vlcivw4h99b7z9kndg7k89b3ya")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Make sure we don't use the bundled test framework. + (delete-file-recursively "test/unit/cpp/catch") + (substitute* "test/unit/cpp/main.cpp" + ;; Use standard search paths for 'catch' header file. + (("#include.*") + "#include <catch.hpp>\n")) + (substitute* "test/unit/cpp/CMakeLists.txt" + ;; Add extra include directories required by the unit tests. + (("(^target_link_libraries.*)" line) + (string-append line "\n" + "target_include_directories(" + "unittests PRIVATE " + "${DOLFIN_SOURCE_DIR} " + "${DOLFIN_SOURCE_DIR}/dolfin " + "${DOLFIN_BINARY_DIR})\n")) + (("(^set\\(CATCH_INCLUDE_DIR ).*(/catch\\))" _ front back) + (string-append front + "$ENV{CATCH_DIR}" + "/include" back "\n"))) + (substitute* "demo/CMakeLists.txt" + ;; Add extra include directories required by the demo tests. + (("(^#find_package.*)" line) + (string-append line "\n" + "include_directories(" + "${DOLFIN_SOURCE_DIR} " + "${DOLFIN_SOURCE_DIR}/dolfin " + "${DOLFIN_BINARY_DIR})\n"))) + #t)))) + (build-system cmake-build-system) + (inputs + `(("blas" ,openblas) + ("boost" ,boost) + ("eigen" ,eigen) + ("hdf5" ,hdf5-parallel-openmpi) + ("lapack" ,lapack) + ("libxml2" ,libxml2) + ("openmpi" ,openmpi) + ("python" ,python-3) + ("scotch" ,pt-scotch32) + ("suitesparse" ,suitesparse) + ("sundials" ,sundials-openmpi) + ("zlib" ,zlib))) + (native-inputs + `(("catch" ,catch-framework2) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("ffc" ,python-fenics-ffc) + ("petsc" ,petsc-openmpi) + ("slepc" ,slepc-openmpi))) + (arguments + `(#:configure-flags + `("-DDOLFIN_ENABLE_DOCS:BOOL=OFF" + "-DDOLFIN_ENABLE_HDF5:BOOL=ON" + "-DDOLFIN_ENABLE_MPI:BOOL=ON" + "-DDOLFIN_ENABLE_PARMETIS:BOOL=OFF" + "-DDOLFIN_ENABLE_SCOTCH:BOOL=ON" + "-DDOLFIN_ENABLE_SUNDIALS:BOOL=ON" + "-DDOLFIN_ENABLE_TRILINOS:BOOL=OFF") + #:phases + (modify-phases %standard-phases + (add-after 'patch-usr-bin-file 'mpi-setup + ,%openmpi-setup) + (add-after 'patch-source-shebangs 'set-paths + (lambda _ + ;; Define paths to store locations. + (setenv "BLAS_DIR" (assoc-ref %build-inputs "blas")) + (setenv "CATCH_DIR" (assoc-ref %build-inputs "catch")) + (setenv "LAPACK_DIR" (assoc-ref %build-inputs "lapack")) + (setenv "PETSC_DIR" (assoc-ref %build-inputs "petsc")) + (setenv "SLEPC_DIR" (assoc-ref %build-inputs "slepc")) + (setenv "SCOTCH_DIR" (assoc-ref %build-inputs "scotch")) + (setenv "SUNDIALS_DIR" (assoc-ref %build-inputs "sundials")) + (setenv "UMFPACK_DIR" (assoc-ref %build-inputs "suitesparse")) + #t)) + (add-before 'check 'pre-check + (lambda _ + ;; The Dolfin repository uses git-lfs, whereby web links are + ;; substituted for large files. Guix does not currently support + ;; git-lfs, so only the links are downloaded. The tests that + ;; require the absent meshes cannot run and are skipped. + ;; + ;; Two other serial tests fail and are skipped. + ;; i) demo_stokes-iterative_serial, + ;; The MPI_Comm_rank() function was called before MPI_INIT was + ;; invoked + ;; ii) demo_multimesh-stokes_serial: + ;; Warning: Found no facets matching domain for boundary + ;; condition. + ;; + ;; One mpi test fails and is skipped. + ;; i) demo_stokes-iterative_mpi: + ;; The MPI_Comm_rank() function was called before MPI_INIT was + ;; invoked + (call-with-output-file "CTestCustom.cmake" + (lambda (port) + (display + (string-append + "set(CTEST_CUSTOM_TESTS_IGNORE " + "demo_bcs_serial " + "demo_bcs_mpi " + "demo_eigenvalue_serial " + "demo_eigenvalue_mpi " + "demo_navier-stokes_serial " + "demo_navier-stokes_mpi " + "demo_stokes-taylor-hood_serial " + "demo_stokes-taylor-hood_mpi " + "demo_subdomains_serial " + "demo_advection-diffusion_serial " + "demo_advection-diffusion_mpi " + "demo_auto-adaptive-navier-stokes_serial " + "demo_contact-vi-snes_serial " + "demo_contact-vi-snes_mpi " + "demo_contact-vi-tao_serial " + "demo_contact-vi-tao_mpi " + "demo_curl-curl_serial " + "demo_curl-curl_mpi " + "demo_dg-advection-diffusion_serial " + "demo_dg-advection-diffusion_mpi " + "demo_elasticity_serial " + "demo_elasticity_mpi " + "demo_elastodynamics_serial " + "demo_elastodynamics_mpi " + "demo_lift-drag_serial " + "demo_lift-drag_mpi " + "demo_mesh-quality_serial " + "demo_mesh-quality_mpi " + "demo_multimesh-stokes_serial " + "demo_stokes-iterative_serial " + "demo_stokes-iterative_mpi " + ")\n") port))) + #t)) + (replace 'check + (lambda _ + (and (invoke "make" "unittests") + (invoke "make" "demos") + (invoke "ctest" "-R" "unittests") + (invoke "ctest" "-R" "demo" "-R" "serial") + (invoke "ctest" "-R" "demo" "-R" "mpi"))))))) + (home-page "https://bitbucket.org/fenics-project/dolfin/") + (synopsis "Problem solving environment for differential equations") + (description + "DOLFIN is a computational framework for finding numerical +solutions to problems described by differential equations. Numerical +models in DOLFIN are constructed using general families of finite +elements. Data structures are provided for discretizing the governing +system on a computational mesh. A compact syntax, similar to +mathematical notation, is made available for defining function spaces +and expressing variational forms. Interfaces to specialized matrix +solvers are provided for solving the resultant linear systems. + +@code{fenics-dolfin} is part of the FEniCS project. It is the C++ +user interface to the FEniCS core components and external libraries.") + ;; The source code for the DOLFIN C++ library is licensed under the + ;; GNU Lesser General Public License, version 3 or later, with the + ;; following exceptions: + ;; + ;; public-domain: dolfin/geometry/predicates.cpp + ;; dolfin/geometry/predicates.h + ;; + ;; zlib: dolfin/io/base64.cpp + ;; dolfin/io/base64.h + ;; + ;; expat: dolfin/io/pugiconfig.hpp + ;; dolfin/io/pugixml.cpp + ;; dolfin/io/pugixml.hpp + (license (list license:public-domain + license:zlib + license:expat + license:lgpl3+)))) + +(define-public fenics + (package (inherit fenics-dolfin) + (name "fenics") + (build-system python-build-system) + (inputs + `(("pybind11" ,pybind11) + ("python-matplotlib" ,python-matplotlib) + ,@(alist-delete "python" (package-inputs fenics-dolfin)))) + (native-inputs + `(("cmake" ,cmake) + ("ply" ,python-ply) + ("pytest" ,python-pytest) + ("python-decorator" ,python-decorator) + ("python-pkgconfig" ,python-pkgconfig) + ,@(package-native-inputs fenics-dolfin))) + (propagated-inputs + `(("dolfin" ,fenics-dolfin) + ("petsc4py" ,python-petsc4py) + ("slepc4py" ,python-slepc4py))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'set-paths + (lambda _ + ;; Define paths to store locations. + (setenv "PYBIND11_DIR" (assoc-ref %build-inputs "pybind11")) + ;; Move to python sub-directory. + (chdir "python") + #t)) + (add-after 'build 'mpi-setup + ,%openmpi-setup) + (add-before 'check 'pre-check + (lambda _ + ;; Exclude tests that require meshes supplied by git-lfs. + (substitute* "demo/test.py" + (("(.*stem !.*)" line) + (string-append + line "\n" + "excludeList = [\n" + "'multimesh-quadrature', \n" + "'multimesh-marking', \n" + "'mixed-poisson-sphere', \n" + "'mesh-quality', \n" + "'lift-drag', \n" + "'elastodynamics', \n" + "'dg-advection-diffusion', \n" + "'curl-curl', \n" + "'contact-vi-tao', \n" + "'contact-vi-snes', \n" + "'collision-detection', \n" + "'buckling-tao', \n" + "'auto-adaptive-navier-stokes', \n" + "'advection-diffusion', \n" + "'subdomains', \n" + "'stokes-taylor-hood', \n" + "'stokes-mini', \n" + "'navier-stokes', \n" + "'eigenvalue']\n" + "demos = [" + "d for d in demos if d[0].stem not in " + "excludeList]\n"))) + (setenv "HOME" (getcwd)) + (setenv "PYTHONPATH" + (string-append + (getcwd) "/build/lib.linux-x86_64-" + ,(version-major+minor (package-version python)) ":" + (getenv "PYTHONPATH"))) + ;; Restrict OpenBLAS to MPI-only in preference to MPI+OpenMP. + (setenv "OPENBLAS_NUM_THREADS" "1") + #t)) + (replace 'check + (lambda _ + (with-directory-excursion "test" + ;; Note: The test test_snes_set_from_options() in the file + ;; unit/nls/test_PETScSNES_solver.py fails and is ignored. + (and (invoke "py.test" "unit" "--ignore" + "unit/nls/test_PETScSNES_solver.py") + (invoke "mpirun" "-np" "3" "python" "-B" "-m" + "pytest" "unit" "--ignore" + "unit/nls/test_PETScSNES_solver.py"))) + (with-directory-excursion "demo" + ;; Check demos. + (invoke "python" "generate-demo-files.py") + (and (invoke "python" "-m" "pytest" "-v" "test.py") + (invoke "python" "-m" "pytest" "-v" "test.py" + "--mpiexec=mpiexec" "--num-proc=3"))) + #t)) + (add-after 'install 'install-demo-files + (lambda* (#:key outputs #:allow-other-keys) + (let* ((demos (string-append + (assoc-ref outputs "out") + "/share/python-dolfin/demo"))) + (mkdir-p demos) + (with-directory-excursion "demo" + (for-each (lambda (file) + (let* ((dir (dirname file)) + (tgt-dir (string-append demos "/" dir))) + (unless (equal? "." dir) + (mkdir-p tgt-dir) + (install-file file tgt-dir)))) + (find-files "." ".*\\.(py|gz|xdmf)$")))) + #t))))) + (home-page "https://fenicsproject.org/") + (synopsis "High-level environment for solving differential equations") + (description + "@code{fenics} is a computing platform for solving general classes of +problems that involve differential equations. @code{fenics} facilitates +access to efficient methods for dealing with ordinary differential +equations (ODEs) and partial differential equations (PDEs). Systems of +equations such as these are commonly encountered in areas of engineering, +mathematics and the physical sciences. It is particularly well-suited to +problems that can be solved using the Finite Element Method (FEM). + +@code{fenics} is the top level of the set of packages that are developed +within the FEniCS project. It provides the python user interface to the +FEniCS core components and external libraries.") + (license license:lgpl3+))) diff --git a/gnu/packages/slang.scm b/gnu/packages/slang.scm index 24eb5fa137..185d441919 100644 --- a/gnu/packages/slang.scm +++ b/gnu/packages/slang.scm @@ -50,13 +50,21 @@ '(begin (substitute* "src/Makefile.in" (("/bin/ln") "ln")) - (substitute* "configure" - (("-ltermcap") "")) #t)))) (build-system gnu-build-system) (arguments '(#:parallel-tests? #f - #:parallel-build? #f)) ; there's at least one race + #:parallel-build? #f ; there's at least one race + #:phases + (modify-phases %standard-phases + (add-before 'configure 'substitute-before-config + (lambda* (#:key inputs #:allow-other-keys) + (let ((ncurses (assoc-ref inputs "ncurses"))) + (substitute* "configure" + (("MISC_TERMINFO_DIRS=\"\"") + (string-append "MISC_TERMINFO_DIRS=" + "\"" ncurses "/share/terminfo" "\""))) + #t)))))) (inputs `(("readline" ,readline) ("zlib" ,zlib) diff --git a/gnu/packages/sml.scm b/gnu/packages/sml.scm index 1d7fd3fb51..0874b81cc7 100644 --- a/gnu/packages/sml.scm +++ b/gnu/packages/sml.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Andy Patterson <ajpatter@uwaterloo.ca> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +25,7 @@ #:use-module (gnu packages xorg) #:use-module (guix build-system gnu) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) @@ -31,14 +33,15 @@ (package (name "polyml") (version "5.7.1") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/polyml/polyml/archive/v" - version ".tar.gz")) - (sha256 - (base32 "0a3hcv80p9j0fny6726kvgmzjzdmak9xw7f7rv8sxv96nhjdi3fi")) - (file-name (string-append name "-" version ".tar.gz")))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/polyml/polyml.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0j0wv3ijfrjkfngy7dswm4k1dchk3jak9chl5735dl8yrl8mq755")))) (build-system gnu-build-system) (inputs `(("gmp" ,gmp) diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index e708d726bb..94e6aa8438 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -211,6 +211,10 @@ which allows users to view a desktop computing environment.") `(#:configure-flags '("--enable-lz4" "--enable-automated-tests") + + ;; Several tests appear to be opening the same sockets concurrently. + #:parallel-tests? #f + #:phases (modify-phases %standard-phases (add-before 'check 'use-empty-ssl-cert-file (lambda _ (setenv "SSL_CERT_FILE" "/dev/null") #t))))) @@ -250,7 +254,7 @@ Internet and from a wide variety of machine architectures.") (add-after 'unpack 'patch-spice-vdagent.desktop (lambda* (#:key outputs #:allow-other-keys) (substitute* "data/spice-vdagent.desktop" - (("Exec=/usr/bin/spice-vdagent\n") + (("Exec=/usr/bin/spice-vdagent") (string-append "Exec=" (assoc-ref outputs "out") "/bin/spice-vdagent"))) #t))))) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 816324b279..5c954eae35 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -67,16 +67,16 @@ (define-public libssh (package (name "libssh") - (version "0.7.6") + (version "0.7.7") (source (origin (method git-fetch) (uri (git-reference - (url "https://git.libssh.org/projects/libssh.git") - (commit (string-append "libssh-" version)))) + (url "https://git.libssh.org/projects/libssh.git") + (commit (string-append "libssh-" version)))) (patches (search-patches "libssh-hostname-parser-bug.patch")) (sha256 (base32 - "0slwqa36mhyb6brdv2jvb9fxp7rvsv3ziv67kaxx615jxn52l5pa")) + "07adxvhmnaq2l7sq7sn4sjlikbm1zdicq8lavq5yfila6jbx9z1y")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (outputs '("out" "debug")) @@ -134,14 +134,14 @@ a server that supports the SSH-2 protocol.") (define-public openssh (package (name "openssh") - (version "7.8p1") + (version "7.9p1") (source (origin (method url-fetch) (uri (string-append "mirror://openbsd/OpenSSH/portable/" name "-" version ".tar.gz")) (sha256 (base32 - "1jj4f586r9lhakp2w0zv7j616d6x62m15q8l4nxq7haja6qlnj0s")))) + "1b8sy6v0b8v4ggmknwcqx3y1rjcpsll0f1f8f4vyv11x4ni3njvb")))) (build-system gnu-build-system) (native-inputs `(("groff" ,groff))) (inputs `(("openssl" ,openssl) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e2a673a4e6..cc879be99c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -39,6 +39,7 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages algebra) + #:use-module (gnu packages autotools) #:use-module (gnu packages bash) #:use-module (gnu packages check) #:use-module (gnu packages compression) @@ -75,7 +76,7 @@ (define-public pspp (package (name "pspp") - (version "1.0.1") + (version "1.2.0") (source (origin (method url-fetch) @@ -83,7 +84,7 @@ version ".tar.gz")) (sha256 (base32 - "1r8smr5057993h90nx0mdnff8nxw9x546zzh6qpy4h3xblp1la5s")))) + "07pp27zycrb5x927jwaj9r3q7hy915jh51xs85zxby6gfiwl63m5")))) (build-system gnu-build-system) (inputs `(("cairo" ,cairo) @@ -94,11 +95,15 @@ ("readline" ,readline) ("gtk" ,gtk+) ("gtksourceview" ,gtksourceview) + ("spread-sheet-widget" ,spread-sheet-widget) ("zlib" ,zlib))) (native-inputs - `(("glib" ,glib "bin") ;for glib-genmarshal + `(("autoconf" ,autoconf) ;for tests + ("glib" ,glib "bin") ;for glib-genmarshal ("perl" ,perl) - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("python" ,python-2) ;for tests + ("texinfo" ,texinfo))) (home-page "https://www.gnu.org/software/pspp/") (synopsis "Statistical analysis") (description @@ -110,13 +115,43 @@ can be imported from spreadsheets, text files and database sources and it can be output in text, PostScript, PDF or HTML.") (license license:gpl3+))) +(define-public jags + (package + (name "jags") + (version "4.3.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/mcmc-jags/JAGS/" + (version-major version) ".x/Source/" + "JAGS-" version ".tar.gz")) + (sha256 + (base32 + "1z3icccg2ic56vmhyrpinlsvpq7kcaflk1731rgpvz9bk1bxvica")))) + (build-system gnu-build-system) + (home-page "http://mcmc-jags.sourceforge.net/") + (native-inputs + `(("gfortran" ,gfortran) + ("lapack" ,lapack))) + (synopsis "Gibbs sampler") + (description "JAGS is Just Another Gibbs Sampler. It is a program for +analysis of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) +simulation not wholly unlike BUGS. JAGS was written with three aims in mind: + +@enumerate +@item To have a cross-platform engine for the BUGS language; +@item To be extensible, allowing users to write their own functions, + distributions and samplers; +@item To be a platform for experimentation with ideas in Bayesian modelling. +@end enumerate\n") + (license license:gpl2))) + ;; Update this package together with the set of recommended packages: r-boot, ;; r-class, r-cluster, r-codetools, r-foreign, r-kernsmooth, r-lattice, ;; r-mass, r-matrix, r-mgcv, r-nlme, r-nnet, r-rpart, r-spatial, r-survival. (define r-with-tests (package (name "r-with-tests") - (version "3.5.0") + (version "3.5.1") (source (origin (method url-fetch) (uri (string-append "mirror://cran/src/base/R-" @@ -124,7 +159,7 @@ be output in text, PostScript, PDF or HTML.") version ".tar.gz")) (sha256 (base32 - "0w38865laqg28cdhikxdxhx4rfp0kgcn72gakwypsy91br9ja5zx")))) + "1vap2k8kj5icy9naw61f9zyphf4rs0c9rxvil0zxkwx0xvsvyqq4")))) (build-system gnu-build-system) (arguments `(#:disallowed-references (,tzdata-for-tests) @@ -339,14 +374,14 @@ D.V. Hinkley (1997, CUP), originally written by Angelo Canty for S.") (define-public r-mass (package (name "r-mass") - (version "7.3-50") + (version "7.3-51.1") (source (origin (method url-fetch) (uri (cran-uri "MASS" version)) (sha256 (base32 - "16hasv9k4n773jsyzvh8s3gbga49hwdj8n5hxij6zqisy4i0kxq6")))) + "14907ia8418mp3p1rs1i2f1x5b6kk5z998dk353a29j3xqf3ybyq")))) (properties `((upstream-name . "MASS"))) (build-system r-build-system) (home-page "http://www.stats.ox.ac.uk/pub/MASS4/") @@ -467,13 +502,13 @@ estimation) corresponding to the book: Wand, M.P. and Jones, M.C. (1995) (define-public r-lattice (package (name "r-lattice") - (version "0.20-35") + (version "0.20-38") (source (origin (method url-fetch) (uri (cran-uri "lattice" version)) (sha256 (base32 - "0pcnmaz3lr62ly0dcy5hnnqxshc4yqd43hrvlz3almgc9l7sna88")))) + "0b8abkz7syscq883mrgv63pkwaqkcpwfx8rgbqy9vgfva0z5xszx")))) (build-system r-build-system) (home-page "http://lattice.r-forge.r-project.org/") (synopsis "High-level data visualization system") @@ -487,14 +522,14 @@ also flexible enough to handle most nonstandard requirements.") (define-public r-matrix (package (name "r-matrix") - (version "1.2-14") + (version "1.2-15") (source (origin (method url-fetch) (uri (cran-uri "Matrix" version)) (sha256 (base32 - "15hknim84nj3f54vkchca5ac0c3ip15v1by18k5parmn8wsl19j9")))) + "1mshhyia6imh939p8labxi0wv21lal7csmccxi42klpgdh1j89kv")))) (properties `((upstream-name . "Matrix"))) (build-system r-build-system) (propagated-inputs @@ -532,14 +567,14 @@ nonlinear mixed-effects models.") (define-public r-mgcv (package (name "r-mgcv") - (version "1.8-24") + (version "1.8-25") (source (origin (method url-fetch) (uri (cran-uri "mgcv" version)) (sha256 (base32 - "15b76m1f0hz8dbmj9shqvslihdx5b7c48vck9grj5xs1z2y45r9c")))) + "1y2rq6v45pr2wcxihhgmingcdvcsilim2cvskrlb7k2n00qg6v2q")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix) @@ -614,14 +649,14 @@ analysis.") (define-public r-survival (package (name "r-survival") - (version "2.42-6") + (version "2.43-1") (source (origin (method url-fetch) (uri (cran-uri "survival" version)) (sha256 (base32 - "1bsxc2fir9pbvdzy9n474fkl7har606h9zhspp0z67wnjpp48g73")))) + "0220fjsq4ycx1n5zc5h39wdbj5j6xr8rzqbcixx2p25akzdn7kqk")))) (build-system r-build-system) (propagated-inputs `(("r-matrix" ,r-matrix))) @@ -725,13 +760,13 @@ effects of different types of color-blindness.") (define-public r-digest (package (name "r-digest") - (version "0.6.16") + (version "0.6.18") (source (origin (method url-fetch) (uri (cran-uri "digest" version)) (sha256 - (base32 "1lhs59pdjhpb63jyy98pi1shk9shw044k6vl0mvw0f40v08326ar")))) + (base32 "0k3iv0r8wy8w7zchmgrnrqv3bc149075j4817kf0q521vi4f6vbj")))) (build-system r-build-system) ;; Vignettes require r-knitr, which requires r-digest, so we have to ;; disable them and the tests. @@ -1059,13 +1094,13 @@ legends.") (define-public r-ggplot2 (package (name "r-ggplot2") - (version "3.0.0") + (version "3.1.0") (source (origin (method url-fetch) (uri (cran-uri "ggplot2" version)) (sha256 - (base32 "0kb977hizsvk3b1k3zr717q78bpmbabhl8cj9a3w717nkq1zas67")))) + (base32 "1msy36r21nlmnpyaw2m9k0ykmnd19b9il01b65w457pfw75prrs9")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -1249,16 +1284,14 @@ for template use among CRAN packages.") (define-public r-evaluate (package (name "r-evaluate") - (version "0.11") + (version "0.12") (source (origin (method url-fetch) (uri (cran-uri "evaluate" version)) (sha256 (base32 - "1k8vcd4vsgg0hf7kdz8rlqp1dx4ygvg35aj4n3ay50kdnpzhaj5h")))) + "11rpn40153kcvqqrfhg2ldqfs68frg6yzsl0k3rxnlnv4c0v008g")))) (build-system r-build-system) - (propagated-inputs - `(("r-stringr" ,r-stringr))) (home-page "https://github.com/hadley/evaluate") (synopsis "Parsing and evaluation tools for R") (description @@ -1310,13 +1343,13 @@ supported via Andre Simon's highlight package.") (define-public r-mime (package (name "r-mime") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) (uri (cran-uri "mime" version)) (sha256 (base32 - "0i91m3ivaja1k33jwcvz16pfjypkci27awm8glil7sxhmwaj3izw")))) + "00f4gw4sg1kn03s67gficxgb7a7fb6pwhlvrxrml05q1mc2vcxa7")))) (build-system r-build-system) (home-page "https://github.com/yihui/mime") (synopsis "R package to map filenames to MIME types") @@ -1423,13 +1456,13 @@ from knitr Rmarkdown.") (define-public r-microbenchmark (package (name "r-microbenchmark") - (version "1.4-4") + (version "1.4-6") (source (origin (method url-fetch) (uri (cran-uri "microbenchmark" version)) (sha256 (base32 - "0fv2w2vsiz18imf4115nd9chhmf275w2mb49pn7pkxi6z3bamc9c")))) + "1sn1fxgzakm5iqbgc35g3k4yi0iqrkmwz33cvdrphrzh1lxnmi3s")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/microbenchmark/") (synopsis "Accurate timing functions for R") @@ -1526,13 +1559,13 @@ R packages that praise their users.") (define-public r-testthat (package (name "r-testthat") - (version "2.0.0") + (version "2.0.1") (source (origin (method url-fetch) (uri (cran-uri "testthat" version)) (sha256 (base32 - "155l53kb69jga5d8c5nvdwqlvlgfmk4vzyyl4d0108j53jnlgh1v")))) + "1cafy5xsjx6m08s45456mjsal7mfxzwpbrds0p4z3gwam948gpzy")))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) @@ -1553,13 +1586,13 @@ flexible and easy to set up.") (define-public r-r6 (package (name "r-r6") - (version "2.2.2") + (version "2.3.0") (source (origin (method url-fetch) (uri (cran-uri "R6" version)) (sha256 (base32 - "13xfdr19ca7ymisidsanm6w7hsk3qmy5l8c0mlz3nk48f7s5cxq8")))) + "1jgshp0x8a65rwyvk31slnfp7l153dk5826y2rxcd5lpclby3d85")))) (build-system r-build-system) (home-page "https://github.com/wch/R6/") (synopsis "Classes with reference semantics in R") @@ -1575,13 +1608,13 @@ defined in different packages.") (define-public r-rlang (package (name "r-rlang") - (version "0.2.2") + (version "0.3.0.1") (source (origin (method url-fetch) (uri (cran-uri "rlang" version)) (sha256 (base32 - "0cqd894wzi53rs53prg0j7i75h0yzgi0127fzjqbdbhczwh984f9")))) + "0j7kp6h25wbkvpzr7dpc0zgdpjiwsjjlgprj3mv7bgfalfq1si99")))) (build-system r-build-system) (home-page "http://rlang.tidyverse.org") (synopsis "Functions for base types, core R and Tidyverse features") @@ -1617,13 +1650,13 @@ and printing capabilities than traditional data frames.") (define-public r-dplyr (package (name "r-dplyr") - (version "0.7.6") + (version "0.7.8") (source (origin (method url-fetch) (uri (cran-uri "dplyr" version)) (sha256 (base32 - "0c43h13s5mr0fklikbbm89gs6z5n66rkjzdv6w3w6kl5af5wr2fl")))) + "06p59nhli8c1sarghzxq0y4pk6lyyz3xwkarp55b252dfg2rly9p")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -1767,13 +1800,13 @@ times.") (define-public r-data-table (package (name "r-data-table") - (version "1.11.4") + (version "1.11.8") (source (origin (method url-fetch) (uri (cran-uri "data.table" version)) (sha256 (base32 - "1mc1drqj5i5ar2za3nkh5j70y37s7z7xwqri2r2b72zkqggg3k7x")))) + "1nb6wngrk1a30m984524gf26fa1nwgyf4y4an94dibcwb5jp8hnw")))) (build-system r-build-system) (home-page "https://github.com/Rdatatable/data.table/wiki") (synopsis "Enhanced version of data.frame R object") @@ -1843,14 +1876,14 @@ building design matrices.") (define-public python-statsmodels (package (name "python-statsmodels") - (version "0.8.0") + (version "0.9.0") (source (origin (method url-fetch) (uri (pypi-uri "statsmodels" version)) (sha256 (base32 - "0j30v3932shnj9368c9jr3svkyrvfj90h2l7nxnqkbpv0svilhr6")))) + "0fxs8a7sp4d7jvqlm36yi45i2d28kjfvraf9q8i9jr1chhxgjqb4")))) (build-system python-build-system) (arguments `(;; The test suite is very large and rather brittle. Tests often fail @@ -1869,18 +1902,7 @@ building design matrices.") (("import matplotlib\\.pyplot as plt" line) (string-append "import matplotlib;matplotlib.use('Agg');" line))) - #t)) - ;; FIXME: This is a bug in version 0.8 since the upgrade to scipy 1.0. - ;; See https://github.com/statsmodels/statsmodels/issues/3931 - ;; This has been fixed in version 0.9. - (add-after 'unpack 'patch-for-scipy - (lambda _ - (substitute* "statsmodels/discrete/discrete_model.py" - (("return stats.chisqprob" match) - (string-append - "stats.chisqprob = lambda chisq, df: stats.chi2.sf(chisq, df);" - match))) - #t))))) + #t))))) (propagated-inputs `(("python-numpy" ,python-numpy) ("python-scipy" ,python-scipy) @@ -1913,13 +1935,13 @@ inference for statistical models.") (define-public r-coda (package (name "r-coda") - (version "0.19-1") + (version "0.19-2") (source (origin (method url-fetch) (uri (cran-uri "coda" version)) (sha256 (base32 - "14a4a8df4ygj05h37chmdn8kzcqs07fpbflxfrq530563mrza7yl")))) + "03fs3sdrrym3is92dgpa6ydk3m63gaihwy7bva4k0wm2hxm7x2k7")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) @@ -2212,14 +2234,14 @@ other packages.") (define-public r-commonmark (package (name "r-commonmark") - (version "1.5") + (version "1.6") (source (origin (method url-fetch) (uri (cran-uri "commonmark" version)) (sha256 (base32 - "1jwx5rgm0ypd9a3v4jd9za4a644rdzhk1n4dvmgkj9hdpwsida3z")))) + "1xymqncf8byqxzpx64zlp6vbx7gry572jkr2ax0zlavr8bli861x")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/commonmark") (synopsis "CommonMark and Github Markdown Rendering in R") @@ -2235,13 +2257,13 @@ tables, autolinks and strikethrough text.") (define-public r-roxygen2 (package (name "r-roxygen2") - (version "6.1.0") + (version "6.1.1") (source (origin (method url-fetch) (uri (cran-uri "roxygen2" version)) (sha256 (base32 - "0ji9k4s1bvfbl8wimfqj1lqr33h1claaz30vb5pgksxyg77j5xaa")))) + "0wq29ilqas8yn2z8v49fk0hbgchg29nmyyhwczgdipz0cbhbfipd")))) (build-system r-build-system) (propagated-inputs `(("r-brew" ,r-brew) @@ -2267,14 +2289,14 @@ collation, and NAMESPACE files.") (define-public r-openssl (package (name "r-openssl") - (version "1.0.2") + (version "1.1") (source (origin (method url-fetch) (uri (cran-uri "openssl" version)) (sha256 (base32 - "1djfpnphkcxx8idk5rjfzg8r8dnqsgc0shh2pw8lns5hap2wc5rc")))) + "0ldxgcr33lawwr8wp14kdk2678gpkvqkzv6g333bhck1hn6qspzv")))) (build-system r-build-system) (inputs `(("libressl" ,libressl))) @@ -2350,13 +2372,13 @@ pure C implementation of the Git core methods.") (define-public r-rstudioapi (package (name "r-rstudioapi") - (version "0.7") + (version "0.8") (source (origin (method url-fetch) (uri (cran-uri "rstudioapi" version)) (sha256 (base32 - "133s75q2hr6jg28m1wvs96qrbc9c4vw87migwhkjqb88xxvbqhd5")))) + "0d6r0in13k0rcyr6asanwy0a9dv4lizq6l2w913rr222pq6vrrck")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/rstudioapi") (synopsis "Safely access the RStudio API") @@ -2368,22 +2390,29 @@ informative error messages when it's not available.") (define-public r-devtools (package (name "r-devtools") - (version "1.13.6") + (version "2.0.1") (source (origin (method url-fetch) (uri (cran-uri "devtools" version)) (sha256 (base32 - "1d9n49djydywfyp9w3njgxs5lag4ac7719wmxy1lkgcmn3l9sx5r")))) + "1nyspqicn9zd1rgq3k07b3179i8w5ys6jbd65g9q8qczrb7z3x8f")))) (build-system r-build-system) (propagated-inputs - `(("r-digest" ,r-digest) + `(("r-callr" ,r-callr) + ("r-cli" ,r-cli) + ("r-digest" ,r-digest) ("r-git2r" ,r-git2r) ("r-httr" ,r-httr) ("r-jsonlite" ,r-jsonlite) ("r-memoise" ,r-memoise) + ("r-pkgbuild" ,r-pkgbuild) + ("r-pkgload" ,r-pkgload) + ("r-rcmdcheck" ,r-rcmdcheck) + ("r-remotes" ,r-remotes) ("r-rstudioapi" ,r-rstudioapi) - ("r-whisker" ,r-whisker) + ("r-sessioninfo" ,r-sessioninfo) + ("r-usethis" ,r-usethis) ("r-withr" ,r-withr))) (home-page "https://github.com/hadley/devtools") (synopsis "Tools to make developing R packages easier") @@ -2459,13 +2488,13 @@ disk (or a connection).") (define-public r-plotrix (package (name "r-plotrix") - (version "3.7-3") + (version "3.7-4") (source (origin (method url-fetch) (uri (cran-uri "plotrix" version)) (sha256 (base32 - "18702y1gbyis56mh219z5ww0nrkh6qx7bgqv3khyn80g2giwk7cf")))) + "1hs0zwaqs34559girinvysjfbvznyn8znp9cwvkqx6k2cqvcjinj")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/plotrix") (synopsis "Various plotting functions") @@ -2518,13 +2547,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.9.100.5.0") + (version "0.9.200.4.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "1iyjqhfjip1nxrkllzh7r1m01jjnx7cahqkf3s557w34p987f2l1")))) + "1ayvpyi4hgaqrhx1kqi640iillc2byj4kam7vydlgqmdrzpgrfvz")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (native-inputs @@ -2942,13 +2971,13 @@ multiple breakpoints are allowed.") (define-public r-snow (package (name "r-snow") - (version "0.4-2") + (version "0.4-3") (source (origin (method url-fetch) (uri (cran-uri "snow" version)) (sha256 (base32 - "1mxbrkpnmq32x4wd0194d541661yvfrrjlr3lsf7qq53ms3h21zf")))) + "1n3n8pva9s34fvlw32yng0x416lmbv7q1fsd0ywa4kikmxym64l5")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/snow") (synopsis "Support for simple parallel computing in R") @@ -3034,14 +3063,14 @@ parallel.") (define-public r-doparallel (package (name "r-doparallel") - (version "1.0.11") + (version "1.0.14") (source (origin (method url-fetch) (uri (cran-uri "doParallel" version)) (sha256 (base32 - "0sppgxk3d8mfsrb3cjdyn0mv0s4i7pcy8g8c3cjzbr6k8vmx5jsc")))) + "01qjs4iw9f1kgymcypj0m2s4pvgqhxaycpli0fb8lq3dc0vpzfyb")))) (properties `((upstream-name . "doParallel"))) (build-system r-build-system) (propagated-inputs @@ -3080,13 +3109,13 @@ using the multicore functionality of the parallel package.") (define-public r-dt (package (name "r-dt") - (version "0.4") + (version "0.5") (source (origin (method url-fetch) (uri (cran-uri "DT" version)) (sha256 (base32 - "06gsqz7p2fv6hc3fm3759gaa50krcfrqrmy7qbxyam6a36w9daix")))) + "1s5d3sld4l8zygpkvprvlbqa0pm2cv1bm7h7p999wxlap28vnnqf")))) (properties `((upstream-name . "DT"))) (build-system r-build-system) @@ -3094,7 +3123,8 @@ using the multicore functionality of the parallel package.") `(("r-crosstalk" ,r-crosstalk) ("r-htmltools" ,r-htmltools) ("r-htmlwidgets" ,r-htmlwidgets) - ("r-magrittr" ,r-magrittr))) + ("r-magrittr" ,r-magrittr) + ("r-promises" ,r-promises))) (home-page "http://rstudio.github.io/DT") (synopsis "R wrapper of the DataTables JavaScript library") (description @@ -3257,14 +3287,14 @@ the way current RNG settings can be changed.") (define-public r-rtsne (package (name "r-rtsne") - (version "0.13") + (version "0.15") (source (origin (method url-fetch) (uri (cran-uri "Rtsne" version)) (sha256 (base32 - "17crbdi80q4g2pwp9v7j3bdaznk96qlrqx01zvj3wwqippizyfqw")))) + "0v17vxizrs1msay24xl2bckfajr2c82wpqj07lyssbrq197nwdsn")))) (properties `((upstream-name . "Rtsne"))) (build-system r-build-system) (propagated-inputs @@ -3634,14 +3664,14 @@ the 'lite' version of the more complete @code{viridis} package.") (define-public r-tidyselect (package (name "r-tidyselect") - (version "0.2.4") + (version "0.2.5") (source (origin (method url-fetch) (uri (cran-uri "tidyselect" version)) (sha256 (base32 - "1592dbzawhd1hpsp9919l4sifyiaaj6xr7lnhsbwa6jwmmb0xcsw")))) + "0x3cp36byhfjajikr1lwffjm85ayw3bcs7d7kb0cydgs61ifiqjw")))) (build-system r-build-system) (propagated-inputs `(("r-glue" ,r-glue) @@ -3660,14 +3690,14 @@ selection.") (define-public r-tidyr (package (name "r-tidyr") - (version "0.8.1") + (version "0.8.2") (source (origin (method url-fetch) (uri (cran-uri "tidyr" version)) (sha256 (base32 - "0485f19mkkglc4bv57y6bm6l9rfgd878hsz2xdg1nwgbqchjhgix")))) + "03s9dv6c2dj65a769h8fgy9878y46rdq7x65i53kd44kag80i9cr")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -4026,14 +4056,14 @@ hierarchical clustering dendrograms.") (define-public r-preprocesscore (package (name "r-preprocesscore") - (version "1.42.0") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "preprocessCore" version)) (sha256 (base32 - "1afar1z7959v7mbzsqa77vqfh0yc7y3nv5ayx71485a8scwsfwbk")))) + "0ijyjqi8mxxf350dhvgp36swwww5ag7ac9a6r6ymihc5syjr4w4j")))) (properties `((upstream-name . "preprocessCore"))) (build-system r-build-system) @@ -4231,13 +4261,13 @@ mechanism.") (define-public r-zoo (package (name "r-zoo") - (version "1.8-3") + (version "1.8-4") (source (origin (method url-fetch) (uri (cran-uri "zoo" version)) (sha256 (base32 - "15jmkgwvq2mm9f09vijgx7sff8pszh90fndcwhk2vw9i0p183di0")))) + "1pywcp86kqijdrvl42qwdy75szrag9pzj0p88zbrj2r1klb8rn5i")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) @@ -4665,14 +4695,14 @@ models, generalized linear models and model-based clustering.") (define-public r-mclust (package (name "r-mclust") - (version "5.4.1") + (version "5.4.2") (source (origin (method url-fetch) (uri (cran-uri "mclust" version)) (sha256 (base32 - "1vcl4nl8by2vj2k9k84imy5m850khkgd8q02a8ica1h8vz9ijgn4")))) + "09152swfpa3fzhmrq5cwb5kxgvrxvigv1m4v6rhcibrdhfd1x8x4")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -4735,14 +4765,14 @@ can be efficiently implemented directly in the R language.") (define-public r-robustbase (package (name "r-robustbase") - (version "0.93-2") + (version "0.93-3") (source (origin (method url-fetch) (uri (cran-uri "robustbase" version)) (sha256 (base32 - "1632p73iv9iqqm0v3k9rfv9way0him3fl35si1nly9wi5kpq5ci7")))) + "1nqh1qg1qd1qrxl1w585dqx7ql55qzjny1r4f9hqxpwd7lml07cc")))) (build-system r-build-system) (inputs `(("gfortran" ,gfortran))) @@ -5011,14 +5041,14 @@ decompositions of such matrices, and solutions of linear systems.") (define-public r-modelmetrics (package (name "r-modelmetrics") - (version "1.2.0") + (version "1.2.2") (source (origin (method url-fetch) (uri (cran-uri "ModelMetrics" version)) (sha256 (base32 - "1sgdyrf6fbsn18gk8slir4a1yhv133kfhyg2crfs759nff4aw89h")))) + "158ddbw2snlyzd2q6mdaif5i67kq4qfvadylwjxgv1w2cmszrmk6")))) (properties `((upstream-name . "ModelMetrics"))) (build-system r-build-system) (propagated-inputs @@ -5084,17 +5114,19 @@ expected shortfall risk are also included.") (define-public r-nloptr (package (name "r-nloptr") - (version "1.0.4") + (version "1.2.1") (source (origin (method url-fetch) (uri (cran-uri "nloptr" version)) (sha256 (base32 - "1sz1xj3785x4vsm4nd6in298bk32hs2jk5nsxma7ivxi7jcmn8l4")))) + "15yz60kljxwnhm2m3gryjzxl3ynhkhd5jiwc179b1hz6rlzf71hz")))) (build-system r-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("r-knitr" ,r-knitr) ; for building vignettes + ("pkg-config" ,pkg-config) + ("gfortran" ,gfortran))) (inputs `(("nlopt" ,nlopt))) (home-page "https://cran.r-project.org/web/packages/nloptr") @@ -5110,14 +5142,14 @@ algorithms.") (define-public r-lme4 (package (name "r-lme4") - (version "1.1-18-1") + (version "1.1-19") (source (origin (method url-fetch) (uri (cran-uri "lme4" version)) (sha256 (base32 - "01ar4fak8zj7c1vmh9m576wchxj5qzpfqn637s7fh3fl6cpz0alq")))) + "0j8xhkkcdv45ilab960s9jrcjk6jbzvd7w7myswv5fmalrpq52pf")))) (build-system r-build-system) (native-inputs `(("r-rcpp" ,r-rcpp) @@ -5165,14 +5197,14 @@ bootstrap test for generalized linear mixed models.") (define-public r-cardata (package (name "r-cardata") - (version "3.0-1") + (version "3.0-2") (source (origin (method url-fetch) (uri (cran-uri "carData" version)) (sha256 (base32 - "193pdwgw6gk19v7swk1kwphg3vqdmpsgi555g9nyz93sa39j7r8j")))) + "152lfgaspgx6x2wzdb5p3zv6r87a0d2pg10h6fjmdr613kzlwp1v")))) (properties `((upstream-name . "carData"))) (build-system r-build-system) (home-page "https://r-forge.r-project.org/projects/car/") @@ -5312,14 +5344,14 @@ first and second order derivatives.") (define-public r-sn (package (name "r-sn") - (version "1.5-2") + (version "1.5-3") (source (origin (method url-fetch) (uri (cran-uri "sn" version)) (sha256 (base32 - "16gwr68zzj5v83bqfmzxnzwig3dnjrkxdhs6clri1caqkvrq6aig")))) + "10via4lg0vx9pzq350vwhz5wv1dhzxr2l3r6jq99nk37vmyvj8fc")))) (build-system r-build-system) (propagated-inputs `(("r-mnormt" ,r-mnormt) diff --git a/gnu/packages/storage.scm b/gnu/packages/storage.scm index 11f6f9d7e8..4eae37815e 100644 --- a/gnu/packages/storage.scm +++ b/gnu/packages/storage.scm @@ -26,6 +26,7 @@ #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages assembly) + #:use-module (gnu packages authentication) #:use-module (gnu packages bdw-gc) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -35,6 +36,7 @@ #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages disk) + #:use-module (gnu packages gcc) #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) #:use-module (gnu packages jemalloc) @@ -51,18 +53,19 @@ (define-public ceph (package (name "ceph") - (version "12.2.5") + (version "13.2.2") (source (origin (method url-fetch) (uri (string-append "https://download.ceph.com/tarballs/ceph-" version ".tar.gz")) (sha256 (base32 - "1ydc3mfvc0vpnpfnfmissvsrsj4jyxgzc2pcl1a4vdr3bwkcglp3")) + "0h483n9iy0fkbqrhf7k0dzspwdpcaswkjwmc5n5c600fr6s1v9pk")) (patches (search-patches "ceph-skip-unittest_blockdev.patch" "ceph-skip-collect-sys-info-test.patch" - "ceph-rocksdb-compat.patch" + "ceph-detect-rocksdb.patch" + "ceph-volume-respect-PATH.patch" "ceph-disable-cpu-optimizations.patch")) (modules '((guix build utils))) (snippet @@ -76,7 +79,7 @@ ;"src/zstd" ;"src/civetweb" "src/test/downloads" - "src/dpdk" + "src/rapidjson" "src/spdk" "src/rocksdb" "src/boost")) @@ -100,13 +103,14 @@ (assoc-ref %build-inputs "keyutils") "/include") "-DCMAKE_INSTALL_LOCALSTATEDIR=/var" "-DENABLE_SHARED=ON" - "-DWITH_EMBEDDED=OFF" "-DWITH_SYSTEM_ROCKSDB=ON" "-DWITH_SYSTEM_BOOST=ON" "-DWITH_PYTHON3=ON" ;; TODO: Enable these when available in Guix. + "-DWITH_MGR_DASHBOARD_FRONTEND=OFF" ;requires node + nodeenv "-DWITH_BABELTRACE=OFF" "-DWITH_LTTNG=OFF" + "-DWITH_SPDK=OFF" "-DWITH_XFS=OFF" "-DWITH_XIO=OFF" ;; Use jemalloc instead of tcmalloc. @@ -184,9 +188,6 @@ ;; /tmp/ceph-disk-virtualenv/bin/ceph-disk, but somehow ;; src/ceph-disk/CMakeLists.txt fails to create it. (substitute* "src/test/CMakeLists.txt" - ;; FIXME: "create cannot load compressor of type zlib" - ;; "libceph_zlib.so: undefined symbol: isal_deflate" - (("^add_subdirectory\\(compressor\\)") "") ;; FIXME: These tests fails because `ceph-disk' ;; is not available. (("^add_ceph_test\\(test-ceph-helpers\\.sh.*$") "\n") @@ -235,6 +236,11 @@ (("^add_ceph_test\\(osd-copy-from\\.sh.*$") "\n") (("^add_ceph_test\\(osd-fast-mark-down\\.sh.*$") "\n")) #t))) + (add-before 'configure 'gcc-workaround + (lambda _ + (unsetenv "C_INCLUDE_PATH") + (unsetenv "CPLUS_INCLUDE_PATH") + #t)) (add-before 'check 'set-check-environment (lambda _ ;; Run tests in parallel. @@ -262,28 +268,28 @@ (add-after 'install 'wrap-python-scripts (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (ceph (string-append out "/bin/ceph")) - (ceph-disk (string-append out "/bin/ceph-disk")) - (ceph-detect-init (string-append - out "/bin/ceph-detect-init")) - + (scripts '("ceph" "ceph-mgr" "ceph-volume" + "ceph-detect-init" + "ceph-disk")) ;deprecated (prettytable (assoc-ref inputs "python2-prettytable")) - + (six (assoc-ref inputs "python2-six")) (sitedir (lambda (package) (string-append package "/lib/python2.7/site-packages"))) (PYTHONPATH (string-append (sitedir out) ":" + (sitedir six) ":" (sitedir prettytable)))) (for-each (lambda (executable) - (wrap-program executable + (wrap-program (string-append out "/bin/" executable) `("PYTHONPATH" ":" prefix (,PYTHONPATH)))) - (list ceph ceph-disk ceph-detect-init)) + scripts) #t)))))) (outputs '("out" "lib")) (native-inputs - `(("gperf" ,gperf) + `(("gcc" ,gcc-7) ;7 or later is required + ("gperf" ,gperf) ("pkg-config" ,pkg-config) ("python-cython" ,python-cython) ("python-sphinx" ,python-sphinx) @@ -315,7 +321,7 @@ ("python2-testtools" ,python2-testtools) ("python2-tox" ,python2-tox))) (inputs - `(("boost" ,boost) + `(("boost" ,boost-cxx14) ("curl" ,curl) ("cryptsetup" ,cryptsetup) ("expat" ,expat) @@ -329,13 +335,16 @@ ("libatomic-ops" ,libatomic-ops) ("lua" ,lua) ("lz4" ,lz4) + ("oath-toolkit" ,oath-toolkit) ("openldap" ,openldap) ("openssl" ,openssl) ("nss" ,nss) ("parted" ,parted) ("python@2" ,python-2) ("python2-prettytable" ,python2-prettytable) ;used by ceph_daemon.py + ("python2-six" ,python2-six) ;for ceph-mgr + plugins ("python@3" ,python-3) + ("rapidjson" ,rapidjson) ("rocksdb" ,rocksdb) ("snappy" ,snappy) ("udev" ,eudev) diff --git a/gnu/packages/sync.scm b/gnu/packages/sync.scm index e0b0af3d96..7e0da38285 100644 --- a/gnu/packages/sync.scm +++ b/gnu/packages/sync.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,6 +23,7 @@ (define-module (gnu packages sync) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system cmake) + #:use-module (guix build-system go) #:use-module (guix build-system meson) #:use-module (guix download) #:use-module (guix git-download) @@ -32,6 +34,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) + #:use-module (gnu packages golang) #:use-module (gnu packages linux) #:use-module (gnu packages lua) #:use-module (gnu packages perl) @@ -214,7 +217,8 @@ and does not hamper local file system performance.") (sha256 (base32 "0znkp3fcksrykcsv06y2mjvf2lbwmin25snmvfa8i5qfm3f4rm88")) - (file-name (string-append name "-" version "-checkout")))) + (file-name (string-append name "-" version "-checkout")) + (patches (search-patches "casync-renameat2-declaration.patch")))) (build-system meson-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -243,3 +247,48 @@ over the Internet in an HTTP and CDN friendly way; @item An efficient backup system. @end itemize\n") (license license:lgpl2.1+))) + +(define-public rclone + (package + (name "rclone") + (version "1.45") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ncw/rclone.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "06xg0ibv9pnrnmabh1kblvxx1pk8h5rmkr9mjbymv497sx3zgz26")))) + ;; FIXME: Rclone bundles some libraries Guix already provides. Need to + ;; un-bundle them. + (build-system go-build-system) + (arguments + '(#:import-path "github.com/ncw/rclone" + #:install-source? #f + #:phases + (modify-phases %standard-phases + ;; Fix failure during "check" phase: "mkdir /homeless-shelter: + ;; permission denied". + (add-after 'unpack 'set-home-directory + (lambda _ (setenv "HOME" "/tmp") #t))))) + (synopsis "@code{rsync} for cloud storage") + (description "@code{Rclone} is a command line program to sync files and +directories to and from different cloud storage providers. + +Features include: +@itemize +@item MD5/SHA1 hashes checked at all times for file integrity +@item Timestamps preserved on files +@item Partial syncs supported on a whole file basis +@item Copy mode to just copy new/changed files +@item Sync (one way) mode to make a directory identical +@item Check mode to check for file hash equality +@item Can sync to and from network, e.g., two different cloud accounts +@item Optional encryption (Crypt) +@item Optional cache (Cache) +@item Optional FUSE mount (rclone mount) +@end itemize") + (home-page "https://rclone.org/") + (license license:expat))) diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 2e936eef7d..5222354e74 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -30,7 +30,7 @@ (define-public syncthing (package (name "syncthing") - (version "0.14.51") + (version "0.14.54") (source (origin (method url-fetch) (uri (string-append "https://github.com/syncthing/syncthing" @@ -38,12 +38,19 @@ "/syncthing-source-v" version ".tar.gz")) (sha256 (base32 - "17phn8l2afhgzh0q9ambi28awj2m905sr1bicq2wc7ghypk5vgqh")) - (modules '((guix build utils))) - ;; Delete bundled ("vendored") free software source code. - (snippet '(begin - (delete-file-recursively "vendor") - #t)))) + "1pfjckwsrhy8lbmy42fawgh1gcfmjbh3dfxx05w5yjxnpd1g2z6r")) + ;; Since the update to Go 1.11, Go programs have been keeping + ;; spurious references to all their dependencies: + ;; <https://bugs.gnu.org/33620>. + ;; For Syncthing, this increases the size of the 'out' closure + ;; from 87.6 MiB to 253.5 MiB. So, we use the bundled + ;; dependencies until the bug is resolved. +; (modules '((guix build utils))) +; ;; Delete bundled ("vendored") free software source code. +; (snippet '(begin +; (delete-file-recursively "vendor") +; #t)) + )) (build-system go-build-system) ;; The primary Syncthing executable goes to "out", while the auxiliary ;; server programs and utility tools go to "utils". This reduces the size @@ -63,7 +70,7 @@ #t)) (replace 'build - (lambda* (#:key inputs #:allow-other-keys) + (lambda _ (with-directory-excursion "src/github.com/syncthing/syncthing" (invoke "go" "run" "build.go" "-no-upgrade")))) @@ -107,48 +114,6 @@ (delete-file (string-append out man "/man1/strelaysrv.1")) (delete-file (string-append utils man "/man1/syncthing.1")) #t)))))) - ;; When updating Syncthing, check 'vendor/manifest' in the source - ;; distribution to ensure we are using the correct versions of these - ;; dependencies. - (inputs - `(("go-github-com-audriusbutkevicius-cli" - ,go-github-com-audriusbutkevicius-cli) - ("go-github-com-audriusbutkevicius-go-nat-pmp" - ,go-github-com-audriusbutkevicius-go-nat-pmp) - ("go-github-com-audriusbutkevicius-pfilter" - ,go-github-com-audriusbutkevicius-pfilter) - ("go-github-com-bkaradzic-go-lz4" ,go-github-com-bkaradzic-go-lz4) - ("go-github-com-calmh-du" ,go-github-com-calmh-du) - ("go-github-com-calmh-xdr" ,go-github-com-calmh-xdr) - ("go-github-com-prometheus-union" ,(go-github-com-prometheus-union)) - ("go-github-com-chmduquesne-rollinghash-adler32" - ,go-github-com-chmduquesne-rollinghash-adler32) - ("go-github-com-gobwas-glob" ,go-github-com-gobwas-glob) - ("go-github-com-gogo-protobuf-union" - ,(go-github-com-gogo-protobuf-union)) - ("go-github-com-golang-groupcache-lru" - ,go-github-com-golang-groupcache-lru) - ("go-github-com-jackpal-gateway" ,go-github-com-jackpal-gateway) - ("go-github-com-kballard-go-shellquote" - ,go-github-com-kballard-go-shellquote) - ("go-github-com-lib-pq" ,go-github-com-lib-pq) - ("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd) - ("go-github-com-oschwald-geoip2-golang" - ,go-github-com-oschwald-geoip2-golang) - ("go-github-com-pkg-errors" ,go-github-com-pkg-errors) - ("go-github-com-rcrowley-go-metrics" ,go-github-com-rcrowley-go-metrics) - ("go-github-com-sasha-s-go-deadlock" ,go-github-com-sasha-s-go-deadlock) - ("go-github-com-syncthing-notify" ,go-github-com-syncthing-notify) - ("go-github-com-syndtr-goleveldb" ,go-github-com-syndtr-goleveldb) - ("go-github-com-thejerf-suture" ,go-github-com-thejerf-suture) - ("go-github-com-vitrun-qart" ,(go-github-com-vitrun-qart-union)) - ("go-golang-org-x-crypto" ,(go-golang-org-x-crypto-union)) - ("go-golang-org-x-net-union" ,(go-golang-org-x-net-union)) - ("go-golang-org-x-text" ,(go-golang-org-x-text-union)) - ("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate) - ("go-gopkg.in-ldap.v2" ,go-gopkg.in-ldap.v2) - ;; For tests - ("go-github-com-d4l3k-messagediff" ,go-github-com-d4l3k-messagediff))) (synopsis "Decentralized continuous file system synchronization") (description "Syncthing is a peer-to-peer file synchronization tool that supports a wide variety of computing platforms. It uses the Block Exchange @@ -298,100 +263,6 @@ structs in the Go programming language.") (home-page "https://github.com/gobwas/glob") (license expat)))) -(define* (go-github-com-gogo-protobuf-union - #:optional (packages (list go-github-com-gogo-protobuf - go-github-com-gogo-protobuf-protoc-gen-gogo))) - (package - (name "go-github-com-gogo-protobuf-union") - (version (package-version go-github-com-gogo-protobuf)) - (source #f) - (build-system trivial-build-system) - (arguments - '(#:modules ((guix build union)) - #:builder (begin - (use-modules (ice-9 match) - (guix build union)) - (match %build-inputs - (((names . directories) ...) - (union-build (assoc-ref %outputs "out") - directories) - #t))))) - (inputs (map (lambda (package) - (list (package-name package) package)) - packages)) - (synopsis "Union of Go protobuf libraries") - (description "This is a union of Go protobuf libraries") - (home-page (package-home-page go-github-com-gogo-protobuf)) - (license (package-license go-github-com-gogo-protobuf)))) - -(define-public go-github-com-gogo-protobuf - (let ((commit "160de10b2537169b5ae3e7e221d28269ef40d311") - (revision "2")) - (package - (name "go-github-com-gogo-protobuf") - (version (git-version "0.5" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/gogo/protobuf") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0hxq28sgxym04rv0q40gpwkh4ni359q21hq3g78wwxwx4qfd4zwm")))) - (build-system go-build-system) - (arguments - `(#:import-path "github.com/gogo/protobuf/proto" - #:unpack-path "github.com/gogo/protobuf")) - (propagated-inputs - `(("go-github-com-gogo-protobuf-protoc-gen-gogo" - ,go-github-com-gogo-protobuf-protoc-gen-gogo))) - (synopsis "Protocol Buffers for Go with Gadgets") - (description "Gogoprotobuf is a fork of golang/protobuf with extra code -generation features. This code generation is used to achieve: -@itemize -@item fast marshalling and unmarshalling -@item more canonical Go structures -@item goprotobuf compatibility -@item less typing by optionally generating extra helper code -@item peace of mind by optionally generating test and benchmark code -@item other serialization formats -@end itemize") - (home-page "https://github.com/gogo/protobuf") - (license bsd-3)))) - -(define-public go-github-com-gogo-protobuf-protoc-gen-gogo - (let ((commit "efccd33a0c20aa078705571d5ddbfa14c8395a63") - (revision "0")) - (package - (name "go-github-com-gogo-protobuf-protoc-gen-gogo") - (version (git-version "0.2" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/gogo/protobuf") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "09kfa3aqmhh7p0rc6wd4fw5cjccidsk9vgcy13albv0g8vnbmmgw")))) - (build-system go-build-system) - (arguments - `(#:import-path "github.com/gogo/protobuf/protoc-gen-gogo" - #:unpack-path "github.com/gogo/protobuf")) - (synopsis "Protocol Buffers for Go with Gadgets") - (description "Gogoprotobuf is a fork of golang/protobuf with extra code -generation features. This code generation is used to achieve: -@itemize -@item fast marshalling and unmarshalling -@item more canonical Go structures -@item goprotobuf compatibility -@item less typing by optionally generating extra helper code -@item peace of mind by optionally generating test and benchmark code -@item other serialization formats -@end itemize") - (home-page "https://github.com/gogo/protobuf") - (license bsd-3)))) (define-public go-github-com-golang-groupcache-lru (let ((commit "84a468cf14b4376def5d68c722b139b881c450a4") @@ -822,44 +693,6 @@ generation.") (home-page "https://github.com/vitrun/qart") (license bsd-3)))) -;; Go searches for library modules by looking in the GOPATH environment -;; variable. This variable is a list of paths. However, Go does not -;; keep searching on GOPATH if it tries and fails to import a module. -;; So, we use a union for packages sharing a namespace. -(define* (go-golang-org-x-crypto-union #:optional - (packages (list go-golang-org-x-crypto-blowfish - go-golang-org-x-crypto-bcrypt - go-golang-org-x-crypto-tea - go-golang-org-x-crypto-xtea - go-golang-org-x-crypto-pbkdf2 - go-golang-org-x-crypto-twofish - go-golang-org-x-crypto-cast5 - go-golang-org-x-crypto-salsa20))) - (package - (name "go-golang-org-x-crypto") - (version (package-version go-golang-org-x-crypto-bcrypt)) - (source #f) - (build-system trivial-build-system) - (arguments - '(#:modules ((guix build union)) - #:builder (begin - (use-modules (ice-9 match) - (guix build union)) - (match %build-inputs - (((names . directories) ...) - (union-build (assoc-ref %outputs "out") - directories) - #t))))) - (inputs (map (lambda (package) - (list (package-name package) package)) - packages)) - (synopsis "Union of the Go x crypto libraries") - (description "A union of the Golang cryptographic libraries. A -union is required because `go build` assumes that all of the headers and -libraries are in the same directory.") - (home-page (package-home-page go-golang-org-x-crypto-bcrypt)) - (license (package-license go-golang-org-x-crypto-bcrypt)))) - (define* (go-golang-org-x-net-union #:optional (packages (list go-golang-org-x-net-ipv4 go-golang-org-x-net-bpf @@ -1032,7 +865,16 @@ the current goroutine's ID.") "0bg26pfg25vr16jmczig2m493mja2nxjxyswz3hha7avxw20rpi5")))) (build-system go-build-system) (arguments - '(#:import-path "github.com/AudriusButkevicius/cli")) + '(#:import-path "github.com/AudriusButkevicius/cli" + ;; Tests don't pass "vet" on go-1.11. See + ;; https://github.com/AudriusButkevicius/cli/pull/1. + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key import-path #:allow-other-keys) + (invoke "go" "test" + "-vet=off" + import-path)))))) (synopsis "Library for building command-line interfaces in Go") (description "This package provides a library for building command-line interfaces in Go.") @@ -1064,8 +906,8 @@ using sh's word-splitting rules.") (license expat)))) (define-public go-github-com-syncthing-notify - (let ((commit "b76b45868a77e7800dd06cce61101af9c4274bcc") - (revision "2")) + (let ((commit "116c45bb5ad48777321e4984d1320d56889b6097") + (revision "3")) (package (name "go-github-com-syncthing-notify") (version (git-version "0.0.0" revision commit)) @@ -1077,7 +919,7 @@ using sh's word-splitting rules.") (file-name (git-file-name name version)) (sha256 (base32 - "1xxkzaxygxxr51i2kdxsdaqb5i95hqpkw4kcr75wmsp914slw2q9")))) + "14bh95pkhwmnc65bnv08p3y4flj1j7f6xxr2cgmlwrphnlp9yhl9")))) (build-system go-build-system) (arguments '(#:import-path "github.com/syncthing/notify")) @@ -1229,7 +1071,14 @@ message streaming.") (string-append (assoc-ref outputs "out") "/src/github.com/prometheus/common/expfmt/testdata/") ".*\\.gz$")) - #t))))) + #t)) + (replace 'check + ;; Tests don't pass "vet" on go-1.11. See + ;; https://github.com/syncthing/syncthing/issues/5311. + (lambda* (#:key import-path #:allow-other-keys) + (invoke "go" "test" + "-vet=off" + import-path)))))) (propagated-inputs `(("go-github-com-golang-protobuf-proto" ,go-github-com-golang-protobuf-proto) @@ -1304,11 +1153,11 @@ server tools for Prometheus metrics.") (license asl2.0)))) (define-public go-github-com-client-golang-prometheus - (let ((commit "180b8fdc22b4ea7750bcb43c925277654a1ea2f3") + (let ((commit "7e9098b20fb8e103a7a5691878272d7e3d703663") (revision "0")) (package (name "go-github-com-prometheus-client-golang-prometheus") - (version (git-version "0.0.0" revision commit)) + (version (git-version "0.9.1" revision commit)) (source (origin (method git-fetch) (uri (git-reference @@ -1317,11 +1166,12 @@ server tools for Prometheus metrics.") (file-name (git-file-name name version)) (sha256 (base32 - "1kkfx1j9ka18ydsmdi2cdy3hs39c22b39mbc4laykmj2x93lmbdp")))) + "09q8hlvgyn58hn8fmmj535hrwhqc1215czwzf7fhaqpa9zamj4w1")))) (build-system go-build-system) (arguments '(#:import-path "github.com/prometheus/client_golang/prometheus" - #:unpack-path "github.com/prometheus/client_golang")) + #:unpack-path "github.com/prometheus/client_golang" + #:tests? #f)) ; 'TestHandler' test fails in this non-critical dependency (propagated-inputs `(("go-github-com-beorn7-perks-quantile" ,go-github-com-beorn7-perks-quantile) @@ -1383,7 +1233,16 @@ Prometheus HTTP API.") "1y8bvzbxpw0lfnn7pbcdwzqj4l90qj6xf88dvv9pxd9yl5g6cskx")))) (build-system go-build-system) (arguments - '(#:import-path "gopkg.in/asn1-ber.v1")) + '(#:import-path "gopkg.in/asn1-ber.v1" + ;; Tests don't pass "vet" on go-1.11. See + ;; https://github.com/go-asn1-ber/asn1-ber/issues/20. + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key import-path #:allow-other-keys) + (invoke "go" "test" + "-vet=off" + import-path)))))) (synopsis "ASN.1 BER encoding and decoding in Go") (description "This package provides ASN.1 BER encoding and decoding in the Go language.") diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 05916cde5c..63709935c3 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> ;;; Copyright © 2016 Francesco Frassinelli <fraph24@gmail.com> ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> -;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net> ;;; @@ -295,26 +295,19 @@ protocol (RFC 3550).") (version (string-append "0.0.0-1." (string-take commit 7))) (source (origin - (method url-fetch) - (uri - (string-append - "https://gitlab.savoirfairelinux.com/sflphone/libiax2/" - "repository/archive.tar.gz?ref=" - commit)) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://gitlab.savoirfairelinux.com/sflphone/libiax2.git") + (commit commit))) + (file-name (git-file-name name version)) (sha256 (base32 - "0cj5293bixp3k5x3hjwyd0iq7z8w5p7yavxvvkqk5817hjq386y2")))) + "0d269474kk1933c55hx4azw3sak5ycfrxkw6ida0sb2cm00kfich")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool))) - (arguments - `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (invoke "autoreconf" "-vfi")))))) (home-page "https://gitlab.savoirfairelinux.com/sflphone/libiax2") (synopsis "Inter-Asterisk-Protocol library") (description "LibIAX2 implements the Inter-Asterisk-Protocol for relaying diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 5cdc081398..369e79bf5b 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2016, 2017 José Miguel Sánchez García <jmi2k@openmailbox.org> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net> -;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2018 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> @@ -71,12 +71,14 @@ (name "tilda") (version "1.4.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/lanoxx/tilda/archive/" - "tilda-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/lanoxx/tilda.git") + (commit (string-append "tilda-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0w2hry2bqcqrkik4l100b1a9jlsih6sq8zwhfpl8zzfq20i00lfs")))) + "154rsldqjv2m1bddisb930qicb0y35kx7bxq392n2hn68jr2pxkj")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases (modify-phases %standard-phases @@ -104,7 +106,7 @@ configurable through a graphical wizard.") (define-public termite (package (name "termite") - (version "13") + (version "14") (source (origin (method git-fetch) @@ -116,7 +118,7 @@ configurable through a graphical wizard.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "02cn70ygl93ghhkhs3xdxn5b1yadc255v3yp8cmhhyzsv5027hvj")))) + "0dmz9rpc2fdvcwhcmjnhb48ixn403gxpq03g334d1hgjw2hsyx7x")))) (build-system gnu-build-system) (arguments `(#:phases @@ -187,96 +189,113 @@ text-based approach to terminal recording.") (license license:gpl3))) (define-public libtsm - (package - (name "libtsm") - (version "3") - (source (origin - (method url-fetch) - (uri (string-append - "https://freedesktop.org/software/kmscon/releases/" - "libtsm-" version ".tar.xz")) - (sha256 - (base32 - "01ygwrsxfii0pngfikgqsb4fxp8n1bbs47l7hck81h9b9bc1ah8i")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (inputs - `(("libxkbcommon" ,libxkbcommon))) - (synopsis "Xterm state machine library") - (description "TSM is a state machine for DEC VT100-VT520 compatible + (let ((commit "f70e37982f382b03c6939dac3d5f814450bda253") + (revision "1")) + (package + (name "libtsm") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + ;; The freedesktop repository is no longer maintained. + (uri (git-reference + (url (string-append "https://github.com/Aetf/" name)) + (commit commit))) + (sha256 + (base32 + "0mwn91i5h5d518i1s05y7hzv6bc13vzcvxszpfh77473iwg4wprx")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DBUILD_TESTING=ON"))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libxkbcommon" ,libxkbcommon) + ("check" ,check))) + (synopsis "Xterm state machine library") + (description "TSM is a state machine for DEC VT100-VT520 compatible terminal emulators. It tries to support all common standards while keeping compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") - (home-page "https://www.freedesktop.org/wiki/Software/libtsm") - ;; Hash table implementation is lgpl2.1+ licensed. - ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license - ;; derived from ISC. - ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released - ;; under the bsd 2 license. - (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2)))) + (home-page "https://www.freedesktop.org/wiki/Software/libtsm") + ;; Hash table implementation is lgpl2.1+ licensed. + ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license + ;; derived from ISC. + ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released + ;; under the bsd 2 license. + (license (list license:expat license:lgpl2.1+ license:isc license:bsd-2))))) (define-public kmscon - (package - (name "kmscon") - (version "8") - (source (origin - (method url-fetch) - (uri (string-append - "https://freedesktop.org/software/kmscon/releases/" - "kmscon-" version ".tar.xz")) - (sha256 - (base32 - "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")) - (modules '((guix build utils))) - (snippet - ;; Use elogind instead of systemd. - '(begin - (substitute* "configure" - (("libsystemd-daemon libsystemd-login") - "libelogind")) - (substitute* "src/uterm_systemd.c" - (("#include <systemd/sd-login.h>") - "#include <elogind/sd-login.h>") - ;; We don't have this header. - (("#include <systemd/sd-daemon\\.h>") - "") - ;; Replace the call to 'sd_booted' by the truth value. - (("sd_booted\\(\\)") - "1")) - #t)))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config) - ("libxslt" ,libxslt) ;to build the man page - ("libxml2" ,libxml2) ;for XML_CATALOG_FILES - ("docbook-xsl" ,docbook-xsl))) - (inputs - `(("libdrm" ,libdrm) - ("libtsm" ,libtsm) - ("libxkbcommon" ,libxkbcommon) - ("logind" ,elogind) - ("mesa" ,mesa) - ("pango" ,pango) - ("udev" ,eudev))) - (synopsis "Linux KMS-based terminal emulator") - (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel + (let ((commit "01dd0a231e2125a40ceba5f59fd945ff29bf2cdc") + (revision "1")) + (package + (name "kmscon") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + ;; The freedesktop repository is no longer maintained. + (uri (git-reference + (url (string-append "https://github.com/Aetf/" name)) + (commit commit))) + (sha256 + (base32 + "0q62kjsvy2iwy8adfiygx2bfwlh83rphgxbis95ycspqidg9py87")) + (modules '((guix build utils))))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + (setenv "NOCONFIGURE" "indeed") + (invoke "sh" "autogen.sh"))) + ;; Use elogind instead of systemd. + (add-before 'configure 'remove-systemd + (lambda _ + (substitute* "configure" + (("libsystemd-daemon libsystemd-login") + "libelogind")) + (substitute* "src/uterm_systemd.c" + (("#include <systemd/sd-login.h>") + "#include <elogind/sd-login.h>") + ;; We don't have this header. + (("#include <systemd/sd-daemon\\.h>") + "") + ;; Replace the call to 'sd_booted' by the truth value. + (("sd_booted\\(\\)") + "1"))))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("libxslt" ,libxslt) ;to build the man page + ("libxml2" ,libxml2) ;for XML_CATALOG_FILES + ("docbook-xsl" ,docbook-xsl))) + (inputs + `(("libdrm" ,libdrm) + ("libtsm" ,libtsm) + ("libxkbcommon" ,libxkbcommon) + ("logind" ,elogind) + ("mesa" ,mesa) + ("pango" ,pango) + ("udev" ,eudev))) + (synopsis "Linux KMS-based terminal emulator") + (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel mode setting} (KMS). It can replace the in-kernel virtual terminal (VT) implementation with a user-space console. Compared to the Linux console, kmscon provides enhanced features including XKB-compatible internationalized keyboard support, UTF-8 input/font support, hardware-accelerated rendering, multi-seat support, a replacement for @command{mingetty}, and more.") - (home-page "https://www.freedesktop.org/wiki/Software/kmscon") - ;; Hash table implementation is lgpl2.1+ licensed. - ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license - ;; derived from ISC. - ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released - ;; under the bsd 2 license. - ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed - ;; under the terms of the GNU GPL. - (license (list license:expat license:lgpl2.1+ license:bsd-2 - license:gpl2+)) - (supported-systems (filter (cut string-suffix? "-linux" <>) - %supported-systems)))) + (home-page "https://www.freedesktop.org/wiki/Software/kmscon") + ;; Hash table implementation is lgpl2.1+ licensed. + ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license + ;; derived from ISC. + ;; UCS-4 to UTF-8 encoding is copied from "terminology" which is released + ;; under the bsd 2 license. + ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed + ;; under the terms of the GNU GPL. + (license (list license:expat license:lgpl2.1+ license:bsd-2 + license:gpl2+)) + (supported-systems (filter (cut string-suffix? "-linux" <>) + %supported-systems))))) (define-public libtermkey (package @@ -312,14 +331,14 @@ combining, and so on, with a simple interface.") (name "picocom") (version "2.2") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/npat-efault/picocom" - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/npat-efault/picocom.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1knl6dglnrynx1fhy21nylw56i1q3dkizkgxzkq42mb7ilah8f9y")))) + "06b2ic34dnxc73cprc5imi3iamlhsv623sbg9vj5h5rvs586dwjx")))) (build-system gnu-build-system) (arguments `(#:make-flags '("CC=gcc") @@ -383,13 +402,14 @@ has no notion of what's interesing, but it's very good at that notifying part.") (version "1.2.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mauke/unibilium/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mauke/unibilium.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1hbf011d8nzsp7c96fidjiq8yw8zlxf6f1s050ii2yyampvb8ib0")))) + "11mbfijdrvbmdlmxs8j4vij78ki0vna89yg3r9n9g1i6j45hiq2r")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -856,13 +876,14 @@ per-line fullscreen terminal rendering, and keyboard input event reporting.") (version "2.2.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/tmate-io/tmate/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/tmate-io/tmate.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "01f3hhm3x0sd6apyb1ajkjfdfvq5m2759w00yp2slr9fyicsrhnr")))) + "0pfl9vrswzim9ydi1n652h3rax2zrmy6sqkp0r09yy3lw83h4y1r")))) (build-system gnu-build-system) (inputs `(("libevent" ,libevent) diff --git a/gnu/packages/terraform.scm b/gnu/packages/terraform.scm index 71b214ed0a..f14b152fdb 100644 --- a/gnu/packages/terraform.scm +++ b/gnu/packages/terraform.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Christopher Baines <mail@cbaines.net> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -21,13 +22,12 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) - #:use-module (guix build-system go) - #:use-module (gnu packages golang)) + #:use-module (guix build-system go)) (define-public terraform-docs (package (name "terraform-docs") - (version "0.3.0") + (version "0.5.0") (source (origin (method git-fetch) (uri (git-reference @@ -36,11 +36,8 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0xchpik32ab8m89s6jv671vswg8xhprfvh6s5md0zd36482d2nmm")))) + "12w2yr669hk5kxdb9rrzsn8hwvx8rzrc1rmn8hs9l8z1bkfhr4gg")))) (build-system go-build-system) - (native-inputs - `(("go-github-com-hashicorp-hcl" ,go-github-com-hashicorp-hcl) - ("go-github-com-tj-docopt" ,go-github-com-tj-docopt))) (arguments '(#:import-path "github.com/segmentio/terraform-docs")) (synopsis "Generate documentation from Terraform modules") diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 294d334423..916aa54d58 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -199,7 +199,7 @@ ;; FIXME: This test fails on 32-bit architectures since Glibc 2.28: ;; <https://bugzilla.redhat.com/show_bug.cgi?id=1631847>. (substitute* "texk/web2c/omegafonts/check.test" - (("^\\./omfonts -ofm2opl \\$srcdir/tests/check tests/xcheck || exit 1") + (("^\\./omfonts -ofm2opl \\$srcdir/tests/check tests/xcheck \\|\\| exit 1") "./omfonts -ofm2opl $srcdir/tests/check tests/xcheck || exit 77")) #t)) (add-after 'install 'postint @@ -2288,6 +2288,44 @@ space-stripped macros.") to something that's not a float.") (license license:lppl))) +(define-public texlive-latex-doi + (package + (name "texlive-latex-doi") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/doi")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0378rdmrgr2lzbfi4qqy4dfpj5im20diyd8z8b9m4mlg05r7wgnb")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/doi"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/doi") + (synopsis "Create correct hyperlinks for DOI numbers") + (description + "You can hyperlink DOI numbers to doi.org. However, some publishers have +elected to use nasty characters in their DOI numbering scheme (@code{<}, +@code{>}, @code{_} and @code{;} have all been spotted). This will either +upset LaTeX, or your PDF reader. This package contains a single user-level +command @code{\\doi{}}, which takes a DOI number, and creates a correct +hyperlink to the target of the DOI.") + ;; Any version of the LPPL. + (license license:lppl1.3+))) + (define-public texlive-latex-etoolbox (package (name "texlive-latex-etoolbox") @@ -4751,3 +4789,154 @@ Since every package has its own version number, the version number quoted only refers to the version of scrbook, scrreprt, scrartcl, scrlttr2 and typearea (which are the main parts of the bundle).") (license license:lppl1.3+))) + +(define-public texlive-generic-listofitems + (package + (name "texlive-generic-listofitems") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/generic/listofitems")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1k50z6ixgwwzy84mi0dr5vcjah5p7wvgq66y45bilm91a4m8sgla")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/generic/listofitems"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/listofitems") + (synopsis "Grab items in lists using user-specified seperation character") + (description + "This package allows one to capture all the items of a list, for which +the parsing character has been selected by the user, and to access any of +these items with a simple syntax.") + (license license:lppl1.3c+))) + +(define-public texlive-latex-readarray + (package + (name "texlive-latex-readarray") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/readarray")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0c53k180ivn1n7fz3ngvd2w1i5dw3kxml0n64vhki88xsylz7lxp")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/readarray"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (propagated-inputs + `(("texlive-generic-listofitems" ,texlive-generic-listofitems))) + (home-page "https://www.ctan.org/pkg/readarray") + (synopsis "Read, store and recall array-formatted data") + (description + "This package allows the user to input formatted data into elements of a +2-D or 3-D array and to recall that data at will by individual cell number. +The data can be but need not be numerical in nature. It can be, for example, +formatted text.") + (license license:lppl1.3))) + +(define-public texlive-latex-verbatimbox + (package + (name "texlive-latex-verbatimbox") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/verbatimbox")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0qh1cgvfs463zsi2pjg490gj0mkjfdpfc381j10cbb5la304psna")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/verbatimbox"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (propagated-inputs + `(("texlive-latex-readarray" ,texlive-latex-readarray))) + (home-page "https://www.ctan.org/pkg/verbatimbox") + (synopsis "Deposit verbatim text in a box") + (description + "The package provides a @code{verbbox} environment to place its contents +into a globally available box, or into a box specified by the user. The +global box may then be used in a variety of situations (for example, providing +a replica of the @code{boxedverbatim} environment itself). A valuable use is +in places where the standard @code{verbatim} environment (which is based on a +@code{trivlist}) may not appear.") + (license license:lppl1.3+))) + +(define-public texlive-latex-examplep + (package + (name "texlive-latex-examplep") + (version (number->string %texlive-revision)) + (source (origin + (method svn-fetch) + (uri (svn-reference + (url (string-append "svn://www.tug.org/texlive/tags/" + %texlive-tag "/Master/texmf-dist/" + "/tex/latex/examplep")) + (revision %texlive-revision))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0fsvvmz68ij0zwfzrny6x13d92grxr4ap59lxgah4smbkccd6s27")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((target (string-append (assoc-ref %outputs "out") + "/share/texmf-dist/tex/latex/examplep"))) + (mkdir-p target) + (copy-recursively (assoc-ref %build-inputs "source") target) + #t)))) + (home-page "https://www.ctan.org/pkg/examplep") + (synopsis "Verbatim phrases and listings in LaTeX") + (description + "Examplep provides sophisticated features for typesetting verbatim source +code listings, including the display of the source code and its compiled LaTeX +or METAPOST output side-by-side, with automatic width detection and enabled +page breaks (in the source), without the need for specifying the source twice. +Special care is taken that section, page and footnote numbers do not interfere +with the main document. For typesetting short verbatim phrases, a replacement +for the @code{\\verb} command is also provided in the package, which can be +used inside tables and moving arguments such as footnotes and section +titles.") + ;; No version of the GPL is specified. + (license license:gpl3+))) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 8780bb2829..cda79231f1 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2015 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org> @@ -15,6 +15,7 @@ ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> +;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -200,8 +201,8 @@ encoding, supporting Unicode version 9.0.0.") (arguments '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ (zero? (system* "autoreconf" "-vif"))))))) + (replace 'bootstrap + (lambda _ (invoke "sh" "reconf")))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -338,7 +339,7 @@ as existing hashing techniques, with provably negligible risk of collisions.") (define-public oniguruma (package (name "oniguruma") - (version "6.8.2") + (version "6.9.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/kkos/" @@ -346,7 +347,7 @@ as existing hashing techniques, with provably negligible risk of collisions.") "/onig-" version ".tar.gz")) (sha256 (base32 - "00s9gjgb3srn5sbmx4x9bssn52mi04d868ghizssdhjlddgxmsmd")))) + "1jg76i2ksf3s4bz4h3g2f9ac19q31lzxs11j900w7qqc0mgb5gwi")))) (build-system gnu-build-system) (home-page "https://github.com/kkos/oniguruma") (synopsis "Regular expression library") @@ -572,22 +573,16 @@ categories.") (name "dotconf") (version "1.3") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/williamh/dotconf/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/williamh/dotconf.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0lsnh0yaw44psmx59hq94cj1932gscp5h8d3cnh05l0svr0cy7kz")))) + "1sc95hw5k2xagpafny0v35filmcn05k1ds5ghkldfpf6xw4hakp7")))) (build-system gnu-build-system) - (arguments - `(#:tests? #f ; FIXME maketest.sh does not work. - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoreconf - (lambda _ - (zero? (system* "autoreconf" "-vif"))))))) + (arguments `(#:tests? #f)) ; FIXME maketest.sh does not work. (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -756,3 +751,26 @@ indentation. @end itemize\n") (home-page "http://docx2txt.sourceforge.net") (license license:gpl3+))) + +(define-public opencc + (package + (name "opencc") + (version "1.0.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/BYVoid/OpenCC" + "/archive/ver." version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "01870gbkf711msirf3206k0ajaabypjhnx3fny5wikw0ladn9q8w")))) + (build-system cmake-build-system) + (native-inputs + `(("python" ,python-wrapper))) + (home-page "https://github.com/BYVoid/OpenCC") + (synopsis "Convert between Traditional Chinese and Simplified Chinese") + (description "Open Chinese Convert (OpenCC) converts between Traditional +Chinese and Simplified Chinese, supporting character-level conversion, +phrase-level conversion, variant conversion, and regional idioms among +Mainland China, Taiwan, and Hong-Kong.") + (license license:asl2.0))) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index d9fc601066..f9e21e1e3f 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -522,13 +522,13 @@ netcat implementation that supports TLS.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "0.27.1") + (version "0.29.1") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "142gynlfx7yv0sdba3gpdxlnhg9chhz7hpdxdrp630z17h1bk9ri")))) + "0z5l966b1asbcdzl77bmywf22c1q0xill00jj7qyml9wx2nh7qm2")))) (build-system python-build-system) (arguments `(#:phases @@ -579,7 +579,7 @@ netcat implementation that supports TLS.") (uri (pypi-uri name version)) (sha256 (base32 - "0anh3vjy9sif1bkp25nj76ii37xx8hh0igcx60ppag12xlabsw1m")))) + "14i6yrcb9s7ygy99gccfc8jscymi24xb72s5lgg9b2y40z909ikg")))) (build-system python-build-system) (arguments `(,@(substitute-keyword-arguments (package-arguments python-acme) @@ -826,7 +826,7 @@ then ported to the GNU / Linux environment.") (define-public mbedtls-apache (package (name "mbedtls-apache") - (version "2.13.0") + (version "2.14.1") (source (origin (method url-fetch) @@ -836,7 +836,7 @@ then ported to the GNU / Linux environment.") version "-apache.tgz")) (sha256 (base32 - "1nh6xfyxs3mnnpgc6pancvdhv6ihz9lhsxdlg90gqa8n5r6lwfsr")))) + "07f6xn77w5rd6fhq5s1dmna3czs4chk5j2s6wkj366cvikawp2gi")))) (build-system cmake-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 7d46191c12..a9bbebcd13 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -47,14 +48,14 @@ (define-public tor (package (name "tor") - (version "0.3.4.8") + (version "0.3.4.9") (source (origin (method url-fetch) (uri (string-append "https://dist.torproject.org/tor-" version ".tar.gz")) (sha256 (base32 - "08qhzcmzxp5xr2l5721vagksqnnbrzzzy5hmz5y9r8lrq2r4qsl2")))) + "0jhnvnp08hsfrzgsvg5xnfxyaw3nzgg9h24cwbwnz6iby20i05qs")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-gcc-hardening" @@ -140,14 +141,6 @@ rejects UDP traffic from the application you're using.") #:configure-flags (list (string-append "--sysconfdir=" (assoc-ref %outputs "out") "/etc/privoxy")) - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - ;; Unfortunately, this is not a tarball produced by - ;; "make dist". - (invoke "autoreconf" "-vfi") - #t))) #:tests? #f)) (inputs `(("w3m" ,w3m) @@ -172,13 +165,14 @@ networks.") (version "0.9.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/micahflee/onionshare/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/micahflee/onionshare.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "02iv7dg15da57gy3zvfchnwwpr21n1gva7mqwpwr958ni2034smk")))) + "1nzr6m3jp04p1i8b652s27zv0xhybl3zwcn5r6l9h0f7d7x4iglv")))) (build-system python-build-system) (arguments `(#:phases diff --git a/gnu/packages/tv.scm b/gnu/packages/tv.scm index ef67ad37f2..2196162956 100644 --- a/gnu/packages/tv.scm +++ b/gnu/packages/tv.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2016, 2017, 2018 Alex Kost <alezost@gmail.com> +;;; Copyright © 208 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,6 +44,15 @@ (base32 "1367rl3n6qxwf30lqyz234zpb43s9xjhig3hrvbg7cbqcl8g4fs0")))) (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-glibc-compatability + (lambda _ + (substitute* "src/get_media_devices.c" + (("<sys/stat.h>") + "<sys/stat.h>\n#include <sys/sysmacros.h>")) + #t))))) (inputs `(("alsa-lib" ,alsa-lib) ("libx11" ,libx11) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 14a18c8c35..f37936ee5e 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -7,7 +7,7 @@ ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2015 Kyle Meyer <kyle@kyleam.com> +;;; Copyright © 2015, 2018 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is> @@ -146,14 +146,14 @@ as well as the classic centralized workflow.") (name "git") ;; XXX When updating Git, check if the special 'git-source' input to cgit ;; needs to be updated as well. - (version "2.19.1") + (version "2.20.0") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "1dfv43lmdnxz42504jc89sihbv1d4d6kgqcz3c5ji140kfm5cl1l")))) + "07yq186wb3wqvvmzhhsca57m979p7jprkk4h2a516jz1fd87755w")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -166,7 +166,11 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "1vn6pi9yvw7rnb9dvi1yjrvv39fqd1m9mwbaffqwizs3gaf91br7")))))) + "141n20migxaazy0vfkivjk6bzazi3ydyq7qkf6wmkg186l4amgbr")))) + ;; For subtree documentation. + ("asciidoc" ,asciidoc) + ("docbook-xsl" ,docbook-xsl) + ("xmlto" ,xmlto))) (inputs `(("curl" ,curl) ("expat" ,expat) @@ -198,6 +202,7 @@ as well as the classic centralized workflow.") "send-email" ; for git-send-email "svn" ; git-svn "credential-netrc" ; git-credential-netrc + "subtree" ; git-subtree "gui")) ; gitk, git gui (arguments `(#:make-flags `("V=1" ;more verbose compilation @@ -256,6 +261,26 @@ as well as the classic centralized workflow.") ;; Add the "PM.stamp" to avoid "no rule to make target". (call-with-output-file "perl/PM.stamp" (const #t)) #t)) + (add-after 'build 'build-subtree + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "contrib/subtree" + (substitute* "Makefile" + ;; Apparently `xmlto' does not bother to looks up the stylesheets + ;; specified in the XML, unlike the above substitution. Instead it + ;; uses a hard-coded URL. Work around it here, but if this is + ;; common perhaps we should hardcode this path in xmlto itself. + (("\\$\\(XMLTO\\) -m \\$\\(MANPAGE_XSL\\) man") + (string-append "$(XMLTO) -x " + (string-append (assoc-ref inputs "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl)) + "/manpages/docbook.xsl -m $(MANPAGE_XSL) man"))) + (invoke "make") + (invoke "make" "install") + (invoke "make" "install-doc") + (substitute* "git-subtree" + (("/bin/sh") (which "sh")))) + #t)) (add-before 'check 'patch-tests (lambda _ (let ((store-directory (%store-directory))) @@ -317,6 +342,14 @@ as well as the classic centralized workflow.") `("PERL5LIB" ":" prefix (,(string-append (assoc-ref outputs "out") "/share/perl5")))) #t))) + (add-after 'install 'install-subtree + (lambda* (#:key outputs #:allow-other-keys) + (let ((subtree (assoc-ref outputs "subtree"))) + (install-file "contrib/subtree/git-subtree" + (string-append subtree "/bin")) + (install-file "contrib/subtree/git-subtree.1" + (string-append subtree "/share/man/man1")) + #t))) (add-after 'install 'split (lambda* (#:key inputs outputs #:allow-other-keys) ;; Split the binaries to the various outputs. @@ -424,10 +457,74 @@ everything from small to very large projects with speed and efficiency.") (license license:gpl2) (home-page "https://git-scm.com/"))) +(define-public git-minimal + ;; The size of the closure of 'git-minimal' is two thirds that of 'git'. + ;; Its test suite runs slightly faster and most importantly it doesn't + ;; depend on packages that are expensive to build such as Subversion. + (package + (inherit git) + (name "git-minimal") + (arguments + (substitute-keyword-arguments (package-arguments git) + ((#:phases phases) + `(modify-phases ,phases + (replace 'patch-makefiles + (lambda _ + (substitute* "Makefile" + (("/usr/bin/perl") (which "perl"))) + #t)) + (delete 'build-subtree) + (delete 'split) + (delete 'install-man-pages) + (delete 'install-subtree) + (delete 'install-credential-netrc) + (add-before 'check 'delete-svn-test + (lambda _ + ;; This test cannot run since we are not building 'git-svn'. + (delete-file "t/t9020-remote-svn.sh") + #t)) + (add-after 'install 'remove-unusable-perl-commands + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (libexec (string-append out "/libexec"))) + (for-each (lambda (file) + (delete-file (string-append libexec + "/git-core/" file))) + '("git-svn" "git-cvsimport" "git-archimport" + "git-cvsserver" "git-request-pull" + "git-add--interactive" "git-cvsexportcommit" + "git-instaweb" "git-send-email")) + (delete-file (string-append bin "/git-cvsserver")) + + ;; These templates typically depend on Perl. Remove them. + (delete-file-recursively + (string-append out "/share/git-core/templates/hooks")) + + ;; Gitweb depends on Perl as well. + (delete-file-recursively + (string-append out "/share/gitweb")) + #t))))) + ((#:configure-flags flags) + ''()) + ((#:disallowed-references lst '()) + `(,perl ,@lst)))) + (outputs '("out")) + (native-inputs + `(("native-perl" ,perl) + ("gettext" ,gettext-minimal))) + (inputs + `(("curl" ,curl) ;for HTTP(S) access + ("expat" ,expat) ;for 'git push' over HTTP(S) + ("openssl" ,openssl) + ("perl" ,perl) + ("zlib" ,zlib) + ("bash-for-tests" ,bash))))) + (define-public libgit2 (package (name "libgit2") - (version "0.26.7") + (version "0.26.8") (source (origin (method url-fetch) (uri (string-append "https://github.com/libgit2/libgit2/" @@ -435,8 +532,9 @@ everything from small to very large projects with speed and efficiency.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1vy4dnbvhcq3pw8n8zz6clnsv2xnkrichl8k96w3lb6yyk0lln35")) - (patches (search-patches "libgit2-mtime-0.patch")) + "15kp4sq72kh762bm7dgspyrk0a6siarvll3k7nrhs0xy77idf80g")) + (patches (search-patches "libgit2-mtime-0.patch" + "libgit2-oom-test.patch")) ;; Remove bundled software. (snippet '(begin @@ -1119,14 +1217,14 @@ control to Git repositories.") (define-public mercurial (package (name "mercurial") - (version "4.6.2") + (version "4.7.2") (source (origin (method url-fetch) (uri (string-append "https://www.mercurial-scm.org/" "release/mercurial-" version ".tar.gz")) (sha256 (base32 - "1bv6wgcdx8glihjjfg22khhc52mclsn4kwfqvzbzlg0b42h4xl0w")))) + "1yq9r8s9jzj8hk2yizjk25s4w16yx9b8mbdj6wp8ld7j2r15kw4p")))) (build-system python-build-system) (arguments `(;; Restrict to Python 2, as Python 3 would require @@ -1697,7 +1795,7 @@ modification time.") (define-public myrepos (package (name "myrepos") - (version "1.20171231") + (version "1.20180726") (source (origin (method git-fetch) @@ -1706,15 +1804,34 @@ modification time.") (commit version))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "10q7lpx152xnkk701fscn4dq99q9znnmv3bc2482khhjg7z8rps0")) - (patches (search-patches "myrepos-CVE-2018-7032.patch")))) + (base32 "0jphw61plm8cgklja6hs639xhdvxgvjwbr6jpvjwpp7hc5gmhms5")))) (build-system gnu-build-system) - (inputs - `(("perl" ,perl))) (arguments '(#:test-target "test" - #:phases (modify-phases %standard-phases (delete 'configure)) - #:make-flags (list (string-append "PREFIX=" %output)))) + #:make-flags (list (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'install 'wrap-webcheckout + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/webcheckout") + `("PERL5LIB" ":" prefix + ,(map (lambda (i) (string-append (assoc-ref inputs i) + "/lib/perl5/site_perl")) + '("perl-encode-locale" "perl-http-date" + "perl-http-message" "perl-html-parser" "perl-libwww" + "perl-uri" "perl-try-tiny")))) + #t)))))) + (inputs + `(("perl" ,perl) + ("perl-encode-locale" ,perl-encode-locale) + ("perl-html-parser" ,perl-html-parser) + ("perl-http-date" ,perl-http-date) + ("perl-http-message" ,perl-http-message) + ("perl-libwww" ,perl-libwww) + ("perl-try-tiny" ,perl-try-tiny) + ("perl-uri" ,perl-uri))) (home-page "https://myrepos.branchable.com/") (synopsis "Multiple repository management tool") (description @@ -2226,3 +2343,101 @@ used to keep a folder in sync between computers.") ;; The web app is released under the AGPLv3+. (license (list license:gpl3+ license:agpl3+)))) + +(define-public git-when-merged + ;; Use an unreleased version to get a PY3 compatibility fix. + (let ((commit "ab6af7865a0ba55ba364a6c507e0be6f84f31c6d")) + (package + (name "git-when-merged") + (version (string-append "1.2.0-" (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mhagger/git-when-merged/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0iyk2psf97bc9h43m89p3xjmm79fsx99i7px29g4lcnmdy5kmz0p")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are no tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (install-file "bin/git-when-merged" + (string-append (assoc-ref outputs "out") + "/bin")) + #t)) + (add-before 'install 'patch-git + (lambda* (#:key inputs #:allow-other-keys) + (let ((git (string-append (assoc-ref inputs "git") + "/bin/git"))) + (substitute* "bin/git-when-merged" + (("'git'") (string-append "'" git "'"))) + #t))) + (add-after 'install 'wrap-script + (lambda* (#:key outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/git-when-merged") + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))) + #t))))) + (inputs + `(("git" ,git) + ("python" ,python-wrapper))) + (home-page "https://github.com/mhagger/git-when-merged") + (synopsis "Determine when a commit was merged into a Git branch") + (description "This Git extension defines a subcommand, +@code{when-merged}, whose core operation is to find the merge that brought a +given commit into the specified ref(s). It has various options that control +how information about the merge is displayed.") + (license license:gpl2+)))) + +(define-public git-imerge + (package + (name "git-imerge") + (version "1.1.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/mhagger/git-imerge/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0a6ay8fpgz3yd84jc40w41x0rcfpan6bcq4wd1hxiiqwb51jysb2")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; The are only manual test scripts. + #:make-flags (list (string-append "DESTDIR=" %output) + "PREFIX=") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'install 'patch-git + (lambda* (#:key inputs #:allow-other-keys) + (let ((git (string-append (assoc-ref inputs "git") + "/bin/git"))) + (substitute* "git-imerge" + (("'git'") (string-append "'" git "'"))) + #t))) + (add-after 'install 'wrap-script + (lambda* (#:key outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/git-imerge") + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH")))) + #t))))) + (inputs + `(("git" ,git) + ("python" ,python-wrapper))) + (home-page "https://github.com/mhagger/git-imerge") + (synopsis "Incremental merge for Git") + (description "This Git extension defines a subcommand, @code{imerge}, +which performs an incremental merge between two branches. Its two primary +design goals are to reduce the pain of resolving merge conflicts by finding +the smallest possible conflicts and to allow a merge to be saved, tested, +interrupted, published, and collaborated on while in progress.") + (license license:gpl2+))) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index a6930abfda..fc6caf3ff8 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -5,14 +5,14 @@ ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015 Andy Patterson <ajpatter@uwaterloo.ca> -;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com> ;;; Copyright © 2016 Andy Patterson <ajpatter@uwaterloo.ca> ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> -;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2016, 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017 Feng Shu <tumashu@163.com> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -67,6 +67,7 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages algebra) + #:use-module (gnu packages assembly) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) @@ -96,6 +97,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages guile) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnunet) #:use-module (gnu packages gnupg) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) @@ -110,6 +112,7 @@ #:use-module (gnu packages man) #:use-module (gnu packages mp3) #:use-module (gnu packages ncurses) + #:use-module (gnu packages networking) #:use-module (gnu packages ocr) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -126,6 +129,7 @@ #:use-module (gnu packages serialization) #:use-module (gnu packages shells) #:use-module (gnu packages ssh) + #:use-module (gnu packages swig) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) @@ -139,8 +143,7 @@ #:use-module (gnu packages xdisorg) #:use-module (gnu packages xiph) #:use-module (gnu packages xml) - #:use-module (gnu packages xorg) - #:use-module (gnu packages assembly)) + #:use-module (gnu packages xorg)) (define-public aalib (package @@ -393,6 +396,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (package (name "x265") (version "2.9") + (outputs '("out" "static")) (source (origin (method url-fetch) @@ -401,7 +405,8 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (sha256 (base32 "090hp4216isis8q5gb7bwzia8rfyzni54z21jnwm97x3hiy6ibpb")) - (patches (search-patches "x265-detect512-all-arches.patch")) + (patches (search-patches "x265-arm-flags.patch" + "x265-detect512-all-arches.patch")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "source/compat/getopt") @@ -409,14 +414,76 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (build-system cmake-build-system) (arguments `(#:tests? #f ; tests are skipped if cpu-optimized code isn't built - ;; Ensure position independent code for everyone. - #:configure-flags '("-DENABLE_PIC=TRUE") + #:configure-flags + ;; Ensure position independent code for everyone. + (list "-DENABLE_PIC=TRUE" + ,@(if (string-prefix? "armhf" (or (%current-system) + (%current-target-system))) + '("-DENABLE_ASSEMBLY=OFF") + '()) + (string-append "-DCMAKE_INSTALL_PREFIX=" + (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases - (add-before 'configure 'prepare-build + (add-after 'unpack 'prepare-build (lambda _ (delete-file-recursively "build") (chdir "source") + ;; recognize armv8 in 32-bit mode as ARM + (substitute* "CMakeLists.txt" + (("armv6l") "armv8l")) + #t)) + (add-before 'configure 'build-12-bit + (lambda* (#:key (configure-flags '()) #:allow-other-keys) + (mkdir "../build-12bit") + (with-directory-excursion "../build-12bit" + (apply invoke + "cmake" "../source" + "-DHIGH_BIT_DEPTH=ON" + "-DEXPORT_C_API=OFF" + "-DENABLE_CLI=OFF" + "-DMAIN12=ON" + configure-flags) + (substitute* (cons "cmake_install.cmake" + (append + (find-files "CMakeFiles/x265-shared.dir" ".") + (find-files "CMakeFiles/x265-static.dir" "."))) + (("libx265") "libx265_main12")) + (invoke "make")))) + (add-before 'configure 'build-10-bit + (lambda* (#:key (configure-flags '()) #:allow-other-keys) + (mkdir "../build-10bit") + (with-directory-excursion "../build-10bit" + (apply invoke + "cmake" "../source" + "-DHIGH_BIT_DEPTH=ON" + "-DEXPORT_C_API=OFF" + "-DENABLE_CLI=OFF" + configure-flags) + (substitute* (cons "cmake_install.cmake" + (append + (find-files "CMakeFiles/x265-shared.dir" ".") + (find-files "CMakeFiles/x265-static.dir" "."))) + (("libx265") "libx265_main10")) + (invoke "make")))) + (add-after 'install 'install-more-libs + (lambda _ + (with-directory-excursion "../build-12bit" + (invoke "make" "install")) + (with-directory-excursion "../build-10bit" + (invoke "make" "install")))) + (add-before 'strip 'move-static-libs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (static (assoc-ref outputs "static"))) + (mkdir-p (string-append static "/lib")) + (with-directory-excursion + (string-append out "/lib") + (for-each + (lambda (file) + (rename-file file + (string-append static "/lib/" file))) + (find-files "." "\\.a$")))) #t))))) (home-page "http://x265.org/") (synopsis "Library for encoding h.265/HEVC video streams") @@ -613,14 +680,14 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).") (define-public ffmpeg (package (name "ffmpeg") - (version "4.0.2") + (version "4.1") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "15rgzcmdccy4flajs63gkz4n3k24wkkg50r13l1r83lrxg4hqp59")))) + "150rrm549fy1x71c9whmyi5knyd9sliwvmcsm438bdgg4v8c93m3")))) (build-system gnu-build-system) (inputs `(("fontconfig" ,fontconfig) @@ -789,14 +856,14 @@ audio/video codec library.") (define-public ffmpeg-3.4 (package (inherit ffmpeg) - (version "3.4.4") + (version "3.4.5") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "1iizgnhjbhar9y1ykqlj1czqanlv24knkfq5vvfnppv5x00pcvrq")))))) + "0b59qk5wpc5ksiha76jbhb859g5gxa4w0k6afh3kgvgajiivs73l")))))) (define-public ffmpeg-2.8 (package @@ -823,12 +890,14 @@ audio/video codec library.") (name "ffmpegthumbnailer") (version "2.2.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/dirkvdb/" - name "/archive/" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/dirkvdb/ffmpegthumbnailer.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "13qs4iwd4l3iiim30s5051n80z0vgsnikym8vsn321cnm9algiwb")))) + "0kl8aa547icy9b05njps02a8sw4yn4f8fzs228kig247sn09s4cp")))) (build-system cmake-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1120,14 +1189,14 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (name "mpv") (version "0.29.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/mpv-player/mpv/archive/v" version - ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mpv-player/mpv.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "08x63hlpj6s8xixmdbx6raff5p5mih7cnk0bcql9f3wrs5hx9ygr")) - (file-name (string-append name "-" version ".tar.gz")))) + "138921kx8g6qprim558xin09xximjhsj9ss8b71ifg2m6kclym8m")))) (build-system waf-build-system) (native-inputs `(("perl" ,perl) ; for zsh completion file @@ -1179,7 +1248,8 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (add-before 'configure 'setup-waf (lambda* (#:key inputs #:allow-other-keys) - (copy-file (assoc-ref inputs "waf") "waf") + (let ((waf (assoc-ref inputs "waf"))) + (copy-file (string-append waf "/bin/waf") "waf")) (setenv "CC" "gcc") #t))) #:configure-flags (list "--enable-libmpv-shared" @@ -1268,7 +1338,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2018.10.05") + (version "2018.11.07") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1276,7 +1346,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "1iq02kwxdgh07bf0w0fvbsjbdshs4kja35gy8m70ji9cj10l1mbw")))) + "1rvc2m2kbm2kycqsa7fkcg5gql9f0w3hn1a7jg48zzl06ayggxk9")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion @@ -1370,7 +1440,8 @@ YouTube.com and many more sites.") (("os\\.path\\.join\\('/usr', 'share'") (string-append "os.path.join('" (assoc-ref %outputs "out") - "', 'share'")))))))) + "', 'share'"))) + #t))))) (inputs `(("python2-wxpython" ,python2-wxpython) ("youtube-dl" ,youtube-dl))) @@ -1388,14 +1459,14 @@ other site that youtube-dl supports.") (name "you-get") (version "0.4.1077") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/soimort/you-get/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/soimort/you-get.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "04vxc91k627qgsqs8dhqajrb6vpj4pw21jlwbha28qakfiz2x11k")))) + "1rwkn3wb3r70b8cqj40qdknkg9kqbgzkvi901hbpy2a8s1b7858n")))) (build-system python-build-system) (inputs `(("ffmpeg" ,ffmpeg))) ; for multi-part and >=1080p videos @@ -1708,67 +1779,68 @@ for use with HTML5 video.") (add-before 'patch-source-shebangs 'unpack-ffmpeg (lambda _ (with-directory-excursion "avidemux_core/ffmpeg_package" - (system* "tar" "xf" "ffmpeg-2.7.6.tar.bz2") - (delete-file "ffmpeg-2.7.6.tar.bz2")))) + (invoke "tar" "xf" "ffmpeg-2.7.6.tar.bz2") + (delete-file "ffmpeg-2.7.6.tar.bz2")) + #t)) (add-after 'patch-source-shebangs 'repack-ffmpeg (lambda _ (with-directory-excursion "avidemux_core/ffmpeg_package" (substitute* "ffmpeg-2.7.6/configure" (("#! /bin/sh") (string-append "#!" (which "sh")))) - (system* "tar" "cjf" "ffmpeg-2.7.6.tar.bz2" "ffmpeg-2.7.6" - ;; avoid non-determinism in the archive - "--sort=name" "--mtime=@0" - "--owner=root:0" "--group=root:0") - (delete-file-recursively "ffmpeg-2.7.6")))) + (invoke "tar" "cjf" "ffmpeg-2.7.6.tar.bz2" "ffmpeg-2.7.6" + ;; avoid non-determinism in the archive + "--sort=name" "--mtime=@0" + "--owner=root:0" "--group=root:0") + (delete-file-recursively "ffmpeg-2.7.6")) + #t)) (replace 'configure (lambda _ ;; Copy-paste settings from the cmake build system. (setenv "CMAKE_LIBRARY_PATH" (getenv "LIBRARY_PATH")) - (setenv "CMAKE_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")))) + (setenv "CMAKE_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) + #t)) (replace 'build (lambda* (#:key inputs outputs #:allow-other-keys) - (let* - ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib")) - (top (getcwd)) - (sdl (assoc-ref inputs "sdl")) - (build_component - (lambda* (component srcdir #:optional (args '())) - (let ((builddir (string-append "build_" component))) - (mkdir builddir) - (with-directory-excursion builddir - (zero? - (and - (apply system* "cmake" - "-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE" - (string-append "-DCMAKE_INSTALL_PREFIX=" out) - (string-append "-DCMAKE_INSTALL_RPATH=" lib) - (string-append "-DCMAKE_SHARED_LINKER_FLAGS=" - "\"-Wl,-rpath=" lib "\"") - (string-append "-DAVIDEMUX_SOURCE_DIR=" top) - (string-append "-DSDL_INCLUDE_DIR=" - sdl "/include/SDL") - (string-append "../" srcdir) - "-DENABLE_QT5=True" - args) - (system* "make" "-j" + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (top (getcwd)) + (sdl (assoc-ref inputs "sdl")) + (build_component + (lambda* (component srcdir #:optional (args '())) + (let ((builddir (string-append "build_" component))) + (mkdir builddir) + (with-directory-excursion builddir + (apply invoke "cmake" + "-DCMAKE_INSTALL_RPATH_USE_LINK_PATH=TRUE" + (string-append "-DCMAKE_INSTALL_PREFIX=" out) + (string-append "-DCMAKE_INSTALL_RPATH=" lib) + (string-append "-DCMAKE_SHARED_LINKER_FLAGS=" + "\"-Wl,-rpath=" lib "\"") + (string-append "-DAVIDEMUX_SOURCE_DIR=" top) + (string-append "-DSDL_INCLUDE_DIR=" + sdl "/include/SDL") + (string-append "../" srcdir) + "-DENABLE_QT5=True" + args) + (invoke "make" "-j" (number->string (parallel-job-count))) - (system* "make" "install")))))))) + (invoke "make" "install")))))) (mkdir out) - (and (build_component "core" "avidemux_core") - (build_component "cli" "avidemux/cli") - (build_component "qt4" "avidemux/qt4") - (build_component "plugins_common" "avidemux_plugins" - '("-DPLUGIN_UI=COMMON")) - (build_component "plugins_cli" "avidemux_plugins" - '("-DPLUGIN_UI=CLI")) - (build_component "plugins_qt4" "avidemux_plugins" - '("-DPLUGIN_UI=QT4")) - (build_component "plugins_settings" "avidemux_plugins" - '("-DPLUGIN_UI=SETTINGS"))) + (build_component "core" "avidemux_core") + (build_component "cli" "avidemux/cli") + (build_component "qt4" "avidemux/qt4") + (build_component "plugins_common" "avidemux_plugins" + '("-DPLUGIN_UI=COMMON")) + (build_component "plugins_cli" "avidemux_plugins" + '("-DPLUGIN_UI=CLI")) + (build_component "plugins_qt4" "avidemux_plugins" + '("-DPLUGIN_UI=QT4")) + (build_component "plugins_settings" "avidemux_plugins" + '("-DPLUGIN_UI=SETTINGS")) ;; Remove .exe and .dll file. (delete-file-recursively - (string-append out "/share/ADM6_addons"))))) + (string-append out "/share/ADM6_addons")) + #t))) (delete 'install)))) (home-page "http://fixounet.free.fr/avidemux/") (synopsis "Video editor") @@ -1786,14 +1858,14 @@ capabilities.") (name "vapoursynth") (version "37") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/vapoursynth/vapoursynth/archive/R" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/vapoursynth/vapoursynth.git") + (commit (string-append "R" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1g3hc079jw4mz1cmkv2y28pdb556wqc8ql7iravgh1rg8j3f1zi5")))) + "1ma2s7dxk6y6l04qj1jvgwia4xj7999ny3a1yx2vbk5l83giam2p")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -1848,7 +1920,8 @@ format changes.") (lambda _ (chdir "build/generic") (substitute* "configure" - (("#! /bin/sh") (string-append "#!" (which "sh"))))))) + (("#! /bin/sh") (string-append "#!" (which "sh")))) + #t))) ;; No 'check' target. #:tests? #f)) (home-page "https://www.xvid.com/") @@ -1921,7 +1994,8 @@ from sites like Twitch.tv and pipes them into a video player of choice.") (lambda* (#:key outputs #:allow-other-keys) (install-file "plugins/rofi-twitchy" (string-append (assoc-ref outputs "out") - "/bin"))))))) + "/bin")) + #t))))) (inputs `(("python-requests" ,python-requests) ("streamlink" ,streamlink))) @@ -1936,13 +2010,14 @@ from sites like Twitch.tv and pipes them into a video player of choice.") (name "mlt") (version "6.10.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mltframework/mlt/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mltframework/mlt.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1zzdj1g3g24q6v8hd0v34lv0pkh37a13fhjpl44h1ffi00mz3577")) + "0ki86yslr5ywa6sz8pjrgd9a4rn2rr4mss2zkmqi7pq8prgsm1fr")) (modules '((guix build utils))) (snippet '(begin ;; As of glibc 2.26, <xlocale.h> no longer is. @@ -2035,13 +2110,14 @@ be used for realtime video capture via Linux-specific APIs.") (name "obs") (version "20.1.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/jp9000/obs-studio" - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/jp9000/obs-studio.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1g5z6z050v25whc7n3xvg6l238wmg5crp7ihvk73qngvzxr8bg28")))) + "0qdpa2xxiiw53ksvlrf80jm8gz6kxsn56sffv2v2ijxvy7kw5zcg")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests @@ -2197,13 +2273,14 @@ making @dfn{screencasts}.") (version "0.3.11") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/MaartenBaert/ssr/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/MaartenBaert/ssr.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0l6irdadqpajvv0dj3ngs1231n559l0y1pykhs2h7526qm4w7xal")))) + "0n702dnv4qshgn3b90ixvplfafjhgz6040yir5vy8khjdpciysq4")))) (build-system cmake-build-system) ;; Although libx11, libxfixes, libxext are listed as build dependencies in ;; README.md, the program builds and functions properly without them. @@ -2321,13 +2398,14 @@ Content System specification.") (version "0.2.8") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/mps-youtube/mps-youtube/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/mps-youtube/mps-youtube.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0x7cmfh199q9j396v7bz81nnvanfllhsg86489i5dw2p3yyc9wnm")))) + "1w1jhw9rg3dx7vp97cwrk5fymipkcy2wrbl1jaa38ivcjhqg596y")))) (build-system python-build-system) (arguments ;; Tests need to be disabled until #556 upstream is fixed. It reads as if the @@ -2352,22 +2430,27 @@ supported players in addition to this package.") (define-public handbrake (package (name "handbrake") - (version "0.10.5") + (version "1.1.2") (source (origin (method url-fetch) - (uri (string-append "https://handbrake.fr/rotation.php?file=" - "HandBrake-" version ".tar.bz2")) - (file-name (string-append "handbrake-" version ".tar.bz2")) + (uri (string-append "https://download.handbrake.fr/releases/" + version "/HandBrake-" version "-source.tar.bz2")) (sha256 (base32 - "1w720y3bplkz187wgvy4a4xm0vpppg45mlni55l6yi8v2bfk14pv")) - (patches (search-patches "handbrake-pkg-config-path.patch")) + "0bny0hwlr55g2c69rsamv0xvwmfh1s4a582b9vq20xv5ly84m6ms")) (modules '((guix build utils))) (snippet - ;; Remove bundled libraries and source not necessary for - ;; running under a GNU environment. + ;; Remove "contrib" and source not necessary for + ;; building/running under a GNU environment. '(begin - (for-each delete-file-recursively '("contrib" "macosx" "win")) + (for-each delete-file-recursively + '("contrib" "macosx" "win")) + (substitute* "make/include/main.defs" + ;; Disable unconditional inclusion of "contrib" libraries + ;; (ffmpeg, libvpx, libdvdread, libdvdnav, and libbluray), + ;; which would lead to fetching and building of these + ;; libraries. Use our own instead. + (("MODULES \\+= contrib") "# MODULES += contrib")) #t)))) (build-system glib-or-gtk-build-system) (native-inputs @@ -2381,13 +2464,14 @@ supported players in addition to this package.") (inputs `(("bzip2" ,bzip2) ("dbus-glib" ,dbus-glib) - ("ffmpeg" ,ffmpeg-3.4) ;compilation errors with ffmpeg-4 + ("ffmpeg" ,ffmpeg) ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("glib" ,glib) ("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base) ("gtk+" ,gtk+) + ("jansson" ,jansson) ("lame" ,lame) ("libass" ,libass) ("libbluray" ,libbluray) @@ -2397,6 +2481,7 @@ supported players in addition to this package.") ("libmpeg2" ,libmpeg2) ("libnotify" ,libnotify) ("libogg" ,libogg) + ("libopus" ,opus) ("libsamplerate" ,libsamplerate) ("libtheora" ,libtheora) ("libvorbis" ,libvorbis) @@ -2407,6 +2492,11 @@ supported players in addition to this package.") ("zlib" ,zlib))) (arguments `(#:tests? #f ;tests require Ruby and claim to be unsupported + #:configure-flags + (list (string-append "CPPFLAGS=-I" + (assoc-ref %build-inputs "libxml2") + "/include/libxml2") + "LDFLAGS=-lx265") #:phases (modify-phases %standard-phases (replace 'bootstrap @@ -2418,21 +2508,6 @@ supported players in addition to this package.") (substitute* "gtk/module.rules" ((".*autogen\\.sh.*") "")) (invoke "sh" "./gtk/autogen.sh"))) - (add-before 'configure 'disable-contrib - (lambda _ - (substitute* "make/include/main.defs" - ;; Disable unconditional inclusion of some "contrib" - ;; libraries (ffmpeg, libvpx, libdvdread, libdvdnav, - ;; and libbluray), which would lead to fetching and - ;; building of these libraries. Use our own instead. - (("MODULES \\+= contrib") "# MODULES += contrib")) - #t)) - (add-before 'configure 'fix-x265-linking - (lambda _ - (substitute* "test/module.defs" - ;; Fix missing library during linking error - (("TEST.GCC.l =") "TEST.GCC.l = x265")) - #t)) (replace 'configure (lambda* (#:key outputs configure-flags #:allow-other-keys) ;; 'configure' is not an autoconf-generated script, and @@ -2449,8 +2524,9 @@ supported players in addition to this package.") (description "HandBrake is a tool for converting video from any format to a selection of modern, widely supported codecs.") - ;; Most under GPL version 2 or later, and portions under BSD 3 Clause - (license (list license:gpl2+ license:bsd-3)))) + ;; Some under GPLv2+, some under LGPLv2.1+, and portions under BSD3. + ;; Combination under GPLv2. See LICENSE. + (license license:gpl2))) (define-public openh264 (package @@ -2645,7 +2721,7 @@ many codecs and formats supported by libmediainfo.") (define-public livemedia-utils (package (name "livemedia-utils") - (version "2017.10.28") + (version "2018.10.17") (source (origin (method url-fetch) (uri (string-append @@ -2653,7 +2729,7 @@ many codecs and formats supported by libmediainfo.") version ".tar.gz")) (sha256 (base32 - "0f5kxpayqn3yhabqrd2cqlc74i6x2xr01jfkank1lcilxnfyrsnq")) + "1s69ipvdc6ldscp0cr1zpsll8xc3qcagr95nl84x7b1rbg4xjs3w")) (modules '((guix build utils))) (snippet '(begin ;; As of glibc 2.26, <xlocale.h> no longer is. @@ -2715,12 +2791,14 @@ and ITU-T H.222.0.") (version "2.23") (home-page "https://github.com/FFMS/ffms2") (source (origin - (method url-fetch) - (uri (string-append home-page "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/FFMS/ffms2.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1vbkab8vrplxz5xgag8ggzkwp4f7nf285pd0l2a7zy66n6i2m6xh")))) + "0dkz5b3gxq5p4xz0qqg6l2sigszrlsinz3skyf0ln4wf3zrvf8m5")))) (build-system gnu-build-system) (arguments '(#:configure-flags @@ -2751,7 +2829,8 @@ programmers to access a standard API to open and decompress media files.") (sha256 (base32 "11b83qazc8h0iidyj1rprnnjdivj1lpphvpa08y53n42bfa36pn5")) - (patches (search-patches "aegisub-icu59-include-unistr.patch")))) + (patches (search-patches "aegisub-icu59-include-unistr.patch" + "aegisub-boost68.patch")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -2803,13 +2882,14 @@ tools for styling them, including a built-in real-time video preview.") (version "1.12.2") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/pitivi/gst-transcoder/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/pitivi/gst-transcoder.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0cnwmrsd321s02ff91m3j27ydj7f8wks0jvmp5admlhka6z7zxm9")))) + "0nw1zykqc6c8xs3ri55pm00pwyz93z4y4nd880apfiwj7yv5p3az")))) (build-system meson-build-system) (inputs `(("gobject-introspection" ,gobject-introspection) @@ -2911,25 +2991,27 @@ It counts more than 100 plugins.") (define-public motion (package (name "motion") - (version "4.1.1") + (version "4.2") (home-page "https://motion-project.github.io/") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/Motion-Project/motion/archive/" - "release-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/Motion-Project/motion.git") + (commit (string-append "release-" version)))) (sha256 (base32 - "1qm4i8zrqafl60sv2frhixvkd0wh0r5jfcrj5i6gha7yplsvjx10")) - (file-name (string-append name "-" version ".tar.gz")))) + "0c0q6dl4v561m5y8bp0c0h4p3s52fjgcdnsrrf5ygdi288d3rfxv")) + (file-name (git-file-name name version)))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf-wrapper) ("automake" ,automake) + ("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config))) (inputs `(("libjpeg" ,libjpeg) ("ffmpeg" ,ffmpeg-3.4) + ("libmicrohttpd" ,libmicrohttpd) ("sqlite" ,sqlite))) (arguments '(#:phases (modify-phases %standard-phases @@ -2993,14 +3075,14 @@ save it to the appropriate filename.") (name "l-smash") (version "2.14.5") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/" name "/" name "/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/l-smash/l-smash.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0dary0h65kq6sv93iabv25djlvzr5ckdcp3ywagbix44wqfw7xz6")))) + "0rcq9727im6kd8da8b7kzzbzxdldvmh5nsljj9pvr4m3lj484b02")))) (build-system gnu-build-system) (arguments `(#:tests? #f ;no tests @@ -3055,12 +3137,14 @@ online.") (name "vidstab") (version "1.1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/georgmartius/vid.stab/" - "archive/v" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/georgmartius/vid.stab.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1fy03n343djfdi19msac81833v5iivpv635yjzrx9nkfwm9s1lhl")))) + "0a3frpm2kdbx7vszhg64p3alisag73bcspl7fp3a2f1kgq7rbh38")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; tests are not run as part of standard build process @@ -3073,3 +3157,110 @@ as surfing, skiing, riding and walking while shooting videos are especially prone to erratic camera shakes. Vidstab targets these video contents to help create smoother and stable videos.") (license license:gpl2+))) + +(define-public libopenshot + (package + (name "libopenshot") + (version "0.2.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenShot/libopenshot") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x4kv05pdq1pglb6y056aa7llc6iyibyhzg93k7zwj0q08cp5ixd")) + (modules '((guix build utils))) + (snippet '(begin + ;; Allow overriding of the python installation dir + (substitute* "src/bindings/python/CMakeLists.txt" + (("(SET\\(PYTHON_MODULE_PATH.*)\\)" _ set) + (string-append set " CACHE PATH " + "\"Python bindings directory\")"))) + #t)) + (patches (search-patches "libopenshot-tests-with-system-libs.patch")))) + (build-system cmake-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("python" ,python) + ("swig" ,swig) + ("unittest++" ,unittest-cpp))) + (propagated-inputs ;all referenced in installed headers + `(("cppzmq" ,cppzmq) + ("ffmpeg" ,ffmpeg) + ("imagemagick" ,imagemagick) + ("jsoncpp" ,jsoncpp) + ("libopenshot-audio" ,libopenshot-audio) + ("qt" ,qt) ;widgets, core, gui, multimedia, and multimediawidgets + ("zeromq" ,zeromq))) + (arguments + `(#:configure-flags + (list (string-append "-DPYTHON_MODULE_PATH:PATH=" %output "/lib/python" + ,(version-major+minor (package-version python)) + "/site-packages") + "-DUSE_SYSTEM_JSONCPP:BOOL=ON") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'set-vars + (lambda* (#:key inputs #:allow-other-keys) + (setenv "LIBOPENSHOT_AUDIO_DIR" + (assoc-ref inputs "libopenshot-audio")) + (setenv "ZMQDIR" + (assoc-ref inputs "zeromq")) + (setenv "UNITTEST_DIR" + (string-append (assoc-ref inputs "unittest++") + "/include/UnitTest++")) + #t))))) + (home-page "https://openshot.org") + (synopsis "Video-editing, animation, and playback library") + (description "OpenShot Library (libopenshot) is a powerful C++ video +editing library with a multi-threaded and feature rich video editing +API. It includes bindings for Python, Ruby, and other languages.") + (license license:lgpl3+))) + +(define-public openshot + (package + (name "openshot") + (version "2.4.3") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenShot/openshot-qt") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1qdw1mli4y9qhrnllnkaf6ydgw5vfvdb90chs4i679k0x0jyb9a2")))) + (build-system python-build-system) + (inputs + `(("ffmpeg" ,ffmpeg) + ("libopenshot" ,libopenshot) + ("python" ,python) + ("python-pyqt" ,python-pyqt) + ("python-pyzmq" ,python-pyzmq) + ("python-requests" ,python-requests) + ("qtsvg" ,qtsvg))) + (arguments + `(#:tests? #f ;no tests + #:phases (modify-phases %standard-phases + (delete 'build) ;install phase does all the work + (add-before 'install 'set-tmp-home + (lambda _ + ;; src/classes/info.py "needs" to create several + ;; directories in $HOME when loaded during build + (setenv "HOME" "/tmp") + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/openshot-qt") + `("QT_PLUGIN_PATH" prefix + ,(list (string-append (assoc-ref inputs "qtsvg") + "/lib/qt5/plugins/"))))))))) + (home-page "https://openshot.org") + (synopsis "Video editor") + (description "OpenShot takes your videos, photos, and music files and +helps you create the film you have always dreamed of. Easily add sub-titles, +transitions, and effects and then export your film to many common formats.") + (license license:gpl3+))) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index c6906b12cf..ecce4e0ae6 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -61,7 +61,7 @@ (define-public vim (package (name "vim") - (version "8.1.0026") + (version "8.1.0551") (source (origin (method url-fetch) (uri (string-append "https://github.com/vim/vim/archive/v" @@ -69,7 +69,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "14q99dn113czp522j34p71za6g1mkriy04xxwcbm3axnrrpv1y52")))) + "1wi6j9w04wg3hxsch3izl2mxb0065vpvxscz19zjn5ypkfypnm8n")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -85,12 +85,18 @@ "src/testdir/test_terminal.vim") (("/bin/sh") (which "sh"))) #t)) - (add-before 'check 'patch-failing-test + (add-before 'check 'patch-failing-tests (lambda _ ;; XXX A single test fails with “Can't create file /dev/stdout” (at ;; Test_writefile_sync_dev_stdout line 5) while /dev/stdout exists. (substitute* "src/testdir/test_writefile.vim" (("/dev/stdout") "a-regular-file")) + + ;; XXX: This test fails when run in the build container: + ;; <https://github.com/vim/vim/issues/3348>. + (substitute* "src/testdir/test_search.vim" + ((".*'Test_incsearch_substitute_03'.*" all) + (string-append "\"" all "\n"))) #t))))) (inputs `(("gawk" ,gawk) @@ -453,7 +459,7 @@ trouble using them, because you do not have to remember each snippet name.") (define-public vim-fugitive (package (name "vim-fugitive") - (version "2.3") + (version "2.5") (source (origin (method git-fetch) @@ -463,7 +469,7 @@ trouble using them, because you do not have to remember each snippet name.") (file-name (git-file-name name version)) (sha256 (base32 - "17s94a8g5z0lrs7yy4nyqyvp9ykys5ws2ar3m3c0bjsn0iazd7m3")))) + "17yz7gxn7a49jzndr4z5vnk1y4a6c22qss3mwxzmq4m46fni0k8q")))) (build-system gnu-build-system) (arguments '(#:tests? #f @@ -475,9 +481,13 @@ trouble using them, because you do not have to remember each snippet name.") (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (vimfiles (string-append out "/share/vim/vimfiles")) + (autoload (string-append vimfiles "/autoload")) (doc (string-append vimfiles "/doc")) + (ftdetect (string-append vimfiles "/ftdetect")) (plugin (string-append vimfiles "/plugin"))) + (copy-recursively "autoload" autoload) (copy-recursively "doc" doc) + (copy-recursively "ftdetect" ftdetect) (copy-recursively "plugin" plugin) #t)))))) (home-page "https://github.com/tpope/vim-fugitive") @@ -646,7 +656,7 @@ are detected, the user is notified."))) (define-public neovim (package (name "neovim") - (version "0.2.0") + (version "0.3.1") (source (origin (method url-fetch) @@ -655,12 +665,13 @@ are detected, the user is notified."))) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1db27zm6cldm1aw0570vii1bxc16a34x8lissl1h9rizsbwn7qkj")))) + "08mdffcw4k503bccm1plq8r7hjx4w61w5jyfdj80fr079hnkjpmw")))) (build-system cmake-build-system) (arguments `(#:modules ((srfi srfi-26) (guix build cmake-build-system) (guix build utils)) + #:configure-flags '("-DPREFER_LUA:BOOL=YES") #:phases (modify-phases %standard-phases (add-after 'unpack 'set-lua-paths @@ -718,7 +729,7 @@ refactor Vim in order to: (define-public vifm (package (name "vifm") - (version "0.9.1") + (version "0.10") (source (origin (method url-fetch) @@ -729,7 +740,7 @@ refactor Vim in order to: "vifm-" version ".tar.bz2"))) (sha256 (base32 - "1cz7vjjmghgdxd1lvsdwv85gvx4kz8idq14qijpwkpfrf2va9f98")))) + "1f380xcyjnm4xmcdazs6dj064bwddhywvn3mgm36k7r7b2gnjnp0")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-build-timestamp") diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index e3b9925059..0502bb38c4 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org> +;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -99,6 +100,8 @@ (method url-fetch) (uri (string-append "https://download.qemu.org/qemu-" version ".tar.xz")) + (patches (search-patches "qemu-CVE-2018-16847.patch" + "qemu-CVE-2018-16867.patch")) (sha256 (base32 "04sp3f1gp4bdb913jf7fw761njaqp2l32wgipp1sapmxx17zcyld")))) @@ -998,3 +1001,58 @@ the image. @code{vagrant} command line executable, allowing programmatic control of Vagrant virtual machines.") (license license:expat))) + +(define-public bubblewrap + (package + (name "bubblewrap") + (version "0.3.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/projectatomic/bubblewrap/" + "releases/download/v" version "/bubblewrap-" + version ".tar.xz")) + (sha256 + (base32 + "1y2bdlxnlr84xcbf31lzirc292c5ak9bd2wvcvh4ppsliih6pjny")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-test + (lambda* (#:key outputs #:allow-other-keys) + ;; Tests try to access /var/tmp, which is not possible in our build + ;; environment. Let's give them another directory. + ;; /tmp gets overriden in some tests, so we need another directory. + ;; the only possibility is the output directory. + (let ((tmp-dir (string-append (assoc-ref outputs "out") "/tmp"))) + (mkdir-p tmp-dir) + (substitute* "tests/test-run.sh" + (("/var/tmp") tmp-dir) + ;; Tests create a temporary python script, so fix its shebang. + (("/usr/bin/env python") (which "python")) + ;; Some tests try to access /usr, but that doesn't exist. + ;; Give them /gnu instead. + (("/usr") "/gnu") + ((" */bin/bash") (which "bash")) + (("/bin/sh") (which "sh")) + (("findmnt") (which "findmnt")))) + #t)) + ;; Remove the directory we gave to tests to have a clean package. + (add-after 'check 'remove-tmp-dir + (lambda* (#:key outputs #:allow-other-keys) + (delete-file-recursively (string-append (assoc-ref outputs "out") "/tmp")) + #t))))) + (inputs + `(("libcap" ,libcap))) + (native-inputs + `(("python-2" ,python-2) + ("util-linux" ,util-linux))) + (home-page "https://github.com/projectatomic/bubblewrap") + (synopsis "Unprivileged sandboxing tool") + (description "Bubblewrap is aimed at running applications in a sandbox, +where it has restricted access to parts of the operating system or user data +such as the home directory. Bubblewrap always creates a new mount namespace, +and the user can specify exactly what parts of the filesystem should be visible +in the sandbox. Any such directories specified is mounted nodev by default, +and can be made readonly.") + (license license:lgpl2.0+))) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 9b1f26aa7d..1edd1ac56a 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -48,27 +48,17 @@ (define-public gvpe (package (name "gvpe") - (version "3.0") + (version "3.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gvpe/gvpe-" version ".tar.gz")) (sha256 (base32 - "1v61mj25iyd91z0ir7cmradkkcm1ffbk52c96v293ibsvjs2s2hf")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Remove the outdated bundled copy of glibc's getopt, which - ;; provides a 'getopt' declaration that conflicts with that - ;; of glibc 2.26. - (substitute* "lib/Makefile.in" - (("getopt1?\\.(c|h|\\$\\(OBJEXT\\))") "")) - (for-each delete-file - '("lib/getopt.h" "lib/getopt.c")) - #t)))) + "1cz8n75ksl0l908zc5l3rnfm1hv7130s2w8710799fr5sxrdbszi")))) (build-system gnu-build-system) (home-page "http://software.schmorp.de/pkg/gvpe.html") + (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("openssl" ,openssl) ("zlib" ,zlib))) (synopsis "Secure VPN among multiple nodes over an untrusted network") @@ -312,14 +302,14 @@ traversing network address translators (@dfn{NAT}s) and firewalls.") (define-public tinc (package (name "tinc") - (version "1.0.33") + (version "1.0.35") (source (origin (method url-fetch) - (uri (string-append "http://tinc-vpn.org/packages/" + (uri (string-append "https://tinc-vpn.org/packages/" name "-" version ".tar.gz")) (sha256 (base32 - "1x0hpfz13vn4pl6dcpnls6xq3rfcbdsg90awcfn53ijb8k35svvz")))) + "0pl92sdwrkiwgll78x0ww06hfljd07mkwm62g8x17qn3gha3pj0q")))) (build-system gnu-build-system) (arguments '(#:configure-flags @@ -328,7 +318,7 @@ traversing network address translators (@dfn{NAT}s) and firewalls.") (inputs `(("zlib" ,zlib) ("lzo" ,lzo) ("openssl" ,openssl))) - (home-page "http://tinc-vpn.org") + (home-page "https://tinc-vpn.org") (synopsis "Virtual Private Network (VPN) daemon") (description "Tinc is a VPN that uses tunnelling and encryption to create a secure diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 2c2767dbbc..6caa486b84 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -6,6 +6,8 @@ ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com> +;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +37,7 @@ #:use-module (gnu packages gnupg) #:use-module (gnu packages libevent) #:use-module (gnu packages libidn) + #:use-module (gnu packages lisp) #:use-module (gnu packages lua) #:use-module (gnu packages gnome) #:use-module (gnu packages ncurses) @@ -48,9 +51,11 @@ #:use-module (gnu packages webkit) #:use-module (gnu packages xorg) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system glib-or-gtk) - #:use-module (guix build-system python)) + #:use-module (guix build-system python) + #:use-module (guix build-system asdf)) (define-public dillo (package @@ -320,3 +325,144 @@ access.") (description "qutebrowser is a keyboard-focused browser with a minimal GUI. It is based on PyQt5 and QtWebKit.") (license license:gpl3+))) + +(define-public vimb + (package + (name "vimb") + (version "3.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fanglingsu/vimb/") + (commit version))) + (sha256 + (base32 + "1qg18z2gnsli9qgrqfhqfrsi6g9mcgr90w8yab28nxrq4aha6brf")) + (file-name (git-file-name name version)))) + (build-system glib-or-gtk-build-system) + (arguments + '(#:tests? #f ; no tests + #:make-flags (list "CC=gcc" + "DESTDIR=" + (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) + (inputs + `(("glib-networking" ,glib-networking) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("webkitgtk" ,webkitgtk))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://fanglingsu.github.io/vimb/") + (synopsis "Fast and lightweight Vim-like web browser") + (description "Vimb is a fast and lightweight vim like web browser based on +the webkit web browser engine and the GTK toolkit. Vimb is modal like the great +vim editor and also easily configurable during runtime. Vimb is mostly keyboard +driven and does not detract you from your daily work.") + (license license:gpl3+))) + +(define-public next-gtk-webkit + (package + (name "next-gtk-webkit") + (version "1.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://source.atlas.engineer/public/next") + (commit version))) + (sha256 + (base32 + "00xi01r6gxlrv7xc2dhf4da30y0vng1snbdmc8d829qyn0chl55q")) + (file-name (git-file-name "next" version)))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:tests? #f ; no tests + #:make-flags (list "gtk-webkit" + "CC=gcc" + (string-append "PREFIX=" %output)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (apply invoke "make" "install-gtk-webkit" make-flags)))))) + (inputs + `(("glib-networking" ,glib-networking) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("webkitgtk" ,webkitgtk))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://next.atlas.engineer") + (synopsis "Infinitely extensible web-browser (user interface only)") + (description "Next is a keyboard-oriented, extensible web-browser +inspired by Emacs and designed for power users. The application has familiar +key-bindings, is fully configurable and extensible in Lisp, and has powerful +features for productive professionals.") + (license license:bsd-3))) + +(define-public sbcl-next + (package + (inherit next-gtk-webkit) + (name "sbcl-next") + (build-system asdf-build-system/sbcl) + (outputs '("out" "lib")) + (arguments + `(#:tests? #f ; no tests + #:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-platform-port-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "source/ports/gtk-webkit.lisp" + (("\"next-gtk-webkit\"") + (string-append "\"" (assoc-ref inputs "next-gtk-webkit") + "/bin/next-gtk-webkit\""))))) + (add-before 'cleanup 'move-bundle + (lambda* (#:key outputs #:allow-other-keys) + (define lib (assoc-ref outputs "lib")) + (define actual-fasl (string-append + lib + "/lib/sbcl/next.fasl")) + (define expected-fasl (string-append + lib + "/lib/sbcl/next--system.fasl")) + (copy-file actual-fasl expected-fasl) + #t)) + (add-after 'create-symlinks 'build-program + (lambda* (#:key outputs #:allow-other-keys) + (build-program + (string-append (assoc-ref outputs "out") "/bin/next") + outputs + #:entry-program '((next:start-with-port) 0)))) + (add-before 'build 'install-assets + ;; Since the ASDF build system generates a new .asd with a + ;; possibly suffixed and thus illegal version number, assets + ;; should not be installed after the 'build phase or else + ;; the illegal version will result in NIL in the .desktop + ;; file. + (lambda* (#:key outputs #:allow-other-keys) + (with-output-to-file "version" + (lambda _ + (format #t "~a" ,(package-version next-gtk-webkit)))) + (invoke "make" "install-assets" + (string-append "PREFIX=" + (assoc-ref outputs "out")))))))) + (inputs + `(("next-gtk-webkit" ,next-gtk-webkit) + ;; Lisp libraries: + ("trivial-features" ,sbcl-trivial-features) + ("alexandria" ,sbcl-alexandria) + ("cl-strings" ,sbcl-cl-strings) + ("cl-string-match" ,sbcl-cl-string-match) + ("puri" ,sbcl-puri) + ("sqlite" ,sbcl-cl-sqlite) + ("parenscript" ,sbcl-parenscript) + ("cl-json" ,sbcl-cl-json) + ("swank" ,sbcl-slime-swank) + ("cl-markup" ,sbcl-cl-markup) + ("cl-css" ,sbcl-cl-css) + ("bordeaux-threads" ,sbcl-bordeaux-threads) + ("s-xml-rpc" ,sbcl-s-xml-rpc) + ("unix-opts" ,sbcl-unix-opts))) + (synopsis "Infinitely extensible web-browser (with Lisp development files)"))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 4a8699c4c0..caf56e4119 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -15,7 +15,7 @@ ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> -;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net> +;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> @@ -28,6 +28,7 @@ ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2018 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de> +;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -195,14 +196,14 @@ Interface} specification.") (name "nginx") ;; Consider updating the nginx-documentation package if the nginx package is ;; updated. - (version "1.14.0") + (version "1.14.2") (source (origin (method url-fetch) (uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz")) (sha256 (base32 - "1d9c0avfpbwvzyg53b59ks8shpnrxnbnshcd7ziizflsyv5vw5ax")))) + "15wppq12qmq8acjs35xfj61czhf9cdc0drnl5mm8hcg3aihryb80")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl) ("pcre" ,pcre) @@ -582,6 +583,37 @@ It aims to conform to RFC 7159.") (("-Werror") "")) #t)))))) +(define-public json-parser + (package + (name "json-parser") + (version "1.1.0") + (source (origin + ;; do not use auto-generated tarballs + (method git-fetch) + (uri (git-reference + (url "https://github.com/udp/json-parser.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ls7z4fx0sq633s5bc0j1gh36sv087gmrgr7rza22wjq2d4606yf")))) + ;; FIXME: we should build the python bindings in a separate package + (build-system gnu-build-system) + ;; the tests are written for the python bindings which are not built here + (arguments '(#:tests? #f)) + (home-page "https://github.com/udp/json-parser") + (synopsis "JSON parser written in ANSI C") + (description "This package provides a very low footprint JSON parser +written in portable ANSI C. + +@itemize +@item BSD licensed with no dependencies (i.e. just drop the C file into your +project) +@item Never recurses or allocates more memory than it needs +@item Very simple API with operator sugar for C++ +@end itemize") + (license l:bsd-2))) + (define-public qjson (package (name "qjson") @@ -1249,12 +1281,14 @@ minimum to provide high performance operation.") #:tests? #f #:phases (modify-phases %standard-phases + (delete 'bootstrap) (delete 'configure) (add-after 'unpack 'unpack-libsass-and-set-path (lambda* (#:key inputs #:allow-other-keys) (invoke "tar" "xvf" (assoc-ref inputs "libsass")) (setenv "SASS_LIBSASS_PATH" - (string-append (getcwd) "/libsass-" ,version))))))) + (string-append (getcwd) "/libsass-" ,version)) + #t))))) (inputs `(("libsass" ,libsass))) (synopsis "CSS pre-processor") @@ -3697,7 +3731,7 @@ library.") (define-public perl-www-mechanize (package (name "perl-www-mechanize") - (version "1.88") + (version "1.89") (source (origin (method url-fetch) @@ -3705,7 +3739,7 @@ library.") "WWW-Mechanize-" version ".tar.gz")) (sha256 (base32 - "0yd8a1zsfpbv5wr79x3iqmik9gvcd10iam9dfrdan4dri9vpxn9n")))) + "1mxx362vqiniw8vi6k3j7v9b1s7012irhfcblcz1p6jz9cjqi7mh")))) (build-system perl-build-system) (native-inputs ;only for tests `(("perl-cgi" ,perl-cgi) @@ -3874,13 +3908,13 @@ in systems and applications.") (define-public r-servr (package (name "r-servr") - (version "0.10") + (version "0.11") (source (origin (method url-fetch) (uri (cran-uri "servr" version)) (sha256 (base32 - "0yz3igqsiyqnjj1ngh199zicg3spx4kbmvl0wc8i8xahk6l9g06v")))) + "0yj3p1risf269n25dd56lqv82dsxv6a0aq4bcc1ddn9wv7h2xdfi")))) (build-system r-build-system) (propagated-inputs `(("r-httpuv" ,r-httpuv) @@ -3932,13 +3966,13 @@ directory.") (define-public r-htmlwidgets (package (name "r-htmlwidgets") - (version "1.2") + (version "1.3") (source (origin (method url-fetch) (uri (cran-uri "htmlwidgets" version)) (sha256 (base32 - "04c4d0mfcy3dkdlbxnaccpdgxvyxfdwfmmh5djim6v9hyg0j2z8s")))) + "04jsdh14l2zifbjpbbh23w7bxz1wpsas0zb2gy2zwv4yqamzzr7i")))) (build-system r-build-system) (propagated-inputs `(("r-htmltools" ,r-htmltools) @@ -4166,19 +4200,15 @@ It uses the uwsgi protocol for all the networking/interprocess communications.") (define-public jq (package (name "jq") - (version "1.5") + (version "1.6") (source (origin (method url-fetch) - (uri (string-append "https://github.com/stedolan/" name - "/releases/download/" name "-" version - "/" name "-" version ".tar.gz")) + (uri (string-append "https://github.com/stedolan/jq" + "/releases/download/jq-" version + "/jq-" version ".tar.gz")) (sha256 (base32 - "0g29kyz4ykasdcrb0zmbrp2jqs9kv1wz9swx849i2d1ncknbzln4")) - ;; This patch has been pushed and the vulnerability will be - ;; fixed in the next release after 1.5. - ;; https://github.com/stedolan/jq/issues/995 - (patches (search-patches "jq-CVE-2015-8863.patch")))) + "1a76f46a652i2g333kfvrl6mp2w7whf6h1yly519izg4y967h9cn")))) (inputs `(("oniguruma" ,oniguruma))) (native-inputs @@ -5607,13 +5637,13 @@ responsive, and powerful applications with minimal effort.") (define-public r-shinydashboard (package (name "r-shinydashboard") - (version "0.7.0") + (version "0.7.1") (source (origin (method url-fetch) (uri (cran-uri "shinydashboard" version)) (sha256 (base32 - "10yqcqqcxgfqwkmscqwvvgr710im583qsqnsqkfpisjvkqp10yqb")))) + "0khac8b27q3swdw07kl609hm0fjfjsjv591b388q99mqqr2rk92i")))) (build-system r-build-system) ;; The directory inst/AdminLTE/ contains a minified JavaScript file. ;; Regenerate it from the included sources. @@ -5633,6 +5663,7 @@ responsive, and powerful applications with minimal effort.") (dump-port minified port)))))))))) (propagated-inputs `(("r-htmltools" ,r-htmltools) + ("r-promises" ,r-promises) ("r-shiny" ,r-shiny))) (native-inputs `(("uglify-js" ,uglify-js))) @@ -5645,6 +5676,35 @@ application framework for R, making it easy to create attractive dashboards.") ;; later. (license l:gpl2+))) +(define-public r-shinyfiles + (package + (name "r-shinyfiles") + (version "0.7.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "shinyFiles" version)) + (sha256 + (base32 + "0dlcjrw96x72grg6j915070x8x98l7629pn86gf148iknflm7gd5")))) + (properties `((upstream-name . "shinyFiles"))) + (build-system r-build-system) + (propagated-inputs + `(("r-fs" ,r-fs) + ("r-htmltools" ,r-htmltools) + ("r-jsonlite" ,r-jsonlite) + ("r-shiny" ,r-shiny) + ("r-tibble" ,r-tibble))) + (home-page "https://github.com/thomasp85/shinyFiles") + (synopsis "Server-side file system viewer for Shiny") + (description + "This package provides functionality for client-side navigation of the +server side file system in shiny apps. In case the app is running locally +this gives the user direct access to the file system without the need to +\"download\" files to a temporary location. Both file and folder selection as +well as file saving is available.") + (license l:gpl2+))) + (define-public r-crosstalk (package (name "r-crosstalk") @@ -5699,7 +5759,7 @@ named elements: the @code{status}, the @code{headers}, and the @code{body}.") (define-public rss-bridge (package (name "rss-bridge") - (version "2018-03-11") + (version "2018-11-10") (source (origin (method url-fetch) @@ -5708,7 +5768,7 @@ named elements: the @code{status}, the @code{headers}, and the @code{body}.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ix15ck45yb659k63mhwxwia6qnm9nn8jw0bga85abrvk1rchjdn")))) + "1l9a82smh6k37bjvzbmkdlssxywlmr40ig4cykgsns1iiszwv4ia")))) (build-system trivial-build-system) (native-inputs `(("gzip" ,gzip) @@ -5745,6 +5805,7 @@ Instagram and YouTube.") (uri (git-reference (url "https://github.com/linkchecker/linkchecker") (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 "03ihjmc4bqxxqv71bb43r2f23sx0xnbq1k2fsg9fw05qa5s9x187")))) @@ -6735,14 +6796,14 @@ compressed JSON header blocks. (srfi srfi-26) (ice-9 popen) (ice-9 rdelim)) - #:phases (modify-phases %standard-phases - (add-before 'configure 'autoconf + (add-before 'configure 'set-variables (lambda _ + ;; This prevents a few warnings (setenv "GUILE_AUTO_COMPILE" "0") (setenv "XDG_CACHE_HOME" (getcwd)) - (invoke "autoreconf" "-vif"))) + #t)) (add-after 'install 'wrap-program (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index c5238a8a65..b56cdd8938 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,6 +32,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages databases) + #:use-module (gnu packages docbook) #:use-module (gnu packages enchant) #:use-module (gnu packages flex) #:use-module (gnu packages gcc) @@ -66,11 +68,13 @@ (base32 "147r7an41920zl4x9srdva7fxvw2znjin5ldjkhay1cndv9gih0m")))) (build-system cmake-build-system) + (outputs '("out" "doc")) (arguments '(#:tests? #f ; no tests #:build-type "Release" ; turn off debugging symbols to save space #:configure-flags (list "-DPORT=GTK" + "-DENABLE_GTKDOC=ON" ; No doc by default (string-append ; uses lib64 by default "-DLIB_INSTALL_DIR=" (assoc-ref %outputs "out") "/lib") @@ -87,7 +91,26 @@ ;; XXX Disable WOFF2 ‘web fonts’. These were never ;; supported in our previous builds. Enabling them ;; requires building libwoff2 and possibly woff2dec. - "-DUSE_WOFF2=OFF"))) + "-DUSE_WOFF2=OFF") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-gtk-doc-scan + (lambda* (#:key inputs #:allow-other-keys) + (for-each (lambda (file) + (substitute* file + (("http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/docbookx.dtd")))) + (find-files "Source" "\\.sgml$")) + #t)) + (add-after 'install 'move-doc-files + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc "/share")) + (rename-file (string-append out "/share/gtk-doc") + (string-append doc "/share/gtk-doc")) + #t)))))) (native-inputs `(("bison" ,bison) ("gettext" ,gettext-minimal) @@ -97,6 +120,8 @@ ("perl" ,perl) ("pkg-config" ,pkg-config) ("python" ,python-2) ; incompatible with Python 3 (print syntax) + ("gtk-doc" ,gtk-doc) ; For documentation generation + ("docbook-xml" ,docbook-xml) ; For documentation generation ("ruby" ,ruby))) (propagated-inputs `(("gtk+" ,gtk+) @@ -143,24 +168,25 @@ HTML/CSS applications to full-fledged web browsers.") (define-public webkitgtk-2.22 (package/inherit webkitgtk (name "webkitgtk") - (version "2.22.2") + (version "2.22.4") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "1flrbr8pzbrlwv09b4pmgh6vklw7jghd2lgrhcb72vl9s7a8fm1l")))) + "1f2335hjzsvjxjf6hy5cyypsn65wykpx2pbk1sp548w0hclbxdgs")))) (native-inputs `(("gcc" ,gcc-7) ; webkitgtk-2.22 requires gcc-6 or newer ,@(package-native-inputs webkitgtk))) (arguments - `(#:phases (modify-phases %standard-phases - (add-before 'configure 'work-around-gcc-7-include-path-issue - ;; FIXME: Work around a problem with gcc-7 includes (see - ;; <https://bugs.gnu.org/30756>). - (lambda _ - (unsetenv "C_INCLUDE_PATH") - (unsetenv "CPLUS_INCLUDE_PATH") - #t))) - ,@(package-arguments webkitgtk))))) + (substitute-keyword-arguments (package-arguments webkitgtk) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'configure 'work-around-gcc-7-include-path-issue + ;; FIXME: Work around a problem with gcc-7 includes (see + ;; <https://bugs.gnu.org/30756>). + (lambda _ + (unsetenv "C_INCLUDE_PATH") + (unsetenv "CPLUS_INCLUDE_PATH") + #t)))))))) diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index 169cc6e3c5..802b3dd38f 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -71,7 +71,7 @@ (define-public wine (package (name "wine") - (version "3.0.3") + (version "3.0.4") (source (origin (method url-fetch) (uri (string-append "https://dl.winehq.org/wine/source/" @@ -79,7 +79,7 @@ "/wine-" version ".tar.xz")) (sha256 (base32 - "18add8wqqz7y1aj8x0dcba7pqj9jkbhngwjv4yjmar3gxacmjr7b")))) + "037vlrk80lagy362w7500i2ldwvdwsadrknajzi67cvxpvnqhnnl")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("gettext" ,gettext-minimal) @@ -225,7 +225,7 @@ integrate Windows applications into your desktop.") (define-public wine-staging-patchset-data (package (name "wine-staging-patchset-data") - (version "3.18") + (version "3.21") (source (origin (method git-fetch) @@ -235,7 +235,7 @@ integrate Windows applications into your desktop.") (file-name (git-file-name name version)) (sha256 (base32 - "18g1lmqzkc7ngppynimfvza1gkdhqlnjbvnckmaws847ns4i0kzp")))) + "1bxryvqw5rvhcx8vjl714jaj0rjsrh95kh3sn499rrljc3c8qsbl")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) @@ -281,7 +281,7 @@ integrate Windows applications into your desktop.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "0xqs76hxcym8nb95r7l72xx0msbscp7fhkr1wrv4r0923d5x9s4v")))) + "1h70wb7kysbzv36i3fblyiihvalwhy6sj4s2a8nf21nz2mhc0k58")))) (inputs `(("autoconf" ,autoconf) ; for autoreconf ("gtk+" ,gtk+) ("libva" ,libva) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 68d497e955..8322a62b51 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -180,14 +180,14 @@ commands would.") (define-public i3-wm (package (name "i3-wm") - (version "4.15") + (version "4.16") (source (origin (method url-fetch) (uri (string-append "https://i3wm.org/downloads/i3-" version ".tar.bz2")) (sha256 (base32 - "09jk70hsdxab24lqvj2f30ijrkbv3f6q9xi5dcsax1dw3x6m4z91")))) + "1d2mnryn7m9c6d69awd7lwzadliapd0ahi5n8d0ppqy533ssaq6c")))) (build-system gnu-build-system) (arguments `(#:make-flags diff --git a/gnu/packages/wxwidgets.scm b/gnu/packages/wxwidgets.scm index 6cbfd76e10..b95be3ec14 100644 --- a/gnu/packages/wxwidgets.scm +++ b/gnu/packages/wxwidgets.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> -;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> @@ -26,6 +26,7 @@ (define-module (gnu packages wxwidgets) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix l:) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system python) @@ -140,12 +141,14 @@ and many other languages.") (version "3.1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/wxWidgets/wxWidgets/archive/v" - version ".tar.gz")) - (file-name (string-append "wxwidgets-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/wxWidgets/wxWidgets.git") + (commit (string-append "v" version)))) + (file-name (git-file-name "wxwidgets" version)) (sha256 - (base32 "1yan5ysjwh6a7xw82sfjd1xn0nsy1dn2s0cx9ac7cw19191blc3y")))) + (base32 + "14kl1rsngm70v3mbyv1mal15iz2b18k97avjx8jn7s81znha1c7f")))) (inputs `(("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base) ,@(package-inputs wxwidgets))) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 5f30df5efa..82ed065a3f 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -10,7 +10,7 @@ ;;; Copyright © 2015 xd1le <elisp.vim@gmail.com> ;;; Copyright © 2015 Florian Paul Schmidt <mista.tapas@gmx.net> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> -;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Alex Kost <alezost@gmail.com> @@ -131,14 +131,15 @@ program.") (name "xclip") (version "0.13") (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/astrand/xclip" - "/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0n7pczk9vv30zf8qfln8ba3hnif9yfdxg0m84djac469wc28hnya")))) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/astrand/xclip.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0q0hmvcjlv8arhh1pzhja2wglyj6n7z209jnpnzd281kqqv4czcs")))) (build-system gnu-build-system) (arguments '(#:tests? #f)) ;there is no test suite @@ -243,7 +244,8 @@ X11 (yet).") (mkdir-p (string-append out "/lib")) (setenv "PREFIX" out) (setenv "LDFLAGS" (string-append "-Wl,-rpath=" out "/lib")) - (setenv "CC" "gcc"))))))) + (setenv "CC" "gcc") + #t)))))) (native-inputs `(("perl" ,perl))) ; for pod2man (inputs `(("libx11" ,libx11) ("libxext" ,libxext) @@ -477,7 +479,7 @@ move windows, switch between desktops, etc.).") (doc (string-append out "/share/doc/scrot"))) (mkdir-p doc) (invoke "make" "install" - (string-append "docsdir=" doc)))))))) + (string-append "docsdir=" doc)))))))) (inputs `(("libx11" ,libx11) ("giblib" ,giblib))) @@ -496,14 +498,14 @@ of the screen selected by mouse.") (name "slop") (version "7.4") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/naelstrof/slop/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/naelstrof/slop.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1kpdrikgpjb4fpxalb6pjcih5njv1w9cnrjj5612ywdv1q5mjs48")))) + "0fgd8a2dqkg64all0f96sca92sdss9r3pzmv5kck46b99z2325z6")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target @@ -529,14 +531,14 @@ selection's dimensions to stdout.") (name "maim") (version "5.5.2") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/naelstrof/maim/archive/v" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/naelstrof/maim.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "14zdhsx1cndg5m8wbv1rqmza7wgknwfj5h0knzxg3p2jkjw66i95")))) + "14mfxdm39kc5jk8wysrzx05ag2g4sk9l24i8m5pzqn8j611150v3")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target @@ -848,15 +850,15 @@ within a single process.") (package (name "xcape") (version "1.2") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/alols/" name - "/archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) - (sha256 - (base32 - "0898zc3vwxia00h9kfknpf7jygxgwggrx8v5mxc31w4lzn2dhzm2")))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alols/xcape.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09a05cxgrip6nqy1qmwblamp2bhknqnqmxn7i2a1rgxa0nba95dm")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target @@ -1004,7 +1006,8 @@ color temperature should be set to match the lamps in your room.") (lambda _ (substitute* '("driver/Makefile.in" "po/Makefile.in.in") (("@GTK_DATADIR@") "@datadir@") - (("@PO_DATADIR@") "@datadir@"))))) + (("@PO_DATADIR@") "@datadir@")) + #t))) #:configure-flags '("--with-pam" "--with-proc-interrupts" "--without-readdisplay") #:make-flags (list (string-append "AD_DIR=" @@ -1164,7 +1167,8 @@ by name.") (add-after 'unpack 'fix-installation-prefix (lambda _ (substitute* "CMakeLists.txt" - (("/etc") "${CMAKE_INSTALL_PREFIX}/etc"))))))) + (("/etc") "${CMAKE_INSTALL_PREFIX}/etc")) + #t))))) (inputs `(("gtk+" ,gtk+-2) ("imlib2" ,imlib2) @@ -1338,15 +1342,11 @@ invert colors on a specific display/screen.") (build-system gnu-build-system) (arguments '(#:configure-flags `("--enable-sound" "--enable-wave" - "--enable-alsa") - #:phases (modify-phases %standard-phases - (add-before 'configure 'autoreconf - (lambda _ - (invoke "autoreconf" "-vfi")))))) - (native-inputs `(("autoconf" ,autoconf) - ("automake" ,automake) - ("pkg-config" ,pkg-config) - ("perl" ,perl))) + "--enable-alsa"))) + (native-inputs `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("perl" ,perl))) (inputs `(("libx11" ,libx11) ("alsa-lib" ,alsa-lib))) (synopsis "Daemon that performs an action every time the X11 bell is rung") @@ -1521,3 +1521,37 @@ the X11 clipboard") the numlock key in X11. It can be called from the user's initialization files to automatically turn it on on login.") (license license:expat))) + +(define-public xrandr-invert-colors + (package + (name "xrandr-invert-colors") + (version "0.01") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/zoltanp/xrandr-invert-colors.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1br3x9vr6xm4ika06n8cfxx1b3wdchdqvyzjl4y1chmivrml8x9h")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "CC=gcc") + #:tests? #f ; there are none + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "xrandr-invert-colors.bin" bin) + #t)))))) + (inputs + `(("libxrandr" ,libxrandr))) + (home-page "https://github.com/zoltanp/xrandr-invert-colors") + (synopsis "Invert display colors") + (description "This package provides a small utility for inverting the +colors on all monitors attached to an XRandR-capable X11 display server.") + (license license:gpl3+))) diff --git a/gnu/packages/xiph.scm b/gnu/packages/xiph.scm index 7ecfa580ec..43b0d2723a 100644 --- a/gnu/packages/xiph.scm +++ b/gnu/packages/xiph.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; ;;; This file is part of GNU Guix. ;;; @@ -60,7 +61,7 @@ (version "1.3.3") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/ogg/libogg-" + (uri (string-append "https://downloads.xiph.org/releases/ogg/libogg-" version ".tar.xz")) (sha256 (base32 @@ -83,7 +84,7 @@ periodic timestamps for seeking.") (version "1.3.6") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/vorbis/" + (uri (string-append "https://downloads.xiph.org/releases/vorbis/" "libvorbis-" version ".tar.xz")) (sha256 (base32 @@ -109,7 +110,7 @@ polyphonic) audio and music at fixed and variable bitrates from 16 to (version "1.1.1") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/theora/" + (uri (string-append "https://downloads.xiph.org/releases/theora/" "libtheora-" version ".tar.xz")) (sha256 (base32 @@ -134,7 +135,7 @@ compressed video format.") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/speex/speex-" + (uri (string-append "https://downloads.xiph.org/releases/speex/speex-" version ".tar.gz")) (sha256 (base32 @@ -162,7 +163,7 @@ stereo encoding, and voice activity detection.") (version "1.2rc3") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/speex/" + (uri (string-append "https://downloads.xiph.org/releases/speex/" "speexdsp-" version ".tar.gz")) (sha256 (base32 @@ -188,7 +189,7 @@ work from the @code{speex} codec.") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/ao/libao-" + (uri (string-append "https://downloads.xiph.org/releases/ao/libao-" version ".tar.gz")) (sha256 (base32 @@ -237,7 +238,7 @@ It currently supports: (version "1.3.2") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/flac/flac-" + (uri (string-append "https://downloads.xiph.org/releases/flac/flac-" version ".tar.xz")) (sha256 (base32 @@ -261,7 +262,7 @@ meaning that audio is compressed in FLAC without any loss in quality.") (version "0.4.1") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/kate/" + (uri (string-append "https://downloads.xiph.org/releases/kate/" "libkate-" version ".tar.gz")) (sha256 (base32 @@ -297,7 +298,7 @@ Kate stream.") (version "1.4.0") (source (origin (method url-fetch) - (uri (string-append "http://downloads.xiph.org/releases/vorbis/" + (uri (string-append "https://downloads.xiph.org/releases/vorbis/" "vorbis-tools-" version ".tar.gz")) (sha256 (base32 @@ -332,14 +333,14 @@ ogginfo, to obtain information (tags, bitrate, length, etc.) about (define opus (package (name "opus") - (version "1.2.1") + (version "1.3") (source (origin (method url-fetch) (uri (string-append "https://archive.mozilla.org/pub/opus/opus-" version ".tar.gz")) (sha256 (base32 - "0ch7yzgg4bn1g36bpjsfrgs4n19c84d7wpdida6yzifrrhwx7byg")))) + "0l651n19h0vhc0sn6w2c95hgqks1i8m4b3j04ncaznzjznp6jgag")))) (build-system gnu-build-system) (synopsis "Versatile audio codec") (description @@ -354,15 +355,15 @@ incorporated technology from Skype's SILK codec and Xiph.Org's CELT codec.") (define opus-tools (package (name "opus-tools") - (version "0.1.10") + (version "0.2") (source (origin (method url-fetch) (uri (string-append - "http://downloads.xiph.org/releases/opus/opus-tools-" + "https://downloads.xiph.org/releases/opus/opus-tools-" version ".tar.gz")) (sha256 (base32 - "135jfb9ny3xvd27idsxj7j5ns90lslbyrq70cq3bfwcls4r7add2")))) + "11pzl27s4vcz4m18ch72nivbhww2zmzn56wspb7rll1y1nq6rrdl")))) (build-system gnu-build-system) (arguments ;; The package developers misuse pkg-config such that it doesn't work @@ -373,9 +374,12 @@ incorporated technology from Skype's SILK codec and Xiph.Org's CELT codec.") "/include -I" (assoc-ref %build-inputs "opus") "/include/opus")))) - (inputs `(("libogg" ,libogg) - ("opus" ,opus) - ("flac" ,flac))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libopusenc" ,libopusenc) + ("opusfile" ,opusfile) + ("flac" ,flac))) (synopsis "Command line utilities to encode, inspect, and decode .opus files") (description "Opus is a royalty-free, highly versatile audio codec. @@ -391,19 +395,19 @@ decoding .opus files.") (source (origin (method url-fetch) (uri (string-append - "http://downloads.xiph.org/releases/opus/opusfile-" version + "https://downloads.xiph.org/releases/opus/opusfile-" version ".tar.gz")) (sha256 (base32 "1gq3aszzl5glgbajw5p1f5a1kdyf23w5vjdmwwrk246syin9pkkl")))) (build-system gnu-build-system) + ;; Required by opusfile.pc and opusurl.pc. (propagated-inputs - `(("opus" ,opus))) + `(("libogg" ,libogg) + ("openssl" ,openssl) + ("opus" ,opus))) (native-inputs `(("pkg-config" ,pkg-config))) - (inputs - `(("libogg" ,libogg) - ("openssl" ,openssl))) (synopsis "Versatile audio codec") (description "The opusfile library provides seeking, decode, and playback of Opus @@ -412,18 +416,40 @@ windows systems.") (license license:bsd-3) (home-page "https://www.opus-codec.org"))) +(define-public libopusenc + (package + (name "libopusenc") + (version "0.2.1") + (source (origin + (method url-fetch) + (uri (string-append "https://archive.mozilla.org/pub/opus/" + "libopusenc-" version ".tar.gz")) + (sha256 + (base32 + "1ffb0vhlymlsq70pxsjj0ksz77yfm2x0a1x8q50kxmnkm1hxp642")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (propagated-inputs + `(("opus" ,opus))) + (synopsis "Library for encoding Opus audio files and streams ") + (description "The libopusenc libraries provide a high-level API for +encoding Opus files and streams.") + (home-page "https://www.opus-codec.org/") + (license license:bsd-3))) + (define-public icecast (package (name "icecast") - (version "2.4.3") + (version "2.4.4") (source (origin (method url-fetch) (uri (string-append - "http://downloads.xiph.org/releases/icecast/icecast-" + "https://downloads.xiph.org/releases/icecast/icecast-" version ".tar.gz")) (sha256 (base32 - "14n5vm2xnyn8y7kl46lnnlgv6v5fjykhc57ffdsh0qaxfs6a8p68")))) + "0i2d9rhav0x6js2qhjf5iy6j2a7f0d11ail0lfv40hb1kygrgda9")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -451,7 +477,7 @@ things in between.") (source (origin (method url-fetch) (uri (string-append - "http://downloads.xiph.org/releases/libshout/" + "https://downloads.xiph.org/releases/libshout/" name "-" version ".tar.gz")) (sha256 (base32 @@ -464,7 +490,7 @@ things in between.") `(("libtheora" ,libtheora) ("libvorbis" ,libvorbis) ("speex" ,speex))) - (home-page "http://www.icecast.org/") + (home-page "https://icecast.org/") (synopsis "Audio streaming library for icecast encoders") (description "Libshout is a library for communicating with and sending data to an diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 835bd42354..fd4c3fea2c 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -19,6 +19,7 @@ ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> +;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,7 +39,9 @@ (define-module (gnu packages xml) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages curl) #:use-module (gnu packages gnupg) #:use-module (gnu packages java) #:use-module (gnu packages gnuzilla) @@ -185,7 +188,8 @@ project (but it is usable outside of the Gnome platform).") (format #f "ROOT = r'~a'" libxml2)) ;; For 'iconv.h'. (("/opt/include") - (string-append glibc "/include"))))))))) + (string-append glibc "/include")))) + #t))))) (inputs `(("libxml2" ,libxml2))) (synopsis "Python bindings for the libxml2 library"))) @@ -550,7 +554,8 @@ that allow you to generate HTML from an RSS, convert between 0.9, 0.91, and (setenv "PERL5LIB" (string-append (getenv "PERL5LIB") ":" (assoc-ref outputs "out") - "/lib/perl5/site_perl"))))))) + "/lib/perl5/site_perl")) + #t))))) (home-page "https://metacpan.org/release/XML-SAX") (synopsis "Perl API for XML") (description "XML::SAX consists of several framework classes for using and @@ -825,14 +830,14 @@ RSS 0.91, RSS 1.0, RSS 2.0, Atom") (define-public perl-xml-xpath (package (name "perl-xml-xpath") - (version "1.42") + (version "1.44") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/" "XML-XPath-" version ".tar.gz")) (sha256 (base32 - "04mm91kxav598ax7nlg81dhnvanwvg6bkf30l0cgkmga5iyccsly")))) + "03yxj7w5a43ibbpiqsvb3lswj2b71dydsx4rs2fw0p8n0l3i3j8w")))) (build-system perl-build-system) (native-inputs `(("perl-path-tiny" ,perl-path-tiny))) @@ -936,16 +941,16 @@ XSL-T processor. It also performs any necessary post-processing.") (define-public xmlsec (package (name "xmlsec") - (version "1.2.26") + (version "1.2.27") (source (origin - (method url-fetch) - (uri (string-append "https://www.aleksey.com/xmlsec/download/" - name "1-" version ".tar.gz")) - (sha256 - (base32 - "0l1dk344rn3j2vnj13daz72xd8j1msvzhg82n2il5ji0qz4pd0ld")))) + (method url-fetch) + (uri (string-append "https://www.aleksey.com/xmlsec/download/" + "xmlsec1-" version ".tar.gz")) + (sha256 + (base32 + "1dlf263mvxj9n4lnhhjawc2hv45agrwjf8kxk7k8h9g9v2x5dmwp")))) (build-system gnu-build-system) - (propagated-inputs ; according to xmlsec1.pc + (propagated-inputs ; according to xmlsec1.pc `(("libxml2" ,libxml2) ("libxslt" ,libxslt))) (inputs @@ -968,6 +973,10 @@ Libxml2).") (package (inherit xmlsec) (name "xmlsec-nss") + (native-inputs + ;; For tests. + `(("nss:bin" ,nss "bin") ; for certutil + ,@(package-native-inputs xmlsec))) (inputs `(("nss" ,nss) ("libltdl" ,libltdl))) @@ -976,7 +985,7 @@ Libxml2).") (define-public minixml (package (name "minixml") - (version "2.11") + (version "2.12") (source (origin (method url-fetch/tarbomb) (uri (string-append "https://github.com/michaelrsweet/mxml/" @@ -984,10 +993,13 @@ Libxml2).") "/mxml-" version ".tar.gz")) (sha256 (base32 - "13xsw8vvkxd10vca42ccdyl9rs64lcvhbfz57aknpl3xcfn8mxma")))) + "1z8nqxa4pqdic8wpixkkgg1m2pak9wjikjjxnk3j5i0d29dbgmmg")))) (build-system gnu-build-system) (arguments - `(#:phases + `(#:configure-flags + (list (string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib")) + #:phases (modify-phases %standard-phases (add-after 'unpack 'fix-permissions ;; FIXME: url-fetch/tarbomb resets all permissions to 555/444. @@ -1211,7 +1223,7 @@ elements to their parents (substitute* "test/run" ;; Run tests with `python' only (("^(PYTHON_VERSIONS = ).*" all m) (string-append m "['']"))) - (zero? (system* "test/run"))))))) + (invoke "test/run")))))) (home-page "https://github.com/dilshod/xlsx2csv") (synopsis "XLSX to CSV converter") (description @@ -1260,7 +1272,7 @@ files. It is designed to be fast and to handle large input files.") ;; Bootstrapping is required in order to fix the test driver script. (replace 'bootstrap (lambda _ - (zero? (system* "bash" "bootstrap"))))))) + (invoke "bash" "bootstrap")))))) (native-inputs `(("unzip" ,unzip) ("autoconf" ,autoconf) @@ -1861,7 +1873,8 @@ low memory footprint.") (modify-phases %standard-phases (add-before 'build 'copy-resources (lambda _ - (copy-recursively "src/main/resources" "build/classes")))))) + (copy-recursively "src/main/resources" "build/classes") + #t))))) (inputs `(("java-xpp3" ,java-xpp3))) (native-inputs @@ -2104,3 +2117,60 @@ derivations of regular expressions.") "The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach for processing XML with Haskell.") (license license:expat))) + +(define-public xmlrpc-c + (package + (name "xmlrpc-c") + (version "1.43.08") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/xmlrpc-c/Xmlrpc-c%20Super%20Stable/" + version "/xmlrpc-c-" version ".tgz")) + (sha256 + (base32 + "18zwbj6i2hpcn5riiyp8i6rml0sfv60dd7phw1x8g4r4lj2bbxf9")))) + (build-system gnu-build-system) + (inputs + `(("curl" ,curl))) + (native-inputs + `(;; For tools, if ever needed. + ("perl" ,perl))) + (arguments + `(#:make-flags ; Add $libdir to the RUNPATH of all the executables. + (list (string-append "LDFLAGS_PERSONAL=-Wl,-rpath=" %output "/lib")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-/bin/sh-in-tests + (lambda _ + (substitute* "GNUmakefile" + (("#! /bin/sh") (which "sh"))) + #t))))) + (home-page "http://xmlrpc-c.sourceforge.net/") + (synopsis "Lightweight RPC library based on XML and HTTP") + (description + "XML-RPC is a quick-and-easy way to make procedure calls over the Internet. +It converts the procedure call into an XML document, sends it to a remote +server using HTTP, and gets back the response as XML. This library provides a +modular implementation of XML-RPC for C and C++.") + (license (list license:psfl license:expat)))) + +(define-public python-xmltodict + (package + (name "python-xmltodict") + (version "0.11.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "xmltodict" version)) + (sha256 + (base32 + "1pxh4yjhvmxi1h6f92skv41g4kbsws3ams57150kzn18m907v3cg")))) + (build-system python-build-system) + (native-inputs + `(("python-coverage" ,python-coverage) + ("python-nose" ,python-nose))) + (home-page "https://github.com/martinblech/xmltodict") + (synopsis "Work with XML like you are working with JSON") + (description "This package provides a Python library to convert XML to +@code{OrderedDict}.") + (license license:expat))) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 1af8fed5e7..9aa65291b9 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2448,7 +2448,7 @@ including most mice, keyboards, tablets and touchscreens.") (define-public xf86-input-libinput (package (name "xf86-input-libinput") - (version "0.28.0") + (version "0.28.1") (source (origin (method url-fetch) (uri (string-append @@ -2456,7 +2456,7 @@ including most mice, keyboards, tablets and touchscreens.") name "-" version ".tar.bz2")) (sha256 (base32 - "189h8vl0005yizwrs4d0sng6j8lwkd3xi1zwqg8qavn2bw34v691")))) + "12yr0yki94j2416bfhmkz5jpacffm27jkra89fl7h03c0y749nls")))) (build-system gnu-build-system) (arguments '(#:configure-flags @@ -2905,8 +2905,8 @@ X server.") (define-public xf86-video-intel - (let ((commit "d7dfab62a9853b44bbcd67dac08391d8e5114c97") - (revision "10")) + (let ((commit "0932a6b37ba6d5c9e916a1cb6ab89c3205b81a0c") + (revision "11")) (package (name "xf86-video-intel") (version (git-version "2.99.917" revision commit)) @@ -2919,7 +2919,7 @@ X server.") (commit commit))) (sha256 (base32 - "1vcfal4xr9q6016p28lnlyg709da6d305dysyyrj3fjp9fj48sva")) + "10pqxp7n53ddiypd3l1i9gkbgzdpi6rz9vksbd16biq7pbijc2xf")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (inputs `(("mesa" ,mesa) @@ -3174,14 +3174,14 @@ This driver is intended for the spice qxl virtio device.") (define-public xf86-video-r128 (package (name "xf86-video-r128") - (version "6.11.0") + (version "6.12.0") (source (origin (method url-fetch) (uri (string-append "mirror://xorg/individual/driver/" name "-" version ".tar.bz2")) (sha256 (base32 - "0snvwmrh8dqyyaq7ggicym6yrsg4brygkx9156r0m095m7fp3rav")))) + "0mz0v5mqmmbncr2drd5zvia1fb7frz2xqwflhhqbnaxx5j48c740")))) (build-system gnu-build-system) (inputs `(("mesa" ,mesa) ("xorgproto" ,xorgproto) @@ -5065,7 +5065,7 @@ over Xlib, including: (define-public xorg-server (package (name "xorg-server") - (version "1.20.1") + (version "1.20.3") (source (origin (method url-fetch) @@ -5074,7 +5074,7 @@ over Xlib, including: name "-" version ".tar.bz2")) (sha256 (base32 - "0679942x1ma2p30vlvqylpjc5v1ak1pgqysnqrj82nz7dzl9zjar")) + "1ph1j8gy5cazsq05krq9kppjx5v1sl75pbdka8ibxb1cq5kf8g0v")) (patches (list ;; See: @@ -5453,6 +5453,58 @@ The XCB util module provides the following libraries: "file://COPYING" "See COPYING in the distribution.")))) +(define-public xcb-util-errors + (let ((commit "5d660ebe872cadcdc85de9d6f9afe05de629c030") + (revision "1")) + (package + (name "xcb-util-errors") + (version (git-version "1.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://anongit.freedesktop.org/git/xcb/util-errors.git") + (commit commit) + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "12bah0iz5k6b9hwlc5zffyfg2gnrajll3gn5s8zmazgynvw72ahg")))) + (build-system gnu-build-system) + (outputs '("out")) + (inputs + `(("util-macros" ,util-macros) + ("xcb-proto" ,xcb-proto))) + (propagated-inputs + `(("libxcb" ,libxcb))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("python-2" ,python-2) + ("pkg-config" ,pkg-config))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + ;; The default 'bootstrap' phase would run 'autogen.sh', which + ;; would try to run ./configure and fail due to unpatched + ;; shebangs. + (invoke "autoreconf" "-v" "--install")))))) + (home-page "https://cgit.freedesktop.org/xcb/util-errors/") + (synopsis "XCB helper library for printing information about X11 errors") + (description + "The XCB util module provides a number of libraries which sit on +top of libxcb, the core X protocol library, and some of the extension +libraries. These experimental libraries provide convenience functions +and interfaces which make the raw X protocol more usable. Some of the +libraries also provide client-side code which is not strictly part of +the X protocol but which has traditionally been provided by Xlib. + +The XCB util-errors module provides a utility library that gives human +readable names to error codes, event codes, and also to major and minor +numbers.") + (license license:x11)))) (define-public xcb-util-image (package @@ -5752,7 +5804,7 @@ programs that cannot use the window system directly.") (define-public perl-x11-xcb (package (name "perl-x11-xcb") - (version "0.17") + (version "0.18") (source (origin (method url-fetch) (uri (string-append @@ -5760,7 +5812,7 @@ programs that cannot use the window system directly.") "X11-XCB-" version ".tar.gz")) (sha256 (base32 - "12qyf98s5hbybmh0mblpz50c00i68srq73w5rw31m2dhclj8n96q")))) + "1cjpghw7cnackw20lbd7yzm222kz5bnrwz52f8ay24d1f4pwrnxf")))) (build-system perl-build-system) (arguments '(;; Disable parallel build to prevent a race condition. @@ -5887,7 +5939,7 @@ Conventions Manual) and some of the @dfn{EWMH} (add-after 'unpack 'autogen (lambda _ (setenv "NOCONFIGURE" "t") - (zero? (system* "sh" "autogen.sh"))))))) + (invoke "sh" "autogen.sh")))))) (native-inputs `(("pkg-config" ,pkg-config) ("autoconf" ,autoconf) @@ -5910,7 +5962,7 @@ basic eye-candy effects.") (define-public xpra (package (name "xpra") - (version "2.4") + (version "2.4.2") (source (origin (method url-fetch) @@ -5918,7 +5970,7 @@ basic eye-candy effects.") version ".tar.xz")) (sha256 (base32 - "0blzx231sr1ri1zwzpwzf611sq9104bv3ccvnap9pbvfrc05sfwx")))) + "01x4ri0arfq9cn01bh80h232lsj95jp6j1zw0z0q7a6mwrw4gr6i")))) (build-system python-build-system) (inputs `(("ffmpeg" ,ffmpeg) ("flac" ,flac) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 47c7d8bb27..b10f5cbaf1 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 David Craven <david@craven.ch> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1251,18 +1252,57 @@ the tty to run, among other things." (string-concatenate (map cache->config caches))))))) +(define (nscd-action-procedure nscd config option) + ;; XXX: This is duplicated from mcron; factorize. + #~(lambda (_ . args) + ;; Run 'nscd' in a pipe so we can explicitly redirect its output to + ;; 'current-output-port', which at this stage is bound to the client + ;; connection. + (let ((pipe (apply open-pipe* OPEN_READ #$nscd + "-f" #$config #$option args))) + (let loop () + (match (read-line pipe 'concat) + ((? eof-object?) + (catch 'system-error + (lambda () + (zero? (close-pipe pipe))) + (lambda args + ;; There's a race with the SIGCHLD handler, which could + ;; call 'waitpid' before 'close-pipe' above does. If we + ;; get ECHILD, that means we lost the race, but that's + ;; fine. + (or (= ECHILD (system-error-errno args)) + (apply throw args))))) + (line + (display line) + (loop))))))) + +(define (nscd-actions nscd config) + "Return Shepherd actions for NSCD." + ;; Make this functionality available as actions because that's a simple way + ;; to run the right 'nscd' binary with the right config file. + (list (shepherd-action + (name 'statistics) + (documentation "Display statistics about nscd usage.") + (procedure (nscd-action-procedure nscd config "--statistics"))) + (shepherd-action + (name 'invalidate) + (documentation + "Invalidate the given cache--e.g., 'hosts' for host name lookups.") + (procedure (nscd-action-procedure nscd config "--invalidate"))))) + (define (nscd-shepherd-service config) "Return a shepherd service for CONFIG, an <nscd-configuration> object." - (let ((nscd.conf (nscd.conf-file config)) + (let ((nscd (file-append (nscd-configuration-glibc config) + "/sbin/nscd")) + (nscd.conf (nscd.conf-file config)) (name-services (nscd-configuration-name-services config))) (list (shepherd-service (documentation "Run libc's name service cache daemon (nscd).") (provision '(nscd)) (requirement '(user-processes)) (start #~(make-forkexec-constructor - (list #$(file-append (nscd-configuration-glibc config) - "/sbin/nscd") - "-f" #$nscd.conf "--foreground") + (list #$nscd "-f" #$nscd.conf "--foreground") ;; Wait for the PID file. However, the PID file is ;; written before nscd is actually listening on its @@ -1276,7 +1316,12 @@ the tty to run, among other things." (string-append dir "/lib")) (list #$@name-services)) ":"))))) - (stop #~(make-kill-destructor)))))) + (stop #~(make-kill-destructor)) + (modules `((ice-9 popen) ;for the actions + (ice-9 rdelim) + (ice-9 match) + ,@%default-modules)) + (actions (nscd-actions nscd nscd.conf)))))) (define nscd-activation ;; Actions to take before starting nscd. @@ -1454,26 +1499,27 @@ starting at FIRST-UID, and under GID." 1+ 1)) -(define (hydra-key-authorization key guix) - "Return a gexp with code to register KEY, a file containing a 'guix archive' -public key, with GUIX." +(define (hydra-key-authorization keys guix) + "Return a gexp with code to register KEYS, a list of files containing 'guix +archive' public keys, with GUIX." #~(unless (file-exists? "/etc/guix/acl") - (let ((pid (primitive-fork))) - (case pid - ((0) - (let* ((key #$key) - (port (open-file key "r0b"))) - (format #t "registering public key '~a'...~%" key) - (close-port (current-input-port)) - (dup port 0) - (execl #$(file-append guix "/bin/guix") - "guix" "archive" "--authorize") - (exit 1))) - (else - (let ((status (cdr (waitpid pid)))) - (unless (zero? status) - (format (current-error-port) "warning: \ -failed to register hydra.gnu.org public key: ~a~%" status)))))))) + (for-each (lambda (key) + (let ((pid (primitive-fork))) + (case pid + ((0) + (let* ((port (open-file key "r0b"))) + (format #t "registering public key '~a'...~%" key) + (close-port (current-input-port)) + (dup port 0) + (execl #$(file-append guix "/bin/guix") + "guix" "archive" "--authorize") + (primitive-exit 1))) + (else + (let ((status (cdr (waitpid pid)))) + (unless (zero? status) + (format (current-error-port) "warning: \ +failed to register public key '~a': ~a~%" key status))))))) + '(#$@keys)))) (define %default-authorized-guix-keys ;; List of authorized substitute keys. @@ -1558,7 +1604,15 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) '()) #$@(if tmpdir (list (string-append "TMPDIR=" tmpdir)) - '())) + '()) + + ;; Make sure we run in a UTF-8 locale so that 'guix + ;; offload' correctly restores nars that contain UTF-8 + ;; file names such as 'nss-certs'. See + ;; <https://bugs.gnu.org/32942>. + (string-append "GUIX_LOCPATH=" + #$glibc-utf8-locales "/lib/locale") + "LC_ALL=en_US.utf8") #:log-file #$log-file)) (stop #~(make-kill-destructor)))))) @@ -1585,10 +1639,9 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) ;; otherwise call 'chown' here, but the problem is that on a COW overlayfs, ;; chown leads to an entire copy of the tree, which is a bad idea. - ;; Optionally authorize hydra.gnu.org's key. + ;; Optionally authorize substitute server keys. (if authorize-key? - #~(begin - #$@(map (cut hydra-key-authorization <> guix) keys)) + (hydra-key-authorization keys guix) #~#f)))) (define* (references-file item #:optional (name "references")) @@ -2040,6 +2093,8 @@ This service is not part of @var{%base-services}." (default (file-append shadow "/bin/login"))) (login-arguments kmscon-configuration-login-arguments (default '("-p"))) + (auto-login kmscon-configuration-auto-login + (default #f)) (hardware-acceleration? kmscon-configuration-hardware-acceleration? (default #f))) ; #t causes failure @@ -2051,14 +2106,20 @@ This service is not part of @var{%base-services}." (virtual-terminal (kmscon-configuration-virtual-terminal config)) (login-program (kmscon-configuration-login-program config)) (login-arguments (kmscon-configuration-login-arguments config)) + (auto-login (kmscon-configuration-auto-login config)) (hardware-acceleration? (kmscon-configuration-hardware-acceleration? config))) (define kmscon-command #~(list #$(file-append kmscon "/bin/kmscon") "--login" "--vt" #$virtual-terminal + "--no-switchvt" ;Prevent a switch to the virtual terminal. #$@(if hardware-acceleration? '("--hwaccel") '()) - "--" #$login-program #$@login-arguments)) + "--login" "--" + #$login-program #$@login-arguments + #$@(if auto-login + #~(#$auto-login) + #~()))) (shepherd-service (documentation "kmscon virtual terminal") diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index 496b2d06c8..36e90fc825 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> -;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> @@ -54,6 +54,8 @@ (default "/var/log/cuirass.log")) (cache-directory cuirass-configuration-cache-directory ;string (dir-name) (default "/var/cache/cuirass")) + (ttl cuirass-configuration-ttl ;integer + (default (* 30 24 3600))) (user cuirass-configuration-user ;string (default "cuirass")) (group cuirass-configuration-group ;string @@ -86,6 +88,7 @@ (group (cuirass-configuration-group config)) (interval (cuirass-configuration-interval config)) (database (cuirass-configuration-database config)) + (ttl (cuirass-configuration-ttl config)) (port (cuirass-configuration-port config)) (host (cuirass-configuration-host config)) (specs (cuirass-configuration-specifications config)) @@ -102,6 +105,7 @@ "--specifications" #$(scheme-file "cuirass-specs.scm" specs) "--database" #$database + "--ttl" #$(string-append (number->string ttl) "s") "--port" #$(number->string port) "--listen" #$host "--interval" #$(number->string interval) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index e038f97683..47d1096c6d 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -672,7 +672,7 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks." ("KillUserProcesses" (yesno elogind-kill-user-processes?)) ("KillOnlyUsers" (user-name-list elogind-kill-only-users)) ("KillExcludeUsers" (user-name-list elogind-kill-exclude-users)) - ("InhibitDelayMaxSecs" (non-negative-integer elogind-inhibit-delay-max-seconds)) + ("InhibitDelayMaxSec" (non-negative-integer elogind-inhibit-delay-max-seconds)) ("HandlePowerKey" (handle-action elogind-handle-power-key)) ("HandleSuspendKey" (handle-action elogind-handle-suspend-key)) ("HandleHibernateKey" (handle-action elogind-handle-hibernate-key)) @@ -682,16 +682,16 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks." ("SuspendKeyIgnoreInhibited" (yesno elogind-suspend-key-ignore-inhibited?)) ("HibernateKeyIgnoreInhibited" (yesno elogind-hibernate-key-ignore-inhibited?)) ("LidSwitchIgnoreInhibited" (yesno elogind-lid-switch-ignore-inhibited?)) - ("HoldoffTimeoutSecs" (non-negative-integer elogind-holdoff-timeout-seconds)) + ("HoldoffTimeoutSec" (non-negative-integer elogind-holdoff-timeout-seconds)) ("IdleAction" (handle-action elogind-idle-action)) - ("IdleActionSeconds" (non-negative-integer elogind-idle-action-seconds)) + ("IdleActionSec" (non-negative-integer elogind-idle-action-seconds)) ("RuntimeDirectorySize" (identity (lambda (config) (match (elogind-runtime-directory-size-percent config) (#f (non-negative-integer (elogind-runtime-directory-size config))) (percent (string-append (non-negative-integer percent) "%")))))) - ("RemoveIpc" (yesno elogind-remove-ipc?)) + ("RemoveIPC" (yesno elogind-remove-ipc?)) "[Sleep]" ("SuspendState" (sleep-list elogind-suspend-state)) ("SuspendMode" (sleep-list elogind-suspend-mode)) diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm index 16bd039f59..1ef754b360 100644 --- a/gnu/services/dns.scm +++ b/gnu/services/dns.scm @@ -684,7 +684,8 @@ (string-delete #\? (symbol->string field-name))) (define (serialize-field field-name val) - (format #t "~a=~a\n" (uglify-field-name field-name) val)) + (when (not (member field-name '(group secret-file user))) + (format #t "~a=~a\n" (uglify-field-name field-name) val))) (define (serialize-boolean field-name val) (serialize-field field-name (if val "yes" "no"))) @@ -763,9 +764,9 @@ manually.") (use-modules (guix build utils) (ice-9 rdelim)) (let ((ddclient-user - #$(passwd:uid (getpw (ddclient-configuration-user config)))) + (passwd:uid (getpw #$(ddclient-configuration-user config)))) (ddclient-group - #$(passwd:gid (getpw (ddclient-configuration-group config)))) + (passwd:gid (getpw #$(ddclient-configuration-group config)))) (ddclient-secret-file #$(ddclient-configuration-secret-file config))) ;; 'ddclient' complains about ddclient.conf file permissions, which diff --git a/gnu/services/games.scm b/gnu/services/games.scm index b9d78e078d..b743f6a4b6 100644 --- a/gnu/services/games.scm +++ b/gnu/services/games.scm @@ -65,7 +65,8 @@ (modules '((gnu build shepherd))) (start #~(make-forkexec-constructor/container (list #$(file-append package "/bin/wesnothd") - "-p" #$(number->string port)))) + "-p" #$(number->string port)) + #:user "wesnothd" #:group "wesnothd")) (stop #~(make-kill-destructor))))))) (define wesnothd-service-type diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm index 573efa0433..fcaedd038b 100644 --- a/gnu/services/mail.scm +++ b/gnu/services/mail.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> -;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> +;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; @@ -290,11 +290,21 @@ the section name.") "Listeners for the service. A listener is either an @code{unix-listener-configuration}, a @code{fifo-listener-configuration}, or an @code{inet-listener-configuration}.") + (client-limit + (non-negative-integer 0) + "Maximum number of simultaneous client connections per process. Once this +number of connections is received, the next incoming connection will prompt +Dovecot to spawn another process. If set to 0, @code{default-client-limit} is +used instead.") (service-count (non-negative-integer 1) "Number of connections to handle before starting a new process. Typically the only useful values are 0 (unlimited) or 1. 1 is more secure, but 0 is faster. <doc/wiki/LoginProcess.txt>.") + (process-limit + (non-negative-integer 0) + "Maximum number of processes that can exist for this service. If set to 0, +@code{default-process-limit} is used instead.") (process-min-avail (non-negative-integer 0) "Number of processes to always keep waiting for more connections.") @@ -475,6 +485,8 @@ complex, customize the address and port fields of the (list (service-configuration (kind "imap-login") + (client-limit 0) + (process-limit 0) (listeners (list (inet-listener-configuration (protocol "imap") (port 143) (ssl? #f)) @@ -487,24 +499,33 @@ complex, customize the address and port fields of the (inet-listener-configuration (protocol "pop3s") (port 995) (ssl? #t))))) (service-configuration (kind "lmtp") + (client-limit 1) + (process-limit 0) (listeners (list (unix-listener-configuration (path "lmtp") (mode "0666"))))) - (service-configuration (kind "imap")) - (service-configuration (kind "pop3")) - (service-configuration (kind "auth") - ;; In what could be taken to be a bug, the default value of 1 for - ;; service-count makes it so that a PAM auth worker can't fork off - ;; subprocesses for making blocking queries. The result is that nobody - ;; can log in -- very secure, but not very useful! If we simply omit - ;; the service-count, it will default to the value of - ;; auth-worker-max-count, which is 30, instead of defaulting to 1, which - ;; is the default for all other services. As a hack, bump this value to - ;; 30. - (service-count 30) + (service-configuration + (kind "imap") + (client-limit 1) + (process-limit 1024)) + (service-configuration + (kind "pop3") + (client-limit 1) + (process-limit 1024)) + (service-configuration + (kind "auth") + (service-count 0) + (client-limit 0) + (process-limit 1) (listeners (list (unix-listener-configuration (path "auth-userdb"))))) - (service-configuration (kind "auth-worker")) - (service-configuration (kind "dict") + (service-configuration + (kind "auth-worker") + (client-limit 1) + (process-limit 0)) + (service-configuration + (kind "dict") + (client-limit 1) + (process-limit 0) (listeners (list (unix-listener-configuration (path "dict"))))))) "List of services to enable. Available services include @samp{imap}, @samp{imap-login}, @samp{pop3}, @samp{pop3-login}, @samp{auth}, and diff --git a/gnu/services/mcron.scm b/gnu/services/mcron.scm index 5757bf8cf6..120b663e3e 100644 --- a/gnu/services/mcron.scm +++ b/gnu/services/mcron.scm @@ -86,7 +86,7 @@ files." (lambda () (zero? (close-pipe pipe))) (lambda args - ;; There's with race between the SIGCHLD handler, which + ;; There's a race with the SIGCHLD handler, which ;; could call 'waitpid' before 'close-pipe' above does. If ;; we get ECHILD, that means we lost the race, but that's ;; fine. diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm index 056602248f..bb94c5f41a 100644 --- a/gnu/services/ssh.scm +++ b/gnu/services/ssh.scm @@ -518,7 +518,15 @@ of user-name/file-like tuples." (service-extension activation-service-type openssh-activation) (service-extension account-service-type - (const %openssh-accounts)))) + (const %openssh-accounts)) + + ;; Install OpenSSH in the system profile. That way, + ;; 'scp' is found when someone tries to copy to or from + ;; this machine. + (service-extension profile-service-type + (lambda (config) + (list (openssh-configuration-openssh + config)))))) (compose concatenate) (extend extend-openssh-authorized-keys) (default-value (openssh-configuration)))) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index 1edb1f4d34..fcf453c248 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -70,6 +70,11 @@ httpd-config-file-user httpd-config-file-group + <httpd-module> + httpd-module + httpd-module? + %default-httpd-modules + httpd-service-type <nginx-configuration> diff --git a/gnu/system.scm b/gnu/system.scm index 99bc09873d..a5a8f40d66 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -127,23 +127,21 @@ ;;; ;;; Code: -(define (bootable-kernel-arguments kernel-arguments system.drv root-device) - "Prepend extra arguments to KERNEL-ARGUMENTS that allow SYSTEM.DRV to be -booted from ROOT-DEVICE" - (cons* (string-append "--root=" - (cond ((uuid? root-device) - - ;; Note: Always use the DCE format because that's - ;; what (gnu build linux-boot) expects for the - ;; '--root' kernel command-line option. - (uuid->string (uuid-bytevector root-device) - 'dce)) - ((file-system-label? root-device) - (file-system-label->string root-device)) - (else root-device))) - #~(string-append "--system=" #$system.drv) - #~(string-append "--load=" #$system.drv "/boot") - kernel-arguments)) +(define (bootable-kernel-arguments system root-device) + "Return a list of kernel arguments (gexps) to boot SYSTEM from ROOT-DEVICE." + (list (string-append "--root=" + (cond ((uuid? root-device) + + ;; Note: Always use the DCE format because that's + ;; what (gnu build linux-boot) expects for the + ;; '--root' kernel command-line option. + (uuid->string (uuid-bytevector root-device) + 'dce)) + ((file-system-label? root-device) + (file-system-label->string root-device)) + (else root-device))) + #~(string-append "--system=" #$system) + #~(string-append "--load=" #$system "/boot"))) ;; System-wide configuration. ;; TODO: Add per-field docstrings/stexi. @@ -156,7 +154,7 @@ booted from ROOT-DEVICE" (default '())) ; list of gexps/strings (bootloader operating-system-bootloader) ; <bootloader-configuration> - (initrd operating-system-initrd ; (list fs) -> M derivation + (initrd operating-system-initrd ; (list fs) -> file-like (default base-initrd)) (initrd-modules operating-system-initrd-modules ; list of strings (thunked) ; it's system-dependent @@ -209,12 +207,11 @@ booted from ROOT-DEVICE" (sudoers-file operating-system-sudoers-file ; file-like (default %sudoers-specification))) -(define (operating-system-kernel-arguments os system.drv root-device) +(define (operating-system-kernel-arguments os root-device) "Return all the kernel arguments, including the ones not specified directly by the user." - (bootable-kernel-arguments (operating-system-user-kernel-arguments os) - system.drv - root-device)) + (append (bootable-kernel-arguments os root-device) + (operating-system-user-kernel-arguments os))) ;;; @@ -328,14 +325,11 @@ format is unrecognized. The object has its kernel-arguments extended in order to make it bootable." (let* ((file (string-append system "/parameters")) (params (call-with-input-file file read-boot-parameters)) - (root (boot-parameters-root-device params)) - (kernel-arguments (boot-parameters-kernel-arguments params))) - (if params - (boot-parameters - (inherit params) - (kernel-arguments (bootable-kernel-arguments kernel-arguments - system root))) - #f))) + (root (boot-parameters-root-device params))) + (boot-parameters + (inherit params) + (kernel-arguments (append (bootable-kernel-arguments system root) + (boot-parameters-kernel-arguments params)))))) (define (boot-parameters->menu-entry conf) (menu-entry @@ -448,7 +442,7 @@ value of the SYSTEM-SERVICE-TYPE service." (return `(("locale" ,locale))) (mlet %store-monad ((kernel -> (operating-system-kernel os)) - (initrd (operating-system-initrd-file os)) + (initrd -> (operating-system-initrd-file os)) (params (operating-system-boot-parameters-file os))) (return `(("kernel" ,kernel) ("parameters" ,params) @@ -876,12 +870,11 @@ hardware-related operations as necessary when booting a Linux container." (define make-initrd (operating-system-initrd os)) - (mlet %store-monad ((initrd (make-initrd boot-file-systems - #:linux (operating-system-kernel os) - #:linux-modules - (operating-system-initrd-modules os) - #:mapped-devices mapped-devices))) - (return (file-append initrd "/initrd")))) + (make-initrd boot-file-systems + #:linux (operating-system-kernel os) + #:linux-modules + (operating-system-initrd-modules os) + #:mapped-devices mapped-devices)) (define (locale-name->definition* name) "Variant of 'locale-name->definition' that raises an error upon failure." @@ -939,42 +932,45 @@ listed in OS. The C library expects to find it under (store-file-system (operating-system-file-systems os))) (define* (operating-system-bootcfg os #:optional (old-entries '())) - "Return the bootloader configuration file for OS. Use OLD-ENTRIES -(which is a list of <menu-entry>) to populate the \"old entries\" menu." - (mlet* %store-monad - ((system (operating-system-derivation os)) - (root-fs -> (operating-system-root-file-system os)) - (root-device -> (file-system-device root-fs)) - (params (operating-system-boot-parameters os system root-device)) - (entry -> (boot-parameters->menu-entry params)) - (bootloader-conf -> (operating-system-bootloader os))) - ((bootloader-configuration-file-generator - (bootloader-configuration-bootloader bootloader-conf)) - bootloader-conf (list entry) #:old-entries old-entries))) - -(define (operating-system-boot-parameters os system.drv root-device) - "Return a monadic <boot-parameters> record that describes the boot parameters -of OS. SYSTEM.DRV is either a derivation or #f. If it's a derivation, adds -kernel arguments for that derivation to <boot-parameters>." - (mlet* %store-monad - ((initrd (operating-system-initrd-file os)) - (store -> (operating-system-store-file-system os)) - (bootloader -> (bootloader-configuration-bootloader - (operating-system-bootloader os))) - (bootloader-name -> (bootloader-name bootloader)) - (label -> (kernel->boot-label (operating-system-kernel os)))) - (return (boot-parameters - (label label) - (root-device root-device) - (kernel (operating-system-kernel-file os)) - (kernel-arguments - (if system.drv - (operating-system-kernel-arguments os system.drv root-device) - (operating-system-user-kernel-arguments os))) - (initrd initrd) - (bootloader-name bootloader-name) - (store-device (ensure-not-/dev (file-system-device store))) - (store-mount-point (file-system-mount-point store)))))) + "Return the bootloader configuration file for OS. Use OLD-ENTRIES, +a list of <menu-entry>, to populate the \"old entries\" menu." + (let* ((root-fs (operating-system-root-file-system os)) + (root-device (file-system-device root-fs)) + (params (operating-system-boot-parameters + os root-device + #:system-kernel-arguments? #t)) + (entry (boot-parameters->menu-entry params)) + (bootloader-conf (operating-system-bootloader os))) + (define generate-config-file + (bootloader-configuration-file-generator + (bootloader-configuration-bootloader bootloader-conf))) + + (generate-config-file bootloader-conf (list entry) + #:old-entries old-entries))) + +(define* (operating-system-boot-parameters os root-device + #:key system-kernel-arguments?) + "Return a monadic <boot-parameters> record that describes the boot +parameters of OS. When SYSTEM-KERNEL-ARGUMENTS? is true, add kernel arguments +such as '--root' and '--load' to <boot-parameters>." + (let* ((initrd (operating-system-initrd-file os)) + (store (operating-system-store-file-system os)) + (bootloader (bootloader-configuration-bootloader + (operating-system-bootloader os))) + (bootloader-name (bootloader-name bootloader)) + (label (kernel->boot-label (operating-system-kernel os)))) + (boot-parameters + (label label) + (root-device root-device) + (kernel (operating-system-kernel-file os)) + (kernel-arguments + (if system-kernel-arguments? + (operating-system-kernel-arguments os root-device) + (operating-system-user-kernel-arguments os))) + (initrd initrd) + (bootloader-name bootloader-name) + (store-device (ensure-not-/dev (file-system-device store))) + (store-mount-point (file-system-mount-point store))))) (define (device->sexp device) "Serialize DEVICE as an sexp (really, as an object with a read syntax.)" @@ -986,19 +982,22 @@ kernel arguments for that derivation to <boot-parameters>." (_ device))) -(define* (operating-system-boot-parameters-file os #:optional (system.drv #f)) +(define* (operating-system-boot-parameters-file os + #:key system-kernel-arguments?) "Return a file that describes the boot parameters of OS. The primary use of this file is the reconstruction of GRUB menu entries for old configurations. -SYSTEM.DRV is optional. If given, adds kernel arguments for that system to the -returned file (since the returned file is then usually stored into the -content-addressed \"system\" directory, it's usually not a good idea -to give it because the content hash would change by the content hash + +When SYSTEM-KERNEL-ARGUMENTS? is true, add kernel arguments such as '--root' +and '--load' to the returned file (since the returned file is then usually +stored into the content-addressed \"system\" directory, it's usually not a +good idea to give it because the content hash would change by the content hash being stored into the \"parameters\" file)." - (mlet* %store-monad ((root -> (operating-system-root-file-system os)) - (device -> (file-system-device root)) - (params (operating-system-boot-parameters os - system.drv - device))) + (let* ((root (operating-system-root-file-system os)) + (device (file-system-device root)) + (params (operating-system-boot-parameters + os device + #:system-kernel-arguments? + system-kernel-arguments?))) (gexp->file "parameters" #~(boot-parameters (version 0) diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index 889dcabe64..902dacbe57 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -3,7 +3,7 @@ (use-modules (gnu)) (use-service-modules networking ssh) -(use-package-modules screen ssh) +(use-package-modules screen) (operating-system (host-name "komputilo") @@ -40,7 +40,7 @@ %base-user-accounts)) ;; Globally-installed packages. - (packages (cons* screen openssh %base-packages)) + (packages (cons screen %base-packages)) ;; Add services to the baseline: a DHCP client and ;; an SSH server. diff --git a/gnu/system/examples/desktop.tmpl b/gnu/system/examples/desktop.tmpl index ea21e1df66..1b8d46afaf 100644 --- a/gnu/system/examples/desktop.tmpl +++ b/gnu/system/examples/desktop.tmpl @@ -26,7 +26,7 @@ (type luks-device-mapping)))) (file-systems (cons (file-system - (device "my-root") + (device (file-system-label "my-root")) (mount-point "/") (type "ext4") (dependencies mapped-devices)) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index a648ddf95e..c345ba0626 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -53,6 +53,7 @@ nintendo-nes-classic-edition-installation-os novena-installation-os pine64-plus-installation-os + pinebook-installation-os rk3399-puma-installation-os wandboard-installation-os os-with-u-boot)) @@ -249,7 +250,7 @@ You have been warned. Thanks for being so brave.\x1b[0m ;; The usual services. (syslog-service) - ;; The build daemon. Register the hydra.gnu.org key as trusted. + ;; The build daemon. Register the official server keys as trusted. ;; This allows the installation process to use substitutes by ;; default. (guix-service (guix-configuration (authorize-key? #t))) @@ -473,6 +474,11 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET." "/dev/mmcblk0" ; SD card storage "ttyS0")) +(define pinebook-installation-os + (embedded-installation-os u-boot-pinebook-bootloader + "/dev/mmcblk0" ; SD card storage + "ttyS0")) + (define rk3399-puma-installation-os (embedded-installation-os u-boot-puma-rk3399-bootloader "/dev/mmcblk0" ; SD card storage diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm index a5a111908f..983c6d81c8 100644 --- a/gnu/system/linux-initrd.scm +++ b/gnu/system/linux-initrd.scm @@ -20,8 +20,6 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu system linux-initrd) - #:use-module (guix monads) - #:use-module (guix store) #:use-module (guix gexp) #:use-module (guix utils) #:use-module ((guix store) @@ -63,7 +61,7 @@ (gzip gzip) (name "guile-initrd") (system (%current-system))) - "Return a derivation that builds a Linux initrd (a gzipped cpio archive) + "Return as a file-like object a Linux initrd (a gzipped cpio archive) containing GUILE and that evaluates EXP, a G-expression, upon booting. All the derivations referenced by EXP are automatically copied to the initrd." @@ -93,15 +91,17 @@ the derivations referenced by EXP are automatically copied to the initrd." (lambda (port) (simple-format port "~A\n" #$guile))) - (build-initrd (string-append #$output "/initrd") + (build-initrd (string-append #$output "/initrd.cpio.gz") #:guile #$guile #:init #$init ;; Copy everything INIT refers to into the initrd. #:references-graphs '("closure") #:gzip (string-append #$gzip "/bin/gzip"))))) - (gexp->derivation name builder - #:references-graphs `(("closure" ,init)))) + (file-append (computed-file name builder + #:options + `(#:references-graphs (("closure" ,init)))) + "/initrd.cpio.gz")) (define (flat-linux-module-directory linux modules) "Return a flat directory containing the Linux kernel modules listed in @@ -143,7 +143,7 @@ MODULES and taken from LINUX." qemu-networking? volatile-root? (on-error 'debug)) - "Return a monadic derivation that builds a raw initrd, with kernel + "Return as a file-like object a raw initrd, with kernel modules taken from LINUX. FILE-SYSTEMS is a list of file-systems to be mounted by the initrd, possibly in addition to the root file system specified on the kernel command line via '--root'. LINUX-MODULES is a list of kernel @@ -294,7 +294,7 @@ FILE-SYSTEMS." volatile-root? (extra-modules '()) ;deprecated (on-error 'debug)) - "Return a monadic derivation that builds a generic initrd, with kernel + "Return as a file-like object a generic initrd, with kernel modules taken from LINUX. FILE-SYSTEMS is a list of file-systems to be mounted by the initrd, possibly in addition to the root file system specified on the kernel command line via '--root'. MAPPED-DEVICES is a list of device diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index a1b595d45d..9400e6310d 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -189,14 +189,12 @@ made available under the /xchg CIFS share." #~(when (zero? (system* #$user-builder)) (reboot)))) - (mlet* %store-monad - ((initrd (if initrd ; use the default initrd? - (return initrd) - (base-initrd file-systems - #:on-error 'backtrace - #:linux linux - #:linux-modules %base-initrd-modules - #:qemu-networking? #t)))) + (let ((initrd (or initrd + (base-initrd file-systems + #:on-error 'backtrace + #:linux linux + #:linux-modules %base-initrd-modules + #:qemu-networking? #t)))) (define builder ;; Code that launches the VM that evaluates EXP. @@ -215,7 +213,7 @@ made available under the /xchg CIFS share." (let* ((inputs '#$(list qemu (canonical-package coreutils))) (linux (string-append #$linux "/" #$(system-linux-image-file-name))) - (initrd (string-append #$initrd "/initrd")) + (initrd #$initrd) (loader #$loader) (graphs '#$(match references-graphs (((graph-files . _) ...) graph-files) @@ -254,7 +252,7 @@ made available under the /xchg CIFS share." file-system-uuid (system (%current-system)) (qemu qemu-minimal) - os-drv + os bootcfg-drv bootloader register-closures? @@ -302,7 +300,7 @@ INPUTS is a list of inputs (as for packages)." (set-path-environment-variable "PATH" '("bin" "sbin") inputs) (make-iso9660-image #$(bootloader-package bootloader) #$bootcfg-drv - #$os-drv + #$os "/xchg/guixsd.iso" #:register-closures? #$register-closures? #:closures graphs @@ -331,7 +329,7 @@ INPUTS is a list of inputs (as for packages)." (file-system-type "ext4") file-system-label file-system-uuid - os-drv + os bootcfg-drv bootloader (register-closures? #t) @@ -397,7 +395,7 @@ the image." #:closures graphs #:copy-closures? #$copy-inputs? #:register-closures? #$register-closures? - #:system-directory #$os-drv + #:system-directory #$os ;; Disable deduplication to speed things up, ;; and because it doesn't help much for a @@ -627,56 +625,54 @@ to USB sticks meant to be read-only." (string=? (file-system-mount-point fs) "/")) (operating-system-file-systems os))) - (let ((os (operating-system (inherit os) - ;; Since this is meant to be used on real hardware, don't - ;; install QEMU networking or anything like that. Assume USB - ;; mass storage devices (usb-storage.ko) are available. - (initrd (lambda (file-systems . rest) - (apply (operating-system-initrd os) - file-systems - #:volatile-root? #t - rest))) - - (bootloader (if (string=? "iso9660" file-system-type) - (bootloader-configuration - (inherit (operating-system-bootloader os)) - (bootloader grub-mkrescue-bootloader)) - (operating-system-bootloader os))) - - ;; Force our own root file system. - (file-systems (cons (file-system - (mount-point "/") - (device root-uuid) - (type file-system-type)) - file-systems-to-keep))))) - - (mlet* %store-monad ((os-drv (operating-system-derivation os)) - (bootcfg (operating-system-bootcfg os))) - (if (string=? "iso9660" file-system-type) - (iso9660-image #:name name - #:file-system-label root-label - #:file-system-uuid root-uuid - #:os-drv os-drv - #:register-closures? #t - #:bootcfg-drv bootcfg - #:bootloader (bootloader-configuration-bootloader - (operating-system-bootloader os)) - #:inputs `(("system" ,os-drv) - ("bootcfg" ,bootcfg))) - (qemu-image #:name name - #:os-drv os-drv - #:bootcfg-drv bootcfg - #:bootloader (bootloader-configuration-bootloader - (operating-system-bootloader os)) - #:disk-image-size disk-image-size - #:disk-image-format "raw" - #:file-system-type file-system-type - #:file-system-label root-label - #:file-system-uuid root-uuid - #:copy-inputs? #t - #:register-closures? #t - #:inputs `(("system" ,os-drv) - ("bootcfg" ,bootcfg))))))) + (let* ((os (operating-system (inherit os) + ;; Since this is meant to be used on real hardware, don't + ;; install QEMU networking or anything like that. Assume USB + ;; mass storage devices (usb-storage.ko) are available. + (initrd (lambda (file-systems . rest) + (apply (operating-system-initrd os) + file-systems + #:volatile-root? #t + rest))) + + (bootloader (if (string=? "iso9660" file-system-type) + (bootloader-configuration + (inherit (operating-system-bootloader os)) + (bootloader grub-mkrescue-bootloader)) + (operating-system-bootloader os))) + + ;; Force our own root file system. + (file-systems (cons (file-system + (mount-point "/") + (device root-uuid) + (type file-system-type)) + file-systems-to-keep)))) + (bootcfg (operating-system-bootcfg os))) + (if (string=? "iso9660" file-system-type) + (iso9660-image #:name name + #:file-system-label root-label + #:file-system-uuid root-uuid + #:os os + #:register-closures? #t + #:bootcfg-drv bootcfg + #:bootloader (bootloader-configuration-bootloader + (operating-system-bootloader os)) + #:inputs `(("system" ,os) + ("bootcfg" ,bootcfg))) + (qemu-image #:name name + #:os os + #:bootcfg-drv bootcfg + #:bootloader (bootloader-configuration-bootloader + (operating-system-bootloader os)) + #:disk-image-size disk-image-size + #:disk-image-format "raw" + #:file-system-type file-system-type + #:file-system-label root-label + #:file-system-uuid root-uuid + #:copy-inputs? #t + #:register-closures? #t + #:inputs `(("system" ,os) + ("bootcfg" ,bootcfg)))))) (define* (system-qemu-image os #:key @@ -702,30 +698,28 @@ of the GNU system as described by OS." 'dce))) - (let ((os (operating-system (inherit os) - ;; Assume we have an initrd with the whole QEMU shebang. - - ;; Force our own root file system. Refer to it by UUID so that - ;; it works regardless of how the image is used ("qemu -hda", - ;; Xen, etc.). - (file-systems (cons (file-system - (mount-point "/") - (device root-uuid) - (type file-system-type)) - file-systems-to-keep))))) - (mlet* %store-monad - ((os-drv (operating-system-derivation os)) - (bootcfg (operating-system-bootcfg os))) - (qemu-image #:os-drv os-drv - #:bootcfg-drv bootcfg - #:bootloader (bootloader-configuration-bootloader - (operating-system-bootloader os)) - #:disk-image-size disk-image-size - #:file-system-type file-system-type - #:file-system-uuid root-uuid - #:inputs `(("system" ,os-drv) - ("bootcfg" ,bootcfg)) - #:copy-inputs? #t)))) + (let* ((os (operating-system (inherit os) + ;; Assume we have an initrd with the whole QEMU shebang. + + ;; Force our own root file system. Refer to it by UUID so that + ;; it works regardless of how the image is used ("qemu -hda", + ;; Xen, etc.). + (file-systems (cons (file-system + (mount-point "/") + (device root-uuid) + (type file-system-type)) + file-systems-to-keep)))) + (bootcfg (operating-system-bootcfg os))) + (qemu-image #:os os + #:bootcfg-drv bootcfg + #:bootloader (bootloader-configuration-bootloader + (operating-system-bootloader os)) + #:disk-image-size disk-image-size + #:file-system-type file-system-type + #:file-system-uuid root-uuid + #:inputs `(("system" ,os) + ("bootcfg" ,bootcfg)) + #:copy-inputs? #t))) ;;; @@ -829,25 +823,26 @@ bootloader refers to: OS kernel, initrd, bootloader data, etc." ;; Use a fixed UUID to improve determinism. (operating-system-uuid os 'dce)) - (mlet* %store-monad ((os-drv (operating-system-derivation os)) - (bootcfg (operating-system-bootcfg os))) - ;; XXX: When FULL-BOOT? is true, we end up creating an image that contains - ;; BOOTCFG and all its dependencies, including the output of OS-DRV. - ;; This is more than needed (we only need the kernel, initrd, GRUB for its - ;; font, and the background image), but it's hard to filter that. - (qemu-image #:os-drv os-drv - #:bootcfg-drv bootcfg - #:bootloader (bootloader-configuration-bootloader - (operating-system-bootloader os)) - #:disk-image-size disk-image-size - #:file-system-uuid root-uuid - #:inputs (if full-boot? - `(("bootcfg" ,bootcfg)) - '()) - - ;; XXX: Passing #t here is too slow, so let it off by default. - #:register-closures? #f - #:copy-inputs? full-boot?))) + (define bootcfg + (operating-system-bootcfg os)) + + ;; XXX: When FULL-BOOT? is true, we end up creating an image that contains + ;; BOOTCFG and all its dependencies, including the output of OS. + ;; This is more than needed (we only need the kernel, initrd, GRUB for its + ;; font, and the background image), but it's hard to filter that. + (qemu-image #:os os + #:bootcfg-drv bootcfg + #:bootloader (bootloader-configuration-bootloader + (operating-system-bootloader os)) + #:disk-image-size disk-image-size + #:file-system-uuid root-uuid + #:inputs (if full-boot? + `(("bootcfg" ,bootcfg)) + '()) + + ;; XXX: Passing #t here is too slow, so let it off by default. + #:register-closures? #f + #:copy-inputs? full-boot?)) (define* (common-qemu-options image shared-fs) "Return the a string-value gexp with the common QEMU options to boot IMAGE, @@ -897,21 +892,20 @@ bootloader; otherwise it directly starts the operating system kernel. The DISK-IMAGE-SIZE parameter specifies the size in bytes of the root disk image; it is mostly useful when FULL-BOOT? is true." (mlet* %store-monad ((os -> (virtualized-operating-system os mappings full-boot?)) - (os-drv (operating-system-derivation os)) (image (system-qemu-image/shared-store os #:full-boot? full-boot? #:disk-image-size disk-image-size))) (define kernel-arguments #~(list #$@(if graphic? #~() #~("console=ttyS0")) - #+@(operating-system-kernel-arguments os os-drv "/dev/vda1"))) + #+@(operating-system-kernel-arguments os "/dev/vda1"))) (define qemu-exec #~(list (string-append #$qemu "/bin/" #$(qemu-command (%current-system))) #$@(if full-boot? #~() #~("-kernel" #$(operating-system-kernel-file os) - "-initrd" #$(file-append os-drv "/initrd") + "-initrd" #$(file-append os "/initrd") (format #f "-append ~s" (string-join #$kernel-arguments " ")))) #$@(common-qemu-options image diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 896d4a8f88..03392cef38 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -154,10 +154,15 @@ info --version") (#f (reverse result)) (x (loop (cons x result)))))) marionette))) - (lset= string=? - (map passwd:name users) + (lset= equal? + (map (lambda (user) + (list (passwd:name user) + (passwd:dir user))) + users) (list - #$@(map user-account-name + #$@(map (lambda (account) + `(list ,(user-account-name account) + ,(user-account-home-directory account))) (operating-system-user-accounts os)))))) (test-assert "shepherd services" @@ -335,6 +340,20 @@ info --version") (x (pk 'failure x #f)))) + (test-equal "nscd invalidate action" + '(#t) ;one value, #t + (marionette-eval '(with-shepherd-action 'nscd ('invalidate "hosts") + result + result) + marionette)) + + (test-equal "nscd invalidate action, wrong table" + '(#f) ;one value, #f + (marionette-eval '(with-shepherd-action 'nscd ('invalidate "xyz") + result + result) + marionette)) + (test-equal "host not found" #f (marionette-eval diff --git a/gnu/tests/desktop.scm b/gnu/tests/desktop.scm index be64c4e7e5..6aa22fd49b 100644 --- a/gnu/tests/desktop.scm +++ b/gnu/tests/desktop.scm @@ -50,7 +50,7 @@ ;; Log in as root on tty1, and check what 'loginctl' returns. (test-equal "login on tty1" - '(("c1" "0" "root" "seat0" "/dev/tty1") ;session + '(("c1" "0" "root" "seat0" "tty1") ;session ("seat0") ;seat ("0" "root")) ;user diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 4764ffffde..72e5523942 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -149,7 +149,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts guix build isc-dhcp parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 1G \\ + mkpart primary ext2 3M 1.2G \\ set 1 boot on \\ set 1 bios_grub on mkfs.ext4 -L my-root /dev/vdb2 @@ -174,7 +174,7 @@ guix --version export GUIX_BUILD_OPTIONS=--no-grafts guix build isc-dhcp parted --script /dev/vdb mklabel gpt \\ - mkpart ext2 1M 1G \\ + mkpart ext2 1M 1.2G \\ set 1 legacy_boot on mkfs.ext4 -L my-root -O '^64bit' /dev/vdb1 mount /dev/vdb1 /mnt @@ -377,7 +377,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts guix build isc-dhcp parted --script /dev/vda mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 1G \\ + mkpart primary ext2 3M 1.2G \\ set 1 boot on \\ set 1 bios_grub on mkfs.ext4 -L my-root /dev/vda2 @@ -510,7 +510,7 @@ guix build isc-dhcp parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ mkpart primary ext2 3M 100M \\ - mkpart primary ext2 100M 1G \\ + mkpart primary ext2 100M 1.2G \\ set 1 boot on \\ set 1 bios_grub on mkfs.ext4 -L root-fs /dev/vdb2 @@ -676,7 +676,7 @@ export GUIX_BUILD_OPTIONS=--no-grafts ls -l /run/current-system/gc-roots parted --script /dev/vdb mklabel gpt \\ mkpart primary ext2 1M 3M \\ - mkpart primary ext2 3M 1G \\ + mkpart primary ext2 3M 1.2G \\ set 1 boot on \\ set 1 bios_grub on echo -n thepassphrase | \\ |