diff options
151 files changed, 6678 insertions, 2567 deletions
diff --git a/Makefile.am b/Makefile.am index 1a3ca227a4..9803ba5dc7 100644 --- a/Makefile.am +++ b/Makefile.am @@ -39,6 +39,7 @@ do_subst = $(SED) \ -e 's,[@]GUILE[@],$(GUILE),g' \ -e 's,[@]guilemoduledir[@],$(guilemoduledir),g' \ -e 's,[@]guileobjectdir[@],$(guileobjectdir),g' \ + -e 's,[@]abs_top_builddir[@],$(abs_top_builddir),g' \ -e 's,[@]localedir[@],$(localedir),g' scripts/guix: scripts/guix.in Makefile diff --git a/config-daemon.ac b/config-daemon.ac index 50ead355a8..85caee269b 100644 --- a/config-daemon.ac +++ b/config-daemon.ac @@ -13,7 +13,7 @@ if test "x$guix_build_daemon" = "xyes"; then GUIX_ASSERT_CXX11 AC_PROG_RANLIB - AC_CONFIG_HEADER([nix/config.h]) + AC_CONFIG_HEADERS([nix/config.h]) dnl Use 64-bit file system calls so that we can support files > 2 GiB. AC_SYS_LARGEFILE @@ -34,7 +34,6 @@ if test "x$guix_build_daemon" = "xyes"; then dnl Look for SQLite, a required dependency. PKG_CHECK_MODULES([SQLITE3], [sqlite3 >= 3.6.19]) - AC_DEFINE([NIX_VERSION], ["0.0.0"], [Fake Nix version number.]) AC_DEFINE_UNQUOTED([SYSTEM], ["$guix_system"], [Guix host system type--i.e., platform and OS kernel tuple.]) diff --git a/configure.ac b/configure.ac index 942e84164a..a5bdf24e93 100644 --- a/configure.ac +++ b/configure.ac @@ -1,7 +1,7 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -AC_PREREQ(2.68) +AC_PREREQ([2.69]) AC_INIT([GNU Guix], [m4_esyscmd([build-aux/git-version-gen .tarball-version])], [bug-guix@gnu.org], [guix], @@ -29,35 +29,35 @@ GUIX_ASSERT_SUPPORTED_SYSTEM AM_CONDITIONAL([CROSS_COMPILING], [test "x$cross_compiling" = "xyes"]) AC_ARG_WITH(store-dir, - AC_HELP_STRING([--with-store-dir=PATH], + AS_HELP_STRING([--with-store-dir=PATH], [file name of the store (defaults to /gnu/store)]), [storedir="$withval"], [storedir="/gnu/store"]) AC_SUBST(storedir) AC_ARG_WITH([bash-completion-dir], - AC_HELP_STRING([--with-bash-completion-dir=DIR], + AS_HELP_STRING([--with-bash-completion-dir=DIR], [name of the Bash completion directory]), [bashcompletiondir="$withval"], [bashcompletiondir='${sysconfdir}/bash_completion.d']) AC_SUBST([bashcompletiondir]) AC_ARG_WITH([zsh-completion-dir], - AC_HELP_STRING([--with-zsh-completion-dir=DIR], + AS_HELP_STRING([--with-zsh-completion-dir=DIR], [name of the Zsh completion directory]), [zshcompletiondir="$withval"], [zshcompletiondir='${datadir}/zsh/site-functions']) AC_SUBST([zshcompletiondir]) AC_ARG_WITH([fish-completion-dir], - AC_HELP_STRING([--with-fish-completion-dir=DIR], + AS_HELP_STRING([--with-fish-completion-dir=DIR], [name of the Fish completion directory]), [fishcompletiondir="$withval"], [fishcompletiondir='${datadir}/fish/vendor_completions.d']) AC_SUBST([fishcompletiondir]) AC_ARG_WITH([selinux-policy-dir], - AC_HELP_STRING([--with-selinux-policy-dir=DIR], + AS_HELP_STRING([--with-selinux-policy-dir=DIR], [name of the SELinux policy directory]), [selinux_policydir="$withval"], [selinux_policydir='${datadir}/selinux/']) diff --git a/doc/guix.texi b/doc/guix.texi index a5c9779c86..38927bc0b5 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -1606,6 +1606,14 @@ Servers may serve substitute over HTTP, unencrypted, so anyone on the LAN can see what software you’re installing. @end enumerate +It is also possible to enable or disable substitute server discovery at +run-time by running: + +@example +herd discover guix-daemon on +herd discover guix-daemon off +@end example + @item --disable-deduplication @cindex deduplication Disable automatic file ``deduplication'' in the store. @@ -2383,9 +2391,9 @@ bootloaders. Once you are done partitioning the target hard disk drive, you have to create a file system on the relevant partition(s)@footnote{Currently -Guix System only supports ext4, btrfs, and JFS file systems. In particular, -code that reads file system UUIDs and labels only works for these file system -types.}. For the ESP, if you have one and assuming it is +Guix System only supports ext4, btrfs, JFS, and F2FS file systems. In +particular, code that reads file system UUIDs and labels only works for these +file system types.}. For the ESP, if you have one and assuming it is @file{/dev/sda1}, run: @example @@ -2778,7 +2786,7 @@ the command prints and, similar to what we saw above, paste these two lines in your terminal and @file{.bash_profile}: @example -GUIX_PROFILE="$HOME/.config/guix/current/etc/profile" +GUIX_PROFILE="$HOME/.config/guix/current" . "$GUIX_PROFILE/etc/profile" @end example @@ -11283,6 +11291,25 @@ in Guix. @cindex OCaml Import metadata from the @uref{https://opam.ocaml.org/, OPAM} package repository used by the OCaml community. + +Additional options include: + +@table @code +@item --recursive +@itemx -r +Traverse the dependency graph of the given upstream package recursively +and generate package expressions for all those packages that are not yet +in Guix. +@item --repo +Select the given repository (a repository name). Possible values include: +@itemize +@item @code{opam}, the default opam repository, +@item @code{coq} or @code{coq-released}, the stable repository for coq packages, +@item @code{coq-core-dev}, the repository that contains development versions of coq, +@item @code{coq-extra-dev}, the repository that contains development versions + of coq packages. +@end itemize +@end table @end table The structure of the @command{guix import} code is modular. It would be @@ -15326,6 +15353,14 @@ The TCP port to listen for connections. The host (and thus, network interface) to listen to. Use @code{"0.0.0.0"} to listen on all the network interfaces. +@item @code{advertise?} (default: @code{#f}) +When true, advertise the service on the local network @i{via} the DNS-SD +protocol, using Avahi. + +This allows neighboring Guix devices with discovery on (see +@code{guix-configuration} above) to discover this @command{guix publish} +instance and to automatically download substitutes from it. + @item @code{compression} (default: @code{'(("gzip" 3))}) This is a list of compression method/level tuple used when compressing substitutes. For example, to compress all substitutes with @emph{both} lzip @@ -18555,6 +18590,12 @@ This service adds the @code{xfce} package to the system profile, and extends polkit with the ability for @code{thunar} to manipulate the file system as root from within a user session, after the user has authenticated with the administrator's password. + +Note that @code{xfce4-panel} and its plugin packages should be installed in +the same profile to ensure compatibility. When using this service, you should +add extra plugins (@code{xfce4-whiskermenu-plugin}, +@code{xfce4-weather-plugin}, etc.) to the @code{packages} field of your +@code{operating-system}. @end defvr @deftp {Data Type} xfce-desktop-configuration @@ -22021,13 +22062,10 @@ where monitoring these statistics is desirable. @defvar {Scheme variable} prometheus-node-exporter-service-type This is the service type for the @uref{https://github.com/prometheus/node_exporter/, prometheus-node-exporter} -service, its value must be a @code{prometheus-node-exporter-configuration} -record as in this example: +service, its value must be a @code{prometheus-node-exporter-configuration}. @lisp -(service prometheus-node-exporter-service-type - (prometheus-node-exporter-configuration - (web-listen-address ":9100"))) +(service prometheus-node-exporter-service-type) @end lisp @end defvar @@ -22041,6 +22079,14 @@ The prometheus-node-exporter package to use. @item @code{web-listen-address} (default: @code{":9100"}) Bind the web interface to the specified address. +@item @code{textfile-directory} (default: @code{"/var/lib/prometheus/node-exporter"}) +This directory can be used to export metrics specific to this machine. +Files containing metrics in the text format, with the filename ending in +@code{.prom} should be placed in this directory. + +@item @code{extra-options} (default: @code{'()}) +Extra options to pass to the Prometheus node exporter. + @end table @end deftp @@ -25676,6 +25722,9 @@ Owner's group of the @code{cuirass} process. Number of seconds between the poll of the repositories followed by the Cuirass jobs. +@item @code{queue-size} (default: @code{1}) +Size of the database writer queue. + @item @code{database} (default: @code{"/var/lib/cuirass/cuirass.db"}) Location of sqlite database which contains the build results and previously added specifications. @@ -32789,10 +32838,15 @@ Bootstrapping in our context refers to how the distribution gets built ``from nothing''. Remember that the build environment of a derivation contains nothing but its declared inputs (@pxref{Introduction}). So there's an obvious chicken-and-egg problem: how does the first package -get built? How does the first compiler get compiled? Note that this is -a question of interest only to the curious hacker, not to the regular -user, so you can shamelessly skip this section if you consider yourself -a ``regular user''. +get built? How does the first compiler get compiled? + +It is tempting to think of this question as one that only die-hard +hackers may care about. However, while the answer to that question is +technical in nature, its implications are wide-ranging. How the +distribution is bootstrapped defines the extent to which we, as +individuals and as a collective of users and hackers, can trust the +software we run. It is a central concern from the standpoint of +@emph{security} and from a @emph{user freedom} viewpoint. @cindex bootstrap binaries The GNU system is primarily made of C code, with libc at its core. The diff --git a/etc/guix-daemon.cil.in b/etc/guix-daemon.cil.in index cc8999d9a8..4f52157354 100644 --- a/etc/guix-daemon.cil.in +++ b/etc/guix-daemon.cil.in @@ -167,7 +167,9 @@ (process (fork execmem setrlimit setpgid setsched))) (allow guix_daemon_t guix_daemon_exec_t - (file (execute execute_no_trans read open entrypoint map))) + (file (execute + execute_no_trans read write open entrypoint map + getattr link unlink))) ;; TODO: unknown (allow guix_daemon_t diff --git a/etc/news.scm b/etc/news.scm index 16bcd0450b..8cd1c89837 100644 --- a/etc/news.scm +++ b/etc/news.scm @@ -20,6 +20,7 @@ (entry (commit "79f9dee3c4c0e6d21066f142116a537207ae7ba4") (title (en "Local substitute servers discovery is now supported") (de "Substitutserver können jetzt im lokalen Netz erkannt werden") + (es "Los servidores de sustituciones se pueden descubrir localmente") (fr "La découverte des serveurs de substituts locaux est désormais supportée")) (body (en "The @command{guix-daemon} can now discover local substitute @@ -34,6 +35,12 @@ gefunden, die mit der Befehlszeilenoption @option{--advertise} gestartet wurden. Die Ermittlung im Netzwerk verfügbarer Substitutserver baut auf den Protokollen mDNS und DNS-SD auf. Derzeit wird dazu die Bibliothek Guile-Avahi benutzt.") + (es "El daemon @command{guix-daemon} ahora puede descubrir servidores +de sustituciones locales cuando se le proporciona la opción +@option{--discover}. Únicamente se descubrirán los servidores de +sustituciones que se hayan arrancado con la opción @option{--advertise}. La +búsqueda en la red se basa en los protocolos mDNS y DNS-SD, actualmente +mediante el uso de la biblioteca Guile-Avahi.") (fr "Le @command{guix-daemon} peut désormais découvrir les serveurs de substituts locaux lorsque l'option @option{--discover} est passée. Seuls les serveurs de substituts démarrés avec l'option @option{--advertise} seront @@ -42,7 +49,8 @@ l'instant grâce à la librairie Guile-Avahi."))) (entry (commit "a9a2fdaabcc78e7a54d9a6bcfa4ee3de308e9a90") (title (en "Logical Volume Manager (LVM) now supported on Guix System") - (de "Logical Volume Manager (LVM) wird jetzt auf Guix System unterstützt")) + (de "Logical Volume Manager (LVM) wird jetzt auf Guix System unterstützt") + (es "El sistema Guix ahora implementa también volúmenes lógicos LVM")) (body (en "On Guix System, the new @code{lvm-device-mapping} variable allows you to declare ``mapped devices'' for LVM, the Linux Logical Volume @@ -70,7 +78,21 @@ Datenträgergruppe (Volume Group) „vg0“ wie folgt deklariert werden: (type lvm-device-mapping)) @end lisp -Siehe @command{info \"(guix.de) Zugeordnete Geräte\"} für nähere Informationen."))) +Siehe @command{info \"(guix.de) Zugeordnete Geräte\"} für nähere Informationen.") + (es "En el sistema Guix, la nueva variable @code{lvm-device-mapping} +le permite declarar «dispositivos traducidos» para LVM, el gestor de volúmenes +lógicos de Linux. A continuación se muestra un ejemplo con la declaración de +los volúmenes lógicos «alfa» y «beta» del grupo de volúmenes «vg0»: + +@lisp +(mapped-device + (source \"vg0\") + (target (list \"vg0-alfa\" \"vg0-beta\")) + (type lvm-device-mapping)) +@end lisp + +Véase @command{info \"(guix.es) Dispositivos traducidos\"} para obtener más +información."))) (entry (commit "3b6e4e5fd05e72b8a32ff1a2d5e21464260e21e6") (title (en "List of substitute keys is now declarative on Guix System") diff --git a/gnu/build/linux-container.scm b/gnu/build/linux-container.scm index 3870b50907..4a8bed5a9a 100644 --- a/gnu/build/linux-container.scm +++ b/gnu/build/linux-container.scm @@ -44,7 +44,7 @@ (let ((userns-file "/proc/sys/kernel/unprivileged_userns_clone")) (if (file-exists? userns-file) (eqv? #\1 (call-with-input-file userns-file read-char)) - #f))) + #t))) (define (setgroups-supported?) "Return #t if the setgroups proc file, introduced in Linux-libre 3.19, diff --git a/gnu/installer.scm b/gnu/installer.scm index f401b242f8..7863edbb67 100644 --- a/gnu/installer.scm +++ b/gnu/installer.scm @@ -266,6 +266,13 @@ selected keymap." (compute (lambda _ ((installer-network-page current-installer))))) + ;; Ask whether to enable substitute server discovery. + (installer-step + (id 'substitutes) + (description (G_ "Substitute server discovery")) + (compute (lambda _ + ((installer-substitutes-page current-installer))))) + ;; Prompt for users (name, group and home directory). (installer-step (id 'user) diff --git a/gnu/installer/newt.scm b/gnu/installer/newt.scm index a1cbeca49a..4f7fc6f4dc 100644 --- a/gnu/installer/newt.scm +++ b/gnu/installer/newt.scm @@ -30,6 +30,7 @@ #:use-module (gnu installer newt page) #:use-module (gnu installer newt partition) #:use-module (gnu installer newt services) + #:use-module (gnu installer newt substitutes) #:use-module (gnu installer newt timezone) #:use-module (gnu installer newt user) #:use-module (gnu installer newt utils) @@ -101,6 +102,9 @@ problem. The backtrace is displayed below. Please report it by email to \ (define (network-page) (run-network-page)) +(define (substitutes-page) + (run-substitutes-page)) + (define (hostname-page) (run-hostname-page)) @@ -130,6 +134,7 @@ problem. The backtrace is displayed below. Please report it by email to \ (locale-page locale-page) (menu-page menu-page) (network-page network-page) + (substitutes-page substitutes-page) (timezone-page timezone-page) (hostname-page hostname-page) (user-page user-page) diff --git a/gnu/installer/newt/substitutes.scm b/gnu/installer/newt/substitutes.scm new file mode 100644 index 0000000000..938cb1a53b --- /dev/null +++ b/gnu/installer/newt/substitutes.scm @@ -0,0 +1,43 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Mathieu Othacehe <othacehe@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu installer newt substitutes) + #:use-module (gnu installer substitutes) + #:use-module (gnu installer utils) + #:use-module (guix i18n) + #:use-module (newt) + #:use-module (ice-9 match) + #:export (run-substitutes-page)) + +(define* (run-substitutes-page) + (match (current-clients) + (() + (case (choice-window + (G_ "Substitute server discovery.") + (G_ "Enable") (G_ "Disable") + (G_ " By turning this option on, you allow Guix to fetch \ +substitutes (pre-built binaries) during installation from servers \ +discovered on your local area network (LAN) in addition to the official \ +server. This can increase download throughput. + + There are no security risks: only genuine substitutes may be retrieved from \ +those servers. However, eavesdroppers on your LAN may be able to see what \ +software you are installing.")) + ((1) (enable-discovery)) + ((2) (disable-discovery)))) + (_ #f))) diff --git a/gnu/installer/proxy.scm b/gnu/installer/proxy.scm index befaf3ab0a..86c827294e 100644 --- a/gnu/installer/proxy.scm +++ b/gnu/installer/proxy.scm @@ -17,15 +17,11 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu installer proxy) + #:use-module (gnu installer utils) #:use-module (gnu services herd) #:export (set-http-proxy clear-http-proxy)) -(define-syntax-rule (with-silent-shepherd exp ...) - (parameterize ((shepherd-message-port - (%make-void-port "w"))) - exp ...)) - (define (set-http-proxy proxy) (with-silent-shepherd (with-shepherd-action 'guix-daemon diff --git a/gnu/installer/record.scm b/gnu/installer/record.scm index 6ebd87f6a6..0b34318c45 100644 --- a/gnu/installer/record.scm +++ b/gnu/installer/record.scm @@ -33,6 +33,7 @@ installer-locale-page installer-menu-page installer-network-page + installer-substitutes-page installer-timezone-page installer-hostname-page installer-user-page @@ -73,6 +74,8 @@ (menu-page installer-menu-page) ;; procedure void -> void (network-page installer-network-page) + ;; procedure void -> void + (substitutes-page installer-substitutes-page) ;; procedure (zonetab) -> posix-timezone (timezone-page installer-timezone-page) ;; procedure void -> void diff --git a/gnu/installer/substitutes.scm b/gnu/installer/substitutes.scm new file mode 100644 index 0000000000..c9a7418f89 --- /dev/null +++ b/gnu/installer/substitutes.scm @@ -0,0 +1,41 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu installer substitutes) + #:use-module (gnu installer utils) + #:use-module (gnu services herd) + #:export (enable-discovery + disable-discovery)) + +(define (enable-discovery) + (with-silent-shepherd + (with-shepherd-action 'guix-daemon + ('discover "on") + result + result))) + +(define (disable-discovery) + (with-silent-shepherd + (with-shepherd-action 'guix-daemon + ('discover "off") + result + result))) + +;; Local Variables: +;; eval: (put 'with-silent-shepherd 'scheme-indent-function 0) +;; End: diff --git a/gnu/installer/utils.scm b/gnu/installer/utils.scm index a7fa66a199..bb97bc5560 100644 --- a/gnu/installer/utils.scm +++ b/gnu/installer/utils.scm @@ -18,6 +18,7 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu installer utils) + #:use-module (gnu services herd) #:use-module (guix utils) #:use-module (guix build utils) #:use-module (guix i18n) @@ -43,7 +44,9 @@ with-server-socket current-server-socket current-clients - send-to-clients)) + send-to-clients + + with-silent-shepherd)) (define* (read-lines #:optional (port (current-input-port))) "Read lines from PORT and return them as a list." @@ -233,3 +236,9 @@ accepting socket." (current-clients (reverse remainder)) exp) + +(define-syntax-rule (with-silent-shepherd exp ...) + "Evaluate EXP while discarding shepherd messages." + (parameterize ((shepherd-message-port + (%make-void-port "w"))) + exp ...)) diff --git a/gnu/local.mk b/gnu/local.mk index a390f97693..ee8aecf4a1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -205,6 +205,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/erlang.scm \ %D%/packages/fabric-management.scm \ %D%/packages/fcitx.scm \ + %D%/packages/fcitx5.scm \ %D%/packages/figlet.scm \ %D%/packages/file.scm \ %D%/packages/file-systems.scm \ @@ -716,6 +717,7 @@ INSTALLER_MODULES = \ %D%/installer/record.scm \ %D%/installer/services.scm \ %D%/installer/steps.scm \ + %D%/installer/substitutes.scm \ %D%/installer/tests.scm \ %D%/installer/timezone.scm \ %D%/installer/user.scm \ @@ -732,6 +734,7 @@ INSTALLER_MODULES = \ %D%/installer/newt/page.scm \ %D%/installer/newt/partition.scm \ %D%/installer/newt/services.scm \ + %D%/installer/newt/substitutes.scm \ %D%/installer/newt/timezone.scm \ %D%/installer/newt/user.scm \ %D%/installer/newt/utils.scm \ @@ -856,7 +859,6 @@ dist_patch_DATA = \ %D%/packages/patches/blender-2.79-python-3.7-fix.patch \ %D%/packages/patches/blender-2.79-python-3.8-fix.patch \ %D%/packages/patches/bpftrace-disable-bfd-disasm.patch \ - %D%/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch \ %D%/packages/patches/byobu-writable-status.patch \ %D%/packages/patches/calibre-no-updates-dialog.patch \ %D%/packages/patches/calibre-remove-test-sqlite.patch \ @@ -1055,6 +1057,8 @@ dist_patch_DATA = \ %D%/packages/patches/ghc-monad-par-fix-tests.patch \ %D%/packages/patches/ghc-pandoc-fix-html-tests.patch \ %D%/packages/patches/ghc-pandoc-fix-latex-test.patch \ + %D%/packages/patches/ghostscript-CVE-2020-15900.patch \ + %D%/packages/patches/ghostscript-freetype-compat.patch \ %D%/packages/patches/ghostscript-no-header-id.patch \ %D%/packages/patches/ghostscript-no-header-uuid.patch \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \ @@ -1159,7 +1163,6 @@ dist_patch_DATA = \ %D%/packages/patches/hubbub-sort-entities.patch \ %D%/packages/patches/hurd-cross.patch \ %D%/packages/patches/hurd-xattr.patch \ - %D%/packages/patches/hplip-fix-bug-1898438.patch \ %D%/packages/patches/hplip-remove-imageprocessor.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/icecat-makeicecat.patch \ @@ -1222,7 +1225,6 @@ dist_patch_DATA = \ %D%/packages/patches/kmail-Fix-missing-link-libraries.patch \ %D%/packages/patches/kmod-module-directory.patch \ %D%/packages/patches/kmscon-runtime-keymap-switch.patch \ - %D%/packages/patches/knot-resolver-fix-map-command-on-32-bit.patch \ %D%/packages/patches/kpackage-allow-external-paths.patch \ %D%/packages/patches/kpackage-fix-KF5PackageMacros.cmake.patch \ %D%/packages/patches/kmplayer-aarch64.patch \ @@ -1282,6 +1284,7 @@ dist_patch_DATA = \ %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ %D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \ %D%/packages/patches/libquicktime-ffmpeg.patch \ + %D%/packages/patches/libssh2-CVE-2019-17498.patch \ %D%/packages/patches/libtar-CVE-2013-4420.patch \ %D%/packages/patches/libtgvoip-disable-sse2.patch \ %D%/packages/patches/libtgvoip-disable-webrtc.patch \ @@ -1349,6 +1352,7 @@ dist_patch_DATA = \ %D%/packages/patches/mingw-w64-6.0.0-gcc.patch \ %D%/packages/patches/mingw-w64-dlltool-temp-prefix.patch \ %D%/packages/patches/mingw-w64-reproducible-gendef.patch \ + %D%/packages/patches/minimap2-aarch64-support.patch \ %D%/packages/patches/minisat-friend-declaration.patch \ %D%/packages/patches/minisat-install.patch \ %D%/packages/patches/mit-krb5-hurd.patch \ @@ -1432,9 +1436,9 @@ dist_patch_DATA = \ %D%/packages/patches/p7zip-CVE-2017-17969.patch \ %D%/packages/patches/p7zip-remove-unused-code.patch \ %D%/packages/patches/pam-krb5-CVE-2020-10595.patch \ - %D%/packages/patches/pam-mount-luks2-support.patch \ %D%/packages/patches/pango-skip-libthai-test.patch \ %D%/packages/patches/pciutils-hurd-configure.patch \ + %D%/packages/patches/pciutils-hurd-fix.patch \ %D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \ %D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \ %D%/packages/patches/samba-fix-fcntl-hint-detection.patch \ @@ -1514,6 +1518,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-3-fix-tests.patch \ %D%/packages/patches/python-3.8-fix-tests.patch \ %D%/packages/patches/python-CVE-2018-14647.patch \ + %D%/packages/patches/python-CVE-2020-26116.patch \ %D%/packages/patches/python-aionotify-0.2.0-py3.8.patch \ %D%/packages/patches/python-argcomplete-1.11.1-fish31.patch \ %D%/packages/patches/python-axolotl-AES-fix.patch \ @@ -1568,6 +1573,7 @@ dist_patch_DATA = \ %D%/packages/patches/rct-add-missing-headers.patch \ %D%/packages/patches/readline-link-ncurses.patch \ %D%/packages/patches/readline-6.2-CVE-2014-2524.patch \ + %D%/packages/patches/renpy-use-system-fribidi.patch \ %D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \ %D%/packages/patches/r-httpuv-1.5.4-unvendor-libuv.patch \ %D%/packages/patches/ri-li-modernize_cpp.patch \ @@ -1596,7 +1602,6 @@ dist_patch_DATA = \ %D%/packages/patches/rust-openssl-sys-no-vendor.patch \ %D%/packages/patches/rxvt-unicode-escape-sequences.patch \ %D%/packages/patches/sbcl-clml-fix-types.patch \ - %D%/packages/patches/sbcl-geco-fix-organism-class.patch \ %D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \ %D%/packages/patches/scheme48-tests.patch \ %D%/packages/patches/scotch-build-parallelism.patch \ diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index d04312c9a1..d8083d6f7c 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -515,7 +515,7 @@ or via the @code{facter} Ruby library.") (define-public htop (package (name "htop") - (version "3.0.2") + (version "3.0.3") (source (origin (method git-fetch) @@ -523,7 +523,7 @@ or via the @code{facter} Ruby library.") (url "https://github.com/htop-dev/htop") (commit version))) (sha256 - (base32 "1qmqhbnc5yw4brd24yrp85k09770c1c00nl03mkv5pdz2bvqivk7")) + (base32 "0ylig6g2w4r3qfb16cf922iriqyn64frkzpk87vpga16kclvf08y")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (inputs @@ -3416,7 +3416,7 @@ make it a perfect utility on modern distros.") (define-public thermald (package (name "thermald") - (version "2.4") + (version "2.4.1") (source (origin (method git-fetch) @@ -3425,7 +3425,7 @@ make it a perfect utility on modern distros.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "08sy6v09drcy3nwv7za543vajn4bm8jvwk9iwwf7i9azmk47jgna")))) + (base32 "0rlac7v1b59m7gh767hkd8a0r4p001nd24786fnmryygbxynd2s6")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -3934,19 +3934,14 @@ tcpdump and snoop.") (define-public pam-mount (package (name "pam-mount") - (version "2.16") + (version "2.17") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/pam-mount/pam_mount/" - version "/pam_mount-" version ".tar.xz")) + "pam_mount-" version ".tar.xz")) (sha256 - (base32 - "1rvi4irb7ylsbhvx1cr6islm2xxw1a4b19q6z4a9864ndkm0f0mf")) - (patches - ;; Patch adding support for encrypted volumes in LUKS2 format. - ;; It comes from the Gentoo package definition for sys-auth/pam_mount. - (search-patches "pam-mount-luks2-support.patch")))) + (base32 "1q2n6a2ah6nghdn8i6ad2wj247njwb5nx48cggxknaa6lqxylidy")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 4989cd5c0c..7a5dfe0223 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -301,7 +301,7 @@ Linux kernel.") (define-public libopenmpt (package (name "libopenmpt") - (version "0.5.3") + (version "0.5.4") (source (origin (method url-fetch) @@ -309,7 +309,7 @@ Linux kernel.") (string-append "https://download.openmpt.org/archive/libopenmpt/src/" "libopenmpt-" version "+release.autotools.tar.gz")) (sha256 - (base32 "1f155yf5v57dwhzb7z0kh67lckr3yq4x8040dm54qgbxw582la77")))) + (base32 "0h7gpjx1221jwsq3k91p8zhf1h77qaxyasakc88s3g57vawhckgk")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm index 775576ff5d..203f1bfb52 100644 --- a/gnu/packages/autotools.scm +++ b/gnu/packages/autotools.scm @@ -43,7 +43,7 @@ #:use-module (ice-9 match) #:export (autoconf-wrapper)) -(define-public autoconf +(define-public autoconf-2.69 (package (name "autoconf") (version "2.69") @@ -103,6 +103,39 @@ scripts are self-contained and portable, freeing the user from needing to know anything about Autoconf or M4.") (license gpl3+))) ; some files are under GPLv2+ +(define-public autoconf-2.70 + (package + (inherit autoconf-2.69) + (version "2.70") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnu/autoconf/autoconf-" + version ".tar.xz")) + (sha256 + (base32 + "1ipckz0wr2mvhj9n3ys54fmf2aksin6bhqvzl304bn6rc1w257ps")))) + (arguments + (substitute-keyword-arguments (package-arguments autoconf-2.69) + ((#:tests? _ #f) + ;; FIXME: To run the test suite, fix all the instances where scripts + ;; generates "#! /bin/sh" shebangs. + #f) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (add-before 'check 'prepare-tests + (lambda _ + (for-each patch-shebang + (append (find-files "tests" + (lambda (file stat) + (executable-file? file))) + (find-files "bin" + (lambda (file stat) + (executable-file? file))))) + #t)))))))) + +(define-public autoconf autoconf-2.69) + (define-public autoconf-2.68 (package (inherit autoconf) (version "2.68") diff --git a/gnu/packages/aux-files/guile-launcher.c b/gnu/packages/aux-files/guile-launcher.c index 886ede2846..1dd5d77e66 100644 --- a/gnu/packages/aux-files/guile-launcher.c +++ b/gnu/packages/aux-files/guile-launcher.c @@ -1,5 +1,5 @@ /* GNU Guix --- Functional package management for GNU - Copyright 1996-1997,2000-2001,2006,2008,2011,2013,2018 + Copyright 1996-1997,2000-2001,2006,2008,2011,2013,2018,2020 Free Software Foundation, Inc. Copyright (C) 2020 Ludovic Courtès <ludo@gnu.org> @@ -19,14 +19,47 @@ along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. */ /* This file implements a variant of the 'guile' executable that does not - complain about locale issues. */ + complain about locale issues and arranges to reduce startup time by + ignoring GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH until it has + booted. */ +#include <stdlib.h> +#include <string.h> #include <locale.h> #include <libguile.h> +/* Saved values of GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH. */ +static const char *load_path, *load_compiled_path; + static void inner_main (void *unused, int argc, char **argv) { + if (load_path != NULL) + { + setenv ("GUILE_LOAD_PATH", load_path, 1); + SCM load_path_var = + scm_c_public_lookup ("guile", "%load-path"); + SCM addition = + scm_parse_path (scm_from_locale_string (load_path), SCM_EOL); + scm_variable_set_x (load_path_var, + scm_append + (scm_list_2 (scm_variable_ref (load_path_var), + addition))); + } + + if (load_compiled_path != NULL) + { + setenv ("GUILE_LOAD_COMPILED_PATH", load_compiled_path, 1); + SCM load_compiled_path_var = + scm_c_public_lookup ("guile", "%load-compiled-path"); + SCM addition = + scm_parse_path (scm_from_locale_string (load_compiled_path), SCM_EOL); + scm_variable_set_x (load_compiled_path_var, + scm_append + (scm_list_2 (scm_variable_ref (load_compiled_path_var), + addition))); + } + scm_shell (argc, argv); } @@ -40,6 +73,15 @@ main (int argc, char **argv) which is always preferable over the C locale. */ setlocale (LC_ALL, "en_US.utf8"); + const char *str; + str = getenv ("GUILE_LOAD_PATH"); + load_path = str != NULL ? strdup (str) : NULL; + str = getenv ("GUILE_LOAD_COMPILED_PATH"); + load_compiled_path = str ? strdup (str) : NULL; + + unsetenv ("GUILE_LOAD_PATH"); + unsetenv ("GUILE_LOAD_COMPILED_PATH"); + scm_install_gmp_memory_functions = 1; scm_boot_guile (argc, argv, inner_main, 0); return 0; /* never reached */ diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index a403224480..892b92dc2f 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -696,50 +696,6 @@ to not fully trusted targets. Borg is a fork of Attic.") (home-page "https://www.borgbackup.org/") (license license:bsd-3))) -(define-public attic - (package - (name "attic") - (version "0.16") - (source (origin - (method url-fetch) - (uri (pypi-uri "Attic" version)) - (sha256 - (base32 - "0b5skd36r4c0915lwpkqg5hxm49gls9pprs1b7hc40910wlcsl36")))) - (build-system python-build-system) - (arguments - `(;; The tests assume they are run as root: - ;; https://github.com/jborg/attic/issues/7 - #:tests? #f - #:phases - (modify-phases %standard-phases - (add-before - 'build 'set-openssl-prefix - (lambda* (#:key inputs #:allow-other-keys) - (setenv "ATTIC_OPENSSL_PREFIX" (assoc-ref inputs "openssl")) - #t))))) - (inputs - `(("acl" ,acl) - ("openssl" ,openssl) - ("python-msgpack" ,python-msgpack) - - ;; Attic is probably incompatible with llfuse > 0.41. - ;; These links are to discussions of llfuse compatibility from - ;; the borg project. Borg is a recent fork of attic, and attic - ;; has not been updated since the fork, so it's likely that - ;; llfuse compatibility requirements are still the same. - ;; https://github.com/borgbackup/borg/issues/642 - ;; https://github.com/borgbackup/borg/issues/643 - ("python-llfuse" ,python-llfuse-0.41))) - (synopsis "Deduplicating backup program") - (description "Attic is a deduplicating backup program. The main goal of -Attic is to provide an efficient and secure way to backup data. The data -deduplication technique used makes Attic suitable for daily backups since only -changes are stored.") - (home-page "https://attic-backup.org/") - (license license:bsd-3) - (properties `((superseded . ,borg))))) - (define-public wimlib (package (name "wimlib") diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index fa70d2773e..61aa42c420 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -47,14 +47,14 @@ (define-public fio (package (name "fio") - (version "3.24") + (version "3.25") (source (origin (method url-fetch) (uri (string-append "https://brick.kernel.dk/snaps/" "fio-" version ".tar.bz2")) (sha256 (base32 - "0qshbyqpvm01hmpkmk0v0jhjz23sngqhy291kiz38z04s2df4vxn")))) + "16r734an459cz1ax3jyhxc269i3syzdkll4qbv18wqaxpm5y34v6")))) (build-system gnu-build-system) (arguments '(#:test-target "test" diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index eac9c074a9..85ee56c539 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018, 2020 Roel Janssen <roel@gnu.org> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com> +;;; Copyright © 2019, 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; Copyright © 2020 Peter Lo <peterloleungyau@gmail.com> ;;; Copyright © 2020 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> @@ -72,6 +72,35 @@ database, assembled using data from REACTOME.") (license license:cc-by4.0))) +(define-public r-bluster + (package + (name "r-bluster") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "bluster" version)) + (sha256 + (base32 + "0izrf82m5znyrgai5y5jss4k2brabh4ajxdvnlwwc92l5bw7jp61")))) + (properties `((upstream-name . "bluster"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocneighbors" ,r-biocneighbors) + ("r-biocparallel" ,r-biocparallel) + ("r-igraph" ,r-igraph) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp) + ("r-s4vectors" ,r-s4vectors))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/bluster") + (synopsis "Clustering algorithms for Bioconductor") + (description"This package wraps common clustering algorithms in an easily +extended S4 framework. Backends are implemented for hierarchical, k-means +and graph-based clustering. Several utilities are also provided to compare +and evaluate clustering results.") + (license license:gpl3))) + (define-public r-bsgenome-celegans-ucsc-ce6 (package (name "r-bsgenome-celegans-ucsc-ce6") @@ -748,13 +777,13 @@ annotations.") (define-public r-ideoviz (package (name "r-ideoviz") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IdeoViz" version)) (sha256 (base32 - "1ndj14qhpgidjb4qsga80ghqzz1x8kvy2gy1bvvgwlkfxa62rn50")))) + "1k5c0skr6pvpcvkak9f0a088w5wsx4fl3jb9a76gyyni4nkj7djq")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -1077,13 +1106,13 @@ package @code{affy}.") (define-public r-coverageview (package (name "r-coverageview") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CoverageView" version)) (sha256 (base32 - "1fcz7pkffz5l3jdxb9glji2zdmr6nx67h6vfpr2yi8n3slg2hrrj")))) + "1k89gzqhd8ca8s9gk5bfzringnc5nayqbwzwwy35fls1cg96qmsj")))) (build-system r-build-system) (propagated-inputs `(("r-s4vectors" ,r-s4vectors) @@ -1104,13 +1133,13 @@ how the coverage distributed across the genome.") (define-public r-cummerbund (package (name "r-cummerbund") - (version "2.30.0") + (version "2.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "cummeRbund" version)) (sha256 (base32 - "1av7yfxcq1wwbqfqcz7caiz5kf6kg5wq9qcg5v6yccihclzwvxjc")))) + "1x7rby50api1c66al6a0i92q82ydjmh3h8l2k7hj0ffpn8c5pdgj")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -1170,14 +1199,14 @@ across the entire multi-'omics experiment.") (define-public r-biocversion (package (name "r-biocversion") - (version "3.11.1") + (version "3.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocVersion" version)) (sha256 (base32 - "1rrzx3dqds0jlj1bmjc744wiamb2hssbh3jfxz1s9jp4cvnwrpmz")))) + "1cj9swyf4zbkdq45bhw0kymh2aghkwimxjlfj5r2j7kdiyh6n3rk")))) (properties `((upstream-name . "BiocVersion"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/BiocVersion/") @@ -1190,13 +1219,13 @@ of Bioconductor.") (define-public r-biocgenerics (package (name "r-biocgenerics") - (version "0.34.0") + (version "0.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocGenerics" version)) (sha256 (base32 - "15nvqyh2gx5zkn1krbs5c4rhw5642bijdfsf2rgic70gzr05cksk")))) + "1y9pgangz2f0n9v3zj8brz8bv7a1yjsncdnd5h1l7zv0c0j9fh9q")))) (properties `((upstream-name . "BiocGenerics"))) (build-system r-build-system) @@ -1210,14 +1239,14 @@ packages.") (define-public r-affycomp (package (name "r-affycomp") - (version "1.64.0") + (version "1.66.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affycomp" version)) (sha256 (base32 - "0zg8dshas5b2ny4pnxxxqihnr4l20666ivrgglb939a23mplgps0")))) + "106gz4rami04r0ffc7rxkrv92s3yrcnlqnyykd5s8lrkndbihrpk")))) (properties `((upstream-name . "affycomp"))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase))) @@ -1231,14 +1260,14 @@ measures for Affymetrix Oligonucleotide Arrays.") (define-public r-affycompatible (package (name "r-affycompatible") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AffyCompatible" version)) (sha256 (base32 - "0394sr4spafhfypjsafwjr0y0zsgv52ajdcyvsmkdk7375898lqd")))) + "0pcs51miy45bky26i1d4iarbjh569gssb5g4fr26bzgjmq19yl7x")))) (properties `((upstream-name . "AffyCompatible"))) (build-system r-build-system) @@ -1259,14 +1288,14 @@ Command Console} (AGCC)-compatible sample annotation files.") (define-public r-affycontam (package (name "r-affycontam") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affyContam" version)) (sha256 (base32 - "1dh5c3blk2dl9kg13y6snplnx61x2f9hvp5lc7jmg25xk916517i")))) + "0pi5fll5868sb80vb9kbymz6gkjv58f0abk6zwn407cnyjhr342b")))) (properties `((upstream-name . "affyContam"))) (build-system r-build-system) (propagated-inputs @@ -1284,14 +1313,14 @@ problems in CEL-level data to help evaluate performance of quality metrics.") (define-public r-affycoretools (package (name "r-affycoretools") - (version "1.60.1") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affycoretools" version)) (sha256 (base32 - "0cnb54b3kmg9rnycvaz949bdali9n98qzrw7gwka6abmg1lv232s")))) + "0jacgwylg7wjw3xk3ga2sb1wkdklm5glamhbmqgvzm5kdjnl0rv0")))) (properties `((upstream-name . "affycoretools"))) (build-system r-build-system) (propagated-inputs @@ -1326,14 +1355,14 @@ to streamline the more common analyses that a Biostatistician might see.") (define-public r-affxparser (package (name "r-affxparser") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affxparser" version)) (sha256 (base32 - "0d4hq1w0a3dm4bg9qsv7wqrbv2y7b9gllxfmnqs9n2nnwmvgi8yq")))) + "13h4iwskvgwgxid9f60gzb1zndgbhdlbn9ixv5waihy1jkcbn24p")))) (properties `((upstream-name . "affxparser"))) (build-system r-build-system) (home-page "https://github.com/HenrikBengtsson/affxparser") @@ -1354,21 +1383,21 @@ structure.") (define-public r-annotate (package (name "r-annotate") - (version "1.66.0") + (version "1.68.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annotate" version)) (sha256 (base32 - "1ivszqknryq6n5a85z8zj12fvgcs6zz3zlza8q08pl6cs4m5rm4w")))) + "1rql591x56532m8n4axdkfkhkbcsz5hfrf7271s0lmkvy84i7z6l")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) ("r-dbi" ,r-dbi) - ("r-rcurl" ,r-rcurl) + ("r-httr" ,r-httr) ("r-xml" ,r-xml) ("r-xtable" ,r-xtable))) (home-page @@ -1381,14 +1410,14 @@ microarrays.") (define-public r-hpar (package (name "r-hpar") - (version "1.30.0") + (version "1.32.1") (source (origin (method url-fetch) (uri (bioconductor-uri "hpar" version)) (sha256 (base32 - "1jq0qw7wq3426cp004divywjm3ryixkykcmwlhrri13agz6rx3r9")))) + "0h10b0fyblpsnxj60rpbk99z7snrkkb5jssmf0v27s6d445jq2zr")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -1401,14 +1430,14 @@ the Human Protein Atlas project.") (define-public r-regioner (package (name "r-regioner") - (version "1.20.1") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "regioneR" version)) (sha256 (base32 - "0bzjwzj5mvb49wgvs3gd3jfpm7s0zfkca763i65i7m994lgvz33c")))) + "0c2khfyrgy3y68cj6b07s91hplabbj70xwdgwrf2bsd9h6gknjdi")))) (properties `((upstream-name . "regioneR"))) (build-system r-build-system) (propagated-inputs @@ -1432,14 +1461,14 @@ region sets and other genomic features.") (define-public r-reportingtools (package (name "r-reportingtools") - (version "2.28.0") + (version "2.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ReportingTools" version)) (sha256 (base32 - "1ig1h224silbdbdr0j9j9sysp9l9dzpcsjzn8jp57h3gh4pdqbfx")))) + "0gkshdhx44yjffqf1xmvik7j5hlhszp1n9ckanaws9ky3iia8j31")))) (properties `((upstream-name . "ReportingTools"))) (build-system r-build-system) @@ -1482,14 +1511,14 @@ browser.") (define-public r-geneplotter (package (name "r-geneplotter") - (version "1.66.0") + (version "1.68.0") (source (origin (method url-fetch) (uri (bioconductor-uri "geneplotter" version)) (sha256 (base32 - "1y494da1llmrvn3qm7akwgwjazvpffabi8llw3fbday14cay1br5")))) + "1f8nr60n1nig1gdy85wqdhpzxvp9r4chygxm8xpy882mdvfv6rqx")))) (build-system r-build-system) (propagated-inputs `(("r-annotate" ,r-annotate) @@ -1507,14 +1536,14 @@ browser.") (define-public r-oligoclasses (package (name "r-oligoclasses") - (version "1.50.4") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "oligoClasses" version)) (sha256 (base32 - "1d8c3i8v8kcm1afgpz6zc1iysip7993y8456cqxl37f7n6n0ax67")))) + "19p6h0cgnma5md5mm9bn6rxfhr0a9znljgdbvsqybms6asvh18gy")))) (properties `((upstream-name . "oligoClasses"))) (build-system r-build-system) (propagated-inputs @@ -1542,14 +1571,14 @@ packages.") (define-public r-oligo (package (name "r-oligo") - (version "1.52.1") + (version "1.54.1") (source (origin (method url-fetch) (uri (bioconductor-uri "oligo" version)) (sha256 (base32 - "1gpvr33pwzz1glzajcipvjcplb7yxvjj00q0ybqcc3wa47bhfkwd")))) + "0cpfkvxpni7an361li0k0qlfcraj7z9zv71r25dbly5kp3dql7k3")))) (properties `((upstream-name . "oligo"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -1578,14 +1607,14 @@ Affymetrix (CEL files) and NimbleGen arrays (XYS files).") (define-public r-qvalue (package (name "r-qvalue") - (version "2.20.0") + (version "2.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "qvalue" version)) (sha256 (base32 - "1hndmdr9niagbr4ry0vbhffvjzjg9im27kdbn0sa774k6r5b4z3f")))) + "0xbww16lz0k2p4mmq1aqd7iz7d8rvzgw1gm55jy6xbx19ymj64i5")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -1606,32 +1635,110 @@ problems in genomics, brain imaging, astrophysics, and data mining.") ;; Any version of the LGPL. (license license:lgpl3+))) +(define r-rcppnumerical + (package + (name "r-rcppnumerical") + (version "0.4-0") + (source (origin + (method url-fetch) + (uri (cran-uri "RcppNumerical" version)) + (sha256 + (base32 + "1a92fql6mijhnr1kxkcxwivf95pk9lhgmhzkshs51h0ybfv5krik")))) + (properties `((upstream-name . "RcppNumerical"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp) + ("r-rcppeigen" ,r-rcppeigen))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/yixuan/RcppNumerical") + (synopsis "Rcpp integration for numerical computing libraries") + (description "This package provides a collection of open source libraries +for numerical computing (numerical integration, optimization, etc.) and their +integration with @code{Rcpp}.") + (license license:gpl2+))) + +(define-public r-apeglm + (package + (name "r-apeglm") + (version "1.12.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "apeglm" version)) + (sha256 + (base32 + "0pix1fhxk2q89p2745fgsmxwics9rf10l392qhw3rw6v6ynhims2")))) + (properties `((upstream-name . "apeglm"))) + (build-system r-build-system) + (propagated-inputs + `(("r-emdbook" ,r-emdbook) + ("r-genomicranges" ,r-genomicranges) + ("r-rcpp" ,r-rcpp) + ("r-rcppeigen" ,r-rcppeigen) + ("r-rcppnumerical" ,r-rcppnumerical) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/apeglm") + (synopsis "Approximate posterior estimation for GLM coefficients") + (description "This package provides Bayesian shrinkage estimators for +effect sizes for a variety of GLM models, using approximation of the +posterior for individual coefficients.") + (license license:gpl2))) + +(define-public r-greylistchip + (package + (name "r-greylistchip") + (version "1.22.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "GreyListChIP" version)) + (sha256 + (base32 + "1d1yvza1aw3vs3di6mrra5l52ig0p9bpzprrqvknjaz5i4yb8ma6")))) + (properties `((upstream-name . "GreyListChIP"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bsgenome" ,r-bsgenome) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-mass" ,r-mass) + ("r-rsamtools" ,r-rsamtools) + ("r-rtracklayer" ,r-rtracklayer) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "https://bioconductor.org/packages/GreyListChIP") + (synopsis "Greylist artefact regions based on ChIP inputs") + (description "This package identifies regions of ChIP experiments with high +signal in the input, that lead to spurious peaks during peak calling.") + (license license:artistic2.0))) + (define-public r-diffbind (package (name "r-diffbind") - (version "2.16.2") + (version "3.0.8") (source (origin (method url-fetch) (uri (bioconductor-uri "DiffBind" version)) (sha256 (base32 - "11y9kigdikqcd0cnksh306nsaadak0kgivk7773mv3yszrxxwzj1")))) + "11svdfjp4faswrmzwkryzhd0ji2pl9vwsd35lvbfjgakbpxnyn8a")))) (properties `((upstream-name . "DiffBind"))) (build-system r-build-system) - (inputs - `(("zlib" ,zlib))) (propagated-inputs `(("r-amap" ,r-amap) + ("r-apeglm" ,r-apeglm) + ("r-ashr" ,r-ashr) ("r-biocparallel" ,r-biocparallel) ("r-deseq2" ,r-deseq2) ("r-dplyr" ,r-dplyr) - ("r-edger" ,r-edger) ("r-genomicalignments" ,r-genomicalignments) ("r-genomicranges" ,r-genomicranges) ("r-ggplot2" ,r-ggplot2) ("r-ggrepel" ,r-ggrepel) ("r-gplots" ,r-gplots) + ("r-greylistchip" ,r-greylistchip) ("r-iranges" ,r-iranges) ("r-lattice" ,r-lattice) ("r-limma" ,r-limma) @@ -1687,14 +1794,14 @@ processing to visualization and annotation.") (define-public r-multtest (package (name "r-multtest") - (version "2.44.0") + (version "2.46.0") (source (origin (method url-fetch) (uri (bioconductor-uri "multtest" version)) (sha256 (base32 - "12li7nzzygm3sjfx472095irqpawixk48d0k591wlnrms6sxchx2")))) + "06vixd81nh3nxrc6km73p7c4bwln1zm39fa9gp7gj272vsxkx53q")))) (build-system r-build-system) (propagated-inputs `(("r-survival" ,r-survival) @@ -1725,13 +1832,13 @@ expressed genes in DNA microarray experiments.") (define-public r-graph (package (name "r-graph") - (version "1.66.0") + (version "1.68.0") (source (origin (method url-fetch) (uri (bioconductor-uri "graph" version)) (sha256 (base32 - "15v0nx9gzpszmdn5lil1s1y8qfmsirlznh56wcyqq4sxwjbyjn9g")))) + "0wr7j2pasvi3srvg9z3n034ljk8mldcixny6b3kmqbqm8dqy9py4")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics))) @@ -1823,36 +1930,31 @@ determining dependencies between variables, code improvement suggestions.") (define-public r-chippeakanno (package (name "r-chippeakanno") - (version "3.22.4") + (version "3.24.1") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPpeakAnno" version)) (sha256 (base32 - "0wxgjdikinkqj7jvs2725ak0291q6zhikyf1c93w8cngwvd9i1gq")))) + "0qdkwjv8s46d1kmgg2chijv7yzy9sv49kiks18w8x2z89prn15gj")))) (properties `((upstream-name . "ChIPpeakAnno"))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) - ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-biocmanager" ,r-biocmanager) ("r-biomart" ,r-biomart) ("r-biostrings" ,r-biostrings) - ("r-bsgenome" ,r-bsgenome) ("r-dbi" ,r-dbi) - ("r-delayedarray" ,r-delayedarray) ("r-ensembldb" ,r-ensembldb) ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicalignments" ,r-genomicalignments) ("r-genomicfeatures" ,r-genomicfeatures) ("r-genomicranges" ,r-genomicranges) - ("r-go-db" ,r-go-db) + ("r-ggplot2" ,r-ggplot2) ("r-graph" ,r-graph) - ("r-idr" ,r-idr) ("r-iranges" ,r-iranges) - ("r-limma" ,r-limma) + ("r-keggrest" ,r-keggrest) ("r-matrixstats" ,r-matrixstats) ("r-multtest" ,r-multtest) ("r-rbgl" ,r-rbgl) @@ -1860,7 +1962,6 @@ determining dependencies between variables, code improvement suggestions.") ("r-rsamtools" ,r-rsamtools) ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors) - ("r-seqinr" ,r-seqinr) ("r-summarizedexperiment" ,r-summarizedexperiment) ("r-venndiagram" ,r-venndiagram))) (native-inputs @@ -1878,15 +1979,42 @@ for finding the peaks with bi-directional promoters with summary statistics enrichedGO (addGeneIDs).") (license license:gpl2+))) +(define-public r-matrixgenerics + (package + (name "r-matrixgenerics") + (version "1.2.0") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "MatrixGenerics" version)) + (sha256 + (base32 + "1a3sw79185d6rld3wlrynkzcbp754a7jkracrmvn0ra964ia8zvc")))) + (properties + `((upstream-name . "MatrixGenerics"))) + (build-system r-build-system) + (propagated-inputs + `(("r-matrixstats" ,r-matrixstats))) + (home-page "https://bioconductor.org/packages/MatrixGenerics") + (synopsis "S4 generic summary statistic functions for matrix-like objects") + (description + "This package provides S4 generic functions modeled after the +@code{matrixStats} API for alternative matrix implementations. Packages with +alternative matrix implementation can depend on this package and implement the +generic functions that are defined here for a useful set of row and column +summary statistics. Other package developers can import this package and +handle a different matrix implementations without worrying about +incompatibilities.") + (license license:artistic2.0))) + (define-public r-marray (package (name "r-marray") - (version "1.66.0") + (version "1.68.0") (source (origin (method url-fetch) (uri (bioconductor-uri "marray" version)) (sha256 - (base32 "1sym3nis5qzg05b2in83xr019mvz8czy8qvispc0hzsq42yng6kd")))) + (base32 "1kkgv166gzvlj8p58vzam3hcaz8mypi3hhpdsjhaszwg6nav4ray")))) (build-system r-build-system) (propagated-inputs `(("r-limma" ,r-limma))) @@ -1900,12 +2028,12 @@ normalization and quality checking.") (define-public r-cghbase (package (name "r-cghbase") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHbase" version)) (sha256 - (base32 "0gfqqa9rs5hid53ihlky88qndgrwxxz0s6j7s505f660dd5nzlkf")))) + (base32 "10zhjmls3f63cj0bnywjb97zhrj7x3xsq6yjhvf5cclxc4kcrcx4")))) (properties `((upstream-name . "CGHbase"))) (build-system r-build-system) (propagated-inputs @@ -1920,12 +2048,12 @@ the @code{arrayCGH} packages.") (define-public r-cghcall (package (name "r-cghcall") - (version "2.50.0") + (version "2.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHcall" version)) (sha256 - (base32 "1dz6sag8khl18vkb97b5w6fk6k9s7s9xxnc467dd3bmhmajlmrrg")))) + (base32 "1a6k87xfm79wnsc30k5aziakv51h4dd9zqw81q8bd72hc3fpz8ba")))) (properties `((upstream-name . "CGHcall"))) (build-system r-build-system) (propagated-inputs @@ -1943,12 +2071,12 @@ the @code{arrayCGH} packages.") (define-public r-qdnaseq (package (name "r-qdnaseq") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "QDNAseq" version)) (sha256 - (base32 "1ji9pl2r1idyj3qzggj7qd2kqx31i6b3igwk2hqjb8qzkyb37p86")))) + (base32 "1njka1ldaj12id3m2z8ghlrm2lg0n5pxsxyv5gpjnsiabnnaw6ph")))) (properties `((upstream-name . "QDNAseq"))) (build-system r-build-system) (propagated-inputs @@ -1976,14 +2104,14 @@ respectively.") (define-public r-bayseq (package (name "r-bayseq") - (version "2.22.0") + (version "2.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "baySeq" version)) (sha256 (base32 - "1x0d34pqv9s15nmmxsfbw0ycxbf5348mi30ahycarjkjsyzycymj")))) + "1496inlw0x4mfy3g2v7j9ips96sf7576ydnfn6hvn2m6rz2ls215")))) (properties `((upstream-name . "baySeq"))) (build-system r-build-system) (propagated-inputs @@ -2002,14 +2130,14 @@ more complex hypotheses) via empirical Bayesian methods.") (define-public r-chipcomp (package (name "r-chipcomp") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPComp" version)) (sha256 (base32 - "0780kj9vbzdhf2jkfb1my8m58pcdwk6jqw6zfng82g46jias98cp")))) + "0dbypfgys74snmyf982183ilzg6vamfw1d5y0lp5p8zxbffh2xl7")))) (properties `((upstream-name . "ChIPComp"))) (build-system r-build-system) (propagated-inputs @@ -2036,14 +2164,14 @@ datasets.") (define-public r-riboprofiling (package (name "r-riboprofiling") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RiboProfiling" version)) (sha256 (base32 - "0s30m96dbbrzbywz3wai5ar0nsshb16lq101nyl20w1bk7sk2bha")))) + "112071w7aw7cwckipq0dll1lssl7pwafma4v9jj9sx12rjcj57xg")))) (properties `((upstream-name . "RiboProfiling"))) (build-system r-build-system) (propagated-inputs @@ -2077,14 +2205,14 @@ assessment, principal component analysis on codon coverage.") (define-public r-riboseqr (package (name "r-riboseqr") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "riboSeqR" version)) (sha256 (base32 - "04a4dkmacd6xy55m84amxa0fspbc4kgg9r9k7bc3wrxswk77ccxk")))) + "07i64gch14rsbjlfv17s689wzlqbi7hcqhcw21pp6cw8bvhvd5xr")))) (properties `((upstream-name . "riboSeqR"))) (build-system r-build-system) (propagated-inputs @@ -2103,16 +2231,16 @@ parsing of genetic sequencing data from ribosome profiling experiments.") (license license:gpl3))) (define-public r-interactionset - (package + (package ;BROKEN (name "r-interactionset") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "InteractionSet" version)) (sha256 (base32 - "1nsivm9j0mzkfhwqsa2y9gxxdbaplg4z8vn5dfvls3nrihnqpk4v")))) + "14lp23b298wr3r7ggcfvas0xlf1866cpla0rv7dz589f50z6bj31")))) (properties `((upstream-name . "InteractionSet"))) (build-system r-build-system) @@ -2139,14 +2267,14 @@ experiments.") (define-public r-genomicinteractions (package (name "r-genomicinteractions") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicInteractions" version)) (sha256 (base32 - "0fg66v31nfajb40da6gxpigm2z11ywkdijs7npvc1mr62ynx9qmy")))) + "0ad0a5cadchx1rkqj4cc8k0y1zf34jgp1406hvik5zabr7xijkbd")))) (properties `((upstream-name . "GenomicInteractions"))) (build-system r-build-system) @@ -2180,14 +2308,14 @@ information and producing various plots and statistics.") (define-public r-ctc (package (name "r-ctc") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ctc" version)) (sha256 (base32 - "0lv126xj092hps3f3dsv7hasdyy26wcx8npl9idq2l4h9addk6v6")))) + "1nwlphbfba3w8ixck02k5c84qm4flnp9fd68li0jn5a08qi9gmyp")))) (build-system r-build-system) (propagated-inputs `(("r-amap" ,r-amap))) (home-page "https://bioconductor.org/packages/ctc/") @@ -2200,14 +2328,14 @@ trees and clusters to other programs.") (define-public r-goseq (package (name "r-goseq") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "goseq" version)) (sha256 (base32 - "1iyri4rrchzsn8p6wjxr4k30d3cqx3km5mnd9hkfm5d0s7fjzlym")))) + "18fs3m4kl3zahn42j20rjvxy83irscgqx0dvid7va4majvsib509")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -2226,20 +2354,24 @@ defined categories which are over/under represented in RNA-seq data.") (define-public r-glimma (package (name "r-glimma") - (version "1.16.0") + (version "2.0.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Glimma" version)) (sha256 (base32 - "1bxfgwjqb9p400a5a5q6p17kcnl3ddz090llihkfih9kyxii9n4y")))) + "0gy30v30lw27frhmw39pzacqzrv2vwj5rsp6gb3yifllrahdiffv")))) (properties `((upstream-name . "Glimma"))) (build-system r-build-system) (propagated-inputs - `(("r-edger" ,r-edger) + `(("r-deseq2" ,r-deseq2) + ("r-edger" ,r-edger) + ("r-htmlwidgets" ,r-htmlwidgets) ("r-jsonlite" ,r-jsonlite) - ("r-s4vectors" ,r-s4vectors))) + ("r-limma" ,r-limma) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://github.com/Shians/Glimma") @@ -2255,14 +2387,14 @@ information.") (define-public r-rots (package (name "r-rots") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ROTS" version)) (sha256 (base32 - "1mqhi1rfiw7mhiyify7vm3w17p7sc76wjda3ak6690hrc3gsm3cm")))) + "0qk0gfhgr14g13zlfyf5101b5s8cma7j3r8a92q93h0axy8ka23n")))) (properties `((upstream-name . "ROTS"))) (build-system r-build-system) (propagated-inputs @@ -2279,14 +2411,14 @@ in omics data.") (define-public r-plgem (package (name "r-plgem") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "plgem" version)) (sha256 (base32 - "1fs5nbjnrm7x23y7d9krq56r1kzxka40ca1rs6sq70mn6syhj90a")))) + "039gqwsm1v6q8v8b248nm8g9gnsk379mfx65rbgdmh3chsd8pm8a")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -2304,14 +2436,14 @@ genes or proteins in these datasets.") (define-public r-inspect (package (name "r-inspect") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "INSPEcT" version)) (sha256 (base32 - "1yyglkdc3ww2jzswhcxk9g1imydfm39krl87as5l9fbm7mv3vd4z")))) + "1jymvi5mf7vhs58zfh290pacfswgvkw09rmbirmr24kxcgl30483")))) (properties `((upstream-name . "INSPEcT"))) (build-system r-build-system) (propagated-inputs @@ -2351,14 +2483,14 @@ modeling the rates that determines changes in mature mRNA levels.") (define-public r-dnabarcodes (package (name "r-dnabarcodes") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNABarcodes" version)) (sha256 (base32 - "03y39hjpkb05fnawy3k797bph1iydi1blmpgyy4244zjgk6rs5x7")))) + "0zzf6xgg6k1gdig8zvpawck2bgmamsc0k43j4pl4xsz9an6dmzbg")))) (properties `((upstream-name . "DNABarcodes"))) (build-system r-build-system) (propagated-inputs @@ -2380,14 +2512,14 @@ demultiplexed, i.e. assigned to their original reference barcode.") (define-public r-ruvseq (package (name "r-ruvseq") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RUVSeq" version)) (sha256 (base32 - "0yqs9xgyzw3cwb4l7zjl1cjgbsjp05qrqnwyvh7q81wdp7x5p55x")))) + "1anrybyrzpajr5434svyfbaypjai6x0ifsmqvjgimmxq3xqhv0jh")))) (properties `((upstream-name . "RUVSeq"))) (build-system r-build-system) (propagated-inputs @@ -2408,21 +2540,20 @@ samples.") (define-public r-biocneighbors (package (name "r-biocneighbors") - (version "1.6.0") + (version "1.8.2") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocNeighbors" version)) (sha256 (base32 - "14cyyrwxi82xm5wy6bb1176zg322ll67wjrw9vvi4fhfs1k4wqxy")))) + "19gyl917lf5ydy5hgj0hnc388rw5sbj83awav9js2yr2zmbgn4d7")))) (properties `((upstream-name . "BiocNeighbors"))) (build-system r-build-system) (propagated-inputs `(("r-biocparallel" ,r-biocparallel) ("r-matrix" ,r-matrix) ("r-rcpp" ,r-rcpp) - ("r-rcppannoy" ,r-rcppannoy) ("r-rcpphnsw" ,r-rcpphnsw) ("r-s4vectors" ,r-s4vectors))) (native-inputs @@ -2441,14 +2572,14 @@ achieved for all methods using the BiocParallel framework.") (define-public r-biocsingular (package (name "r-biocsingular") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocSingular" version)) (sha256 (base32 - "0368a9xj4cvicqkxmhh12ln46q9gnxla70s1dqrxxfn3b6k525ih")))) + "1hczix1h14d19hzcsngqkqqnqkprs41phzlcird8haxnw9bs03ni")))) (properties `((upstream-name . "BiocSingular"))) (build-system r-build-system) (propagated-inputs @@ -2475,14 +2606,14 @@ possible, parallelization is achieved using the BiocParallel framework.") (define-public r-destiny (package (name "r-destiny") - (version "3.2.0") + (version "3.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "destiny" version)) (sha256 (base32 - "0ik5vwxz9cci3glwgb5ff03sfyr4sjcp8ckfymlgmlm6fz8cp21n")))) + "1i7f5q02zvpfaxhd76fbw0h1wfgjphyn5hrmrjpvlnv4ardzsir2")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -2493,7 +2624,6 @@ possible, parallelization is achieved using the BiocParallel framework.") ("r-irlba" ,r-irlba) ("r-knn-covertree" ,r-knn-covertree) ("r-matrix" ,r-matrix) - ("r-nbconvertr" ,r-nbconvertr) ("r-pcamethods" ,r-pcamethods) ("r-proxy" ,r-proxy) ("r-rcpp" ,r-rcpp) @@ -2520,14 +2650,14 @@ maps.") (define-public r-savr (package (name "r-savr") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "savR" version)) (sha256 (base32 - "17jdnr47ivblfspr4b32z9fds1fqiiwsi2z6r524g1v4944p8w5a")))) + "1vha9b7gndwjzvrzr1hdhv3wc6a1s2n9grxwfd78yb2lkysf4hic")))) (properties `((upstream-name . "savR"))) (build-system r-build-system) (propagated-inputs @@ -2546,14 +2676,14 @@ Viewer (SAV) files, access data, and generate QC plots.") (define-public r-chipexoqual (package (name "r-chipexoqual") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPexoQual" version)) (sha256 (base32 - "02rsf1rvm0p6dn18zq2a4hpvpd9m2i5rziyi4zm8j43qvs8xhafp")))) + "15r5jgkfwwfqpw4v4q2ddmglm3bfw002nnbnzn1s0v2b1w3bgiag")))) (properties `((upstream-name . "ChIPexoQual"))) (build-system r-build-system) (propagated-inputs @@ -2586,13 +2716,13 @@ sequencing data.") (define-public r-copynumber (package (name "r-copynumber") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "copynumber" version)) (sha256 (base32 - "1b7v6xijpi2mir49cf83gpadhxm5pnbs6d8q8qga7y06hn9jx6my")))) + "00fyfy3kpz33v1hqisd5m5xdazwjmjrfj8ssbf6p9m3am2ar23gm")))) (build-system r-build-system) (propagated-inputs `(("r-s4vectors" ,r-s4vectors) @@ -2609,14 +2739,14 @@ penalized least squares regression method.") (define-public r-dnacopy (package (name "r-dnacopy") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNAcopy" version)) (sha256 (base32 - "0jg8lr83drzfs5h73c7mk7x99vj99a2p2s1sqjc4gicn927xvhza")))) + "0km5af4iw8a0m6by933lgdi5246jafyfxk6fsqdiwg07v9wxw5hc")))) (properties `((upstream-name . "DNAcopy"))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -2709,14 +2839,14 @@ and regression inferences from RNA-sequencing data.") (define-public r-ebseq (package (name "r-ebseq") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EBSeq" version)) (sha256 (base32 - "0s9r1xxpfm5794ipjm5a5c8gfxicc6arma6f74aaz8zi5y5q9x5f")))) + "1x2489xaqg85v7n3yhqs0nh9ha6dn4m167dkc6akzig4xivwjjny")))) (properties `((upstream-name . "EBSeq"))) (build-system r-build-system) (propagated-inputs @@ -2733,13 +2863,13 @@ gene and isoform level using RNA-seq data") (define-public r-karyoploter (package (name "r-karyoploter") - (version "1.14.1") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "karyoploteR" version)) (sha256 (base32 - "1wlnzkq58baqj9854nzf5rbglchb2xy4wsp3s0q8xfq8v0p3baxf")))) + "1agw49mckm3g33igqdp9lr8a4ky8nhivaxrs7d00dvzk0diqwdb2")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -2771,14 +2901,14 @@ coordinates.") (define-public r-lpsymphony (package (name "r-lpsymphony") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "lpsymphony" version)) (sha256 (base32 - "072ikmd267n18hrj7dip4dp1vb5dinj82p3h95n2jaf04h9hwfn4")))) + "0f9qjfv7rp1y3mwscnjz3pph7m40zgz55xcdhyii6k1iw2vyaxx9")))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -2801,14 +2931,14 @@ to install interface to SYMPHONY.") (define-public r-ihw (package (name "r-ihw") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IHW" version)) (sha256 (base32 - "169ir0k1gygdh1wybwa0drdxnhrdrlyzzy0rkygi7jsirn69m74j")))) + "04szg3bj5cjixxcp8j3inmj0fzk2mg8gp2w2b33x0im8ik24qiw0")))) (properties `((upstream-name . "IHW"))) (build-system r-build-system) (propagated-inputs @@ -2833,14 +2963,14 @@ independent of the p-value under the null hypothesis.") (define-public r-icobra (package (name "r-icobra") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "iCOBRA" version)) (sha256 (base32 - "0cvklagby3i221dlhyb51cciv0b3ch4a8z0wpm67q5n6n3k0cil1")))) + "0knqvvfi5y53jk8s2g2bqgxnh2pbdf38676fk7pkdp1r2j6cbi3s")))) (properties `((upstream-name . "iCOBRA"))) (build-system r-build-system) (propagated-inputs @@ -2869,14 +2999,14 @@ interactive exploration of results.") (define-public r-mast (package (name "r-mast") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MAST" version)) (sha256 (base32 - "12d0q2fbq9d5jgyccmfv0cghv282s0j86wjfbnjpdf73fdrp6brr")))) + "11qr7n9i4masqz0yzikddchyn223m8dy6zv461dly07fd43qi9mn")))) (properties `((upstream-name . "MAST"))) (build-system r-build-system) (propagated-inputs @@ -2904,14 +3034,14 @@ single cell assay data.") (define-public r-monocle (package (name "r-monocle") - (version "2.16.0") + (version "2.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "monocle" version)) (sha256 (base32 - "1vziidavlyhixmx6j7lf29qx8xcjwrc9q3x2f63gcff41q3jf9xd")))) + "1k3hwi9aspjy75arigg7i1w7ygf112y12cndibf2bhpz2phzwslx")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -3023,14 +3153,14 @@ qPCR data, but could be used with other types as well.") (define-public r-noiseq (package (name "r-noiseq") - (version "2.31.0") + (version "2.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "NOISeq" version)) (sha256 (base32 - "0lg3za0km6v9l6dxigbxx6nsx9y6m3dyzh9srngi53s8387vhj33")))) + "08qlavakclgzk345bliam4cfjhsy39n4s6m1biqpq94n9qp00x8f")))) (properties `((upstream-name . "NOISeq"))) (build-system r-build-system) (propagated-inputs @@ -3050,14 +3180,14 @@ assumptions.") (define-public r-scdd (package (name "r-scdd") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "scDD" version)) (sha256 (base32 - "19q01jksxpv4p26wp2c6faa4fffkjnqlbcds2x955pk35jkqknxx")))) + "07l07fq5633ccq5d3l35dm34pwvaqfa3b3qwpn5v5xn99f5hfz0g")))) (properties `((upstream-name . "scDD"))) (build-system r-build-system) (propagated-inputs @@ -3088,14 +3218,14 @@ distributions.") (define-public r-scone (package (name "r-scone") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "scone" version)) (sha256 (base32 - "12hcmbpncm0l1yxhm3sgkqqfri7s5qc46ikv5qcj8pw5a42rkx3g")))) + "1lnyxcrw3kn5gi3n59dwdhkqps58cjxfknsjsj53qz5rv8iiqz73")))) (build-system r-build-system) (propagated-inputs `(("r-aroma-light" ,r-aroma-light) @@ -3130,14 +3260,14 @@ high-throughput analyses.") (define-public r-geoquery (package (name "r-geoquery") - (version "2.56.0") + (version "2.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GEOquery" version)) (sha256 (base32 - "0sap1dsa3k3qpv5z5y3cimxyhbm8qai87gqn3g1w3hwlcqsss92m")))) + "1jzhgnd404wkz978vbqzwbgixr7yk98c7s9q1fzlyax4f8l0cpi4")))) (properties `((upstream-name . "GEOquery"))) (build-system r-build-system) (propagated-inputs @@ -3163,14 +3293,14 @@ the bridge between GEO and BioConductor.") (define-public r-illuminaio (package (name "r-illuminaio") - (version "0.30.0") + (version "0.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "illuminaio" version)) (sha256 (base32 - "0i587r1v5aa25w0jm1zvh7spc1gqmvza49i2kv00g1qzj8whq67c")))) + "1yqm2fqw5ka7qywbal3p7axlwm1r0wibsr33n5xjma1dl9pi8fay")))) (build-system r-build-system) (propagated-inputs `(("r-base64" ,r-base64))) @@ -3184,14 +3314,14 @@ files, including IDAT.") (define-public r-siggenes (package (name "r-siggenes") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "siggenes" version)) (sha256 (base32 - "0i4y1hgq1ljxkf6sypb6c8yp412a8q5v5z68cx1zrgxnccvp0mfy")))) + "08wi2i6pqx06v13533y3mpli5fb637h0xfwcwy67ya9j2ygypv7w")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -3210,14 +3340,14 @@ Bayes Analyses of Microarrays} (EBAM).") (define-public r-bumphunter (package (name "r-bumphunter") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bumphunter" version)) (sha256 (base32 - "04y6spdx89j3bsq2xniqd3sbfmakwc0klbpzjlp1q2xs9kywr4dq")))) + "0hfl820kfxydv5kpgyly7sibv2sp6dqsmc78qm33n81w4z4j0mkk")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -3244,14 +3374,14 @@ studies.") (define-public r-minfi (package (name "r-minfi") - (version "1.34.0") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "minfi" version)) (sha256 (base32 - "0bl1sk9syy770d5wqa0k1y0wrs5x8sbj13px1v03v3693pdj081w")))) + "1x3ksp6syl54hds7wgm4p9yj4mznhhhhk20ijn3i2jc3k8xqcqfi")))) (build-system r-build-system) (propagated-inputs `(("r-beanplot" ,r-beanplot) @@ -3295,14 +3425,14 @@ methylation arrays.") (define-public r-methylumi (package (name "r-methylumi") - (version "2.34.0") + (version "2.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "methylumi" version)) (sha256 (base32 - "0phb2dyndnk9rv79nx246cn1sc9wbzdqqbgl6402knc7dgh799wr")))) + "00w5affxzirf6ffiznk33papwwvwsk2zgy6xvsx7iaf5kvnak2nh")))) (build-system r-build-system) (propagated-inputs `(("r-annotate" ,r-annotate) @@ -3341,14 +3471,14 @@ and Infinium HD arrays are also included.") (define-public r-lumi (package (name "r-lumi") - (version "2.40.0") + (version "2.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "lumi" version)) (sha256 (base32 - "196izc4mdh8j4f04fsf8cqm99w1inzpwy34kwvhz6zvxj2ywn1i9")))) + "19asap8vhm3g8hyvpr8l7mw071dsa1d95wx46lh8m6achffngqv3")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -3380,14 +3510,14 @@ especially Illumina Infinium methylation microarrays.") (define-public r-linnorm (package (name "r-linnorm") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Linnorm" version)) (sha256 (base32 - "143hdfswp5sda5al1igrm5gyn7a6mp1j7hjm5jsc300335lm3kgp")))) + "1is1kp5av01kqqph16xl7w1dqbyd0q85pgqfv9gqkk8m53635cz3")))) (properties `((upstream-name . "Linnorm"))) (build-system r-build-system) (propagated-inputs @@ -3441,14 +3571,14 @@ evaluation of DEG analysis methods.") (define-public r-ioniser (package (name "r-ioniser") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IONiseR" version)) (sha256 (base32 - "05fndlblczabva60gn6h0dijqxyn0wknrv8a925fgc4bn415g31w")))) + "0cfa64d3qv881sa9d665rfki91jaz2spg0zfrb24m37948qzk1lx")))) (properties `((upstream-name . "IONiseR"))) (build-system r-build-system) (propagated-inputs @@ -3589,14 +3719,14 @@ peak definition in combination with known profile characteristics.") (define-public r-varianttools (package (name "r-varianttools") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantTools" version)) (sha256 (base32 - "0g93rljlmhk1d53z0bgi84i2cn5c3r1dpm8id2pv0nk9ncdh3yxx")))) + "1im4g9p419mikkh4v585yf5f23d13chy67znk4g2mii2i1cd1c89")))) (properties `((upstream-name . "VariantTools"))) (build-system r-build-system) (propagated-inputs @@ -3629,14 +3759,14 @@ gmapR.") (define-public r-heatplus (package (name "r-heatplus") - (version "2.34.0") + (version "2.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Heatplus" version)) (sha256 (base32 - "12nd0h8svx7qydv1shk0gdpvnbixf7qi6zh06881wsmxf5s970rw")))) + "0vp8y0242k6q07yjk4sg2w7mlk5pgzhjgqkxa79c5ypkyp095a8n")))) (properties `((upstream-name . "Heatplus"))) (build-system r-build-system) (propagated-inputs @@ -3654,14 +3784,14 @@ information about samples and features can be added to the plot.") (define-public r-gosemsim (package (name "r-gosemsim") - (version "2.14.2") + (version "2.16.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GOSemSim" version)) (sha256 (base32 - "02r7m1x6g8bb7q8l0hpvakdzdv5v1nplhx5lbiy798a7c3xg895b")))) + "1hk1626172scja2gr6axy98czblz0zljiqgqaknsv2xj6frhxcgs")))) (properties `((upstream-name . "GOSemSim"))) (build-system r-build-system) (propagated-inputs @@ -3683,14 +3813,14 @@ sets of GO terms, gene products and gene clusters.") (define-public r-anota (package (name "r-anota") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "anota" version)) (sha256 (base32 - "1ind5cyq85l63xpqmg2n9rg805s5amh48iiw05zqr8kih6hlilpm")))) + "02s061q6dfw1czppqiklb0fz6q0mjyqgxg6926b2dpqpz8hv690x")))) (build-system r-build-system) (propagated-inputs `(("r-multtest" ,r-multtest) @@ -3714,14 +3844,14 @@ the data set is suitable for such analysis.") (define-public r-sigpathway (package (name "r-sigpathway") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "sigPathway" version)) (sha256 (base32 - "0a79sdvag80p7xcdz8mp8wiby36yxmappzycfd2rp36v9drjk0h5")))) + "1fkw0ss471pllqxyjyif5lr35cr8sqpx31x0ccjp85lm3blws72l")))) (properties `((upstream-name . "sigPathway"))) (build-system r-build-system) (home-page "https://www.pnas.org/cgi/doi/10.1073/pnas.0506577102") @@ -3736,14 +3866,14 @@ phenotype of interest.") (define-public r-fgsea (package (name "r-fgsea") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "fgsea" version)) (sha256 (base32 - "0zbjj8al1ps7immxixsn5g8lvbmpmxvqwqbpdgsicxp00gb9bybc")))) + "0jmkkayabx3m0lyyc2mxd4vdvv7gv7fbk1r884gplnf2zgsx068n")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -3768,14 +3898,14 @@ to multiple hypothesis correction.") (define-public r-dose (package (name "r-dose") - (version "3.14.0") + (version "3.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DOSE" version)) (sha256 (base32 - "1j0wcg7w2ns3ag9d272cqlg3j62ag2xnc5gfsjl6g2ij5xkvylb8")))) + "149hpf690jls5r5g84sh2hqs10qbqi94syhxfv8n2f800fk7lgy4")))) (properties `((upstream-name . "DOSE"))) (build-system r-build-system) (propagated-inputs @@ -3803,32 +3933,29 @@ data.") (define-public r-enrichplot (package (name "r-enrichplot") - (version "1.8.1") + (version "1.10.1") (source (origin (method url-fetch) (uri (bioconductor-uri "enrichplot" version)) (sha256 (base32 - "01m3cp717ldfbz5w3yfywvjg6sfjzz7s3vlk7w268lmmcg6g6bz7")))) + "0h0455plh8bxnpizgfxij9625ff32rs1a51yzpnrf5hl27xbfkdd")))) (build-system r-build-system) (propagated-inputs - `(("r-annotationdbi" ,r-annotationdbi) - ("r-cowplot" ,r-cowplot) + `(("r-cowplot" ,r-cowplot) ("r-dose" ,r-dose) - ("r-europepmc" ,r-europepmc) ("r-ggplot2" ,r-ggplot2) - ("r-ggplotify" ,r-ggplotify) ("r-ggraph" ,r-ggraph) - ("r-ggridges" ,r-ggridges) ("r-gosemsim" ,r-gosemsim) - ("r-gridextra" ,r-gridextra) ("r-igraph" ,r-igraph) + ("r-magrittr" ,r-magrittr) ("r-plyr" ,r-plyr) ("r-purrr" ,r-purrr) ("r-rcolorbrewer" ,r-rcolorbrewer) ("r-reshape2" ,r-reshape2) - ("r-scatterpie" ,r-scatterpie))) + ("r-scatterpie" ,r-scatterpie) + ("r-shadowtext" ,r-shadowtext))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://github.com/GuangchuangYu/enrichplot") @@ -3842,14 +3969,14 @@ All the visualization methods are developed based on ggplot2 graphics.") (define-public r-clusterprofiler (package (name "r-clusterprofiler") - (version "3.16.1") + (version "3.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "clusterProfiler" version)) (sha256 (base32 - "11zsgb8wbdv8r4c04iczz4aala4yw4ai7rz8igdzz87c0940nxkb")))) + "07xkc515gp9j4axg0qh39ni65mcbjgxmzjh5wxd86w64lz7xh8b9")))) (properties `((upstream-name . "clusterProfiler"))) (build-system r-build-system) @@ -3879,14 +4006,14 @@ profiles (GO and KEGG) of gene and gene clusters.") (define-public r-mlinterfaces (package (name "r-mlinterfaces") - (version "1.68.0") + (version "1.70.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MLInterfaces" version)) (sha256 (base32 - "0x3mnvb5a6kri4q5w0wfmx02v79my08zhmkaik9pqlprd7y5wynq")))) + "1j920h1657rc5agd1vrkzk126npfhw7pzr7p7gwg4i0h0wv25q3r")))) (properties `((upstream-name . "MLInterfaces"))) (build-system r-build-system) (propagated-inputs @@ -3920,14 +4047,14 @@ data in R and Bioconductor containers.") (define-public r-annaffy (package (name "r-annaffy") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annaffy" version)) (sha256 (base32 - "1rc9fb83by9jfgwfj2zhhbj93v296blwd8jl2rh7jj200mrpznn4")))) + "1szlr33lq98pd3kx6n9l07lhr93swbk6vjpvb2n9f7716k39mi4i")))) (build-system r-build-system) (arguments `(#:phases @@ -3956,19 +4083,21 @@ It allows searching of biological metadata using various criteria.") (define-public r-a4core (package (name "r-a4core") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "a4Core" version)) (sha256 (base32 - "1hn9lkaib1bx5n52as882f8zwsln8w40sx8hxbrnimjvgfxrbvnp")))) + "13mzhn92kqpbn58zmh96f6frkm85sv9137mldfzaljf6snk0spg2")))) (properties `((upstream-name . "a4Core"))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) ("r-glmnet" ,r-glmnet))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/a4Core") (synopsis "Automated Affymetrix array analysis core package") (description @@ -3979,24 +4108,26 @@ arrays.") (define-public r-a4classif (package (name "r-a4classif") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "a4Classif" version)) (sha256 (base32 - "0bj8m4nprw3maahd1qx9jjdxfip9ihbbpydbzwjxn6dlgw2i8mcr")))) + "03fln0x1am5fqhj4fpkx1yq58paqha086bhhr8az8j0vsq1r7wcz")))) (properties `((upstream-name . "a4Classif"))) (build-system r-build-system) (propagated-inputs `(("r-a4core" ,r-a4core) ("r-a4preproc" ,r-a4preproc) + ("r-biobase" ,r-biobase) ("r-glmnet" ,r-glmnet) - ("r-mlinterfaces" ,r-mlinterfaces) ("r-pamr" ,r-pamr) ("r-rocr" ,r-rocr) ("r-varselrf" ,r-varselrf))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/a4Classif/") (synopsis "Automated Affymetrix array analysis classification package") (description @@ -4007,18 +4138,21 @@ Affymetrix arrays.") (define-public r-a4preproc (package (name "r-a4preproc") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "a4Preproc" version)) (sha256 (base32 - "1hy3jvhdjyjzzmw5wkil3cs26hvqnb056r09x0p2bjg5sc9hh8b8")))) + "1j8jhal83x1xpmsaw8iwv2r32i1ghzm6n0ipjk06yqa9f6zb7f7i")))) (properties `((upstream-name . "a4Preproc"))) (build-system r-build-system) (propagated-inputs - `(("r-annotationdbi" ,r-annotationdbi))) + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/a4Preproc/") (synopsis "Automated Affymetrix array analysis preprocessing package") (description @@ -4029,19 +4163,20 @@ is used for preprocessing the arrays.") (define-public r-a4reporting (package (name "r-a4reporting") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "a4Reporting" version)) (sha256 (base32 - "1jhlxqwfbgflcyzy9gyxznzcadj9zxchl3lfdlc4ffm0hwz5jl2f")))) + "1jx4ym3hyix8gwr8d2r38w1wj7siv6ynzhwanczcjf1naws3dqpy")))) (properties `((upstream-name . "a4Reporting"))) (build-system r-build-system) (propagated-inputs - `(("r-annaffy" ,r-annaffy) - ("r-xtable" ,r-xtable))) + `(("r-xtable" ,r-xtable))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/a4Reporting/") (synopsis "Automated Affymetrix array analysis reporting package") (description @@ -4052,21 +4187,20 @@ provides reporting features.") (define-public r-a4base (package (name "r-a4base") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "a4Base" version)) (sha256 (base32 - "0b7fy1wcydb9z43wb1663skswvhivn7ji15g00gqcshwkkiq4x02")))) + "0bqagjmg3yjmdzxv4j7685jjhgb261pq60b5qkfffr1lfnz27lsp")))) (properties `((upstream-name . "a4Base"))) (build-system r-build-system) (propagated-inputs `(("r-a4core" ,r-a4core) ("r-a4preproc" ,r-a4preproc) ("r-annaffy" ,r-annaffy) - ("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) ("r-genefilter" ,r-genefilter) ("r-glmnet" ,r-glmnet) @@ -4084,14 +4218,14 @@ Affymetrix arrays.") (define-public r-a4 (package (name "r-a4") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "a4" version)) (sha256 (base32 - "1rzxg1h48jnlwqfjyyqzz6i3zlkfzc0i714rfplry7dyni6asgr7")))) + "12q09dhxjl7yrd5m2y7a03kv5614dp144ajmskp5q9x2gvz30f79")))) (build-system r-build-system) (propagated-inputs `(("r-a4base" ,r-a4base) @@ -4109,19 +4243,18 @@ Affymetrix arrays.") (define-public r-abseqr (package (name "r-abseqr") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "abseqR" version)) (sha256 (base32 - "0pzyfn0jv41rja6l4jbgwgsqy0q1d3kz23m9m6pc67p2a231i9c5")))) + "0lh7kcsp3yb3s8s8j6w9k1by8i16q7r2a49z8y1xjmkcb2klsi3f")))) (properties `((upstream-name . "abseqR"))) (build-system r-build-system) (inputs - `(("pandoc" ,pandoc) - ("pandoc-citeproc" ,pandoc-citeproc))) + `(("pandoc" ,pandoc))) (propagated-inputs `(("r-biocparallel" ,r-biocparallel) ("r-biocstyle" ,r-biocstyle) @@ -4158,14 +4291,14 @@ further downstream analysis on its output.") (define-public r-bacon (package (name "r-bacon") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bacon" version)) (sha256 (base32 - "066b9vyp8ivnzm9741mb5z763a7z40ar9m8w31yw84fjiv01v3dl")))) + "0cv4zhs075mz8c5gdwhr45v14fb1lyi3rlwjfqyz15dmmnzlxw47")))) (build-system r-build-system) (propagated-inputs `(("r-biocparallel" ,r-biocparallel) @@ -4185,14 +4318,14 @@ fitting a three-component normal mixture on z-scores.") (define-public r-rgadem (package (name "r-rgadem") - (version "2.36.0") + (version "2.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rGADEM" version)) (sha256 (base32 - "14mflbwhhj9f3b05zdlsdjwxmpb120r23fy306qkvxjprdqn4sz8")))) + "0x13glgkcnjg4qsn0v0qgzy6bgmghqpvgwfww2ha641p0c5i9qzw")))) (properties `((upstream-name . "rGADEM"))) (build-system r-build-system) (propagated-inputs @@ -4243,12 +4376,12 @@ distributions, modules and filter motifs.") (define-public r-motifdb (package (name "r-motifdb") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MotifDb" version)) (sha256 - (base32 "0ixmdqp0s0xv9ar85n2wirbbssrzlk8a892wam55jdsf9y8aabkm")))) + (base32 "0gfk1dgw7gd2y4cnmfdzpzjqkvvikcwx20h0fp7aiq8f0zfwlav5")))) (properties `((upstream-name . "MotifDb"))) (build-system r-build-system) (propagated-inputs @@ -4270,12 +4403,12 @@ frequency matrices from nine public sources, for multiple organisms.") (define-public r-motifbreakr (package (name "r-motifbreakr") - (version "2.2.0") + (version "2.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "motifbreakR" version)) (sha256 - (base32 "09czgmyjcycsvyvadpjddwwvqvxzd0ba3zhczh4mqc09gwa6vhlm")))) + (base32 "0nni6i7h51kz0ch8ls9c9jzd7fjmc9wsavp11hx6w6bmhnh3k4n7")))) (properties `((upstream-name . "motifbreakR"))) (build-system r-build-system) (propagated-inputs @@ -4321,24 +4454,21 @@ Bioconductor.") (define-public r-motifstack (package (name "r-motifstack") - (version "1.32.1") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "motifStack" version)) (sha256 (base32 - "02vmkgn36n5xpmizy33znlzgmi3w5hnhsibgisbnhwwgxpkrwpcd")))) + "1psqpdbgbad31bd8hg5bl62qi5s9rl75nzm85igfpxar3zwwxjlb")))) (properties `((upstream-name . "motifStack"))) (build-system r-build-system) (propagated-inputs `(("r-ade4" ,r-ade4) ("r-biostrings" ,r-biostrings) ("r-ggplot2" ,r-ggplot2) - ("r-grimport2" ,r-grimport2) ("r-htmlwidgets" ,r-htmlwidgets) - ("r-motiv" ,r-motiv) - ("r-scales" ,r-scales) ("r-xml" ,r-xml))) (native-inputs `(("r-knitr" ,r-knitr))) @@ -4355,20 +4485,22 @@ type and symbol colors.") (define-public r-genomicscores (package (name "r-genomicscores") - (version "2.0.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicScores" version)) (sha256 (base32 - "0si2lgc37mkah4w990q1q2bf8xmshxj7cbx92bcrp0zaipjr96bb")))) + "1492xirsgag2dsr6ys9wm3a65sq826p9hcdg3b4dm1wbxgdfx6jr")))) (properties `((upstream-name . "GenomicScores"))) (build-system r-build-system) (propagated-inputs `(("r-annotationhub" ,r-annotationhub) ("r-biobase" ,r-biobase) + ("r-biocfilecache" ,r-biocfilecache) ("r-biocgenerics" ,r-biocgenerics) + ("r-biocmanager" ,r-biocmanager) ("r-biostrings" ,r-biostrings) ("r-delayedarray" ,r-delayedarray) ("r-genomeinfodb" ,r-genomeinfodb) @@ -4390,14 +4522,14 @@ position-specific scores within R and Bioconductor.") (define-public r-atacseqqc (package (name "r-atacseqqc") - (version "1.12.5") + (version "1.14.4") (source (origin (method url-fetch) (uri (bioconductor-uri "ATACseqQC" version)) (sha256 (base32 - "1103daz82k97vzmxjmf7jwm2nd3w8i0jwplrsi9996bkih11qwbf")))) + "04sn0zl4m60i5jvqz5rmhc4qwcgrhk6rhznrygmm93k9v363mbn9")))) (properties `((upstream-name . "ATACseqQC"))) (build-system r-build-system) (propagated-inputs @@ -4437,14 +4569,14 @@ footprints.") (define-public r-gofuncr (package (name "r-gofuncr") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GOfuncR" version)) (sha256 (base32 - "1ixjkqb9wpwqfzxsg0h96c6fa63wrk72sfh6x4pq0kpyrcc0ind1")))) + "1ah4v2jj508wjsmrncw58wjq2cyris7bnzfw6kr7jp9n4dvn33mq")))) (properties `((upstream-name . "GOfuncR"))) (build-system r-build-system) (propagated-inputs @@ -4486,14 +4618,14 @@ annotations and ontologies.") (define-public r-abaenrichment (package (name "r-abaenrichment") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ABAEnrichment" version)) (sha256 (base32 - "09ihbgxrhpcz2q7svldhm710a0yrhiqk9p0q0myv11c2w50ymwkw")))) + "0i0214ap9f6lnyawdgcdsds6g3g9qqji3wbn6ln6rs698gjs9w9c")))) (properties `((upstream-name . "ABAEnrichment"))) (build-system r-build-system) (propagated-inputs @@ -4518,14 +4650,14 @@ the brain using an ontology, both provided by the Allen Brain Atlas project.") (define-public r-annotationfuncs (package (name "r-annotationfuncs") - (version "1.38.0") + (version "1.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationFuncs" version)) (sha256 (base32 - "1yfsxzn7s1nlc3xz2yj39j6hmdfapc9qj9h0cd71gkaxj53ial7d")))) + "0xsm7741zm81bi4c9hy0zaacnk8a6bahdpc6srqzrbsz0pfzdyhr")))) (properties `((upstream-name . "AnnotationFuncs"))) (build-system r-build-system) @@ -4543,14 +4675,14 @@ different identifieres using the Biocore Data Team data-packages (e.g. (define-public r-annotationtools (package (name "r-annotationtools") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annotationTools" version)) (sha256 (base32 - "1b1yfnknr9vbn4y2mxdfyx57i5jbabhp9pwx8axlg2a7lawkfmdk")))) + "1q3c30hqxjgar3gm8d7h4rw3m7cgc11cgv9q0fwv5abj075cj224")))) (properties `((upstream-name . "annotationTools"))) (build-system r-build-system) @@ -4568,14 +4700,14 @@ text files).") (define-public r-allelicimbalance (package (name "r-allelicimbalance") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AllelicImbalance" version)) (sha256 (base32 - "0irn4xdlvazdkv0055f45693y6zvqaz7j3vml5xscnh45ls6vmqr")))) + "1hk08kwxjlg2jb59bwv9fbc446pyf6knkscfj757nl6yjf11akbl")))) (properties `((upstream-name . "AllelicImbalance"))) (build-system r-build-system) @@ -4611,14 +4743,14 @@ investigation using RNA-seq data.") (define-public r-aucell (package (name "r-aucell") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AUCell" version)) (sha256 (base32 - "0fgqkgjhf92vkljkwn44lm8cjvzq1lvk80nk6xhsp5q6s5isbmns")))) + "0ibsf3nid27hipr03z7phh0yzwfj8bqza6n6g7wfghpls4l12ipx")))) (properties `((upstream-name . "AUCell"))) (build-system r-build-system) (propagated-inputs @@ -4650,14 +4782,14 @@ needed.") (define-public r-ebimage (package (name "r-ebimage") - (version "4.30.0") + (version "4.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EBImage" version)) (sha256 (base32 - "13amrbh545hwk7sygndzyv7wpa0m2y0lzlwj89jm1xm62x577w9v")))) + "0qi8bbix5bjahs73ljhfvidlbj8hz5m5j0sb9cjxlngnnldbh4ww")))) (properties `((upstream-name . "EBImage"))) (build-system r-build-system) (propagated-inputs @@ -4689,14 +4821,14 @@ visualization with image data.") (define-public r-yamss (package (name "r-yamss") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "yamss" version)) (sha256 (base32 - "00x2lnssgzbmhy5bb2m0f8rq2nsz3lb5xlp2vhkcagza39h3xb0c")))) + "0cxzn7j9apjcabbvvii16kn4whwd9khcyz867w5ag3zdxwvg7l7w")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -4723,14 +4855,14 @@ analysis.") (define-public r-gtrellis (package (name "r-gtrellis") - (version "1.20.1") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gtrellis" version)) (sha256 (base32 - "1v2l7r945xx4cf9s8m19csj7716n2ayxy05adkl8zqgxk0gxzqm1")))) + "14mpavkxlp9d1kccwi4b9hi7x8md5j4s1g17ivqsj38lxqjvg5gw")))) (build-system r-build-system) (propagated-inputs `(("r-circlize" ,r-circlize) @@ -4752,14 +4884,14 @@ genomic categories and to add self-defined graphics in the plot.") (define-public r-somaticsignatures (package (name "r-somaticsignatures") - (version "2.24.0") + (version "2.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SomaticSignatures" version)) (sha256 (base32 - "0d34mss73w1jdnmilk060a1fywlfmqbnlir089q9m3q1p3x0j4c1")))) + "1pwf9ws0klcij27w22p0nh924yp5h2jsidp54ppp7mnx08iv0801")))) (properties `((upstream-name . "SomaticSignatures"))) (build-system r-build-system) @@ -4791,14 +4923,14 @@ decomposition algorithms.") (define-public r-yapsa (package (name "r-yapsa") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "YAPSA" version)) (sha256 (base32 - "06lkf01vl4fyhj82srx8k870fhw76a1han0kp4jglh43b1c19c1k")))) + "1vwccrp01p8i42axbaz1bqq173la18ldrzmrjawr5nkjjkvddbpb")))) (properties `((upstream-name . "YAPSA"))) (build-system r-build-system) (propagated-inputs @@ -4818,7 +4950,7 @@ decomposition algorithms.") ("r-gridextra" ,r-gridextra) ("r-gtrellis" ,r-gtrellis) ("r-keggrest" ,r-keggrest) - ("r-lsei" ,r-lsei) + ("r-limsolve" ,r-limsolve) ("r-magrittr" ,r-magrittr) ("r-pmcmr" ,r-pmcmr) ("r-pracma" ,r-pracma) @@ -4840,14 +4972,14 @@ provided.") (define-public r-gcrma (package (name "r-gcrma") - (version "2.60.0") + (version "2.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gcrma" version)) (sha256 (base32 - "1klbnygc1i5ac1x00bsk0rjw5h5dn6pn65fa3y9r09q47gpy1c5g")))) + "1v1x13iwcv6c9x7r1iz2598rwlyzic67jbqcajg24ib6lcfn9f00")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -4876,14 +5008,14 @@ gene-specific binding is expected.") (define-public r-simpleaffy (package (name "r-simpleaffy") - (version "2.64.0") + (version "2.66.0") (source (origin (method url-fetch) (uri (bioconductor-uri "simpleaffy" version)) (sha256 (base32 - "040043spblr8v67lkn3nnxhgfmfh2iwaizph4fnms1ik6qz662x7")))) + "04a11dsqd5y4b39nny94acnh0qhdazjc6d1803izza4vrgmw2csb")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -4904,14 +5036,14 @@ generating high resolution journal figures.") (define-public r-yaqcaffy (package (name "r-yaqcaffy") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "yaqcaffy" version)) (sha256 (base32 - "1l0cblh9sfrsil15bjya7d8kkas8bj6klj2w3c4384njdsjsjcf0")))) + "18gphcjj15iivrahp52186bvdg07yd2dvrykfjdd4r1vyf33im96")))) (build-system r-build-system) (propagated-inputs `(("r-simpleaffy" ,r-simpleaffy))) @@ -4926,14 +5058,14 @@ chips with the MAQC reference datasets.") (define-public r-quantro (package (name "r-quantro") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "quantro" version)) (sha256 (base32 - "0ap9cl5z79wg44mnagjsk8py3kngb4f0ddnx85cbnwqkvb769zbz")))) + "1mq4hda73idkq0lkfrhcmiz4kkalfn47dh3i75br5fi33mdgc0k2")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -4959,14 +5091,14 @@ groups.") (define-public r-yarn (package (name "r-yarn") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "yarn" version)) (sha256 (base32 - "1xdjwy1gkfg8lhgq4iwwmbi01903qljjs7yd96cvacmvgn8z6qvx")))) + "0p8wz5jn601vxbbxkm73ps3fx0j1y56nr2qf6y8k80vgrk7bv5gp")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -4996,14 +5128,14 @@ large RNA-seq experiments.") (define-public r-roar (package (name "r-roar") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "roar" version)) (sha256 (base32 - "069g887migvk70n0377dqr0fk7wjbz3w0asgk42bwhp8xpjfym6f")))) + "0spidrcjnrcli0whkf6h8pa1i9dg9arjbm7b1skxbs6dn2k4yyqw")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -5025,14 +5157,14 @@ sites and alignments obtained from standard RNA-seq experiments.") (define-public r-xbseq (package (name "r-xbseq") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "XBSeq" version)) (sha256 (base32 - "13br7x1q6dg8daxahskwq24f09wbxr8kyszl1z7dhc26bid2pvy0")))) + "1dvk2jpsdynqw5071z54yd5j0ddprhc1ppk834cz9liibd72d7vz")))) (properties `((upstream-name . "XBSeq"))) (build-system r-build-system) (propagated-inputs @@ -5064,14 +5196,14 @@ genes.") (define-public r-massspecwavelet (package (name "r-massspecwavelet") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MassSpecWavelet" version)) (sha256 (base32 - "0nv1r68g7f1rps6sqaccd4n4x0i19wklvyabhp4b03cdk22gl3nq")))) + "1vvxbxc538raqdsy0x9ln41vjhp2aw1nrh4k35y3s9mhb1jlzzv3")))) (properties `((upstream-name . "MassSpecWavelet"))) (build-system r-build-system) @@ -5088,14 +5220,14 @@ based on @dfn{Continuous Wavelet Transform} (CWT).") (define-public r-xcms (package (name "r-xcms") - (version "3.10.2") + (version "3.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "xcms" version)) (sha256 (base32 - "0sk53jcl7sjrpw2ncdpl8sw1b1j9mizlrj517rinr1qrbm6lsn8f")))) + "17kyybj093mj0g2sbfmjp19mmkww4w025n6zc0hbznqb94vkc8fv")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -5104,6 +5236,7 @@ based on @dfn{Continuous Wavelet Transform} (CWT).") ("r-iranges" ,r-iranges) ("r-lattice" ,r-lattice) ("r-massspecwavelet" ,r-massspecwavelet) + ("r-mscoreutils" ,r-mscoreutils) ("r-msnbase" ,r-msnbase) ("r-mzr" ,r-mzr) ("r-plyr" ,r-plyr) @@ -5127,14 +5260,14 @@ data for high-throughput, untargeted analyte profiling.") (define-public r-wrench (package (name "r-wrench") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Wrench" version)) (sha256 (base32 - "05dyk3yvbqrzvinv3ig8ad9wffwr14z715cicsbxwxpv5lq84wx6")))) + "01z7rd9fn6cpab3dxgwfpfjlq6vsqb8jhbzvhcqn9v2vqc2pridx")))) (properties `((upstream-name . "Wrench"))) (build-system r-build-system) (propagated-inputs @@ -5153,14 +5286,14 @@ that arising from 16s metagenomic surveys.") (define-public r-wiggleplotr (package (name "r-wiggleplotr") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "wiggleplotr" version)) (sha256 (base32 - "1wknigh1md3w4h68caqlpq945maipdkpmw10hc2rlx4nbbpcnawp")))) + "1k4wlh5ayb1w4dr6dydqfgm3415qhsfmshmi6zjyyhhkd2626vad")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -5187,14 +5320,14 @@ visualization of exonic read coverage.") (define-public r-widgettools (package (name "r-widgettools") - (version "1.66.0") + (version "1.68.0") (source (origin (method url-fetch) (uri (bioconductor-uri "widgetTools" version)) (sha256 (base32 - "0lrdpsgm9r7yfyyj5crvb7px4hrghxhmiic4iissz40slbfyvilx")))) + "172f0pmsspd9lss557cmxzjfsbansimjyhwdiahg8pqrayhwvf2w")))) (properties `((upstream-name . "widgetTools"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/widgetTools/") @@ -5208,14 +5341,14 @@ widgets in R.") (define-public r-webbioc (package (name "r-webbioc") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "webbioc" version)) (sha256 (base32 - "16376ya5a5x2hwkl1v9y4r7np1drdwm912knnqg2dn90zmrdwr5f")))) + "1nnmr4ddi07x7sy89fgdn7iwz5k4l8n5ca3xjnlbpwxycza793vj")))) (build-system r-build-system) (inputs `(("netpbm" ,netpbm) @@ -5241,14 +5374,14 @@ Currently only Affymetrix oligonucleotide analysis is supported.") (define-public r-zfpkm (package (name "r-zfpkm") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "zFPKM" version)) (sha256 (base32 - "0scszhfqrgzhglz1a6kxfydq9dx8fqx28j3dypp91y5ah2w6mdys")))) + "1sa7m7mzzr92c9ickial5701414rab233lq1il1sm9yfdkf8s9fm")))) (properties `((upstream-name . "zFPKM"))) (build-system r-build-system) (propagated-inputs @@ -5270,14 +5403,14 @@ This algorithm is based on the publication by Hart et al., 2013 (Pubmed ID (define-public r-rbowtie2 (package (name "r-rbowtie2") - (version "1.10.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rbowtie2" version)) (sha256 (base32 - "19v7wfvrd53j618c1xbiqnlsf2kxw697myryx0vb9s2aspknyzz7")))) + "1pcdcqn82ray73bajjnx5zgs98m56acviq3adbzga0cfqf6wiqx5")))) (properties `((upstream-name . "Rbowtie2"))) (build-system r-build-system) (inputs @@ -5295,14 +5428,14 @@ rapid adapter trimming, identification, and read merging.") (define-public r-progeny (package (name "r-progeny") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "progeny" version)) (sha256 (base32 - "09rq3nf9zm7w9djmx8xc8j3win3597p2v36zqgkhgkjwq5rkjgsh")))) + "00lhzz4plmx5128khs298n6zv9204mhqv548lxxdhaw18b16vwm7")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -5325,14 +5458,14 @@ expression\".") (define-public r-arrmnormalization (package (name "r-arrmnormalization") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ARRmNormalization" version)) (sha256 (base32 - "0zhhvr051fmh6g0bqrl525mkf094j1jnc57j201jlzmvdpkydlpv")))) + "1ximvi0jbwmymx6iy70qfyr9j26x5arlarra9fzs5hq05jif6q95")))) (properties `((upstream-name . "ARRmNormalization"))) (build-system r-build-system) @@ -5348,14 +5481,14 @@ Infinium HumanMethylation 450k assay.") (define-public r-biocfilecache (package (name "r-biocfilecache") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocFileCache" version)) (sha256 (base32 - "02yayjyliaqxcwqa0n2ccmsfflskqzf0gvdibh2r3nz5bi66imkf")))) + "0r032a033636bxap0vvb02jvjqiynzj9npqd8603qnwmhvvfi5z1")))) (properties `((upstream-name . "BiocFileCache"))) (build-system r-build-system) (propagated-inputs @@ -5380,14 +5513,14 @@ and data files used across sessions.") (define-public r-iclusterplus (package (name "r-iclusterplus") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "iClusterPlus" version)) (sha256 (base32 - "0j987xvxixdz0wnhgp4kgfcgz5jffrcdhmldrgpgv582qmf4r94w")))) + "02ji84dsbn4wir8sim4qy8h57524mnrsq51wxc7n8ybp5x7n9k9q")))) (properties `((upstream-name . "iClusterPlus"))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -5410,14 +5543,14 @@ Gaussian distributions.") (define-public r-rbowtie (package (name "r-rbowtie") - (version "1.28.1") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rbowtie" version)) (sha256 (base32 - "0589ggbfx6di42wvqyhnzgrhmb52swr3r5z22w6b8x0z2y7hl8b3")))) + "0rgxqc3sbq7phnrn9a6z361725h4zi2mi985i43n7fi3csif7507")))) (properties `((upstream-name . "Rbowtie"))) (build-system r-build-system) (inputs @@ -5435,14 +5568,14 @@ alignment tool.") (define-public r-sgseq (package (name "r-sgseq") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SGSeq" version)) (sha256 (base32 - "11rxx7abjyga2sdcp4x4z3n8xjx6973sckyzmh9ax6r46kwhxq8c")))) + "1nfhy5kgyz56b6pyxcq8kflqwnhl9nlffszwpqb5fdh5ibz8xbjx")))) (properties `((upstream-name . "SGSeq"))) (build-system r-build-system) (propagated-inputs @@ -5478,14 +5611,14 @@ interpretation.") (define-public r-rhisat2 (package (name "r-rhisat2") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhisat2" version)) (sha256 (base32 - "0hhmcdnixkaqx9x9cl2vjaba3ri8m6wkbnbhxjmy51jwqzy2223a")))) + "0f9x2qcazml0zjcgyy0kdphnww4d1m62rn0ijcqlhy1bng6ihwwb")))) (properties `((upstream-name . "Rhisat2"))) (build-system r-build-system) (arguments @@ -5518,18 +5651,16 @@ index.") (define-public r-quasr (package (name "r-quasr") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "QuasR" version)) (sha256 (base32 - "0d87ajaaq8a7xgzl820qx5bvxw86ppab8clqk77sj02rfijnvjn8")))) + "032m01q34nnmvbhcb2g3pz2fqmgcw5464m74m1m0h7x9bl04a5k8")))) (properties `((upstream-name . "QuasR"))) (build-system r-build-system) - (inputs - `(("zlib" ,zlib))) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) @@ -5565,14 +5696,14 @@ quantification of genomic regions of interest.") (define-public r-rqc (package (name "r-rqc") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rqc" version)) (sha256 (base32 - "1qsm9r6xfsplk8zpf7p0k7fi86l8a74nx963sna8gzig5qgrvnm3")))) + "083c3ql0gndb6y7m9d3rpbkimyw8cj8jyv77mwwjhq49lzwsg6n9")))) (properties `((upstream-name . "Rqc"))) (build-system r-build-system) (propagated-inputs @@ -5608,14 +5739,14 @@ graphics.") (define-public r-birewire (package (name "r-birewire") - (version "3.20.0") + (version "3.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiRewire" version)) (sha256 (base32 - "0y7jb1abnik2y4ivpyqrgfl77rml6fhz88isd54l646ghslwxj0g")))) + "1h9zjjd5krsjpbxlmsbzwx7kbishn0z6mpm8zmrcpmbfrprp38qw")))) (properties `((upstream-name . "BiRewire"))) (build-system r-build-system) (propagated-inputs @@ -5666,14 +5797,14 @@ Markov-Chain-Monte-Carlo is applied to sample the activity states.") (define-public r-multidataset (package (name "r-multidataset") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MultiDataSet" version)) (sha256 (base32 - "0hjnj32m9wwlh2krdpdyl5jk1cakvlgki80z51mabhc62pajzf39")))) + "025gfgn83ancp0khdmq2y4lwm97v5zqnjksi79rr0w175syznx5w")))) (properties `((upstream-name . "MultiDataSet"))) (build-system r-build-system) (propagated-inputs @@ -5703,14 +5834,14 @@ packages.") (define-public r-ropls (package (name "r-ropls") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ropls" version)) (sha256 (base32 - "1drww1mr0nira3qplyga6s3mljpjxshjgbn524kzxi0nrfbcvmnx")))) + "1h76s89hsafrkshpkx7vjinfni9lzfpnbfyg3fhkkrwpp1fnwyj5")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -5741,14 +5872,14 @@ coefficients).") (define-public r-biosigner (package (name "r-biosigner") - (version "1.16.0") + (version "1.18.2") (source (origin (method url-fetch) (uri (bioconductor-uri "biosigner" version)) (sha256 (base32 - "1v760q7hzaybkf2q9230rmr4phi8hglm59qwsjzvncxrhs3dpj06")))) + "0i18j4fk91x5017yk1l35c58k5aby22yh81zkp59irphpv9akvjn")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -5774,14 +5905,14 @@ datasets.") (define-public r-annotatr (package (name "r-annotatr") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annotatr" version)) (sha256 (base32 - "0z3ydcybd81w543fw8fiblghndx5m28w8qsphh5vqj726i0nj8cl")))) + "0dq67snpqxl9mifljm6zlnkdb0ghjwday0fvcn3i7zmrfszgzyf9")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -5815,14 +5946,14 @@ annotations.") (define-public r-rsubread (package (name "r-rsubread") - (version "2.2.6") + (version "2.4.2") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsubread" version)) (sha256 (base32 - "04h79qhq93d8id0rr5xnj9vf82ygwxzdlnck78yv738xd0jjvnpm")))) + "1wczrw5jb69x45hd3rdqqs9vkysdqwlxn9h3kjzn57r4x5q7jrra")))) (properties `((upstream-name . "Rsubread"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -5841,14 +5972,14 @@ and to both short and long sequence reads.") (define-public r-flowutils (package (name "r-flowutils") - (version "1.52.0") + (version "1.54.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowUtils" version)) (sha256 (base32 - "03jj4zyffm9kwzrg4vbsk6clc2v2m95wgalgqwzi31n9a2zyaza4")))) + "1q4g666nd51j24hcp2wxla1bdi77kbfd4i0pxgp7rs2jf7200k09")))) (properties `((upstream-name . "flowUtils"))) (build-system r-build-system) (propagated-inputs @@ -5867,14 +5998,14 @@ and to both short and long sequence reads.") (define-public r-consensusclusterplus (package (name "r-consensusclusterplus") - (version "1.52.0") + (version "1.54.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ConsensusClusterPlus" version)) (sha256 (base32 - "06gq3a95h0km1hzbx1za8q0l7kla3jdzvn6cnfz43ijx4n3dzzcq")))) + "06h85l1mg2kpjprylzz44nhxp64k211plhch5qhg39wp0fk34lfp")))) (properties `((upstream-name . "ConsensusClusterPlus"))) (build-system r-build-system) @@ -5892,20 +6023,30 @@ cluster count and membership by stability evidence in unsupervised analysis.") (define-public r-cytolib (package (name "r-cytolib") - (version "2.0.3") + (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "cytolib" version)) (sha256 (base32 - "123d1wlymq8r8d83as380h1dgw6v4s317acyvp1lsg2cpfp3gslj")))) + "1wylzps7wbvm64k62w5bbi8l74gaqca96psfapxfg6mcac5yz4qw")))) (properties `((upstream-name . "cytolib"))) (build-system r-build-system) - (inputs - `(("zlib" ,zlib))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-linking + (lambda _ + (substitute* "src/Makevars.in" + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\(RHDF5_LIBS\\)" match) + (string-append match "/libhdf5.a"))) + #t))))) (native-inputs - `(("r-knitr" ,r-knitr))) + `(("r-knitr" ,r-knitr) + ("pkg-config" ,pkg-config))) (propagated-inputs `(("r-bh" ,r-bh) ("r-rcpp" ,r-rcpp) @@ -5923,14 +6064,14 @@ interact with gated cytometry data.") (define-public r-flowcore (package (name "r-flowcore") - (version "2.0.1") + (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowCore" version)) (sha256 (base32 - "1xalndmfidfzqwlppdanx7cnm4ysznq21ingmykhxni86s42kd8p")))) + "001ickrl2asdl0zwpdjqkl1w7137nzxbryamxihgya394jw73xr8")))) (properties `((upstream-name . "flowCore"))) (build-system r-build-system) (propagated-inputs @@ -5941,7 +6082,8 @@ interact with gated cytometry data.") ("r-matrixstats" ,r-matrixstats) ("r-rcpp" ,r-rcpp) ("r-rcpparmadillo" ,r-rcpparmadillo) - ("r-rprotobuflib" ,r-rprotobuflib))) + ("r-rprotobuflib" ,r-rprotobuflib) + ("r-s4vectors" ,r-s4vectors))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/flowCore") @@ -5954,14 +6096,14 @@ with flow cytometry data.") (define-public r-flowmeans (package (name "r-flowmeans") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowMeans" version)) (sha256 (base32 - "1sv5vpwm3qdhkn1gdrk3n674harjcni91g63sqzfmybiwq8dlym7")))) + "02y5b3iqjlqjlxrqq0l24dr68sjaniz26jqf14cnnwz1xg5hz734")))) (properties `((upstream-name . "flowMeans"))) (build-system r-build-system) (propagated-inputs @@ -5980,18 +6122,27 @@ change point detection.") (define-public r-ncdfflow (package (name "r-ncdfflow") - (version "2.34.0") + (version "2.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ncdfFlow" version)) (sha256 (base32 - "0avxn2abh4fk1gkncrxz7jwzgvd90m3m0ly318q0z38cjhsw3j9f")))) + "1knqc3ic2vpck7n7m7adxjz3ac70ra89d5gvlgp9r2q3kgaciwac")))) (properties `((upstream-name . "ncdfFlow"))) (build-system r-build-system) - (inputs - `(("zlib" ,zlib))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-linking + (lambda _ + (substitute* "src/Makevars" + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\(RHDF5_LIBS\\)" match) + (string-append match "/libhdf5.a"))) + #t))))) (propagated-inputs `(("r-bh" ,r-bh) ("r-biobase" ,r-biobase) @@ -6013,14 +6164,14 @@ manipulation of flow cytometry data.") (define-public r-ggcyto (package (name "r-ggcyto") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ggcyto" version)) (sha256 (base32 - "1ih6ggay7jjxnx8blc2sk95g8d40gkim145jllkk8sqwl02g44p0")))) + "0myjvhm9jjb9cih5nlka3f9zg5ncy8gy3krpdpa0618jdglvgr1m")))) (properties `((upstream-name . "ggcyto"))) (build-system r-build-system) (propagated-inputs @@ -6050,14 +6201,14 @@ statistics to the plot.") (define-public r-flowviz (package (name "r-flowviz") - (version "1.52.0") + (version "1.54.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowViz" version)) (sha256 (base32 - "0f3jfwdmaq9wrgl737blk5gmpc29l9kb6nadqhxpvbjwqsnzx0yq")))) + "1s6jrn2a7hv984xvm6gyn8k3hnma8qidrw9kgj9z5128hv330z7k")))) (properties `((upstream-name . "flowViz"))) (build-system r-build-system) (propagated-inputs @@ -6081,14 +6232,14 @@ statistics to the plot.") (define-public r-flowclust (package (name "r-flowclust") - (version "3.26.0") + (version "3.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowClust" version)) (sha256 (base32 - "06mkq9y41jax07x4knhvhzgrkgqdvpvcw604bxdk6bv9wx3ipq5b")))) + "1ml3y5wq68jbyr7l5j4zs79bj5bbwzmn5gx41yi88hq78iwkscrq")))) (properties `((upstream-name . "flowClust"))) (build-system r-build-system) (arguments @@ -6121,14 +6272,14 @@ model with Box-Cox transformation.") (define-public r-rprotobuflib (package (name "r-rprotobuflib") - (version "2.0.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RProtoBufLib" version)) (sha256 (base32 - "0kfinf9vzc1i5qxmaw832id557gr1vqdi1m8yiaxz83g37wh8vps")))) + "09n4ny3ymfkja2br4rrr2n9dzw3hs7qijhcq4mj0avr86i27llqz")))) (properties `((upstream-name . "RProtoBufLib"))) (build-system r-build-system) (arguments @@ -6151,18 +6302,31 @@ for other R packages to compile and link against.") (define-public r-flowworkspace (package (name "r-flowworkspace") - (version "4.0.6") + (version "4.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowWorkspace" version)) (sha256 (base32 - "123ny8n3jjgmsnpghk1dafxkwmcyr513gxi8y4h4qszq4s6ai15v")))) + "19svh32jq1dpq3ayhpd5r8bw0iax8d9kdvpvc23gx2pf16g1j5ag")))) (properties `((upstream-name . "flowWorkspace"))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-linking + (lambda _ + (substitute* "src/Makevars" + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\{h5lib\\}" match) + (string-append match "/libhdf5.a"))) + #t))))) (propagated-inputs - `(("r-bh" ,r-bh) + `(("r-aws-s3" ,r-aws-s3) + ("r-aws-signature" ,r-aws-signature) + ("r-bh" ,r-bh) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) ("r-cytolib" ,r-cytolib) @@ -6184,7 +6348,6 @@ for other R packages to compile and link against.") ("r-rhdf5lib" ,r-rhdf5lib) ("r-rprotobuflib" ,r-rprotobuflib) ("r-scales" ,r-scales) - ("r-stringr" ,r-stringr) ("r-xml" ,r-xml))) (native-inputs `(("r-knitr" ,r-knitr))) @@ -6202,14 +6365,14 @@ matches the flowJo analysis.") (define-public r-flowstats (package (name "r-flowstats") - (version "4.0.0") + (version "4.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "flowStats" version)) (sha256 (base32 - "1ygvxvd7y6jp907y0h3hycdwvw1fch16w84g06nk4f4g4kvrzdir")))) + "1i6nrwc55k4bn4qprgs6npy7wf8537m429yncqsygsv47z21ix6x")))) (properties `((upstream-name . "flowStats"))) (build-system r-build-system) (propagated-inputs @@ -6238,14 +6401,14 @@ package.") (define-public r-opencyto (package (name "r-opencyto") - (version "2.0.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "openCyto" version)) (sha256 (base32 - "10dyd6dddskv70vhpwfbsqdb8pb9i3ka0fgvl1h51wqlckbsj89m")))) + "02dymy5fa0wjd4pql3jdv1d65mak7ra4il96va7c0km8s87rn40v")))) (properties `((upstream-name . "openCyto"))) (build-system r-build-system) (propagated-inputs @@ -6282,16 +6445,27 @@ sequential way to mimic the manual gating strategy.") (define-public r-cytoml (package (name "r-cytoml") - (version "2.0.5") + (version "2.2.1") (source (origin (method url-fetch) (uri (bioconductor-uri "CytoML" version)) (sha256 (base32 - "174brv027mm90lydfg6hnhazwh8jy4vf6ial4hpsfalwa5jrz55n")))) + "1d8x49aqc95x1vx456hya5r7mal80pj9l6wmr5x5pb5r8qyzz6yq")))) (properties `((upstream-name . "CytoML"))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-linking + (lambda _ + (substitute* "src/Makevars.in" + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\{h5lib\\}" match) + (string-append match "/libhdf5.a"))) + #t))))) (inputs `(("libxml2" ,libxml2))) (propagated-inputs @@ -6334,14 +6508,14 @@ standard to exchange gated cytometry data with other software platforms.") (define-public r-flowsom (package (name "r-flowsom") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "FlowSOM" version)) (sha256 (base32 - "1p17jv4q1dbcc47jpjy9hbcvzpwrx8waq7qpcj778jsyz6z6jh78")))) + "0gydp6q6zqkadw356k9br646zfynz8gk9ckbx9d297x503j5sgwf")))) (properties `((upstream-name . "FlowSOM"))) (build-system r-build-system) (propagated-inputs @@ -6364,20 +6538,21 @@ self-organizing map clustering and minimal spanning trees.") (define-public r-mixomics (package (name "r-mixomics") - (version "6.12.2") + (version "6.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mixOmics" version)) (sha256 (base32 - "1nkqlvm9j1f4vfj3f3kyxqgan38rpa9imimvl9pwivvsfl647vvc")))) + "0q43ay5r0qsx0zjjnrq24fk6pq5cimviky5lm4w2mbjclqf0gv0q")))) (properties `((upstream-name . "mixOmics"))) (build-system r-build-system) (propagated-inputs `(("r-corpcor" ,r-corpcor) ("r-dplyr" ,r-dplyr) ("r-ellipse" ,r-ellipse) + ("r-ggrepel" ,r-ggrepel) ("r-ggplot2" ,r-ggplot2) ("r-gridextra" ,r-gridextra) ("r-igraph" ,r-igraph) @@ -6406,16 +6581,16 @@ delete entire rows with missing data.") (license license:gpl2+))) (define-public r-depecher - (package + (package ;Source/Weave error (name "r-depecher") - (version "1.4.1") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DepecheR" version)) (sha256 (base32 - "0dscfl6wxpl5538jzkrwisdwbr873d38rzd19vl6z5br71jvpv3v")))) + "0c7yv3a7k22nhhw3601n8jdl61cjmlny9b3nfrzsp78mkxi0h469")))) (properties `((upstream-name . "DepecheR"))) (build-system r-build-system) (propagated-inputs @@ -6425,6 +6600,7 @@ delete entire rows with missing data.") ("r-fnn" ,r-fnn) ("r-foreach" ,r-foreach) ("r-ggplot2" ,r-ggplot2) + ("r-gmodels" ,r-gmodels) ("r-gplots" ,r-gplots) ("r-mass" ,r-mass) ("r-matrixstats" ,r-matrixstats) @@ -6453,14 +6629,14 @@ data, to only emphasize the data that actually matters.") (define-public r-rcistarget (package (name "r-rcistarget") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RcisTarget" version)) (sha256 (base32 - "1lvi873dv0vhw53s1pmcilw8qwlywm9p2ybphcl168nzh6w31r4i")))) + "0a711jzxl1kggpk3ln68xzc5y30my4nbs1mxx8951pyi3jvzjfyf")))) (properties `((upstream-name . "RcisTarget"))) (build-system r-build-system) (propagated-inputs @@ -6490,14 +6666,14 @@ genes in the gene-set that are ranked above the leading edge).") (define-public r-cicero (package (name "r-cicero") - (version "1.6.2") + (version "1.8.1") (source (origin (method url-fetch) (uri (bioconductor-uri "cicero" version)) (sha256 (base32 - "042ba6yfa7fksij2v7cwnp2sca3vmz7izn6fsxx9xswnncrkgcqh")))) + "12y857p4p0m7k72bimli8wjn9cd0gxjwcs3n7ri9pn9l9d42krqr")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -6601,14 +6777,14 @@ cisTopics and explore the nature and regulatory proteins driving them.") (define-public r-genie3 (package (name "r-genie3") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GENIE3" version)) (sha256 (base32 - "1bsm0gxracsyg1wnaw3whvskghfpbgbm9navr8wdmxj2hjp3dqs7")))) + "1z7qkv0cgdx2plhc7xdz6s7vwdjhzcdadi35wg3fl6xpids5njf5")))) (properties `((upstream-name . "GENIE3"))) (build-system r-build-system) (propagated-inputs `(("r-reshape2" ,r-reshape2))) @@ -6624,14 +6800,14 @@ regulatory networks from expression data.") (define-public r-roc (package (name "r-roc") - (version "1.64.0") + (version "1.66.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ROC" version)) (sha256 (base32 - "0gmx3r77yl5fqrj5j2hamwynbis75qd62q28964kx16z33xfgx89")))) + "02b9n42z3kjrfxpdf3glqvimd79nhnycq00mb09fzhkpp5zl43c9")))) (properties `((upstream-name . "ROC"))) (build-system r-build-system) (propagated-inputs @@ -6672,14 +6848,14 @@ data.") (define-public r-watermelon (package (name "r-watermelon") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "wateRmelon" version)) (sha256 (base32 - "1c3a6bq3ggmv8kmdfrgiar6nwgircgzjrbgd9z9dqiin7j13gxwn")))) + "1sc2nxg9bafpvlwqhky2p5b6fkimkk9v3xcab9kvwnj6szrb6p3f")))) (properties `((upstream-name . "wateRmelon"))) (build-system r-build-system) (propagated-inputs @@ -6709,14 +6885,14 @@ metrics, with methods for objects produced by the @code{methylumi} and (define-public r-gdsfmt (package (name "r-gdsfmt") - (version "1.24.1") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gdsfmt" version)) (sha256 (base32 - "0ipf60wylbhvwk9q3mbnak0f1n6k7spfh90s1c1c0b47ryxsri67")) + "0x8ik179sf38ihx2y24cvsa9d8isdmx2z27sjhcwq0r3xpjxpz1a")) (modules '((guix build utils))) ;; Remove bundled sources of zlib, lz4, and xz. Don't attempt to build ;; them and link with system libraries instead. @@ -6768,14 +6944,14 @@ with multiple R processes supported by the package @code{parallel}.") (define-public r-bigmelon (package (name "r-bigmelon") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bigmelon" version)) (sha256 (base32 - "1cryjhbiacm45g097rpqgbva49hs5vdx4y4h5h2v1gw4k78hwb4y")))) + "0hj5njwx7n681vigkq4560f9dm7mdjgvcwbgp5nbdn1fb2z24bk7")))) (properties `((upstream-name . "bigmelon"))) (build-system r-build-system) (propagated-inputs @@ -6796,22 +6972,20 @@ with multiple R processes supported by the package @code{parallel}.") (define-public r-seqbias (package (name "r-seqbias") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqbias" version)) (sha256 (base32 - "0sy2fv98x4qfz9llns28jh1n4bi991jj856y8a5fbzpx7y990lai")))) + "1m634sidmk6c603k2gflyiddkns9vr6ij591nmab523xk5r2f4b2")))) (properties `((upstream-name . "seqbias"))) (build-system r-build-system) (propagated-inputs `(("r-biostrings" ,r-biostrings) ("r-genomicranges" ,r-genomicranges) ("r-rhtslib" ,r-rhtslib))) - (inputs - `(("zlib" ,zlib))) ; This comes from rhtslib. (home-page "https://bioconductor.org/packages/seqbias/") (synopsis "Estimation of per-position bias in high-throughput sequencing data") (description @@ -6862,14 +7036,14 @@ injected in that sequence).") (define-public r-reqon (package (name "r-reqon") - (version "1.34.0") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ReQON" version)) (sha256 (base32 - "06m0hd4aqsxjyzhs8b1zys7lz8289qgwn7jp2dpln1j7cf02q4bz")))) + "1yz0r0rrk4n6dnqbdq41lvs5z8l6vkx729m0a7f29svw4dbc6mdq")))) (properties `((upstream-name . "ReQON"))) (build-system r-build-system) (propagated-inputs @@ -6887,14 +7061,14 @@ format.") (define-public r-wavcluster (package (name "r-wavcluster") - (version "2.22.0") + (version "2.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "wavClusteR" version)) (sha256 (base32 - "0204czqjmkwhd6gznwxzb0vj3dg3aif628g8c30085aa2jljn9bk")))) + "18cg0jbr3rjyx31wwyag1n5gams55pbd2rvb99i3g80q9hvswawi")))) (properties `((upstream-name . "wavClusteR"))) (build-system r-build-system) (propagated-inputs @@ -6911,8 +7085,7 @@ format.") ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors) ("r-seqinr" ,r-seqinr) - ("r-stringr" ,r-stringr) - ("r-wmtsa" ,r-wmtsa))) + ("r-stringr" ,r-stringr))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/wavClusteR/") @@ -6935,14 +7108,14 @@ procedures that induce nucleotide substitutions (e.g. BisSeq).") (define-public r-timeseriesexperiment (package (name "r-timeseriesexperiment") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "TimeSeriesExperiment" version)) (sha256 (base32 - "1k0djvcsyjj1ayncvmi8nlqi3jdn5qp41y3fwsqg1cp0qsvx7zv3")))) + "1jx0rk660mfzk7rfhamnp0disx3bv456cqi9hyaz2wcbcdrlvcjn")))) (properties `((upstream-name . "TimeSeriesExperiment"))) (build-system r-build-system) @@ -6976,14 +7149,14 @@ provides methods for retrieving enriched pathways.") (define-public r-variantfiltering (package (name "r-variantfiltering") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantFiltering" version)) (sha256 (base32 - "0lsrnybsbm9siyjv4nal6bmprj8ynwgk4n1145f4h52g78wq3br4")))) + "0zy53knvyk8wy3hmnsxc0w9qkhvx6xhviskvx7rwmrsi7pz531l5")))) (properties `((upstream-name . "VariantFiltering"))) (build-system r-build-system) @@ -7082,14 +7255,14 @@ arrays based on fast wavelet-based functional models.") (define-public r-variancepartition (package (name "r-variancepartition") - (version "1.18.3") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "variancePartition" version)) (sha256 (base32 - "1jrlhi2c5ibvq8a41g5hwdq4kk4rdd7m464rz5767zaaci7l2ay0")))) + "0fisaqd5v8xy9rz9l1zs62k1n2h4k1irzgwj46ci947l52x1qhah")))) (properties `((upstream-name . "variancePartition"))) (build-system r-build-system) @@ -7126,14 +7299,14 @@ measures.") (define-public r-htqpcr (package (name "r-htqpcr") - (version "1.42.0") + (version "1.44.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HTqPCR" version)) (sha256 (base32 - "08bd5zkjdnz726s03bvvzv03va0xbrr818ipp6737z9g3nk9m81j")))) + "1fzjx6psr41naq9ycpnv3lxlgkiyrpn7r2wl1i4gz45f3lax0yji")))) (properties `((upstream-name . "HTqPCR"))) (build-system r-build-system) (propagated-inputs @@ -7160,14 +7333,14 @@ features (e.g. genes, microRNAs).") (define-public r-unifiedwmwqpcr (package (name "r-unifiedwmwqpcr") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "unifiedWMWqPCR" version)) (sha256 (base32 - "1l9gxq3askr3cz2a4bqsw7vjr1agivzvx651cblkygv57x08zf81")))) + "1ad5a7gy43l8x1rf5lgqiy2bv6fgah7cbnp4lrqwshphlnr30ndv")))) (properties `((upstream-name . "unifiedWMWqPCR"))) (build-system r-build-system) @@ -7251,14 +7424,14 @@ cellular organization in health and disease.") (define-public r-bgmix (package (name "r-bgmix") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BGmix" version)) (sha256 (base32 - "1pfi3hinjn6ymikadgj8dqm59h7mapf01wj86dbbvf8y1xqp8y8n")))) + "0r9gjqajarg5mivxhqdzn8m8hmfarmzbplp3zqyyznccri03pv50")))) (properties `((upstream-name . "BGmix"))) (build-system r-build-system) (propagated-inputs @@ -7273,14 +7446,14 @@ gene expression.") (define-public r-bgx (package (name "r-bgx") - (version "1.54.1") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bgx" version)) (sha256 (base32 - "0a10fg9n5p024jrmbis102gqpbz23sc6vdn1sal2697hlxikzb46")))) + "0gm4wv9drqvg9r4f0id1ivrfgv0nvh0hb6hp63b3jd14092777im")))) (properties `((upstream-name . "bgx"))) (build-system r-build-system) (propagated-inputs @@ -7298,14 +7471,14 @@ Affymetrix GeneChips.") (define-public r-bhc (package (name "r-bhc") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BHC" version)) (sha256 (base32 - "06milqjg2nl3ra47sxi7a2p2d3mbrx3wk168pqgimvs8snldd2xr")))) + "1n2rkbj8j10f38d40wvi6mwjxnrlfx71a48ab07bp2s0hwhxd7yn")))) (properties `((upstream-name . "BHC"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/BHC/") @@ -7324,14 +7497,14 @@ algorithm which is more efficient for larger data sets.") (define-public r-bicare (package (name "r-bicare") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BicARE" version)) (sha256 (base32 - "0llckbl3l26lf6wgjg7rxs8k1yrk043vvdhnkc6ncg33sydj383y")))) + "1np3967rjx54hbjsynvya75lcsqa6zic6frw5fjwqybwv2pzzw2k")))) (properties `((upstream-name . "BicARE"))) (build-system r-build-system) (propagated-inputs @@ -7348,14 +7521,14 @@ results.") (define-public r-bifet (package (name "r-bifet") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiFET" version)) (sha256 (base32 - "1v2dshs09iy2glzq0vwxmr83x867j844i1ixsfcamvfq33fwbbr5")))) + "191m1xhsj4l64rrh67hqiz1rdkfhw0gfd5aymf3x0xm710l3rh4a")))) (properties `((upstream-name . "BiFET"))) (build-system r-build-system) (propagated-inputs @@ -7378,14 +7551,14 @@ the read count and GC content bias.") (define-public r-rsbml (package (name "r-rsbml") - (version "2.46.0") + (version "2.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rsbml" version)) (sha256 (base32 - "1i1izznnwzrc6m7s3hblfff466icfvxl2gjdqaln8qfg9v87rslx")))) + "0vrjfhwcpc699sq78pkm022fam3ahar8h3lx3fr879dd21k02g61")))) (properties `((upstream-name . "rsbml"))) (build-system r-build-system) (inputs @@ -7406,14 +7579,14 @@ validating output, provides an S4 SBML DOM, converts SBML to R graph objects.") (define-public r-hypergraph (package (name "r-hypergraph") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hypergraph" version)) (sha256 (base32 - "1iq9b9rzy3ikx8xszsjiv3p8l702n2h2s9w33797wcmkg4apslb7")))) + "1p5mzr2aiqqc1j2inh45abjvqhid9jqv6wiym1xxnz16mpaa7q97")))) (properties `((upstream-name . "hypergraph"))) (build-system r-build-system) (propagated-inputs @@ -7428,14 +7601,14 @@ manipulating hypergraphs.") (define-public r-hyperdraw (package (name "r-hyperdraw") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "hyperdraw" version)) (sha256 (base32 - "1qzx5sqp7rpspk8g1j34p03ds1vmw0h7hpzb2ijpbvmsja5drzvf")))) + "0z3a3lpz7s0fw023fxldkgxvl2dl1wn8agnyj09sky11ainxdayz")))) (properties `((upstream-name . "hyperdraw"))) (build-system r-build-system) (inputs `(("graphviz" ,graphviz))) @@ -7452,14 +7625,14 @@ manipulating hypergraphs.") (define-public r-biggr (package (name "r-biggr") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiGGR" version)) (sha256 (base32 - "05afi6hsh1dv6lc6l0dfhvvi8k34wyzf1k1jimam7a6pbrhyy5dk")))) + "1hlsnss6071ck4ky1akxp1dnv3vmd8f85drdziqmm4nc2dfrr14y")))) (properties `((upstream-name . "BiGGR"))) (build-system r-build-system) (propagated-inputs @@ -7482,14 +7655,14 @@ networks and estimated fluxes can be visualized with hypergraphs.") (define-public r-bigmemoryextras (package (name "r-bigmemoryextras") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bigmemoryExtras" version)) (sha256 (base32 - "053bqcd3p4i7agj43ccjxfz40a1sxrymd49vdpfq8ypslkwk7g0g")))) + "1k31h746j8r3f92vj62s38fw12qjkv5814ipcqfbswnxgaan17zj")))) (properties `((upstream-name . "bigmemoryExtras"))) (build-system r-build-system) @@ -7516,14 +7689,14 @@ a file-backed matrix with factor properties.") (define-public r-bigpint (package (name "r-bigpint") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bigPint" version)) (sha256 (base32 - "1m92ngkzimcc37byf0ziphrby8wmjd5hfa53gvfphgaakyj9bjg8")))) + "1axgapy4iyx059777m9faczwwj03h3i5dyrs0rlc84axzhzd2kis")))) (properties `((upstream-name . "bigPint"))) (build-system r-build-system) (propagated-inputs @@ -7559,14 +7732,14 @@ visualizing RNA-sequencing datasets and differentially expressed genes.") (define-public r-chemminer (package (name "r-chemminer") - (version "3.40.0") + (version "3.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChemmineR" version)) (sha256 (base32 - "0cna5xsqflvhlp2k47asxyv3w4ympmz2wy2cwjyzlal6936fjikf")))) + "14q9zhhxgkx5skj424i2rbjdbp5j8jfkxspkhnkwv5i45cvkgh19")))) (properties `((upstream-name . "ChemmineR"))) (build-system r-build-system) (propagated-inputs @@ -7600,14 +7773,14 @@ structures.") (define-public r-bioassayr (package (name "r-bioassayr") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bioassayR" version)) (sha256 (base32 - "1n0gsnxcl0lplqk8rs5ygxrxpx389ddl6wv3ciyz9g2xry5biyfy")))) + "0vxnd8wnhjdfqh47nc6y1ffiy5r9a6n3g2hyk1r9bv6vhrd0ns3f")))) (properties `((upstream-name . "bioassayR"))) (build-system r-build-system) (propagated-inputs @@ -7635,14 +7808,14 @@ available bioactivity data.") (define-public r-biobroom (package (name "r-biobroom") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biobroom" version)) (sha256 (base32 - "06qcrprn58kbrr5kyw1jl6z88b9w9g8xs6rkhrbnz8k7rv373fhf")))) + "07wzamwl07p20s932aym2jkf6c1zz7d9h7kyby5ka4pw4abynlrv")))) (properties `((upstream-name . "biobroom"))) (build-system r-build-system) (propagated-inputs @@ -7667,14 +7840,14 @@ visualize bioinformatics analyses.") (define-public r-graphite (package (name "r-graphite") - (version "1.34.0") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "graphite" version)) (sha256 (base32 - "0rc9cw3picz1y0lwhbzpk03ciij8kij74m15qgzh2ykla7zprb2p")))) + "1ihza8m397qfvr79fhghs2knmw862hwz2akysy39r8hndv6lc7wk")))) (properties `((upstream-name . "graphite"))) (build-system r-build-system) (propagated-inputs @@ -7694,14 +7867,14 @@ symbols).") (define-public r-reactomepa (package (name "r-reactomepa") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ReactomePA" version)) (sha256 (base32 - "1ngilyn1mihwxs4sh5gk9y829xghdmh277cfw3vfgflz9sgwy21x")))) + "04b2ng9jp2bsfbg3wnbg6m6a5c3szcmbypk1lx34i63228g8z98m")))) (properties `((upstream-name . "ReactomePA"))) (build-system r-build-system) (propagated-inputs @@ -7726,14 +7899,14 @@ enrichment analysis and several functions for visualization.") (define-public r-ebarrays (package (name "r-ebarrays") - (version "2.52.0") + (version "2.54.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EBarrays" version)) (sha256 (base32 - "00ld26bld8xgin9zqwxybahvhmqbrvr09jfphg0yr4j4zck6sqgf")))) + "1r2dl19my1hqkq01fqk48pk3agb98vgrplj56kb4srhz2xm0w9pd")))) (properties `((upstream-name . "EBarrays"))) (build-system r-build-system) (propagated-inputs @@ -7750,14 +7923,14 @@ microarray data.") (define-public r-bioccasestudies (package (name "r-bioccasestudies") - (version "1.50.0") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocCaseStudies" version)) (sha256 (base32 - "0fadck1dk1zavpn9yrcwx6zgfi18fw5xfs8svgzipns6bq41j8ix")))) + "03n49b6fvyyzmvdy4yif3cl7yv21c09c8xdx4cvvax5zz4v4sab1")))) (properties `((upstream-name . "BiocCaseStudies"))) (build-system r-build-system) @@ -7772,14 +7945,14 @@ monograph.") (define-public r-biocgraph (package (name "r-biocgraph") - (version "1.50.0") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biocGraph" version)) (sha256 (base32 - "1372bm4y3czqhpki10pnprxfkfncfcsy59zzvf8wj6q03acaavrj")))) + "02y7vizc6jv8y9r8chsda4yysim0ch45i3rasqvv7m85zqsskf75")))) (properties `((upstream-name . "biocGraph"))) (build-system r-build-system) (propagated-inputs @@ -7797,14 +7970,14 @@ different graph related packages produced by Bioconductor.") (define-public r-experimenthub (package (name "r-experimenthub") - (version "1.14.2") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ExperimentHub" version)) (sha256 (base32 - "1kgvprchz1fg8pl1irj62mk2gyb4jcc9iimpypv4c2iccy5bp84x")))) + "1zi7vsrhf1hj27rlzrxl4jd81fqh1yhn0svp2d9w71fizsi71akg")))) (properties `((upstream-name . "ExperimentHub"))) (build-system r-build-system) (propagated-inputs @@ -7831,14 +8004,14 @@ access.") (define-public r-multiassayexperiment (package (name "r-multiassayexperiment") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MultiAssayExperiment" version)) (sha256 (base32 - "0qlfnd86999jqv2nd0ikixi2sfd449dyg3ml4nbs8ycs57c2irgh")))) + "1nx3gikl8vr54862h6wl0q30arnpynla085219lhh61ziswdffrs")))) (properties `((upstream-name . "MultiAssayExperiment"))) (build-system r-build-system) @@ -7866,14 +8039,14 @@ rownames.") (define-public r-bioconcotk (package (name "r-bioconcotk") - (version "1.8.0") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocOncoTK" version)) (sha256 (base32 - "021qzygfwdnd3naz1iqq01zr3zxv3k7wm1lklik24vc7axshxbmk")))) + "1jwp0gww2xyx8qfv5h4y0v3g66mmlyrd1v64xn91si4fsymk4108")))) (properties `((upstream-name . "BiocOncoTK"))) (build-system r-build-system) (propagated-inputs @@ -7911,14 +8084,14 @@ tools for genome-scale analysis of cancer studies.") (define-public r-biocor (package (name "r-biocor") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BioCor" version)) (sha256 (base32 - "1xghclfqv8d23g72g8914br5zjx4sz9zihzczwwmpl15lghpnqwy")))) + "12slrdn98h43j3y7klk3chrwa2ycwm4krhz3l3kfzbxr834mhy19")))) (properties `((upstream-name . "BioCor"))) (build-system r-build-system) (propagated-inputs @@ -7940,14 +8113,14 @@ gene selection, testing relationships, and so on.") (define-public r-biocpkgtools (package (name "r-biocpkgtools") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocPkgTools" version)) (sha256 (base32 - "0l5fvi1m4834n4h0iswbap135s9mpaiabw9czzn1r72ssz86vrcr")))) + "12j4vag40zdgrxfzaqvf3ly7776qyziryz04c3jqzgsqfvzvzz8m")))) (properties `((upstream-name . "BiocPkgTools"))) (build-system r-build-system) (propagated-inputs @@ -7990,24 +8163,27 @@ analytics on packages.") (define-public r-biocset (package (name "r-biocset") - (version "1.2.2") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocSet" version)) (sha256 (base32 - "041hq3rp0kv7kjwcjjrksk8lw3sj6j1v3wdcr8z611k0g0z6p0cj")))) + "16pjg09i0j5qk9s9qzm6fq5q0bgwb4wgqvp6scs06ajgrr07qjqg")))) (properties `((upstream-name . "BiocSet"))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) + ("r-biocio" ,r-biocio) ("r-dplyr" ,r-dplyr) ("r-keggrest" ,r-keggrest) + ("r-ontologyindex" ,r-ontologyindex) ("r-plyr" ,r-plyr) ("r-rlang" ,r-rlang) - ("r-rtracklayer" ,r-rtracklayer) - ("r-tibble" ,r-tibble))) + ("r-s4vectors" ,r-s4vectors) + ("r-tibble" ,r-tibble) + ("r-tidyr" ,r-tidyr))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page @@ -8025,14 +8201,14 @@ accessing web references for elements/sets are also available in BiocSet.") (define-public r-biocworkflowtools (package (name "r-biocworkflowtools") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocWorkflowTools" version)) (sha256 (base32 - "0p9r71ql67sdlgd5pv118lhz8b85pr5y4ijfwzcy8wrr8jwlbddy")))) + "0lvckdy20bhgyhqbccp0rdfi2p6vvip694r27qwpyi5092nfmqh6")))) (properties `((upstream-name . "BiocWorkflowTools"))) (build-system r-build-system) @@ -8058,14 +8234,14 @@ Rmarkdown and LaTeX documents when authoring a Bioconductor Workflow.") (define-public r-biodist (package (name "r-biodist") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bioDist" version)) (sha256 (base32 - "17bvxk0anvsp29j5nbblvaymf8qgbj3sz4ir2l7wj8kb8jfi19cp")))) + "10p4iajpyqgqb35743jm1a33lwbsmax2g4vz9fbbhn2cpiq3chap")))) (properties `((upstream-name . "bioDist"))) (build-system r-build-system) (propagated-inputs @@ -8081,14 +8257,14 @@ distance measures.") (define-public r-pcatools (package (name "r-pcatools") - (version "2.0.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "PCAtools" version)) (sha256 (base32 - "0mnwqrhm1hmhzwrpidf6z207w1ycpm572snvpp5swlg6hnxq6bnc")))) + "1fz9h99yyn49b5rcnkg2kjdfmczfwnc44fpwbia0izj6gx192phb")))) (properties `((upstream-name . "PCAtools"))) (build-system r-build-system) (propagated-inputs @@ -8127,14 +8303,14 @@ dimensional mass cytometry data.") (define-public r-rgreat (package (name "r-rgreat") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rGREAT" version)) (sha256 (base32 - "0n8dw9ibb2klsczcxvvinpi9l53w8cs436i0c8w2jmramayl593v")))) + "0p2b8cqxibxxmsh687y7yvlvr2a5ipiz53jb4wsr8ddypynb1asj")))) (properties `((upstream-name . "rGREAT"))) (build-system r-build-system) (propagated-inputs @@ -8155,14 +8331,14 @@ user's input and automatically retrieving results from GREAT web server.") (define-public r-m3c (package (name "r-m3c") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "M3C" version)) (sha256 (base32 - "0zq8lm4280p8h65i7myscwa4srs5ajh944xv6zni2f5sjyp7ij2y")))) + "05ygi4fd85hh17mlww5wcww8d5z5zvkn2r46s4n6g18mcbv8snv5")))) (properties `((upstream-name . "M3C"))) (build-system r-build-system) (propagated-inputs @@ -8188,14 +8364,14 @@ hypothesis @code{K=1}.") (define-public r-icens (package (name "r-icens") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Icens" version)) (sha256 (base32 - "0fh7wgkrw20f61p06i87nccnbig9wv4m0jcg7cx1rw7g2ndnabgp")))) + "1w94mvh8pai77h4fcaiyacmzs58n4kbiq6bm4z0hk24j1ywph3dr")))) (properties `((upstream-name . "Icens"))) (build-system r-build-system) (propagated-inputs @@ -8274,13 +8450,13 @@ with: (define-public r-fourcseq (package (name "r-fourcseq") - (version "1.22.1") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "FourCSeq" version)) (sha256 - (base32 "14q1ijnqnbd9xs60sfvyqjfiypjrvhacpwp2v85yfhcxw870cx5b")))) + (base32 "1rwdphcj26xis47n8j1fiyc3k3qbsgn0bhf5bhgy5vm11yqyvicb")))) (properties `((upstream-name . "FourCSeq"))) (build-system r-build-system) (propagated-inputs @@ -8318,14 +8494,14 @@ generated.") (define-public r-preprocesscore (package (name "r-preprocesscore") - (version "1.50.0") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "preprocessCore" version)) (sha256 (base32 - "0q1406kswylc8zn5k3wyd34p34pfzbhi1ggkfsh30zcjp6adbwjl")))) + "1i5ky3bfbkrz4lgfs72fkckr8q3wq48p38mp05cjmnmh1chmdw38")))) (properties `((upstream-name . "preprocessCore"))) (build-system r-build-system) @@ -8379,14 +8555,14 @@ data manipulation and visualization.") (define-public r-rgraphviz (package (name "r-rgraphviz") - (version "2.32.0") + (version "2.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rgraphviz" version)) (sha256 (base32 - "1calpvzgcz6v7s4x6bf35kj83sga95zjp7x87p5d3qnbv7q2wz5y")))) + "1k0nrskak2v5xv7za226r3wypja3zxxmmc0cxz2imjhlgnkbha77")))) (properties `((upstream-name . "Rgraphviz"))) (build-system r-build-system) (arguments @@ -8417,13 +8593,13 @@ objects from the @code{graph} package.") (define-public r-fithic (package (name "r-fithic") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "FitHiC" version)) (sha256 (base32 - "1dffkdxm08wq4kjd9j2v2625x3p6vbrk33a2zx94pwpgkghr72yp")))) + "1sdfkqc6s7m9whkzr0mllzzfjzhj2g54ncjwxj8q0azjgszrfwd2")))) (properties `((upstream-name . "FitHiC"))) (build-system r-build-system) (propagated-inputs @@ -8443,13 +8619,13 @@ assays such as Hi-C.") (define-public r-hitc (package (name "r-hitc") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HiTC" version)) (sha256 (base32 - "1jx2pfa7sbdz7xi466lz1h5xv126g56z73n0a5l2wrq28k47qaxy")))) + "1xbh36qgmzl8b6xq0hnl41li2x18yma50fq0v4dglh2ddn7as9iy")))) (properties `((upstream-name . "HiTC"))) (build-system r-build-system) (propagated-inputs @@ -8472,16 +8648,27 @@ provided.") (define-public r-hdf5array (package (name "r-hdf5array") - (version "1.16.1") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HDF5Array" version)) (sha256 (base32 - "01767v90nl0499jcicpxngbbs0af5p9c5aasi5va01w3v5bnqddn")))) + "1hr149q03p09y1cjnx8av854j53041wfyq66xpsjw4mypzjf6f28")))) (properties `((upstream-name . "HDF5Array"))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-linking + (lambda _ + (substitute* "src/Makevars" + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\(RHDF5LIB_LIBS\\)" match) + (string-append match "/libhdf5.a"))) + #t))))) (inputs `(("zlib" ,zlib))) (propagated-inputs @@ -8502,14 +8689,14 @@ block processing.") (define-public r-rhdf5lib (package (name "r-rhdf5lib") - (version "1.10.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhdf5lib" version)) (sha256 (base32 - "0f45sqrvzj6x4mckalyp8366hm8v0rrmzklx3xd4gs6l2wallcn9")) + "0wia85a6dkgibsjcmpqas5068msck3h3bqpgw2x07bk189z4vay2")) (modules '((guix build utils))) (snippet '(begin @@ -8544,6 +8731,8 @@ block processing.") ;; Remove unnecessary store reference. (("C Compiler:.*") "C Compiler: GCC\n")) + (rename-file "hdf5/src/libhdf5.settings.in" + "hdf5/src/libhdf5.settings") (rename-file "Makevars.in" "Makevars") (substitute* "Makevars" (("@ZLIB_LIB@") "-lz") @@ -8584,14 +8773,14 @@ packages.") (define-public r-beachmat (package (name "r-beachmat") - (version "2.4.0") + (version "2.6.2") (source (origin (method url-fetch) (uri (bioconductor-uri "beachmat" version)) (sha256 (base32 - "1vl6jbf9ia78cm4ikdb8vz04jv4b46zhvg5i006c63a9pzw7zhxi")))) + "1yxm5andf4hsxxsmwrn5vl79707yfqkhzzajq6fvhsmaad3f97n7")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8609,14 +8798,14 @@ matrices.") (define-public r-singlecellexperiment (package (name "r-singlecellexperiment") - (version "1.10.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SingleCellExperiment" version)) (sha256 (base32 - "092wvk11n7pa234vlwhxm3gdi4k3sbnz1splhxalbdhz3jf02zfp")))) + "0wpgb2rhxxlclpmwl08iyfy204f7gpj8ijd0qdy4j41c58bl4qm2")))) (properties `((upstream-name . "SingleCellExperiment"))) (build-system r-build-system) @@ -8635,20 +8824,54 @@ factors for each cell, along with the usual metadata for genes and libraries.") (license license:gpl3))) +(define-public r-scuttle + (package + (name "r-scuttle") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "scuttle" version)) + (sha256 + (base32 + "0l2r6fhyd33dllf2mc5a1pd5sawfvcin54pgh9l1nafqzg3sdv2m")))) + (properties `((upstream-name . "scuttle"))) + (build-system r-build-system) + (propagated-inputs + `(("r-beachmat" ,r-beachmat) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-delayedarray" ,r-delayedarray) + ("r-delayedmatrixstats" ,r-delayedmatrixstats) + ("r-genomicranges" ,r-genomicranges) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp) + ("r-s4vectors" ,r-s4vectors) + ("r-singlecellexperiment" ,r-singlecellexperiment) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/scuttle") + (synopsis "Single-cell RNA-Seq analysis utilities") + (description + "This package provides basic utility functions for performing single-cell +analyses, focusing on simple normalization, quality control and data +transformations. It also provides some helper functions to assist development +of other packages.") + (license license:gpl3))) + (define-public r-scater (package (name "r-scater") - (version "1.16.2") + (version "1.18.3") (source (origin (method url-fetch) (uri (bioconductor-uri "scater" version)) (sha256 (base32 - "1pa5wvgjb30rw1vsjwbnn07ss3sc5n8ck5d7khdby4r2s9177s33")))) + "14f7yw277nykxmcm7wlhlsf3nizpwzz24hax1icx73lavfxmc535")))) (build-system r-build-system) (propagated-inputs - `(("r-beachmat" ,r-beachmat) - ("r-biocgenerics" ,r-biocgenerics) + `(("r-biocgenerics" ,r-biocgenerics) ("r-biocneighbors" ,r-biocneighbors) ("r-biocparallel" ,r-biocparallel) ("r-biocsingular" ,r-biocsingular) @@ -8656,10 +8879,11 @@ libraries.") ("r-delayedmatrixstats" ,r-delayedmatrixstats) ("r-ggbeeswarm" ,r-ggbeeswarm) ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) ("r-matrix" ,r-matrix) - ("r-rcpp" ,r-rcpp) ("r-rlang" ,r-rlang) ("r-s4vectors" ,r-s4vectors) + ("r-scuttle" ,r-scuttle) ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-summarizedexperiment" ,r-summarizedexperiment) ("r-viridis" ,r-viridis))) @@ -8675,14 +8899,14 @@ quality control.") (define-public r-scran (package (name "r-scran") - (version "1.16.0") + (version "1.18.1") (source (origin (method url-fetch) (uri (bioconductor-uri "scran" version)) (sha256 (base32 - "1gm4ys4aq8h1pn45k1rxk384wjyf55izivw8kgxbrflj6j4xvvsv")))) + "1zap12rm61z2hg6ykknbif478nr7g468v8mp50bj5hqgi69ywcww")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) @@ -8691,17 +8915,17 @@ quality control.") ("r-biocneighbors" ,r-biocneighbors) ("r-biocparallel" ,r-biocparallel) ("r-biocsingular" ,r-biocsingular) + ("r-bluster" ,r-bluster) ("r-delayedarray" ,r-delayedarray) ("r-delayedmatrixstats" ,r-delayedmatrixstats) ("r-dqrng" ,r-dqrng) ("r-edger" ,r-edger) ("r-igraph" ,r-igraph) - ("r-iranges" ,r-iranges) ("r-limma" ,r-limma) ("r-matrix" ,r-matrix) ("r-rcpp" ,r-rcpp) ("r-s4vectors" ,r-s4vectors) - ("r-scater" ,r-scater) + ("r-scuttle" ,r-scuttle) ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-statmod" ,r-statmod) ("r-summarizedexperiment" ,r-summarizedexperiment))) @@ -8715,17 +8939,45 @@ cell-specific biases, assignment of cell cycle phase, and detection of highly variable and significantly correlated genes.") (license license:gpl3))) +(define-public r-sparsematrixstats + (package + (name "r-sparsematrixstats") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "sparseMatrixStats" version)) + (sha256 + (base32 + "0d1idbda1pzhdam9m0i5rn0c6pl7gwv0v3mcrv4wi5760v9qd5qh")))) + (properties + `((upstream-name . "sparseMatrixStats"))) + (build-system r-build-system) + (propagated-inputs + `(("r-matrix" ,r-matrix) + ("r-matrixgenerics" ,r-matrixgenerics) + ("r-matrixstats" ,r-matrixstats) + ("r-rcpp" ,r-rcpp))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/sparseMatrixStats/") + (synopsis "Summary statistics for rows and columns of sparse matrices") + (description + "This package provides high performance functions for row and column +operations on sparse matrices. Currently, the optimizations are limited to +data in the column sparse format.") + (license license:expat))) + (define-public r-delayedmatrixstats (package (name "r-delayedmatrixstats") - (version "1.10.1") + (version "1.12.1") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedMatrixStats" version)) (sha256 (base32 - "046sam0rz42ph0m7jz7v3bck7d3h2mp45gzywh5dvc1qkjq6fdxx")))) + "1cyvj6ffl10vaiip146dldc1w8if854kpz9nhi50ndhpkmdb8sa0")))) (properties `((upstream-name . "DelayedMatrixStats"))) (build-system r-build-system) @@ -8735,8 +8987,10 @@ variable and significantly correlated genes.") ("r-hdf5array" ,r-hdf5array) ("r-iranges" ,r-iranges) ("r-matrix" ,r-matrix) + ("r-matrixgenerics" ,r-matrixgenerics) ("r-matrixstats" ,r-matrixstats) - ("r-s4vectors" ,r-s4vectors))) + ("r-s4vectors" ,r-s4vectors) + ("r-sparsematrixstats" ,r-sparsematrixstats))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://github.com/PeteHaitch/DelayedMatrixStats") @@ -8750,3 +9004,186 @@ contains high-performing functions operating on rows and columns of are optimized per data type and for subsetted calculations such that both memory usage and processing time is minimized.") (license license:expat))) + +(define-public r-mscoreutils + (package + (name "r-mscoreutils") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "MsCoreUtils" version)) + (sha256 + (base32 + "0fa3bcf2cmzf5y8wjs7pnzs26qwgqnrrl4hj4sa4fp9kv8z80630")))) + (properties `((upstream-name . "MsCoreUtils"))) + (build-system r-build-system) + (propagated-inputs + `(("r-mass" ,r-mass) + ("r-rcpp" ,r-rcpp) + ("r-s4vectors" ,r-s4vectors))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/RforMassSpectrometry/MsCoreUtils") + (synopsis "Core utils for mass spectrometry data") + (description + "This package defines low-level functions for mass spectrometry data and +is independent of any high-level data structures. These functions include +mass spectra processing functions (noise estimation, smoothing, binning), +quantitative aggregation functions (median polish, robust summarisation, +etc.), missing data imputation, data normalisation (quantiles, vsn, etc.) as +well as misc helper functions, that are used across high-level data structure +within the R for Mass Spectrometry packages.") + (license license:artistic2.0))) + +(define-public r-biocio + (package + (name "r-biocio") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "BiocIO" version)) + (sha256 + (base32 + "06gg5ra3r7q4b6mz14c2s9d453cnh1lxh517ffl9f8dr8vwv5s18")))) + (properties `((upstream-name . "BiocIO"))) + (build-system r-build-system) + (propagated-inputs + `(("r-biocgenerics" ,r-biocgenerics) + ("r-genomicranges" ,r-genomicranges) + ("r-rcurl" ,r-rcurl) + ("r-s4vectors" ,r-s4vectors))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://bioconductor.org/packages/BiocIO") + (synopsis "Standard input and output for Bioconductor packages") + (description + "This package implements `import()` and `export()` standard generics for +importing and exporting biological data formats. `import()` supports +whole-file as well as chunk-wise iterative import. The `import()` interface +optionally provides a standard mechanism for 'lazy' access via `filter()` (on +row or element-like components of the file resource), `select()` (on +column-like components of the file resource) and `collect()`. The `import()` +interface optionally provides transparent access to remote (e.g. via https) +as well as local access. Developers can register a file extension, e.g., +`.loom` for dispatch from character-based URIs to specific `import()` / +`export()` methods based on classes representing file types, e.g., +`LoomFile()`.") + (license license:artistic2.0))) + +(define-public r-msmseda + (package + (name "r-msmseda") + (version "1.28.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "msmsEDA" version)) + (sha256 + (base32 + "1llmy8msxmrqik3s3439wffma1662vwvvcaz8q0a4g5ridkmdbrx")))) + (properties `((upstream-name . "msmsEDA"))) + (build-system r-build-system) + (propagated-inputs + `(("r-gplots" ,r-gplots) + ("r-mass" ,r-mass) + ("r-msnbase" ,r-msnbase) + ("r-rcolorbrewer" ,r-rcolorbrewer))) + (home-page + "https://bioconductor.org/packages/msmsEDA") + (synopsis "Exploratory data analysis of LC-MS/MS data by spectral counts") + (description + "Exploratory data analysis to assess the quality of a set of LC-MS/MS +experiments, and visualize de influence of the involved factors.") + (license license:gpl2))) + +(define-public r-msmstests + (package + (name "r-msmstests") + (version "1.28.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "msmsTests" version)) + (sha256 + (base32 + "1zsnmzj1qvjdwz7mwg9wrsk5iskpqs0f6jccqn8mxy9dgkskmp0j")))) + (properties `((upstream-name . "msmsTests"))) + (build-system r-build-system) + (propagated-inputs + `(("r-edger" ,r-edger) + ("r-msmseda" ,r-msmseda) + ("r-msnbase" ,r-msnbase) + ("r-qvalue" ,r-qvalue))) + (home-page + "https://bioconductor.org/packages/msmsTests") + (synopsis "Differential LC-MS/MS expression tests") + (description + "This packages provides statistical tests for label-free LC-MS/MS data +by spectral counts, to discover differentially expressed proteins between two +biological conditions. Three tests are available: Poisson GLM regression, +quasi-likelihood GLM regression, and the negative binomial of the edgeR +package.The three models admit blocking factors to control for nuissance +variables.To assure a good level of reproducibility a post-test filter is +available, where we may set the minimum effect size considered biologicaly +relevant, and the minimum expression of the most abundant condition.") + (license license:gpl2))) + +(define-public r-catalyst + (package + (name "r-catalyst") + (version "1.14.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "CATALYST" version)) + (sha256 + (base32 + "13af7c4irx1f5yqi32k7kj661vzg32wn3dnps7r9pjijfl4drhrh")))) + (properties `((upstream-name . "CATALYST"))) + (build-system r-build-system) + (propagated-inputs + `(("r-circlize" ,r-circlize) + ("r-complexheatmap" ,r-complexheatmap) + ("r-consensusclusterplus" ,r-consensusclusterplus) + ("r-cowplot" ,r-cowplot) + ("r-data-table" ,r-data-table) + ("r-dplyr" ,r-dplyr) + ("r-drc" ,r-drc) + ("r-flowcore" ,r-flowcore) + ("r-flowsom" ,r-flowsom) + ("r-ggplot2" ,r-ggplot2) + ("r-ggrepel" ,r-ggrepel) + ("r-ggridges" ,r-ggridges) + ("r-gridextra" ,r-gridextra) + ("r-magrittr" ,r-magrittr) + ("r-matrix" ,r-matrix) + ("r-matrixstats" ,r-matrixstats) + ("r-nnls" ,r-nnls) + ("r-purrr" ,r-purrr) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-reshape2" ,r-reshape2) + ("r-rtsne" ,r-rtsne) + ("r-s4vectors" ,r-s4vectors) + ("r-scales" ,r-scales) + ("r-scater" ,r-scater) + ("r-singlecellexperiment" ,r-singlecellexperiment) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page + "https://github.com/HelenaLC/CATALYST") + (synopsis "Cytometry data analysis tools") + (description + "This package is Cytometry dATa anALYSis Tools (CATALYST). Mass +cytometry (CyTOF) uses heavy metal isotopes rather than fluorescent tags as +reporters to label antibodies, thereby substantially decreasing spectral +overlap and allowing for examination of over 50 parameters at the single cell +level. While spectral overlap is significantly less pronounced in CyTOF than +flow cytometry, spillover due to detection sensitivity, isotopic impurities, +and oxide formation can impede data interpretability. We designed +CATALYST (Cytometry dATa anALYSis Tools) to provide a pipeline for +preprocessing of cytometry data, including i) normalization using bead +standards, ii) single-cell deconvolution, and iii) bead-based compensation.") + (license license:gpl2+))) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 390f704154..172bb85791 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -7142,14 +7142,14 @@ information as possible.") (define-public r-genefilter (package (name "r-genefilter") - (version "1.70.0") + (version "1.72.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genefilter" version)) (sha256 (base32 - "1sbbrnq6p90fri0ik6aq2zw26kasw63nyiy7xkzrj6vgyq7x258g")))) + "0929g6c4v2qhgipgrh1a5gv6444sm2dp52x9c3qbk03i8wzc6633")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran) @@ -7170,14 +7170,14 @@ high-throughput sequencing experiments.") (define-public r-deseq2 (package (name "r-deseq2") - (version "1.28.1") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq2" version)) (sha256 (base32 - "0xh12c2skr0bbv893p05gvbismkcnqw8zwh7yz4wmycgajfzg2pp")))) + "0q2f9cywrcmp1p7ii8f45g4dk4hsnjflq3yqhsxgnpv9fw338qpp")))) (properties `((upstream-name . "DESeq2"))) (build-system r-build-system) (propagated-inputs @@ -7208,14 +7208,14 @@ distribution.") (define-public r-dexseq (package (name "r-dexseq") - (version "1.34.1") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DEXSeq" version)) (sha256 (base32 - "1m03awaw06mfv5gszq23k5apsqqzjqa5rcwp20y4xbpl7bywpsyl")))) + "0wfjb42xcr4wjy8a654b74411dky8hp6sp8xdwf0sxqgsxy106qi")))) (properties `((upstream-name . "DEXSeq"))) (build-system r-build-system) (propagated-inputs @@ -7253,14 +7253,14 @@ exploration of the results.") (define-public r-annotationforge (package (name "r-annotationforge") - (version "1.30.1") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationForge" version)) (sha256 (base32 - "1a2155jxbwc6qr3dcyvp850grhdr7czc7bs3s87ff4sgdl0jp3jw")))) + "0y3820dkvwz09wlmz9drx6gqpsr9cwppaiz40zafwfxbz65y8px7")))) (properties `((upstream-name . "AnnotationForge"))) (build-system r-build-system) @@ -7285,14 +7285,14 @@ databases. Packages produced are intended to be used with AnnotationDbi.") (define-public r-rbgl (package (name "r-rbgl") - (version "1.64.0") + (version "1.66.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RBGL" version)) (sha256 (base32 - "079599a6xn2i7snfn2vgshkw0c00rrfhj44pvi03ap8id29bkayy")))) + "016vyzgixb3gjpzi21rbs6ngnnqcxr77krwjjf1ldnzzj8vqrqsz")))) (properties `((upstream-name . "RBGL"))) (build-system r-build-system) (propagated-inputs @@ -7308,14 +7308,14 @@ the graph algorithms contained in the Boost library.") (define-public r-gseabase (package (name "r-gseabase") - (version "1.50.1") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GSEABase" version)) (sha256 (base32 - "1k4faj53cwvqijad8cf7fcghzxcv9shlbpl8n73bsncc8k192y2j")))) + "0lcxbxfg62zdf2nql49asn3555cqrrxpjm2xsxf7vlxv84dl6r44")))) (properties `((upstream-name . "GSEABase"))) (build-system r-build-system) (propagated-inputs @@ -7337,14 +7337,14 @@ Enrichment Analysis} (GSEA).") (define-public r-category (package (name "r-category") - (version "2.54.0") + (version "2.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Category" version)) (sha256 (base32 - "1grspdzk5a4vidnxwcd1jmy1vcn494aydsp3vydx235yv7iqac1b")))) + "0m77wpnica0h2ia9ajdaiga4plgz1s9wls6pdnxzk7kwl8a68wkr")))) (properties `((upstream-name . "Category"))) (build-system r-build-system) (propagated-inputs @@ -7368,14 +7368,14 @@ analysis.") (define-public r-gostats (package (name "r-gostats") - (version "2.54.0") + (version "2.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GOstats" version)) (sha256 (base32 - "00q39cyv4l28r6s9gjnd0qhl7h80vmwp4lpmchisqzj44xzyics9")))) + "18q8p0fv9fl2r6zjxknfjwqxr69dlyxy6c8amzn6c6dwjq1cxk6j")))) (properties `((upstream-name . "GOstats"))) (build-system r-build-system) (propagated-inputs @@ -7399,14 +7399,14 @@ testing and other simple calculations.") (define-public r-shortread (package (name "r-shortread") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ShortRead" version)) (sha256 (base32 - "0l4kdln69y6yhln0xiv2jmpxg05fjcglln406p43a2bqvk2lr03d")))) + "0w4m8d3h660mmr2ymp206r1n4aqssxmkv8yxkbr5y1swrahxzfk9")))) (properties `((upstream-name . "ShortRead"))) (build-system r-build-system) (inputs @@ -7419,6 +7419,7 @@ testing and other simple calculations.") ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicalignments" ,r-genomicalignments) ("r-genomicranges" ,r-genomicranges) + ("r-rhtslib" ,r-rhtslib) ("r-hwriter" ,r-hwriter) ("r-iranges" ,r-iranges) ("r-lattice" ,r-lattice) @@ -7441,14 +7442,14 @@ ungapped alignment formats.") (define-public r-systempiper (package (name "r-systempiper") - (version "1.22.0") + (version "1.24.2") (source (origin (method url-fetch) (uri (bioconductor-uri "systemPipeR" version)) (sha256 (base32 - "01ilhlrvy28jfdyxjria4024yryj5zgympgqznw17g3y3az78kk2")))) + "0blvvci57q12sl18yvw07233rfnj47mfadzm0pdpig1ll5z6ld2j")))) (properties `((upstream-name . "systemPipeR"))) (build-system r-build-system) (propagated-inputs @@ -7464,6 +7465,7 @@ ungapped alignment formats.") ("r-ggplot2" ,r-ggplot2) ("r-go-db" ,r-go-db) ("r-gostats" ,r-gostats) + ("r-iranges" ,r-iranges) ("r-limma" ,r-limma) ("r-magrittr" ,r-magrittr) ("r-pheatmap" ,r-pheatmap) @@ -7494,14 +7496,14 @@ annotation infrastructure.") (define-public r-grohmm (package (name "r-grohmm") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "groHMM" version)) (sha256 (base32 - "04z9qq1xwdsaxbqhyld37w0ybvzly9pc1hcyrnwdbyjwd7n1fncb")))) + "08pap9wsaxl4jjlc1py0rc019gmi6daa0f9cr3ih1d97wybncanx")))) (properties `((upstream-name . "groHMM"))) (build-system r-build-system) (propagated-inputs @@ -7727,13 +7729,13 @@ BLAST, KEGG, GenBank, MEDLINE and GO.") (define-public r-biocviews (package (name "r-biocviews") - (version "1.56.2") + (version "1.58.1") (source (origin (method url-fetch) (uri (bioconductor-uri "biocViews" version)) (sha256 (base32 - "0kw0qfm1fw5yv2rbz6x23431rh0fnzj66f2bls7j285biyjmmx7w")))) + "1by2639z7n62z84dr8rj9jz12gsd1k8q42zsnxacxbwfwp6h0cl4")))) (properties `((upstream-name . "biocViews"))) (build-system r-build-system) @@ -7755,13 +7757,13 @@ also known as views, in a controlled vocabulary.") (define-public r-biocstyle (package (name "r-biocstyle") - (version "2.16.1") + (version "2.18.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocStyle" version)) (sha256 (base32 - "09sz2bnbfbj8wz16k0q8xrvag9fldxqyp5vbg9pvd9skh28hv7c7")))) + "0rsxyna4dd99x42vc82mlkxx774vb9375llpakg53max1hhwkrqp")))) (properties `((upstream-name . "BiocStyle"))) (build-system r-build-system) @@ -7783,13 +7785,13 @@ functionality.") (define-public r-bioccheck (package (name "r-bioccheck") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocCheck" version)) (sha256 (base32 - "1p9ys18sn1crxw1iac2jdgqvwpb5hjd9nfxx0qn0ncrv0b550mny")))) + "1hyncn9zqj432da95k86rm5b28nbwrvzm52jbhisifkxj1j43cib")))) (properties `((upstream-name . "BiocCheck"))) (build-system r-build-system) @@ -7832,13 +7834,13 @@ checks on R packages that are to be submitted to the Bioconductor repository.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.26.1") + (version "0.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "1ddr3ngyczx332zw9ai1a6h7442lgrbfcj8vrhvbkdkzqwj14xmb")))) + "0rfn46g2mfda01s75vpcfn5jc7xkp0jrl5v79gyd40jm37p4j1zv")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7859,13 +7861,13 @@ S4Vectors package itself.") (define-public r-iranges (package (name "r-iranges") - (version "2.22.2") + (version "2.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "1y24jw62806wp2afiyj1x6n00gj7d3323klqdypra9q43pg1w49d")))) + "1lfc8xz45v63y3q40im00i944hi0p9idwhx50w3nzkwdpk79315b")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) @@ -7911,13 +7913,13 @@ ID and species. It is used by functions in the GenomeInfoDb package.") (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.24.2") + (version "1.26.2") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "1cqs53p4m5q1dr59war72bccphy01ilw4xra24fmngrv4x32rznd")))) + "092izc49maxjhf6m4b0qx21ad16dz7bmxy5pysp3vkyhdrfa2f7v")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) @@ -7941,13 +7943,13 @@ names in their natural, rather than lexicographic, order.") (define-public r-edger (package (name "r-edger") - (version "3.30.3") + (version "3.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "edgeR" version)) (sha256 (base32 - "1z9bkg08rgqn3jm2s4ndbj641w33wl8jd3j6m5if6h2nnw6011ic")))) + "0dkjd6li270icy1x5qbzpakk9bx712mdm5k32lrr3yrggq92jhjg")))) (properties `((upstream-name . "edgeR"))) (build-system r-build-system) (propagated-inputs @@ -7969,17 +7971,15 @@ CAGE.") (define-public r-variantannotation (package (name "r-variantannotation") - (version "1.34.0") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantAnnotation" version)) (sha256 (base32 - "09y6ymwky839nb0y7y93w810hk9mvwqn7595q1276c28dkddiqvw")))) + "1sl0l6v05lfglj281nszma0h5k234md7rn2pdah8vs2d4iq3kimw")))) (properties `((upstream-name . "VariantAnnotation"))) - (inputs - `(("zlib" ,zlib))) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) @@ -7991,6 +7991,7 @@ CAGE.") ("r-genomicfeatures" ,r-genomicfeatures) ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) + ("r-matrixgenerics" ,r-matrixgenerics) ("r-summarizedexperiment" ,r-summarizedexperiment) ("r-rhtslib" ,r-rhtslib) ("r-rsamtools" ,r-rsamtools) @@ -8008,13 +8009,13 @@ coding changes and predict coding outcomes.") (define-public r-limma (package (name "r-limma") - (version "3.44.3") + (version "3.46.0") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "09fnqxx4rzq5n447aqg2l6y0idfwgz2jxz99sifxsr2q8afzbcj6")))) + "1xxv493q1kip9bjfv7v7k5dnq7hz7gvl80i983v4mvwavhgnbxfz")))) (build-system r-build-system) (home-page "http://bioinf.wehi.edu.au/limma") (synopsis "Package for linear models for microarray and RNA-seq data") @@ -8027,13 +8028,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-xvector (package (name "r-xvector") - (version "0.28.0") + (version "0.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "XVector" version)) (sha256 (base32 - "11h1hszv4798q1gbx8r6zf8vlaqx4v9ql0lbh2xaxybp66a03pvc")))) + "1pqljikg4f6jb7wgm5537zwgq5b013nyz1agjrwfq2cljb0ym6lq")))) (properties `((upstream-name . "XVector"))) (build-system r-build-system) @@ -8063,13 +8064,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "0wn1zr2qq0rpv9z2wialgizn6xzdlcjg1w2kif67n53svz6vk2x1")))) + "0j4py5g6pdj35xhlaqhxxhg55j9l4mcdk3yck4dgyavv5f2dh24i")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) @@ -8094,13 +8095,13 @@ manipulating genomic intervals and variables defined along a genome.") (define-public r-biobase (package (name "r-biobase") - (version "2.48.0") + (version "2.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biobase" version)) (sha256 (base32 - "13p3kgnxm7hbn8cy289kbhaiyfa6rxx7l1pbvajwqzbay3cxznqp")))) + "11kgc4flywlm3i18603558l8ksv91c24vkc5fnnbcd375i2dhhd4")))) (properties `((upstream-name . "Biobase"))) (build-system r-build-system) @@ -8116,13 +8117,13 @@ on Bioconductor or which replace R functions.") (define-public r-annotationdbi (package (name "r-annotationdbi") - (version "1.50.3") + (version "1.52.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationDbi" version)) (sha256 (base32 - "0qcxfn4pvaksna0nvxr74ysn2wzaxn732pkhd6ffrj8pwhkhy5p3")))) + "0zqxgh3nx6y8ry12s2vss2f4axz5vpqxha1y4ifhhcx4zhpzsglr")))) (properties `((upstream-name . "AnnotationDbi"))) (build-system r-build-system) @@ -8145,13 +8146,13 @@ annotation data packages using SQLite data storage.") (define-public r-biomart (package (name "r-biomart") - (version "2.44.1") + (version "2.46.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biomaRt" version)) (sha256 (base32 - "0np4nh3gj60mgb6312z7x0z9fg5bhrhw872sp3dzgmqc8q8b84iz")))) + "1zpdm8nw1d0m31pdmzw1dccbd6iczfhiklhm4d325zkzf3jrkvxf")))) (properties `((upstream-name . "biomaRt"))) (build-system r-build-system) @@ -8163,7 +8164,8 @@ annotation data packages using SQLite data storage.") ("r-progress" ,r-progress) ("r-rappdirs" ,r-rappdirs) ("r-stringr" ,r-stringr) - ("r-xml" ,r-xml))) + ("r-xml" ,r-xml) + ("r-xml2" ,r-xml2))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/biomaRt") @@ -8182,13 +8184,13 @@ powerful online queries from gene annotation to database mining.") (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.22.0") + (version "1.24.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "1lsg5xm5j3ly5k60fidzhkgqc9jgscyfkqngjvd9qp6yfzvsb82g")))) + "1iryicvmcagcrj29kp49mqhiq2kn72j4idj380hi9illmdrg9ism")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) @@ -8209,13 +8211,13 @@ objects.") (define-public r-biostrings (package (name "r-biostrings") - (version "2.56.0") + (version "2.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biostrings" version)) (sha256 (base32 - "0imhfz7dg8b3l5qzipjranqqshdsg2x6zc49drlhn8sc7j40cvi8")))) + "1rbqhs73mhfr1gi0rx28jiyan7i3hb45ai3jpl1656fnrhgjfxq5")))) (properties `((upstream-name . "Biostrings"))) (build-system r-build-system) @@ -8236,13 +8238,13 @@ biological sequences or sets of sequences.") (define-public r-rsamtools (package (name "r-rsamtools") - (version "2.4.0") + (version "2.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsamtools" version)) (sha256 (base32 - "0z01z0s71f941k7sns46nyabps28c69d6jxx6sppjpc6h4vrw0vq")))) + "040pggkwglc6wy90qnc7xcdnaj0v3iqlykvvsl74241409qly554")))) (properties `((upstream-name . "Rsamtools"))) (build-system r-build-system) @@ -8256,8 +8258,6 @@ biological sequences or sets of sequences.") (substitute* "NAMESPACE" (("import\\(zlibbioc\\)") "")) #t))))) - (inputs - `(("zlib" ,zlib))) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) ("r-biocparallel" ,r-biocparallel) @@ -8281,13 +8281,13 @@ tab-delimited (tabix) files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.14.1") + (version "0.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "0xi0i621hrl7k9rsc8x8nc3ib74sk8hxhbyr2lxqclw45pk95s7v")))) + "1564wnradxw15nsnv6w2wd3xngcs3xa1mlibbq3hygi5fcx4fk3g")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) @@ -8296,7 +8296,7 @@ tab-delimited (tabix) files.") ("r-s4vectors" ,r-s4vectors) ("r-iranges" ,r-iranges) ("r-matrix" ,r-matrix) - ("r-matrixstats" ,r-matrixstats))) + ("r-matrixgenerics" ,r-matrixgenerics))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/DelayedArray") @@ -8314,13 +8314,13 @@ array-like objects like @code{DataFrame} objects (typically with Rle columns), (define-public r-summarizedexperiment (package (name "r-summarizedexperiment") - (version "1.18.2") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SummarizedExperiment" version)) (sha256 (base32 - "1raw5ycigr6gjgzn3kx3jls5hzww10fhnwd8c17c20hmhirf13rw")))) + "04x6d4mcsnvz6glkmf6k2cv3fs8zk03i9rvv0ahpl793n8l411ps")))) (properties `((upstream-name . "SummarizedExperiment"))) (build-system r-build-system) @@ -8332,6 +8332,7 @@ array-like objects like @code{DataFrame} objects (typically with Rle columns), ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) ("r-matrix" ,r-matrix) + ("r-matrixgenerics" ,r-matrixgenerics) ("r-s4vectors" ,r-s4vectors))) (native-inputs `(("r-knitr" ,r-knitr))) @@ -8347,13 +8348,13 @@ samples.") (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "0v8k6d7frm5p48cmk4zik78cw9abz4inx0zhl4zrmmx31ifyvk8d")))) + "1q95px6s6snsax4ax955zzpdlrwp5liwf70wqq0lrk9mp6lq0hbr")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) @@ -8380,13 +8381,13 @@ alignments.") (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "1zcgk92sidhy4y7ws9ms4nkkh2hnccfhfh53qgna0kma9jy4v5xf")))) + "12zimhpdzjyzd81wrzz5hdbzvlgzcs22x1nnaf2jq4cba3ch5px8")))) (build-system r-build-system) (arguments `(#:phases @@ -8413,7 +8414,8 @@ alignments.") ("r-rsamtools" ,r-rsamtools) ("r-s4vectors" ,r-s4vectors) ("r-xml" ,r-xml) - ("r-xvector" ,r-xvector))) + ("r-xvector" ,r-xvector) + ("r-zlibbioc" ,r-zlibbioc))) (home-page "https://bioconductor.org/packages/rtracklayer") (synopsis "R interface to genome browsers and their annotation tracks") (description @@ -8427,13 +8429,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.40.1") + (version "1.42.1") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "0zm7q957g952qyfqmvf27sldsnq6sqd0wlgnqzvmxayg9pxh0l0z")))) + "17dyd9hcw6pw16y353dh55wfhxmkxka99lbsxsp9xyrhffwrxi0s")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) @@ -8494,13 +8496,13 @@ information about the latest version of the Gene Ontologies.") (define-public r-topgo (package (name "r-topgo") - (version "2.40.0") + (version "2.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "topGO" version)) (sha256 (base32 - "13rhbvn27sj75fklf1cnjaazacx8yyjlhqlnbp5zk157q6y5cwdr")))) + "0vr3l9gvd3dhy446k3fkj6rm7z1abxi56rbnrs64297yzxaz1ngl")))) (properties `((upstream-name . "topGO"))) (build-system r-build-system) @@ -8527,13 +8529,13 @@ dependencies between GO terms can be implemented and applied.") (define-public r-bsgenome (package (name "r-bsgenome") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome" version)) (sha256 (base32 - "1jw8r1qm9fpg2s1cw2y4np243jjxm65j2xdy2785h8fc1b02msf6")))) + "1gbvmxr6r57smgvhqgwspbcnwyk4hsfkxkpzzcs6470q03zfb4wq")))) (properties `((upstream-name . "BSgenome"))) (build-system r-build-system) @@ -8558,13 +8560,13 @@ genome data packages and support for efficient SNP representation.") (define-public r-impute (package (name "r-impute") - (version "1.62.0") + (version "1.64.0") (source (origin (method url-fetch) (uri (bioconductor-uri "impute" version)) (sha256 (base32 - "161p6l1cp3wwdynkxwvg0yhrh6yv20brdlplw5w5mavn4hf1nm0h")))) + "1pnjasw9i19nmxwjzrd9jbln31yc5jilfvwk414ya5zbqfsazvxa")))) (native-inputs `(("gfortran" ,gfortran))) (build-system r-build-system) @@ -8578,13 +8580,13 @@ microarray data, using nearest neighbor averaging.") (define-public r-seqpattern (package (name "r-seqpattern") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqPattern" version)) (sha256 (base32 - "0f1yvx2ri1557rzjx08q5bgml1cvkm8hjl8xn1qi4rjs64sy6mci")))) + "0j68n6fwycxjpl2va5fw7ajb123n758s2pq997d76dysxghmrlzq")))) (properties `((upstream-name . "seqPattern"))) (build-system r-build-system) @@ -8605,13 +8607,13 @@ reference point and sorted by a user defined feature.") (define-public r-genomation (package (name "r-genomation") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genomation" version)) (sha256 (base32 - "1cy8kqwddiha5jy6nda1al956i4wncbgjkrxwijdb08cmka2sfwh")))) + "1ana06irlpdgnmk8mb329nws9sm8n6max4qargf1xdcdf3rnk45g")))) (build-system r-build-system) (propagated-inputs `(("r-biostrings" ,r-biostrings) @@ -8653,7 +8655,7 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.") (define-public r-genomationdata (package (name "r-genomationdata") - (version "1.14.0") + (version "1.22.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -8663,7 +8665,7 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.") "genomationData_" version ".tar.gz")) (sha256 (base32 - "10xyb8akjrhmak2i0mnv1agny2ipy364q9nlibyplpzc7vdb6bw7")))) + "0igjsvfnws3498j65ifniw0kbxfqpfr59rcjddqvq4zsj453fx1g")))) (build-system r-build-system) ;; As this package provides little more than large data files, it doesn't ;; make sense to build substitutes. @@ -8681,16 +8683,18 @@ downloaded from Encode.") (define-public r-seqlogo (package (name "r-seqlogo") - (version "1.54.3") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqLogo" version)) (sha256 (base32 - "09kkxir305fv8z2yyihvspkrzclxbw1cx5mvhfkrhl10rap6662j")))) + "02rpzjjfg5chlwwfbvv72cm78cg2vfmdwzars0cin9hz1hd7rnq1")))) (properties `((upstream-name . "seqLogo"))) (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/seqLogo") (synopsis "Sequence logos for DNA sequence alignments") (description @@ -8729,13 +8733,13 @@ throughput genetic sequencing data sets using regression methods.") (define-public r-zlibbioc (package (name "r-zlibbioc") - (version "1.34.0") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "zlibbioc" version)) (sha256 (base32 - "0j1l052jb2cwc1nifxzwknc9csagf4f2d092zs0i95dz0rma89l0")))) + "0m36ddss0znvm19dhnxcclxjhgjplw8ajk8v419h20ab8an6khxg")))) (properties `((upstream-name . "zlibbioc"))) (build-system r-build-system) @@ -8771,14 +8775,14 @@ secondary structure and comparative analysis in R.") (define-public r-rhtslib (package (name "r-rhtslib") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhtslib" version)) (sha256 (base32 - "186r7icrkzrni1c4n33ip7dlsfgys7hnqf0simvxrpl3yhh3ygdi")))) + "18wag2jnpda6078xjkpfdvar1gkb2myhw83gg03l39sabh35qya4")))) (properties `((upstream-name . "Rhtslib"))) (build-system r-build-system) ;; Without this a temporary directory ends up in the Rhtslib.so binary, @@ -8786,9 +8790,8 @@ secondary structure and comparative analysis in R.") (arguments '(#:configure-flags '("--no-staged-install"))) (propagated-inputs `(("curl" ,curl) + ("zlib" ,zlib) ; packages using rhtslib need to link with zlib ("r-zlibbioc" ,r-zlibbioc))) - (inputs - `(("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config) ("r-knitr" ,r-knitr))) @@ -8803,14 +8806,14 @@ of other R packages who wish to make use of HTSlib.") (define-public r-bamsignals (package (name "r-bamsignals") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "bamsignals" version)) (sha256 (base32 - "0p858xxfv79yc8b3lq58zl9f00irvbn3czsd8wdi5040xg42m402")))) + "0p3r9z9z5sfkd0b951cgr751k4z0yviyn1jfw9d4fcnyld7g1jxv")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8819,8 +8822,6 @@ of other R packages who wish to make use of HTSlib.") ("r-rcpp" ,r-rcpp) ("r-rhtslib" ,r-rhtslib) ("r-zlibbioc" ,r-zlibbioc))) - (inputs - `(("zlib" ,zlib))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/bamsignals") @@ -8835,13 +8836,13 @@ paired-end data.") (define-public r-rcas (package (name "r-rcas") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RCAS" version)) (sha256 (base32 - "0f812pgv3ys1zv4n9sqkgm01hj4cdd0i0h85dqbhkwd94zl6cavl")))) + "0vdxml618vqvf8xyh0zxs307p9zby0cj9dqyiiz625ilyq1hkw2m")))) (properties `((upstream-name . "RCAS"))) (build-system r-build-system) (propagated-inputs @@ -8935,33 +8936,40 @@ library implementing most of the pipeline's features.") (define-public r-mutationalpatterns (package (name "r-mutationalpatterns") - (version "2.0.0") + (version "3.0.1") (source (origin (method url-fetch) (uri (bioconductor-uri "MutationalPatterns" version)) (sha256 (base32 - "02lyjiabyhmifycksvpcx29a0pb7z9xjw0hgg8n0sd0dy3afqhcm")))) + "1988kjjgq8af0hj7chhpxi88717wwmzs9qgrwapjh0hm2hjwhn35")))) (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) ("r-biostrings" ,r-biostrings) + ("r-bsgenome" ,r-bsgenome) ;; These two packages are suggested packages ("r-bsgenome-hsapiens-1000g" ,r-bsgenome-hsapiens-1000genomes-hs37d5) ("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19) - ("r-genomicranges" ,r-genomicranges) + ("r-cowplot" ,r-cowplot) + ("r-dplyr" ,r-dplyr) ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicranges" ,r-genomicranges) + ("r-ggalluvial" ,r-ggalluvial) + ("r-ggdendro" ,r-ggdendro) ("r-ggplot2" ,r-ggplot2) ("r-iranges" ,r-iranges) + ("r-magrittr" ,r-magrittr) ("r-nmf" ,r-nmf) - ("r-plyr" ,r-plyr) ("r-pracma" ,r-pracma) - ("r-reshape2" ,r-reshape2) - ("r-cowplot" ,r-cowplot) - ("r-ggdendro" ,r-ggdendro) + ("r-purrr" ,r-purrr) ("r-s4vectors" ,r-s4vectors) - ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-stringr" ,r-stringr) + ("r-tibble" ,r-tibble) + ("r-tidyr" ,r-tidyr) ("r-variantannotation" ,r-variantannotation))) (home-page "https://bioconductor.org/packages/MutationalPatterns/") (synopsis "Extract and visualize mutational patterns in genomic data") @@ -9040,13 +9048,13 @@ factors bound at the specific regions.") (define-public r-tximport (package (name "r-tximport") - (version "1.16.1") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "tximport" version)) (sha256 (base32 - "1x9959lkjl2h869rgd1b30q1idxzjkr1fyqbpndqk3kbi4q2gr40")))) + "1nxnlvl4iv2392xa72j0lzy2xnb3vrvyhfrdj9l54znwkrryyq34")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -9061,21 +9069,57 @@ provided as a matrix which can be used as an offset for different expression of gene-level counts.") (license license:gpl2+))) +(define-public r-rhdf5filters + (package + (name "r-rhdf5filters") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "rhdf5filters" version)) + (sha256 + (base32 + "1jvnss44liapbc6hk93yg1gknv0ahd5x86dydqiwq9l65jd03psq")))) + (properties `((upstream-name . "rhdf5filters"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rhdf5lib" ,r-rhdf5lib))) + (inputs + `(("zlib" ,zlib))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/grimbough/rhdf5filters") + (synopsis "HDF5 compression filters") + (description + "This package provides a collection of compression filters for use with +HDF5 datasets.") + (license license:bsd-2))) + (define-public r-rhdf5 (package (name "r-rhdf5") - (version "2.32.3") + (version "2.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rhdf5" version)) (sha256 (base32 - "0fnx60dpf6s2qwq48lg98g18g8k7wgm66pw0kamlbb7l2hnwycvf")))) + "0almr1vscrgj5g4dyrags131wia2pmdbdidlpskbgm44ha6hpmqi")))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-linking + (lambda _ + (substitute* "src/Makevars" + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\(RHDF5_LIBS\\)" match) + (string-append match "/libhdf5.a"))) + #t))))) (propagated-inputs - `(("r-rhdf5lib" ,r-rhdf5lib))) - (inputs - `(("zlib" ,zlib))) + `(("r-rhdf5filters" ,r-rhdf5filters) + ("r-rhdf5lib" ,r-rhdf5lib))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/rhdf5") @@ -9093,13 +9137,13 @@ the available RAM.") (define-public r-annotationfilter (package (name "r-annotationfilter") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationFilter" version)) (sha256 (base32 - "18kh1xrhpwb48s1qj4f1v8af3jmw49pnbp5afi2myn9894hxg0cs")))) + "0npk0laa2rc93rsh6yikj886zf2fl53a050j07fj9w67j0q0h3s9")))) (properties `((upstream-name . "AnnotationFilter"))) (build-system r-build-system) @@ -9440,14 +9484,14 @@ manipulate and analyze genetic variants.") (define-public r-chipseq (package (name "r-chipseq") - (version "1.38.0") + (version "1.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "chipseq" version)) (sha256 (base32 - "0lh859s0aq73vac1phcgagf6n000qgq2xsk0bmfr61n5swifml2a")))) + "12pzq24aarvgxfmhcad0l5g951xqdvvi7bspgbsvlvmfkqd74j2v")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -9492,14 +9536,14 @@ GenomicRanges Bioconductor package.") (define-public r-copywriter (package (name "r-copywriter") - (version "2.20.0") + (version "2.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CopywriteR" version)) (sha256 (base32 - "0c36wpv0rygkbqpf3dwh5xmc3lr7p8lrdzsq2fbbpw04skl6i7m2")))) + "060p6l6l8i6b15hyyz5v5kkxih3h4wcciixii51m9mn82z23xr2f")))) (properties `((upstream-name . "CopywriteR"))) (build-system r-build-system) (propagated-inputs @@ -9532,13 +9576,13 @@ number detection tools.") (define-public r-methylkit (package (name "r-methylkit") - (version "1.14.2") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "methylKit" version)) (sha256 (base32 - "1qr13d2712ypbn96ijic2z5adr5dsd61kzscx7shw6vyj360rlm5")))) + "11pmn191n0ga28x1w20cm2cmw8kddl29q6h2xfjjba5bspp2g613")))) (properties `((upstream-name . "methylKit"))) (build-system r-build-system) (propagated-inputs @@ -9563,8 +9607,6 @@ number detection tools.") ("r-zlibbioc" ,r-zlibbioc))) (native-inputs `(("r-knitr" ,r-knitr))) ; for vignettes - (inputs - `(("zlib" ,zlib))) (home-page "https://github.com/al2na/methylKit") (synopsis "DNA methylation analysis from high-throughput bisulfite sequencing results") @@ -9581,14 +9623,14 @@ TAB-Seq.") (define-public r-sva (package (name "r-sva") - (version "3.36.0") + (version "3.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "sva" version)) (sha256 (base32 - "0xa1lm0k1a6nig90mab6xh4gln88rbs5l1cdr6ik6agg7jhs7ji4")))) + "1hpzzg3qrgkd8kwg1m5gq94cikjgk9j4l1wk58fxl49s6fmd13zy")))) (build-system r-build-system) (propagated-inputs `(("r-edger" ,r-edger) @@ -9644,14 +9686,14 @@ trait.") (define-public r-protgenerics (package (name "r-protgenerics") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ProtGenerics" version)) (sha256 (base32 - "14xzdh7vxss8vmrw91hcwrszdn3ikm71mah8875b2lkrkrfzbl73")))) + "0yihxphgkshvfv1sn67wc4zvr2zlzws2j7ki3zabm6vyfkfdkfiz")))) (properties `((upstream-name . "ProtGenerics"))) (build-system r-build-system) (home-page "https://github.com/lgatto/ProtGenerics") @@ -9664,14 +9706,14 @@ proteomics packages.") (define-public r-mzr (package (name "r-mzr") - (version "2.22.0") + (version "2.24.1") (source (origin (method url-fetch) (uri (bioconductor-uri "mzR" version)) (sha256 (base32 - "1r8j8yiz5lcan7j4h37sza2kwczl48dxvld3da3ghjjq67cdc2cm")) + "0ik0yrjhvk8r5pm990chn2aadp0gqzzkkm0027682ky34xp142sg")) (modules '((guix build utils))) (snippet '(begin @@ -9686,14 +9728,19 @@ proteomics packages.") (lambda _ (substitute* "src/Makevars" (("\\./boost/libs.*") "") - (("ARCH_OBJS=" line) + ;; This is to avoid having a plain directory on the list of + ;; libraries to link. + (("\\(RHDF5_LIBS\\)" match) + (string-append match "/libhdf5.a")) + (("PKG_LIBS=") "PKG_LIBS=$(BOOST_LIBS) ") + (("\\ARCH_OBJS=" line) (string-append line - "\nARCH_LIBS=-lboost_system -lboost_regex \ + "\nBOOST_LIBS=-lboost_system -lboost_regex \ -lboost_iostreams -lboost_thread -lboost_filesystem -lboost_chrono\n"))) #t))))) (inputs `(;; Our default boost package won't work here, unfortunately, even with - ;; mzR version 2.22.0. + ;; mzR version 2.24.1. ("boost" ,boost-for-mysql) ; use this instead of the bundled boost sources ("zlib" ,zlib))) (propagated-inputs @@ -9720,14 +9767,14 @@ previously been used in XCMS.") (define-public r-affyio (package (name "r-affyio") - (version "1.58.0") + (version "1.60.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affyio" version)) (sha256 (base32 - "0j1f61409yq6hmkqrpzamfm7dx35rlq33ccs7wb1qcqx3d3nb75q")))) + "14xnzrxrvgxgixjhq5a9fdgcmrxam2j74hwidkc9if92ffv6s83h")))) (build-system r-build-system) (propagated-inputs `(("r-zlibbioc" ,r-zlibbioc))) @@ -9744,14 +9791,14 @@ CDF file formats.") (define-public r-affy (package (name "r-affy") - (version "1.66.0") + (version "1.68.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affy" version)) (sha256 (base32 - "0m6hkyjxmsf80n3anhwh9k26csxczv6v92fkb7klnchdski61pyc")))) + "0ywz548cbzk2k1njnxhlk5ydzvz2dk78ka8kx53gwrmdc4sc2b06")))) (build-system r-build-system) (propagated-inputs `(("r-affyio" ,r-affyio) @@ -9772,14 +9819,14 @@ analysis.") (define-public r-vsn (package (name "r-vsn") - (version "3.56.0") + (version "3.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "vsn" version)) (sha256 (base32 - "1k82dikrv1gcync5y1131wg7z1kxv2z2jl4nndg20bixc3398h58")))) + "0dfrfflidpnphwyqzmmfiz9blfqv6qa09xlwgfabhpfsf3ml2rlb")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -9808,14 +9855,14 @@ and specific in detecting differential transcription.") (define-public r-mzid (package (name "r-mzid") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzID" version)) (sha256 (base32 - "0y50lzkdamkpz67f6r5whp246qsxpbammjil7g8vjprx0c4jk5n5")))) + "0s7d6cz1li7v3ni6n6hrdspl93yiyr283kmbbd3hhkfgzgx6kpq2")))) (properties `((upstream-name . "mzID"))) (build-system r-build-system) (propagated-inputs @@ -9824,7 +9871,6 @@ and specific in detecting differential transcription.") ("r-iterators" ,r-iterators) ("r-plyr" ,r-plyr) ("r-protgenerics" ,r-protgenerics) - ("r-rcpp" ,r-rcpp) ("r-xml" ,r-xml))) (native-inputs `(("r-knitr" ,r-knitr))) @@ -9840,14 +9886,14 @@ specific parser.") (define-public r-pcamethods (package (name "r-pcamethods") - (version "1.80.0") + (version "1.82.0") (source (origin (method url-fetch) (uri (bioconductor-uri "pcaMethods" version)) (sha256 (base32 - "10cww4jxyynkwxbbsx804nwac31j0hh8dgisygld0q663gaxkgni")))) + "04xb4vjky6hq58l30i1iq9rv5gzjdxnidjxpnzg7pvg67vz8pgf0")))) (properties `((upstream-name . "pcaMethods"))) (build-system r-build-system) (propagated-inputs @@ -9870,14 +9916,14 @@ structure (pcaRes) to provide a common interface to the PCA results.") (define-public r-msnbase (package (name "r-msnbase") - (version "2.14.2") + (version "2.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnbase" version)) (sha256 (base32 - "17vlv9gh41s1hp043b7j1jfqiw52alh1misjzy1kxl0g90rld00l")))) + "0cvcdmq1glifga5qwv9j3lgj31dcrcc6ql4kkk83jy4y43v2zxlx")))) (properties `((upstream-name . "MSnbase"))) (build-system r-build-system) (propagated-inputs @@ -9915,30 +9961,43 @@ of mass spectrometry based proteomics data.") (define-public r-msnid (package (name "r-msnid") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnID" version)) (sha256 (base32 - "0dwa6j2nqb3223a8g4f453aznjh69wngrpvdi12iy69j1psbbjcc")))) + "05bncy7lw2a3h8xgnavjiz56pc6mk8q7l6qdd81197nawxs3j02d")))) (properties `((upstream-name . "MSnID"))) (build-system r-build-system) (propagated-inputs - `(("r-biobase" ,r-biobase) + `(("r-annotationdbi" ,r-annotationdbi) + ("r-annotationhub" ,r-annotationhub) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocstyle" ,r-biocstyle) + ("r-biostrings" ,r-biostrings) ("r-data-table" ,r-data-table) ("r-doparallel" ,r-doparallel) ("r-dplyr" ,r-dplyr) ("r-foreach" ,r-foreach) + ("r-ggplot2" ,r-ggplot2) ("r-iterators" ,r-iterators) ("r-msnbase" ,r-msnbase) + ("r-msmstests" ,r-msmstests) ("r-mzid" ,r-mzid) ("r-mzr" ,r-mzr) ("r-protgenerics" ,r-protgenerics) + ("r-purrr" ,r-purrr) ("r-r-cache" ,r-r-cache) ("r-rcpp" ,r-rcpp) - ("r-reshape2" ,r-reshape2))) + ("r-reshape2" ,r-reshape2) + ("r-rlang" ,r-rlang) + ("r-runit" ,r-runit) + ("r-stringr" ,r-stringr) + ("r-tibble" ,r-tibble) + ("r-xtable" ,r-xtable))) (home-page "https://bioconductor.org/packages/MSnID") (synopsis "Utilities for LC-MSn proteomics identifications") (description @@ -9954,14 +10013,14 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.") (define-public r-aroma-light (package (name "r-aroma-light") - (version "3.18.0") + (version "3.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "aroma.light" version)) (sha256 (base32 - "19y5f2minx2pp73zdh43v1qkwpkaxygkl8cwlnwja15i46s0bcyc")))) + "0pi37rlfqh24p9wd7l1xb3f7c7938xdscgcc5agp8c9qhajq25a0")))) (properties `((upstream-name . "aroma.light"))) (build-system r-build-system) (propagated-inputs @@ -10012,14 +10071,14 @@ distribution.") (define-public r-edaseq (package (name "r-edaseq") - (version "2.22.0") + (version "2.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EDASeq" version)) (sha256 (base32 - "12gzxjh73qshlwvsf92lbrf4bi199kxg2snrkprh1z4yqf7bjfm4")))) + "0fznj7lsgkss1svv4rq8g87s1gmnbd7hccim41dv1c2w2nl0n2ip")))) (properties `((upstream-name . "EDASeq"))) (build-system r-build-system) (propagated-inputs @@ -10030,7 +10089,6 @@ distribution.") ("r-biocmanager" ,r-biocmanager) ("r-biomart" ,r-biomart) ("r-biostrings" ,r-biostrings) - ("r-deseq" ,r-deseq) ("r-genomicfeatures" ,r-genomicfeatures) ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) @@ -10053,14 +10111,14 @@ global-scaling and full-quantile normalization.") (define-public r-interactivedisplaybase (package (name "r-interactivedisplaybase") - (version "1.26.3") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "interactiveDisplayBase" version)) (sha256 (base32 - "1x5vipqa4pgwpd62c1c58shnlpv3zyzzpf4wdwr00q1swkdb7wv3")))) + "08id2hkx4ssxj34dildx00a4j3z0nv171b7b0wl6xjks7wk6lv01")))) (properties `((upstream-name . "interactiveDisplayBase"))) (build-system r-build-system) @@ -10080,14 +10138,14 @@ Shiny-based display methods for Bioconductor objects.") (define-public r-annotationhub (package (name "r-annotationhub") - (version "2.20.2") + (version "2.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationHub" version)) (sha256 (base32 - "04bz91m2wx1zm61rvpr0syyklz232fw74wrl73d965wi3x8fyda5")))) + "1950x654ffqx53b154kbph808zdh2xm5vmj9vzmc5nxc28fi2z5g")))) (properties `((upstream-name . "AnnotationHub"))) (build-system r-build-system) (propagated-inputs @@ -10121,14 +10179,14 @@ by the user, helping with quick and reproducible access.") (define-public r-fastseg (package (name "r-fastseg") - (version "1.34.0") + (version "1.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "fastseg" version)) (sha256 (base32 - "1d48n245pzmvcpsz93lxb4frqh222gfhpmlvm0sb74skn16way63")))) + "1ln6w93ag4wanp0nrm0pqngbfc88w95zq2kcj583hbxy885dkg4f")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -10151,14 +10209,14 @@ microarrays or GRanges for sequencing data.") (define-public r-keggrest (package (name "r-keggrest") - (version "1.28.0") + (version "1.30.1") (source (origin (method url-fetch) (uri (bioconductor-uri "KEGGREST" version)) (sha256 (base32 - "0q76w17fya2x0z7mvyhkk5kqh07flldgih13ma44vhcy1bdlm6j1")))) + "0k9z85xf9la2y98xqmdmjb8mci9fh2fdybkl77x1yl26hyalip0s")))) (properties `((upstream-name . "KEGGREST"))) (build-system r-build-system) (propagated-inputs @@ -10177,14 +10235,14 @@ microarrays or GRanges for sequencing data.") (define-public r-gage (package (name "r-gage") - (version "2.38.3") + (version "2.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gage" version)) (sha256 (base32 - "1bqmvjiya1df0b3h491lp1jxahiyidvaf9n094z0sk84x5y3xh2p")))) + "0xm50wgjjjymv71mbv1clnhx4m12nrd1pc6vfplpdqr5q49v3yd5")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10208,14 +10266,14 @@ analysis using other methods.") (define-public r-genomicfiles (package (name "r-genomicfiles") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFiles" version)) (sha256 (base32 - "1k3824pzf9fdqvcv6cz2742q3mabpmncrc72hwa21ac8wy1b04n4")))) + "0awnf0m1pz7cw9wvh9cfxz9k7xm6wnvjm7xbxf139lrhd4nlyqjz")))) (properties `((upstream-name . "GenomicFiles"))) (build-system r-build-system) (propagated-inputs @@ -10225,6 +10283,7 @@ analysis using other methods.") ("r-genomicalignments" ,r-genomicalignments) ("r-genomicranges" ,r-genomicranges) ("r-iranges" ,r-iranges) + ("r-matrixgenerics" ,r-matrixgenerics) ("r-rsamtools" ,r-rsamtools) ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors) @@ -10241,25 +10300,30 @@ provide added flexibility for data combination and manipulation.") (define-public r-complexheatmap (package (name "r-complexheatmap") - (version "2.4.3") + (version "2.6.2") (source (origin (method url-fetch) (uri (bioconductor-uri "ComplexHeatmap" version)) (sha256 (base32 - "1gx0hzrkla92pgmfkrm2zp0ccnhizq6rs26zgzpi5x8a5lvghh5q")))) + "1nx1xxpq8zrvi990v9fmvx3msl85pdz5dp1gp6m78q6i4s2alg5x")))) (properties `((upstream-name . "ComplexHeatmap"))) (build-system r-build-system) (propagated-inputs - `(("r-circlize" ,r-circlize) + `(("r-cairo" ,r-cairo) + ("r-circlize" ,r-circlize) ("r-clue" ,r-clue) ("r-colorspace" ,r-colorspace) + ("r-digest" ,r-digest) ("r-getoptlong" ,r-getoptlong) ("r-globaloptions" ,r-globaloptions) + ("r-iranges" ,r-iranges) + ("r-matrixstats" ,r-matrixstats) ("r-png" ,r-png) - ("r-rcolorbrewer" ,r-rcolorbrewer))) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-s4vectors" ,r-s4vectors))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page @@ -10275,14 +10339,14 @@ self-defined annotation graphics.") (define-public r-dirichletmultinomial (package (name "r-dirichletmultinomial") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DirichletMultinomial" version)) (sha256 (base32 - "1m9dsrddrllb2i88qzik1867iv9mggrgdkn0dlp8sq7gl69vmalb")))) + "098zql6ryd1b0gkq4cjybblyh0x8xidxxfygqq5a5x9asl8y4vsk")))) (properties `((upstream-name . "DirichletMultinomial"))) (build-system r-build-system) @@ -10304,14 +10368,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2): (define-public r-ensembldb (package (name "r-ensembldb") - (version "2.12.1") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ensembldb" version)) (sha256 (base32 - "1vvchc04nshxc768fp31rxb603aj3hmq8xlh5qabcwf2c3z9719g")))) + "04il99gcrqzakvc0bxchdp9gghkn1sp9lpiian0iz4y7r67z3wpy")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10349,14 +10413,14 @@ chromosome region or transcript models of lincRNA genes.") (define-public r-organismdbi (package (name "r-organismdbi") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "OrganismDbi" version)) (sha256 (base32 - "194h5576inq44qr666snzq0ygnc77rk5ljkn9bn8zs6x6gb3cwaw")))) + "1mklnzs0d0ygcdibwfnk5xqr8ln6wpa00qcaw9c68m342kql0jqw")))) (properties `((upstream-name . "OrganismDbi"))) (build-system r-build-system) (propagated-inputs @@ -10381,14 +10445,14 @@ the fact that each of these packages implements a select methods.") (define-public r-biovizbase (package (name "r-biovizbase") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biovizBase" version)) (sha256 (base32 - "1vq2mxa2jkljgw75zqjdkyml0ppi5dspvwj4cznfhi31cq8ds0qh")))) + "10jflvadfcgxq2jnfxkpn417xd8ibh3zllz9rsqnq5w3wgfr4fhq")))) (properties `((upstream-name . "biovizBase"))) (build-system r-build-system) (propagated-inputs @@ -10423,14 +10487,14 @@ effort and encourages consistency.") (define-public r-ggbio (package (name "r-ggbio") - (version "1.36.0") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ggbio" version)) (sha256 (base32 - "11ggnqjq42fi2hm9xlvrrlr2xhy4kglvl1a0mycp1s4v67lxw5h5")))) + "0vabil4jzrlv01aibqjhdkvrv2bf2kkpsidrkjj06isqr5fz54lw")))) (build-system r-build-system) (arguments `(#:phases @@ -10488,16 +10552,26 @@ interval to data view, mismatch pileup, and several splicing summaries.") (define-public r-gqtlbase (package (name "r-gqtlbase") - (version "1.20.4") + (version "1.21.1") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLBase" version)) (sha256 (base32 - "1ly14vhhqxjpbxjypi6ppd37dycabdhf4ny4nsvp9969k418zv41")))) + "0nipibm1bk9k70ajbw1f6vjmz0dh7gk21l17q3m54bnawxsggrfh")))) (properties `((upstream-name . "gQTLBase"))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; This is an upstream bug. + (add-after 'unpack 'fix-imports + (lambda _ + (substitute* "NAMESPACE" + ((".*maxffmode.*") "") + (("importFrom\\(ff,.*") "import(ff)\n")) + #t))))) (propagated-inputs `(("r-batchjobs" ,r-batchjobs) ("r-bbmisc" ,r-bbmisc) @@ -10525,14 +10599,14 @@ and more.") (define-public r-snpstats (package (name "r-snpstats") - (version "1.38.0") + (version "1.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "snpStats" version)) (sha256 (base32 - "1qv3nqqr30d3n66mawqd9dbl95dl89r4bcjvkc5iassy1yrwr8wq")))) + "1298a71swwav53yf9kfqkdpach3818plqcbw0lgb6sibs8y8ff24")))) (properties `((upstream-name . "snpStats"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -10584,14 +10658,14 @@ several related annotation packages.") (define-public r-erma (package (name "r-erma") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "erma" version)) (sha256 (base32 - "1ccfbq0r48sr3h8050w8zv8402h7nx09adr0xdyqlg7kwp9vd2l3")))) + "1k2j1xhv0vwn45xmh8ds0gz812px5hnpgzvp37ngsdn4j5ai1l0k")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10624,14 +10698,14 @@ by Ernst and Kellis.") (define-public r-ldblock (package (name "r-ldblock") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ldblock" version)) (sha256 (base32 - "0plw00n2zfgh029ab41dnydzgv2yxrapjp770147rx9pff4dngrv")))) + "09i3ikv0axks9g842z1pjsc8x0fba51zyyc218h0bylbi1n9cdkm")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -10658,14 +10732,14 @@ defining LD blocks.") (define-public r-gqtlstats (package (name "r-gqtlstats") - (version "1.20.0") + (version "1.21.3") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLstats" version)) (sha256 (base32 - "1jjqfpjp93nmxjn757j5mzcax96bzcqdd1gr3rsdxg7ap008l2w7")))) + "1h78l23idf867djmdk97b02jxgmz4vfr2dai01fp648d0lsx5mkl")))) (properties `((upstream-name . "gQTLstats"))) (build-system r-build-system) (propagated-inputs @@ -10714,14 +10788,14 @@ family of feature/genome hypotheses.") (define-public r-gviz (package (name "r-gviz") - (version "1.32.0") + (version "1.34.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Gviz" version)) (sha256 (base32 - "0cgkp0ciyy2qykqgh3vzp5mx9b4vsvacjh2jnsj3wldiapzlz08a")))) + "0v7bz46b91dnrr55ah42ljj1i2xs3090s4w0lw8098pag00p4vh2")))) (properties `((upstream-name . "Gviz"))) (build-system r-build-system) (propagated-inputs @@ -10763,27 +10837,27 @@ with your data.") (define-public r-gwascat (package (name "r-gwascat") - (version "2.20.1") + (version "2.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gwascat" version)) (sha256 (base32 - "1cq5cmdrf0a0arr841yvkh6d8drc15p7mif1afr215l1s3y2dwd4")))) + "1aqi1ny93virnzsxkh9ccx3mws70bgv0r8nwgla09vffb7f16nna")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) - ("r-biocgenerics" ,r-biocgenerics) + ("r-biocfilecache" ,r-biocfilecache) ("r-biostrings" ,r-biostrings) ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicfeatures" ,r-genomicfeatures) ("r-genomicranges" ,r-genomicranges) - ("r-ggplot2" ,r-ggplot2) ("r-iranges" ,r-iranges) - ("r-rsamtools" ,r-rsamtools) - ("r-rtracklayer" ,r-rtracklayer) - ("r-s4vectors" ,r-s4vectors))) + ("r-readr" ,r-readr) + ("r-s4vectors" ,r-s4vectors) + ("r-snpstats" ,r-snpstats) + ("r-variantannotation" ,r-variantannotation))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://bioconductor.org/packages/gwascat") @@ -10796,13 +10870,13 @@ EMBL-EBI GWAS catalog.") (define-public r-sushi (package (name "r-sushi") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Sushi" version)) (sha256 (base32 - "17j3d5qjq5nbv99by5mq8rwr0jgh2jyyfn2nwxmwgzlmk3lgi1rb")))) + "0ksj4f9z14mjsv6ssg5dwhpldw4r7wpdsln2if5g486mm1c56r8p")))) (properties `((upstream-name . "Sushi"))) (build-system r-build-system) (propagated-inputs @@ -13056,21 +13130,26 @@ version does count multisplits.") "minimap2-" version ".tar.bz2")) (sha256 (base32 - "0hi7i9pzxhvjj44khzzzj1lrn5gb5837arr4wgln7k1k5n4ci2mn")))) + "0hi7i9pzxhvjj44khzzzj1lrn5gb5837arr4wgln7k1k5n4ci2mn")) + (patches (search-patches "minimap2-aarch64-support.patch")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; there are none #:make-flags - (list "CC=gcc" + (list (string-append "CC=" ,(cc-for-target)) (let ((system ,(or (%current-target-system) (%current-system)))) (cond - ((string-prefix? "x86_64" system) - "all") - ((or (string-prefix? "armhf" system) - (string-prefix? "aarch64" system)) - "arm_neon=1") - (else "sse2only=1")))) + ((string-prefix? "x86_64" system) + "all") + ((or (string-prefix? "i586" system) + (string-prefix? "i686" system)) + "sse2only=1") + ((string-prefix? "armhf" system) + "arm_neon=1") + ((string-prefix? "aarch64" system) + "aarch64=1") + (else "")))) #:phases (modify-phases %standard-phases (delete 'configure) diff --git a/gnu/packages/busybox.scm b/gnu/packages/busybox.scm index 0a93c6475e..7fc065f7ac 100644 --- a/gnu/packages/busybox.scm +++ b/gnu/packages/busybox.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 John Darrington <jmd@gnu.org> -;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -22,6 +22,7 @@ #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (gnu packages) #:use-module (gnu packages admin) @@ -32,7 +33,7 @@ (define-public busybox (package (name "busybox") - (version "1.31.1") + (version "1.32.0") (source (origin (method url-fetch) (uri (string-append @@ -40,10 +41,7 @@ version ".tar.bz2")) (sha256 (base32 - "1659aabzp8w4hayr4z8kcpbk2z1q2wqhw7i1yb0l72b45ykl1yfh")) - (patches - (search-patches - "busybox-1.31.1-fix-build-with-glibc-2.31.patch")))) + "12g63zsvzfz04wbyga8riyl8ils05riw4xf26cyiaasbs3qqfpf3")))) (build-system gnu-build-system) (arguments '(#:phases @@ -90,7 +88,7 @@ ;; true in guix build environment (substitute* "testsuite/pidof.tests" (("-s init") "-s $(cat /proc/1/comm)")) - + ;; This test cannot possibly pass. ;; It is trying to test that "which ls" returns "/bin/ls" when PATH is not set. ;; However, this relies on /bin/ls existing. Which it does not in guix. @@ -135,11 +133,11 @@ any small or embedded system.") "00aw9d809wj1bqlb2fsssdgz7rj0363ya14py0gfdm0rkp98zcpa")))) (build-system gnu-build-system) (arguments - '(#:phases + `(#:phases (modify-phases %standard-phases (add-before 'configure 'set-environment-variables (lambda _ - (setenv "CC" (which "gcc")) + (setenv "CC" ,(cc-for-target)) (setenv "HOSTCC" (which "gcc")) #t)) (replace 'configure diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index 2fb9822fb5..161b45846e 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -68,8 +68,8 @@ (file-name (string-append name "-" version "-checkout"))))))) (define-public cuirass - (let ((commit "fd432b8e8f449d691773e96e7d90f44761e01aa3") - (revision "55")) + (let ((commit "697fa14584551d9595cd042f1ffeba240e45a127") + (revision "56")) (package (name "cuirass") (version (git-version "0.0.1" revision commit)) @@ -81,7 +81,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "10j3w3px0250avwry2x8wsa0m0plvm957g4qqgnajsbc9gvka554")))) + "0gw9cja8fiyra9vnn3y384gwanvsqdq6gwjcvmz91sy5lvfwv34m")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) @@ -94,7 +94,7 @@ #:phases (modify-phases %standard-phases (add-after 'unpack 'disable-repo-tests - (λ _ + (lambda _ ;; Disable tests that use a connection to the Guix daemon. (substitute* "Makefile.am" (("tests/repo.scm \\\\") "\\")) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index adb1bf421b..45703792ed 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -31,6 +31,7 @@ ;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Magali Lemes <magalilemes00@gmail.com> +;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -95,21 +96,95 @@ #:use-module (gnu packages statistics) #:use-module (gnu packages tcl) #:use-module (gnu packages tls) + #:use-module (gnu packages version-control) #:use-module (gnu packages web) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) +(define-public r-brio + (package + (name "r-brio") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "brio" version)) + (sha256 + (base32 + "0f7amcd2cjm09aiq39209cz680l5d2gqpp6wwfhz24zagfsa7cvb")))) + (properties `((upstream-name . "brio"))) + (build-system r-build-system) + (home-page "https://github.com/r-lib/brio") + (synopsis "Basic R input output") + (description + "This package provides functions to handle basic input output. These +functions always read and write UTF-8 (8-bit Unicode Transformation Format) +files and provide more explicit control over line endings.") + (license license:expat))) + +(define-public r-diffobj + (package + (name "r-diffobj") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "diffobj" version)) + (sha256 + (base32 + "0v18zz14g8ppzmj1d997rdmsfh327ml4wvpmfx168lravdsk5ym2")))) + (properties `((upstream-name . "diffobj"))) + (build-system r-build-system) + (propagated-inputs `(("r-crayon" ,r-crayon))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/brodieG/diffobj") + (synopsis "Diffs for R objects") + (description + "Generate a colorized diff of two R objects for an intuitive +visualization of their differences.") + (license license:gpl2+))) + +(define-public r-waldo + (package + (name "r-waldo") + (version "0.2.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "waldo" version)) + (sha256 + (base32 + "0lsw8p4wiggqm9fvh5vgmf0ms0npcg3hcwyzlg5ahv5yx4pv5fhz")))) + (properties `((upstream-name . "waldo"))) + (build-system r-build-system) + (propagated-inputs + `(("r-cli" ,r-cli) + ("r-diffobj" ,r-diffobj) + ("r-fansi" ,r-fansi) + ("r-glue" ,r-glue) + ("r-rematch2" ,r-rematch2) + ("r-rlang" ,r-rlang) + ("r-tibble" ,r-tibble))) + (home-page "https://github.com/r-lib/waldo") + (synopsis "Find differences between R objects") + (description + "Compare complex R objects and reveal the key differences. This package +was designed particularly for use in testing packages where being able to +quickly isolate key differences makes understanding test failures much +easier.") + (license license:expat))) + (define-public r-rticles (package (name "r-rticles") - (version "0.16") + (version "0.17") (source (origin (method url-fetch) (uri (cran-uri "rticles" version)) (sha256 (base32 - "1ca3k5sdy9mnm6frcimqwf5k18j14wn69x5iagjnjwhq711l8dv0")))) + "1wbwva5n88dw3vvhcrlzkr58cv03hyx0dqgfmxj7d0dgf4ichr3c")))) (properties `((upstream-name . "rticles"))) (build-system r-build-system) (propagated-inputs @@ -147,14 +222,14 @@ degree elevation and curve fitting.") (define-public r-v8 (package (name "r-v8") - (version "3.3.1") + (version "3.4.0") (source (origin (method url-fetch) (uri (cran-uri "V8" version)) (sha256 (base32 - "1d2j9p1fsz9hp8n8lrywyrkwivhfa3qx5ha5f24vin8b6l04xy67")))) + "1g9z22pc8ydx1yhv57ww2d2jg5hvrl7ilwa79x89zgn17jha5j7m")))) (properties `((upstream-name . "V8"))) (build-system r-build-system) (arguments @@ -255,16 +330,45 @@ ordered indexed observations. It is particularly aimed at irregular time series of numeric vectors/matrices and factors.") (license license:gpl2+))) +(define-public r-ggalluvial + (package + (name "r-ggalluvial") + (version "0.12.3") + (source (origin + (method url-fetch) + (uri (cran-uri "ggalluvial" version)) + (sha256 + (base32 + "0mkan9gxg3yxjism22yxbhvlh2lh7wpbrqpb355za790prcmjbh3")))) + (properties `((upstream-name . "ggalluvial"))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-ggplot2" ,r-ggplot2) + ("r-lazyeval" ,r-lazyeval) + ("r-rlang" ,r-rlang) + ("r-tidyr" ,r-tidyr) + ("r-tidyselect" ,r-tidyselect))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "http://corybrunson.github.io/ggalluvial/") + (synopsis "Alluvial plots for ggplot2") + (description "This package provides alluvial plots for @code{ggplot2}. +Alluvial plots use variable-width ribbons and stacked bar plots to represent +multi-dimensional or repeated-measures data with categorical or ordinal +variables.") + (license license:gpl3))) + (define-public r-ggpmisc (package (name "r-ggpmisc") - (version "0.3.6") + (version "0.3.7") (source (origin (method url-fetch) (uri (cran-uri "ggpmisc" version)) (sha256 (base32 - "05i81q9rg8zf35vgcxhn3yhkc9dlvcpwpxncq1q3zs0rxhfkf208")))) + "121s6c9k4fn3rcz2myc1kxczllq2826c8zllaii58q8lica7dsyn")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -560,6 +664,30 @@ generalized linear, additive and interaction models to potentially high-dimensional data.") (license license:gpl2))) +(define-public r-shadowtext + (package + (name "r-shadowtext") + (version "0.0.7") + (source (origin + (method url-fetch) + (uri (cran-uri "shadowtext" version)) + (sha256 + (base32 + "1s1ip8zfr684a3ld7hvf524bhn2j31k6d1wbhh1ni0flsggv2ckf")))) + (properties `((upstream-name . "shadowtext"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ggplot2" ,r-ggplot2) + ("r-scales" ,r-scales))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/GuangchuangYu/shadowtext/") + (synopsis "Shadow text grob and layer") + (description "This package implements @code{shadowtextGrob()} for +@code{grid} and @code{geom_shadowtext()} layer for @code{ggplot2}. +These functions draw text grob with background shadow.") + (license license:artistic2.0))) + (define-public r-sys (package (name "r-sys") @@ -585,6 +713,34 @@ interrupts and timeouts. This provides the basis for a sandboxing mechanism.") (license license:expat))) +(define-public r-ashr + (package + (name "r-ashr") + (version "2.2-47") + (source (origin + (method url-fetch) + (uri (cran-uri "ashr" version)) + (sha256 + (base32 + "1rqb5j30ylaf1h4l66x4jxyn5inrvhc42d90qd5mgkxsq0ghdlr4")))) + (properties `((upstream-name . "ashr"))) + (build-system r-build-system) + (propagated-inputs + `(("r-etrunct" ,r-etrunct) + ("r-invgamma" ,r-invgamma) + ("r-matrix" ,r-matrix) + ("r-mixsqp" ,r-mixsqp) + ("r-rcpp" ,r-rcpp) + ("r-squarem" ,r-squarem) + ("r-truncnorm" ,r-truncnorm))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/stephens999/ashr") + (synopsis "Methods for adaptive shrinkage, using empirical bayes") + (description "This package implements an empirical Bayes approach for +large-scale hypothesis testing and false discovery rate estimation.") + (license license:gpl3+))) + (define-public r-askpass (package (name "r-askpass") @@ -609,20 +765,20 @@ read a protected key.") (define-public r-vegan (package (name "r-vegan") - (version "2.5-6") + (version "2.5-7") (source (origin (method url-fetch) (uri (cran-uri "vegan" version)) (sha256 (base32 - "0g60rgn1i7wqf9pf5m1yki1m45gcp7i5hmjic0ci0f6vng70mh5k")))) + "0aj6m9l1vkh32sar6fyvq4p8j4h2f2f347w1300qnzgaa5lmhfz6")))) (build-system r-build-system) (native-inputs - `(("gfortran" ,gfortran))) + `(("r-knitr" ,r-knitr) ; needed for vignettes + ("gfortran" ,gfortran))) (propagated-inputs `(("r-cluster" ,r-cluster) - ("r-knitr" ,r-knitr) ; needed for vignettes ("r-lattice" ,r-lattice) ("r-mass" ,r-mass) ("r-mgcv" ,r-mgcv) @@ -1396,13 +1552,13 @@ application framework for R, making it easy to create attractive dashboards.") (define-public r-shinyfiles (package (name "r-shinyfiles") - (version "0.8.0") + (version "0.9.0") (source (origin (method url-fetch) (uri (cran-uri "shinyFiles" version)) (sha256 - (base32 "0gwyx37f2r86cldsyknws9pafpj8g5mg3mchlyl9ymgnk5f4b88w")))) + (base32 "0rsijlx16vd74r7bd8s9zipy71kgpw19v9s85kxj5bmwc6njmbai")))) (properties `((upstream-name . "shinyFiles"))) (build-system r-build-system) (propagated-inputs @@ -1451,20 +1607,19 @@ Bootstrap themes, which are packaged for use with Shiny applications.") (define-public r-d3r (package (name "r-d3r") - (version "0.9.0") + (version "0.9.1") (source (origin (method url-fetch) (uri (cran-uri "d3r" version)) (sha256 (base32 - "0vd1qk8yr18xdfkv5ybhqvf0mmccpi721wqa7c881nzm9nnlzc4y")))) + "0kc82vvyfxhxvqfalngn36prn3sxdiinsx04rn99ha6zdc27zp5k")))) (build-system r-build-system) (arguments `(#:modules ((guix build utils) (guix build r-build-system) - (srfi srfi-1) - (ice-9 popen)) + (srfi srfi-1)) #:phases (modify-phases %standard-phases (add-after 'unpack 'process-javascript @@ -1478,16 +1633,16 @@ Bootstrap themes, which are packaged for use with Shiny applications.") (,(assoc-ref inputs "d3.v4.js") "v4/dist/d3.min.js") (,(assoc-ref inputs "d3.v5.js") - "v5/dist/d3.min.js")))) + "v5/dist/d3.min.js") + (,(assoc-ref inputs "d3.v6.js") + "v6/dist/d3.min.js")))) (lambda (sources targets) (for-each (lambda (source target) (format #t "Processing ~a --> ~a~%" source target) (delete-file target) - (let ((minified (open-pipe* OPEN_READ "uglify-js" source))) - (call-with-output-file target - (lambda (port) - (dump-port minified port))))) + (invoke "esbuild" source "--minify" + (string-append "--outfile=" target))) sources targets)))) #t))))) (propagated-inputs @@ -1496,7 +1651,7 @@ Bootstrap themes, which are packaged for use with Shiny applications.") ("r-rlang" ,r-rlang) ("r-tidyr" ,r-tidyr))) (native-inputs - `(("uglify-js" ,uglify-js) + `(("esbuild" ,esbuild) ("d3.v3.js" ,(origin (method url-fetch) @@ -1517,7 +1672,14 @@ Bootstrap themes, which are packaged for use with Shiny applications.") (uri "https://d3js.org/d3.v5.js") (sha256 (base32 - "0kxvx5pfagxn6nhavdwsdnzyd26g0z5dsfi1pi5dvcmb0c8ipcdn")))))) + "0kxvx5pfagxn6nhavdwsdnzyd26g0z5dsfi1pi5dvcmb0c8ipcdn")))) + ("d3.v6.js" + ,(origin + (method url-fetch) + (uri "https://d3js.org/d3.v6.js") + (sha256 + (base32 + "1x6432ca7p1pfxhz3airzw943fincn9izzxkclc1wmphcvv2n2p9")))))) (home-page "https://github.com/timelyportfolio/d3r") (synopsis "d3.js utilities for R") (description @@ -1912,14 +2074,16 @@ XML. To learn more about the Abbyy OCR API, see @url{http://ocrsdk.com/}.") (define-public r-colorspace (package (name "r-colorspace") - (version "1.4-1") + (version "2.0-0") (source (origin (method url-fetch) (uri (cran-uri "colorspace" version)) (sha256 - (base32 "0wyny3ah2d74hqv80s6imrarpna09gq3j9rjnz6zx2qg0lx72gb9")))) + (base32 "13h1hara0s6xn16bgkrbd0flszah1yiylwfwxwn2inqqk6pm6sjf")))) (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://cran.r-project.org/web/packages/colorspace") (synopsis "Color space manipulation") (description @@ -2058,13 +2222,13 @@ print, summary, plot, update, etc. (define-public r-ps (package (name "r-ps") - (version "1.4.0") + (version "1.5.0") (source (origin (method url-fetch) (uri (cran-uri "ps" version)) (sha256 - (base32 "0yns03ffd2a2cs4b6dsjjlqhv46vq2g094m8psmhf3h9i52awyaz")))) + (base32 "15pyz94b0z6ibrjp25np5nd4z20whnnr35wsavdgwmsmynba2qbl")))) (build-system r-build-system) (home-page "https://ps.r-lib.org") (synopsis "List, query, and manipulate system processes") @@ -2308,14 +2472,14 @@ validation and filtering on the values, making options invisible or private.") (define-public r-circlize (package (name "r-circlize") - (version "0.4.10") + (version "0.4.11") (source (origin (method url-fetch) (uri (cran-uri "circlize" version)) (sha256 (base32 - "1xb1jq3mg4kw1513zv1i09vhn7rj7f8vp0bnms2qml74s47wxsgk")))) + "1s84xl7kv3qc1261xxaq4aqh64gwywhacsf5nh6yf8djw0d1w42d")))) (build-system r-build-system) (propagated-inputs `(("r-colorspace" ,r-colorspace) @@ -2550,6 +2714,36 @@ quantities.") @code{melt} and @code{cast}. This package provides them.") (license license:expat))) +(define-public r-restrserve + (package + (name "r-restrserve") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "RestRserve" version)) + (sha256 + (base32 "07mm65yxzpwlg6x3lsggj41v8nl4m6v9mszhqjpgj19v3yxvwgi0")))) + (build-system r-build-system) + (propagated-inputs + `(("r-checkmate" ,r-checkmate) + ("r-jsonlite" ,r-jsonlite) + ("r-mime" ,r-mime) + ("r-r6" ,r-r6) + ("r-rcpp" ,r-rcpp) + ("r-rserve" ,r-rserve) + ("r-uuid" ,r-uuid))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://restrserve.org") + (synopsis "R web API framework") + (description + "RestRserve is an R web API framework for building high-performance AND +robust microservices and app backends. With Rserve backend on UNIX-like +systems it is parallel by design. It will handle incoming requests in +parallel - each request in a separate fork.") + (license license:gpl2+))) + (define-public r-progress (package (name "r-progress") @@ -2751,14 +2945,14 @@ quantile mixture from L-moments and trimmed L-moments.") (define-public r-distillery (package (name "r-distillery") - (version "1.1") + (version "1.2") (source (origin (method url-fetch) (uri (cran-uri "distillery" version)) (sha256 (base32 - "15qhvhg6wmvlxrvvw70sk8pv76z5pd04vyasgczvxa0599ih7bzh")))) + "10nhh9p0hp294pp4aav0y0zsmir2qbn05sf3k52rmzmm36q2kc8y")))) (build-system r-build-system) (home-page "https://ral.ucar.edu/staff/ericg/") (synopsis "Functions for confidence intervals and object information") @@ -2769,17 +2963,36 @@ complex object; primarily used in common with the packages extRemes and SpatialVx.") (license license:gpl2+))) +(define-public r-etrunct + (package + (name "r-etrunct") + (version "0.1") + (source (origin + (method url-fetch) + (uri (cran-uri "etrunct" version)) + (sha256 + (base32 + "0ayazgyqlc8jcqr03cwfmfhm4pck6xri1r6vkgqy4arqkrrnrcqr")))) + (properties `((upstream-name . "etrunct"))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/etrunct") + (synopsis "Computes moments of univariate truncated T distribution") + (description "This package computes moments of univariate truncated +T distribution. There is only one exported function, @code{e_trunct}, +which should be seen for details.") + (license license:expat))) + (define-public r-extremes (package (name "r-extremes") - (version "2.0-12") + (version "2.1") (source (origin (method url-fetch) (uri (cran-uri "extRemes" version)) (sha256 (base32 - "0wldzvj1h93jksq31dw9zgnr1wrqwmfr9qwmg7qk7nznsn2yy1h2")))) + "1b69r3mzl6hp3g3rqxyc77m8r40jyq7c2d87q85af7xqkn6hnxid")))) (properties `((upstream-name . "extRemes"))) (build-system r-build-system) (propagated-inputs @@ -2841,13 +3054,13 @@ by Li, Brown, Huang, and Bickel") (define-public r-inline (package (name "r-inline") - (version "0.3.16") + (version "0.3.17") (source (origin (method url-fetch) (uri (cran-uri "inline" version)) (sha256 (base32 - "0x9m2hwin6anfhkf61cnsbqn4qp1pr2gy1pbwbdgbdz2cmns85nj")))) + "1wslsn60q959yrr27cwanba43qlpfaxzdli46i9dc26lxfr5fa3r")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/inline") (synopsis "Functions to inline C, C++, Fortran function calls from R") @@ -2878,6 +3091,24 @@ and S4 methods with inlined C, C++ or Fortran code supporting @code{.C} and representation of intervals, including a method of coercing variables in data frames.") (license license:gpl2))) +(define-public r-invgamma + (package + (name "r-invgamma") + (version "1.1") + (source (origin + (method url-fetch) + (uri (cran-uri "invgamma" version)) + (sha256 + (base32 + "12ga2y4wc9bc5zz6vimvxwgjpsx3ys3209nq63gscbw559ydxa5a")))) + (properties `((upstream-name . "invgamma"))) + (build-system r-build-system) + (home-page "https://github.com/dkahle/invgamma") + (synopsis "Inverse gamma distribution") + (description "This package provides a light weight implementation of the +standard distribution functions for the inverse gamma distribution, wrapping +those for the gamma distribution in the @code{stats} package.") + (license license:gpl2))) (define-public r-bdsmatrix (package @@ -3013,14 +3244,14 @@ functions from LINPACK.") (define-public r-fitdistrplus (package (name "r-fitdistrplus") - (version "1.1-1") + (version "1.1-3") (source (origin (method url-fetch) (uri (cran-uri "fitdistrplus" version)) (sha256 (base32 - "1rnfnwmxa495fql7q0h9018cnwygwhj8gfh6ryz1vbf474570vjl")))) + "1pjnqx0j26dai2fa4ip56wspmfsrcm9dpmxkg15y9623w5b58vbp")))) (build-system r-build-system) (propagated-inputs `(("r-mass" ,r-mass) @@ -3178,14 +3409,14 @@ available in a vignette.") (define-public r-lava (package (name "r-lava") - (version "1.6.8") + (version "1.6.8.1") (source (origin (method url-fetch) (uri (cran-uri "lava" version)) (sha256 (base32 - "0jdmjjs894mfncswmzz7sa6cy7hqbqii5fcvl3zqkmzpbadb2za2")))) + "1yiz8y3jhxkszgz9m9fialp9r27hy97xh0imfvs8ziv7dk43y93d")))) (build-system r-build-system) (propagated-inputs `(("r-numderiv" ,r-numderiv) @@ -3566,14 +3797,14 @@ created using basic graphics.") (define-public r-generics (package (name "r-generics") - (version "0.0.2") + (version "0.1.0") (source (origin (method url-fetch) (uri (cran-uri "generics" version)) (sha256 (base32 - "0xk1xhpy7gpv3pvaygzhpfdxj72zmb38pb4nscfyg2ff36vx3cvi")))) + "0qw7r0d2qvlj1pvrlpv30d6akml624ydxkk19hv85iv6pfyx2wdb")))) (build-system r-build-system) (home-page "https://github.com/r-lib/generics") (synopsis "Common S3 generics not provided by base R methods") @@ -3624,14 +3855,14 @@ provides a one-row summary of model-level statistics.") (define-public r-recipes (package (name "r-recipes") - (version "0.1.14") + (version "0.1.15") (source (origin (method url-fetch) (uri (cran-uri "recipes" version)) (sha256 (base32 - "0ix678aj71ml5cmfhy1j0b2ddhf5wlb1d74bjc9djr6r86xsqmcz")))) + "0xif0ak3w90xmfzlxvb5pnzc3scpfl1pyhrjffi3mq4asvsd52l0")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -3915,21 +4146,23 @@ analysis of multiply imputed data sets.") (define-public r-mice (package (name "r-mice") - (version "3.11.0") + (version "3.12.0") (source (origin (method url-fetch) (uri (cran-uri "mice" version)) (sha256 (base32 - "1gawccw32l00rcriyxys0mzbxh44x04rziy0cbycc3i1qm39d4fq")))) + "0i7i9r0ipn7fypzp5xv1dnr54l30b7kg38mmq1kcvj2z1mjrwpap")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) + ("r-cpp11" ,r-cpp11) ("r-dplyr" ,r-dplyr) ("r-generics" ,r-generics) ("r-lattice" ,r-lattice) ("r-rcpp" ,r-rcpp) + ("r-rlang" ,r-rlang) ("r-tidyr" ,r-tidyr))) (home-page "https://cran.r-project.org/web/packages/mice/") (synopsis "Multivariate imputation by chained equations") @@ -3994,14 +4227,14 @@ programming} (SQP) based solver).") (define-public r-hardyweinberg (package (name "r-hardyweinberg") - (version "1.6.8") + (version "1.6.9") (source (origin (method url-fetch) (uri (cran-uri "HardyWeinberg" version)) (sha256 (base32 - "0b6j1mkpr7ck2nr9fmpnsjdv29jc6vg4b91cg50skmcgky1j0zi7")))) + "0l93r1hkr483hp4yd7rm7mdkgl5lp0nkvv0inahj3r1cplgfxpvs")))) (properties `((upstream-name . "HardyWeinberg"))) (build-system r-build-system) (propagated-inputs @@ -4352,14 +4585,14 @@ plots in @code{ggplot2}.") (define-public r-cli (package (name "r-cli") - (version "2.1.0") + (version "2.2.0") (source (origin (method url-fetch) (uri (cran-uri "cli" version)) (sha256 (base32 - "03zaq9yhz6gw49qdnhc66b3sw9i916ahkzyg2cgh17dhf31d2acq")))) + "1f20mk9pb9kqn0ni2z0sqsx8qj1apcbiw08pa4gwry142zv7m9rr")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -4417,13 +4650,13 @@ constants, and control debugging of packages via environment variables.") (define-public r-processx (package (name "r-processx") - (version "3.4.4") + (version "3.4.5") (source (origin (method url-fetch) (uri (cran-uri "processx" version)) (sha256 - (base32 "0as8lzfpbz5rcpcpczvrrgd67whngkmw12q33r2yn3k7lq80z95a")))) + (base32 "055v2gdrgqsfy8s672wsq79bqr44b4jjmcbqivx4p2d6lqx10s73")))) (build-system r-build-system) (propagated-inputs `(("r-ps" ,r-ps) @@ -4627,14 +4860,14 @@ to variables on the left-hand side of the assignment.") (define-public r-vctrs (package (name "r-vctrs") - (version "0.3.4") + (version "0.3.5") (source (origin (method url-fetch) (uri (cran-uri "vctrs" version)) (sha256 (base32 - "0xvqgc36zhd9y1xsm7kwrbr5sxwnd3jbr9qrb1gma2lqkqf42izb")))) + "1k1mcq7jkpc55dsm0wb4k8asc1irvmi5884v3ap4sabf22c5sq0i")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -4666,14 +4899,14 @@ to variables on the left-hand side of the assignment.") (define-public r-pillar (package (name "r-pillar") - (version "1.4.6") + (version "1.4.7") (source (origin (method url-fetch) (uri (cran-uri "pillar" version)) (sha256 (base32 - "01ck8ziqzjc9ibbj3g88siz1iw263dgl8jx6ryw2v50rjrr3y7fj")))) + "167ji21fx04s2niw5pjq9vzxgagxzsg3gimh8dzr2kl5ljrb5vfd")))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) @@ -4714,14 +4947,14 @@ terminals.") (define-public r-tinytex (package (name "r-tinytex") - (version "0.26") + (version "0.27") (source (origin (method url-fetch) (uri (cran-uri "tinytex" version)) (sha256 (base32 - "02b0v8ydbfspma3rgsdpkf2cm6jl9qm3l9jsrl0xng482b06bb0q")))) + "10hbc9h1fsw91w5f4fjcaqy68b3n1wr6pml01fnkf3pdjiri5sj0")))) (build-system r-build-system) (propagated-inputs `(("r-xfun" ,r-xfun))) @@ -4972,14 +5205,14 @@ provides some missing S-PLUS functionality in R.") (define-public r-ifultools (package (name "r-ifultools") - (version "2.0-5") + (version "2.0-22") (source (origin (method url-fetch) (uri (cran-uri "ifultools" version)) (sha256 (base32 - "040kvbczcmmbaiaz0k0pdq9af541pjj6iwzh1a3w4szh9w6b5a3j")))) + "0f95vqc47dgssqngznk0rclr72ndbyxc7gdq2cmbksvq7qpn3gg1")))) (build-system r-build-system) (propagated-inputs `(("r-mass" ,r-mass) @@ -5035,14 +5268,14 @@ Fisher's method), and Sidak correction.") (define-public r-quantmod (package (name "r-quantmod") - (version "0.4.17") + (version "0.4.18") (source (origin (method url-fetch) (uri (cran-uri "quantmod" version)) (sha256 (base32 - "1ss441rwlr88kz212m0wgx0hwgwi41rhy1jncg2lgqzqfvr5dzqa")))) + "0dbcrncv06iqcbkky95dd7l32xq0hhbnkb0kj8wwzym1jf748h5a")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) @@ -5059,14 +5292,14 @@ financial trading strategies.") (define-public r-tseries (package (name "r-tseries") - (version "0.10-47") + (version "0.10-48") (source (origin (method url-fetch) (uri (cran-uri "tseries" version)) (sha256 (base32 - "0yzvc9djp3angvxdxqi60wi726y76ablsb71q88ycvw0avgpf8r0")))) + "0wa4rcf0igayi1yrwc6wak6d491560p0z89rz32haqlkiiq25gak")))) (build-system r-build-system) (propagated-inputs `(("r-quadprog" ,r-quadprog) @@ -5599,14 +5832,14 @@ systems.") (define-public r-radiant-data (package (name "r-radiant-data") - (version "1.3.10") + (version "1.3.12") (source (origin (method url-fetch) (uri (cran-uri "radiant.data" version)) (sha256 (base32 - "09a3wn3gl1zjq5zsc5zaxyq71dg5qnpk57bmwd6qy8w99g2clm8c")) + "08bqqrfvpgyf613ikihwfnzb23l23f5nfs7zynnxbjxc1zfhbpny")) (modules '((guix build utils))) (snippet '(begin @@ -6296,14 +6529,14 @@ Python's @url{https://github.com/ActiveState/appdirs,Appdirs} to R.") (define-public r-renv (package (name "r-renv") - (version "0.12.0") + (version "0.12.3") (source (origin (method url-fetch) (uri (cran-uri "renv" version)) (sha256 (base32 - "1jwm1ik600xswb53i1swjsnfrjjdffmmyk5k9hjc7kc8nlfl0ay5")))) + "0k31x19gzpffb701c76p840cip10c0dh8yv3wcs30gqi0ag1g77l")))) (properties `((upstream-name . "renv"))) (build-system r-build-system) (native-inputs @@ -6864,17 +7097,16 @@ hierarchical models using Markov Chain Monte Carlo (MCMC) simulation.") (define-public r-rbibutils (package (name "r-rbibutils") - (version "1.3") + (version "2.0") (source (origin (method url-fetch) (uri (cran-uri "rbibutils" version)) (sha256 (base32 - "1i000czyd059dczd2nn1cb0d4n0bjykrfh51rs85s8r2zlaydn6i")))) + "1vfg2188i4dyhrmvnwpsh2la8qkd4wkryz2fpj4cppi1wfz3ml83")))) (properties `((upstream-name . "rbibutils"))) (build-system r-build-system) - (propagated-inputs `(("r-xml2" ,r-xml2))) (home-page "https://geobosh.github.io/rbibutils/") (synopsis "Convert between bibliography formats") (description @@ -6887,14 +7119,14 @@ implemented in bibutils.") (define-public r-rdpack (package (name "r-rdpack") - (version "2.0") + (version "2.1") (source (origin (method url-fetch) (uri (cran-uri "Rdpack" version)) (sha256 (base32 - "04gk68y3cxlqhfl1aarjwz2mvx934ka0yxfgzrnw03ykhvb47fpi")))) + "1kmz0kq2z1xl55w22paz98x9jpss06abvicmkslv4zq77kz99q16")))) (properties `((upstream-name . "Rdpack"))) (build-system r-build-system) (propagated-inputs @@ -6914,14 +7146,14 @@ references and Rd files.") (define-public r-officer (package (name "r-officer") - (version "0.3.14") + (version "0.3.15") (source (origin (method url-fetch) (uri (cran-uri "officer" version)) (sha256 (base32 - "1nyv4710bcd2afh1l1qiy5zrspjcdvc7mrzz5189dwy9xvgxi31h")))) + "1s9hrkdx105c1plpxywv68bmp8hvvxbdizhwx81fxr79fhj62x5j")))) (build-system r-build-system) (propagated-inputs `(("r-magrittr" ,r-magrittr) @@ -7176,14 +7408,14 @@ other add-on packages.") (define-public r-insight (package (name "r-insight") - (version "0.10.0") + (version "0.11.1") (source (origin (method url-fetch) (uri (cran-uri "insight" version)) (sha256 (base32 - "1r4val3hvc43zailfmq6wcbg366s0bi0ysib476a49k1x6h8b6ji")))) + "1m95xfvai1kbzqxdggjvdbk6ax2dg4v2lrfpqn7v607g2n77n2k0")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -7310,14 +7542,14 @@ functions.") (define-public r-flextable (package (name "r-flextable") - (version "0.5.11") + (version "0.6.1") (source (origin (method url-fetch) (uri (cran-uri "flextable" version)) (sha256 (base32 - "1yb872izzr9yja7q2vfqm0imcbcgs0fvi4b19arhdlwwa42figj4")))) + "06nzyd2a9yaf9hmn740xrgxw0448z5dvlplcj3kizz9sm23aw9li")))) (build-system r-build-system) (propagated-inputs `(("r-base64enc" ,r-base64enc) @@ -7330,6 +7562,8 @@ functions.") ("r-rmarkdown" ,r-rmarkdown) ("r-uuid" ,r-uuid) ("r-xml2" ,r-xml2))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://davidgohel.github.io/flextable") (synopsis "Functions for tabular reporting") (description @@ -7556,14 +7790,14 @@ the work.") (define-public r-doby (package (name "r-doby") - (version "4.6.7") + (version "4.6.8") (source (origin (method url-fetch) (uri (cran-uri "doBy" version)) (sha256 (base32 - "16vg1aa272sfzyqxfb63fyis9hv6g5m3nmxxa6mk1gy0irqnl3jk")))) + "0r97kwsj6g87m7shgnjc5c9y71jkhiq4xd9q0s2bxl0vl92qqwvg")))) (properties `((upstream-name . "doBy"))) (build-system r-build-system) (propagated-inputs @@ -7642,14 +7876,14 @@ procedures to speed up calculations in R.") (define-public r-blockfest (package (name "r-blockfest") - (version "1.6") + (version "1.8") (source (origin (method url-fetch) (uri (cran-uri "BlockFeST" version)) (sha256 (base32 - "0hj7a5as7nxbgjac7lbj6qfwffx3g8x8phpf9a55f1c9cdzi73a5")))) + "12cbrmgqszlj729zrn9d1d7drbr0iay43knnmrzcxs6v7lfszsx5")))) (properties `((upstream-name . "BlockFeST"))) (build-system r-build-system) (propagated-inputs `(("r-basix" ,r-basix))) @@ -7749,13 +7983,13 @@ the analyzed items.") (define-public r-slam (package (name "r-slam") - (version "0.1-47") + (version "0.1-48") (source (origin (method url-fetch) (uri (cran-uri "slam" version)) (sha256 - (base32 "12fggw2c7hz3bpvsaqm24g3r6lbpq6jgli24g7x5j859iak5cqv9")))) + (base32 "1ppsvkph4v1dffxgp12a4wnr9arj7pkmh4qv0and3f6nbz9k42qa")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/slam/") (synopsis "Sparse lightweight arrays and matrices") @@ -8038,14 +8272,14 @@ used to teach mathematics, statistics, computation and modeling.") (define-public r-raster (package (name "r-raster") - (version "3.3-13") + (version "3.4-5") (source (origin (method url-fetch) (uri (cran-uri "raster" version)) (sha256 (base32 - "1s6457rq94qvm3s2lqscs2c2gn5kzcpxa13i8nhlgb1klx5kams7")))) + "19g4chd0nyhnz6hc2j0v9ahjcgz64vvja4y3mrj1pfis1dwhsqn6")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp) @@ -8599,17 +8833,48 @@ conveniently wrapped into a data frame.") multiple-imputation datasets.") (license license:gpl2))) +(define-public r-mixsqp + (package + (name "r-mixsqp") + (version "0.3-43") + (source (origin + (method url-fetch) + (uri (cran-uri "mixsqp" version)) + (sha256 + (base32 + "1qics04w0swyp216d6g8dmsph8q2kpadpacp66h2qih3521js12q")))) + (properties `((upstream-name . "mixsqp"))) + (build-system r-build-system) + (propagated-inputs + `(("r-irlba" ,r-irlba) + ("r-rcpp" ,r-rcpp) + ("r-rcpparmadillo" ,r-rcpparmadillo))) + (native-inputs + `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/stephenslab/mixsqp") + (synopsis + "Sequential quadratic programming for maximum-likelihood estimation") + (description + "This package provides an optimization method based on sequential +quadratic programming for maximum likelihood estimation of the mixture +proportions in a finite mixture model where the component densities are +known. The algorithm is expected to obtain solutions that are at least +as accurate as the state-of-the-art MOSEK interior-point solver, and they +are expected to arrive at solutions more quickly when the number of +samples is large and the number of mixture components is not too large.") + (license license:expat))) + (define-public r-magick (package (name "r-magick") - (version "2.5.0") + (version "2.5.2") (source (origin (method url-fetch) (uri (cran-uri "magick" version)) (sha256 (base32 - "1fhwr34xff6793ifbzqmij8b8qg7hrnr4birqpg33ib0mdd6flkf")))) + "0myvryya7b4bbw0hs4jqflrbdffmg78kz28gbybw3yc7zwc7sqxx")))) (build-system r-build-system) (inputs `(("imagemagick" ,imagemagick) @@ -9016,14 +9281,14 @@ packages maintained by Torsten Hothorn.") (define-public r-multcomp (package (name "r-multcomp") - (version "1.4-14") + (version "1.4-15") (source (origin (method url-fetch) (uri (cran-uri "multcomp" version)) (sha256 (base32 - "14a55isy1sp745s109nirlk5fryy144cri6dl8y9d9wjhfxz336a")))) + "1klvn4a1rlrzwhy1cjrkbbh6jspgzbrdm0jxsb1lmf1yzdz609wr")))) (build-system r-build-system) (propagated-inputs `(("r-codetools" ,r-codetools) @@ -9280,14 +9545,14 @@ differentiation.") (define-public r-bayestestr (package (name "r-bayestestr") - (version "0.7.5") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "bayestestR" version)) (sha256 (base32 - "0l6q7v96m9asqa0p55k0gpzy8hddf8srkhc9r7zf4hv0dscbi9dv")))) + "11mxnpqc85y13wf8mnnrh0k8d3jqdsr99hkv4cgvwav38qpvjhhw")))) (properties `((upstream-name . "bayestestR"))) (build-system r-build-system) (propagated-inputs @@ -9307,14 +9572,14 @@ ROPE percentage and pd).") (define-public r-performance (package (name "r-performance") - (version "0.5.1") + (version "0.6.0") (source (origin (method url-fetch) (uri (cran-uri "performance" version)) (sha256 (base32 - "1vkc87vbhw7l626pdnpiravnpsa5j0iv73lbwy3m309lnfvv0cqx")))) + "0ai1pp6k0pmmjgpj7hc53s0h258c4mljln8lv3nd9r7kzrmic0gc")))) (build-system r-build-system) (propagated-inputs `(("r-bayestestr" ,r-bayestestr) @@ -9334,14 +9599,14 @@ effects models and Bayesian models.") (define-public r-ggeffects (package (name "r-ggeffects") - (version "0.16.0") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "ggeffects" version)) (sha256 (base32 - "0v8n8jmp6x1iagbyc5jgf1d29yz5hd3ibnyl9n9f73vqq5bzj0p5")))) + "18diwssc5vij5g7zh9mv0ppcv3xgfi2jqzfx9srxfahg05sr1xdq")))) (build-system r-build-system) (propagated-inputs `(("r-insight" ,r-insight) @@ -9364,14 +9629,14 @@ results using @code{ggplot2}.") (define-public r-effectsize (package (name "r-effectsize") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) (uri (cran-uri "effectsize" version)) (sha256 (base32 - "0shx19ahw13wrn7jlyyvzvngqk66d6jiw9i51mx3psdn3hdnhy9s")))) + "1rbl63b1c7z9llznnwvclqrcgdd4hfmc7y66v7raqqf2a4nadqa5")))) (properties `((upstream-name . "effectsize"))) (build-system r-build-system) (propagated-inputs @@ -9454,23 +9719,50 @@ files to an structured list. Users can manipulate this resulting list with back to file after modifications.") (license license:gpl3))) +(define-public r-gitcreds + (package + (name "r-gitcreds") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "gitcreds" version)) + (sha256 + (base32 + "1snzn7nxy0rwz0bzjsg6k04c0n811dgn8gn9cmn2v78aj57ayjmi")))) + (properties `((upstream-name . "gitcreds"))) + (build-system r-build-system) + (inputs `(("git" ,git-minimal))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://github.com/r-lib/gitcreds") + (synopsis "Query git credentials from R") + (description + "Query, set, and delete credentials from the git credential store. +Manage GitHub tokens and other git credentials. This package is to be used by +other packages that need to authenticate to GitHub and/or other git +repositories.") + (license license:expat))) + (define-public r-gh (package (name "r-gh") - (version "1.1.0") + (version "1.2.0") (source (origin (method url-fetch) (uri (cran-uri "gh" version)) (sha256 (base32 - "1bc9bn1078s664hc806dh0y1ncxif77q479rfmxfir9z7hwaz7yy")))) + "1zvy3ylxvni10lhvmbm9h14mg4wlsbdbzbzviwf28jxss8749219")))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) + ("r-gitcreds" ,r-gitcreds) ("r-httr" ,r-httr) ("r-ini" ,r-ini) ("r-jsonlite" ,r-jsonlite))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/r-lib/gh#readme") (synopsis "Access the GitHub API via R") (description @@ -10001,14 +10293,14 @@ address a bug.") (define-public r-rcppannoy (package (name "r-rcppannoy") - (version "0.0.16") + (version "0.0.17") (source (origin (method url-fetch) (uri (cran-uri "RcppAnnoy" version)) (sha256 (base32 - "0bfa35lp6vc4b0h3ymvdx50br233q8vvyjml34ngi81rj0imz3fr")))) + "0z4dpvk2hmh817709l70jdl1vvnzn0vb9wlr5m8jza24sn9w14ac")))) (properties `((upstream-name . "RcppAnnoy"))) (build-system r-build-system) (propagated-inputs @@ -10491,14 +10783,14 @@ redundant complex conjugate when the input is real data.") (define-public r-tiff (package (name "r-tiff") - (version "0.1-5") + (version "0.1-6") (source (origin (method url-fetch) (uri (cran-uri "tiff" version)) (sha256 (base32 - "0asf2bws3x3yd3g3ixvk0f86b0mdf882pl8xrqlxrkbgjalyc54m")))) + "1yy4im2lwzhjnnkfwxgkknsajvm83pcwaf370pkgfva2db0xjfv2")))) (build-system r-build-system) (inputs `(("libtiff" ,libtiff) @@ -10536,14 +10828,14 @@ Processing.") (define-public r-tm (package (name "r-tm") - (version "0.7-7") + (version "0.7-8") (source (origin (method url-fetch) (uri (cran-uri "tm" version)) (sha256 (base32 - "0pyics8j7a4wkh5gzin46l0qars5vgbb1886xqpdqjs1z0gy9nyh")))) + "0mk2lsplynms15nw92vbdgsafg4bw1m0ik31gch1mnsnv61idsxi")))) (properties `((upstream-name . "tm"))) (build-system r-build-system) (propagated-inputs @@ -10923,14 +11215,14 @@ diagnostics for controlling type-1 errors are also provided.") (define-public r-flare (package (name "r-flare") - (version "1.6.0.2") + (version "1.7.0") (source (origin (method url-fetch) (uri (cran-uri "flare" version)) (sha256 (base32 - "1ybrsx1djqldw0l5l1iz4pfh6xxb8ckkg1ric7wnsr51wm9ljlh5")))) + "0f992dmgnr6s8g3386i9bjfyf08q8srgw7sjz2yx7snj8znq7251")))) (build-system r-build-system) (propagated-inputs `(("r-igraph" ,r-igraph) @@ -11023,14 +11315,14 @@ Touzet and Varre (2007).") (define-public r-rnifti (package (name "r-rnifti") - (version "1.2.3") + (version "1.3.0") (source (origin (method url-fetch) (uri (cran-uri "RNifti" version)) (sha256 (base32 - "02jdxz3w423k9b5wldky4pnnq0cs2zlfi52jxjw1mk24z756j692")))) + "1zr0q79id62csmc30c7gs4hbmavk8n6p50a981sfz51dczhjj5ny")))) (properties `((upstream-name . "RNifti"))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) @@ -11492,14 +11784,14 @@ limitations\" using the GNU Multiple Precision library.") (define-public r-rmpfr (package (name "r-rmpfr") - (version "0.8-1") + (version "0.8-2") (source (origin (method url-fetch) (uri (cran-uri "Rmpfr" version)) (sha256 (base32 - "09kw7hyca8xc09r2d88qj81cclar8acaq5q9q5rw9f49iffda0rr")))) + "007pc7fpzl2mcg3qxa2vfjip6m2dr314qjsnybkj3kdj70bszxkl")))) (properties `((upstream-name . "Rmpfr"))) (build-system r-build-system) (inputs @@ -12281,19 +12573,20 @@ model with finite state space using the Aalen-Johansen estimator.") (define-public r-epi (package (name "r-epi") - (version "2.41") + (version "2.42") (source (origin (method url-fetch) (uri (cran-uri "Epi" version)) (sha256 (base32 - "09miba6zk63bwc79n3030kgzlvy3whkq968pgqyghxnsjfh5ckp5")))) + "1vsyxlxl6n5y3wr8w7ji17hnhvbr0xsawqbdl1ajcfg5faizm9sl")))) (properties `((upstream-name . "Epi"))) (build-system r-build-system) (propagated-inputs `(("r-cmprsk" ,r-cmprsk) ("r-data-table" ,r-data-table) + ("r-dplyr" ,r-dplyr) ("r-etm" ,r-etm) ("r-mass" ,r-mass) ("r-matrix" ,r-matrix) @@ -12439,14 +12732,14 @@ subsetting.") (define-public r-globals (package (name "r-globals") - (version "0.13.1") + (version "0.14.0") (source (origin (method url-fetch) (uri (cran-uri "globals" version)) (sha256 (base32 - "1ch9m7fxclfhfa38b743wcm7w1bkx9kmivc6l7phpbgs6h9jhrcc")))) + "1wrjiiif6rpc268zz79pvpw33si6n6ffgxdnxmmcracwhb5vqg90")))) (build-system r-build-system) (propagated-inputs `(("r-codetools" ,r-codetools))) @@ -12460,22 +12753,51 @@ simple as possible to identify global objects for the purpose of exporting them in distributed compute environments.") (license license:lgpl2.1+))) +(define-public r-parallelly + (package + (name "r-parallelly") + (version "1.21.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "parallelly" version)) + (sha256 + (base32 + "1hlr81khr7z4x9gprymdh19mdq3nw6wm8d2795sd2pa3ya6phnb0")))) + (properties `((upstream-name . "parallelly"))) + (build-system r-build-system) + (home-page "https://github.com/HenrikBengtsson/parallelly") + (synopsis "Enhancements of the parallel package") + (description + "This package provides utility functions that enhance the @code{parallel} +package and support the built-in parallel backends of the @code{future} +package. For example, @code{availableCores} gives the number of CPU cores +available to your R process as given by R options and environment variables, +including those set by job schedulers on high-performance compute clusters. +If none is set, it will fall back to @code{parallel::detectCores}. Another +example is @code{makeClusterPSOCK}, which is backward compatible with +@code{parallel::makePSOCKcluster} while doing a better job in setting up +remote cluster workers without the need for configuring the firewall to do +port-forwarding to your local computer.") + (license license:lgpl2.1+))) + (define-public r-future (package (name "r-future") - (version "1.19.1") + (version "1.20.1") (source (origin (method url-fetch) (uri (cran-uri "future" version)) (sha256 (base32 - "12f483h7g172ygafbg7h43vykv0f7xz9miwqf5q8dyv7gpgqi5fl")))) + "14k00g8c9zgf77d6q7x2vibvlivzk2rzj7lwn7v7d9nr6prqzlb6")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) ("r-globals" ,r-globals) - ("r-listenv" ,r-listenv))) + ("r-listenv" ,r-listenv) + ("r-parallelly" ,r-parallelly))) (native-inputs `(("r-r-rsp" ,r-r-rsp))) ; vignette builder (home-page "https://github.com/HenrikBengtsson/future") @@ -12761,14 +13083,14 @@ Coefficient Logit Models.") (define-public r-tensora (package (name "r-tensora") - (version "0.36.1") + (version "0.36.2") (source (origin (method url-fetch) (uri (cran-uri "tensorA" version)) (sha256 (base32 - "176hjy3bvg3in62r97wxbhq187sjz6c1gwy9x6spaxl6k4my3zy7")))) + "19wwh654qlja4z1n7afjpzsrrm53p8ddysa2vra5mdnkddb4g2cf")))) (properties `((upstream-name . "tensorA"))) (build-system r-build-system) (home-page "http://www.stat.boogaart.de/tensorA") @@ -13947,14 +14269,14 @@ sampling.") (define-public r-deldir (package (name "r-deldir") - (version "0.1-29") + (version "0.2-3") (source (origin (method url-fetch) (uri (cran-uri "deldir" version)) (sha256 (base32 - "1vwh8c8zxspyls05q9kgzz5p85i8k8aax5ir45np2bmg0pjvh6kv")))) + "0kin1hsd6dj36kkg7n328mzp21wwn9jm69lvgg2rvbf6bq7q091d")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (home-page "https://cran.r-project.org/web/packages/deldir") @@ -14211,13 +14533,13 @@ lspec, polyclass, and polymars.") (define-public r-rms (package (name "r-rms") - (version "6.0-1") + (version "6.1-0") (source (origin (method url-fetch) (uri (cran-uri "rms" version)) (sha256 - (base32 "1zkcsqcvldfj4kyn0346vi51igq951qrnpxlv2pfvap6n2v5wbxq")))) + (base32 "0llz519rgnc7v2jqhfrjgixkpkmmi5wi1a52hgz3n28s46ww77mq")))) (build-system r-build-system) (propagated-inputs `(("r-cluster" ,r-cluster) @@ -15132,14 +15454,14 @@ databases, including ENA, PDB or ChEMBL are also accessible.") (define-public r-ggraph (package (name "r-ggraph") - (version "2.0.3") + (version "2.0.4") (source (origin (method url-fetch) (uri (cran-uri "ggraph" version)) (sha256 (base32 - "1pz06j0za4p6dc3fqjzcw8bpym70bmnfcvpv1q34r74rnwzjdyvq")))) + "1j3xf4fsv0i0gbppdrw4yprfyk53wx6s8nvnkipi2ywbm7cr4q4w")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -15155,7 +15477,8 @@ databases, including ENA, PDB or ChEMBL are also accessible.") ("r-rlang" ,r-rlang) ("r-scales" ,r-scales) ("r-tidygraph" ,r-tidygraph) - ("r-viridis" ,r-viridis))) + ("r-viridis" ,r-viridis) + ("r-withr" ,r-withr))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://cran.r-project.org/web/packages/ggraph/") @@ -15240,22 +15563,22 @@ discriminant analysis for the purpose of classifying high dimensional data.") (define-public r-ggvis (package (name "r-ggvis") - (version "0.4.6") + (version "0.4.7") (source (origin (method url-fetch) (uri (cran-uri "ggvis" version)) (sha256 (base32 - "1k40mkfxj66qvwbsp849maihv6vxkdprhhzjkwffwn0lwl78lsz1")))) + "1qv512pd4x5vmx15y9nvqmabbbw14h75fmi1sjbcg5yl25z0cswy")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) ("r-dplyr" ,r-dplyr) ("r-htmltools" ,r-htmltools) ("r-jsonlite" ,r-jsonlite) - ("r-lazyeval" ,r-lazyeval) ("r-magrittr" ,r-magrittr) + ("r-rlang" ,r-rlang) ("r-shiny" ,r-shiny))) (home-page "https://ggvis.rstudio.com/") (synopsis "Interactive grammar of graphics") @@ -15941,14 +16264,14 @@ experiments in a well-organized and reproducible way.") (define-public r-clue (package (name "r-clue") - (version "0.3-57") + (version "0.3-58") (source (origin (method url-fetch) (uri (cran-uri "clue" version)) (sha256 (base32 - "05rdcahawxlxci3fjxihjvvh33wqpxw50sx015165ab4nh3rsdkf")))) + "1rwwxlnpl1k0n4k96vxc9zajw9kb4syqwzj76fvaf0qim8p6ddia")))) (build-system r-build-system) (propagated-inputs `(("r-cluster" ,r-cluster))) (home-page "https://cran.r-project.org/web/packages/clue/") @@ -16084,14 +16407,14 @@ classification and regression models.") (define-public r-dae (package (name "r-dae") - (version "3.1-27") + (version "3.1-32") (source (origin (method url-fetch) (uri (cran-uri "dae" version)) (sha256 (base32 - "14q3cxhcz0zqjdkas0dl71k2bp5qwvb60gha47s78hdr38r46kml")))) + "126w1lb9pz8mb2ajl2vz5dj798nbifp0dypnzfgcwixif5g5bpqi")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -16229,24 +16552,25 @@ results and plots in a unified style using the @code{ggplot2} package.") (define-public r-refmanager (package (name "r-refmanager") - (version "1.2.12") + (version "1.3.0") (source (origin (method url-fetch) (uri (cran-uri "RefManageR" version)) (sha256 (base32 - "1hfxa1qacfryk36mpaqdhdgws5jwxiyy489ikd3wa18bp1wz8dkp")))) + "1spzdp5ni52dybcaxqnhwdphh27wjyrsfy4hsxsplpg9rqwfqfps")))) (properties `((upstream-name . "RefManageR"))) (build-system r-build-system) (propagated-inputs - `(("r-bibtex" ,r-bibtex) - ("r-httr" ,r-httr) + `(("r-httr" ,r-httr) ("r-jsonlite" ,r-jsonlite) ("r-lubridate" ,r-lubridate) ("r-plyr" ,r-plyr) ("r-stringr" ,r-stringr) ("r-xml2" ,r-xml2))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/ropensci/RefManageR/") (synopsis "Straightforward BibTeX and BibLaTeX bibliography management") (description @@ -16326,14 +16650,14 @@ easily.") (define-public r-umap (package (name "r-umap") - (version "0.2.6.0") + (version "0.2.7.0") (source (origin (method url-fetch) (uri (cran-uri "umap" version)) (sha256 (base32 - "0zajn2sk705sckljxl5vz4q2sxpsqim2grmjq2jwwc8ysr1h2s9f")))) + "191vpy84s0bar06y9z1qx43x2kc4qp7lmrcmd0cvz2pnzq722jab")))) (build-system r-build-system) (propagated-inputs `(("r-openssl" ,r-openssl) @@ -16353,14 +16677,14 @@ in R, including a translation of the original algorithm into R.") (define-public r-uwot (package (name "r-uwot") - (version "0.1.8") + (version "0.1.9") (source (origin (method url-fetch) (uri (cran-uri "uwot" version)) (sha256 (base32 - "1jzh8r1h6f7pw7pb1fr32vn6ai9g10s56ahkq0vi77iznihy1rpd")))) + "1iqvircvlxyd68n5279a0cwn5rc3pshxs7w1gqrns9c602xd6mhy")))) (build-system r-build-system) (propagated-inputs `(("r-dqrng" ,r-dqrng) @@ -16512,14 +16836,14 @@ computed using the L1 (Manhattan, taxicab) metric.") (define-public r-leiden (package (name "r-leiden") - (version "0.3.4") + (version "0.3.6") (source (origin (method url-fetch) (uri (cran-uri "leiden" version)) (sha256 (base32 - "0cj98s1d9771dahn2xwdb1hpkw51jsfmgvzpam34c7i57fj37hn2")))) + "1k1250bjgf2cb1whp2sl1r6b88156qwi2zkamw5iy2q1qhw6w2d7")))) (properties `((upstream-name . "leiden"))) (build-system r-build-system) (propagated-inputs @@ -16540,14 +16864,14 @@ guaranteeing well-connected communities.\" <arXiv:1810.08473>.") (define-public r-patchwork (package (name "r-patchwork") - (version "1.0.1") + (version "1.1.0") (source (origin (method url-fetch) (uri (cran-uri "patchwork" version)) (sha256 (base32 - "0wm93a40idrkzn5hpnykhznvh7hdbfqw0dkzzn0zk83qlwyc9g02")))) + "13vswvcfmadmjz7pw0qdqdr6x85zbza4gljx2nx3a39hldj71yck")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -16865,14 +17189,14 @@ in pipelines.") (define-public r-parameters (package (name "r-parameters") - (version "0.9.0") + (version "0.10.1") (source (origin (method url-fetch) (uri (cran-uri "parameters" version)) (sha256 (base32 - "17jjmy1qnx25ldvasrwhmal45nl1sr8qjxprbi8fcjwra9af6cr6")))) + "1xvjvsdd0hql209f7v2l1nw7gy8jkj5qp0699p5m2h55a01jl778")))) (properties `((upstream-name . "parameters"))) (build-system r-build-system) (propagated-inputs @@ -17512,14 +17836,14 @@ server-side.") (define-public r-sysfonts (package (name "r-sysfonts") - (version "0.8.1") + (version "0.8.2") (source (origin (method url-fetch) (uri (cran-uri "sysfonts" version)) (sha256 (base32 - "1xp40hchjfif80a6jj210ghrjcvjjf66vqcssdy7a1j53nl1n994")))) + "1gapsiva0vjd2myxgm1avav6my5x00rmy2hx0qll7dm7v1isznbv")))) (properties `((upstream-name . "sysfonts"))) (build-system r-build-system) (inputs @@ -17560,14 +17884,14 @@ package.") (define-public r-showtext (package (name "r-showtext") - (version "0.9") + (version "0.9-1") (source (origin (method url-fetch) (uri (cran-uri "showtext" version)) (sha256 (base32 - "11fx2vv8jlvcnybh18y7v4bn2c67aqsqwfq7y8dpywbwr4zg8jid")))) + "1hq346k2lm7rv49hw7srn3ab5gcp6b0r4zc1kgsdmswyh3q1asra")))) (properties `((upstream-name . "showtext"))) (build-system r-build-system) (inputs @@ -17681,14 +18005,14 @@ regression models.") (define-public r-abtest (package (name "r-abtest") - (version "0.2.1") + (version "0.2.2") (source (origin (method url-fetch) (uri (cran-uri "abtest" version)) (sha256 (base32 - "1zfd13d7dplawk24dbdr1ka8cbdp5w6sxb0zlm7k4dhvn6ksi8h0")))) + "1ak0m4jd1grriwg4pn3aqf1468qma6rjn5kqjh8izx7zl29jd07v")))) (properties `((upstream-name . "abtest"))) (build-system r-build-system) (propagated-inputs @@ -18375,14 +18699,14 @@ the @code{aroma.affymetrix} package.") (define-public r-r-filesets (package (name "r-r-filesets") - (version "2.13.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (cran-uri "R.filesets" version)) (sha256 (base32 - "124rygq0bl9n4akxcm868nl30cyk3rz0iprb98zlpk62gci9f5fg")))) + "08xv8b3c81nf54viyr3w912al18483k5gfnjpg7bxbdfk70dfzbh")))) (properties `((upstream-name . "R.filesets"))) (build-system r-build-system) (propagated-inputs @@ -19028,21 +19352,124 @@ metrics to quantify time accumulation strategies based on minute level actigraphy-measured activity counts data.") (license license:gpl3))) +(define-public r-ash + (package + (name "r-ash") + (version "1.0-15") + (source + (origin + (method url-fetch) + (uri (cran-uri "ash" version)) + (sha256 + (base32 + "1ay2a2agdmiz7zzvn26mli0x0iwk09g5pp4yy1r23knhkp1pn2lb")))) + (properties `((upstream-name . "ash"))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/ash/") + (synopsis "David Scott's ASH routines") + (description + "This package provides David Scott's ASH routines ported from S-PLUS to +R.") + (license license:gpl2+))) + +(define-public r-hdrcde + (package + (name "r-hdrcde") + (version "3.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "hdrcde" version)) + (sha256 + (base32 + "0c2qbw4c3mq1cb068kjs72rxlbibz8svwcrx853jyr8ybs23z7ab")))) + (properties `((upstream-name . "hdrcde"))) + (build-system r-build-system) + (propagated-inputs + `(("r-ash" ,r-ash) + ("r-ggplot2" ,r-ggplot2) + ("r-kernsmooth" ,r-kernsmooth) + ("r-ks" ,r-ks) + ("r-locfit" ,r-locfit) + ("r-rcolorbrewer" ,r-rcolorbrewer))) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "http://pkg.robjhyndman.com/hdrcde") + (synopsis "Highest density regions and conditional density estimation") + (description + "This is a package for the computation of highest density regions in one +and two dimensions, kernel estimation of univariate density functions +conditional on one covariate, and multimodal regression.") + (license license:gpl3))) + +(define-public r-rainbow + (package + (name "r-rainbow") + (version "3.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "rainbow" version)) + (sha256 + (base32 + "11vfcck17d2xjc049ci5i8l1nqv345anmd110gdz7654i1pj9lb3")))) + (properties `((upstream-name . "rainbow"))) + (build-system r-build-system) + (propagated-inputs + `(("r-cluster" ,r-cluster) + ("r-colorspace" ,r-colorspace) + ("r-hdrcde" ,r-hdrcde) + ("r-ks" ,r-ks) + ("r-mass" ,r-mass) + ("r-pcapp" ,r-pcapp))) + (home-page "https://cran.r-project.org/web/packages/rainbow/") + (synopsis "Bagplots, boxplots and rainbow plots for functional data") + (description + "This is a package for visualizing functional data and identifying +functional outliers with bagplots, boxplots and rainbow plots.") + (license license:gpl3))) + +(define-public r-fds + (package + (name "r-fds") + (version "1.8") + (source + (origin + (method url-fetch) + (uri (cran-uri "fds" version)) + (sha256 + (base32 + "1284vncixrzrz9x6b52gslrbrbia07sd0xac7nwdqhp5f5v5wfi0")))) + (properties `((upstream-name . "fds"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rainbow" ,r-rainbow) + ("r-rcurl" ,r-rcurl))) + (home-page "https://cran.r-project.org/web/packages/fds/") + (synopsis "Functional data sets") + (description "This package contains a list of functional time series, +sliced functional time series, and functional data sets. Functional time +series is a special type of functional data observed over time. Sliced +functional time series is a special type of functional time series with a time +variable observed over time.") + (license license:gpl2+))) + (define-public r-fda (package (name "r-fda") - (version "5.1.5.1") + (version "5.1.7") (source (origin (method url-fetch) (uri (cran-uri "fda" version)) (sha256 (base32 - "0zi001cw5536x6rgr4l0skva7fk53663zf6ggnsa8znml090sihm")))) + "1r8hfi6x1maw5zz8k95wfcr7v69lg4zl3mcj69cvvq2mkg4y3158")))) (properties `((upstream-name . "fda"))) (build-system r-build-system) (propagated-inputs - `(("r-matrix" ,r-matrix))) + `(("r-fds" ,r-fds) + ("r-matrix" ,r-matrix))) (home-page "https://www.functionaldata.org") (synopsis "Functional data analysis") (description @@ -20418,14 +20845,14 @@ and Euclidean distance is particularly fast.") (define-public r-isocodes (package (name "r-isocodes") - (version "2020.03.16") + (version "2020.12.04") (source (origin (method url-fetch) (uri (cran-uri "ISOcodes" version)) (sha256 (base32 - "1hz1sj57qkkkrgn8slsz2n4jv1fkyp40503j9rg30lxy4gmb83hn")))) + "18373rkhmwm7y2drvfbhrxkqw9d23avf0ndvh0fg00z4djvddkjx")))) (properties `((upstream-name . "ISOcodes"))) (build-system r-build-system) (home-page "https://cran.r-project.org/package=ISOcodes") @@ -20440,14 +20867,14 @@ character codes as well as the UN M.49 area codes.") (define-public r-stopwords (package (name "r-stopwords") - (version "2.0") + (version "2.1") (source (origin (method url-fetch) (uri (cran-uri "stopwords" version)) (sha256 (base32 - "155g00ansyqfpp1mzd2q6mn0k214xinf78nww2368h24kz761jjw")))) + "1g2p8gsj7xjck7idcwczgc7fmv72lzwjw00qarrj0cv44kypmiq8")))) (properties `((upstream-name . "stopwords"))) (build-system r-build-system) (propagated-inputs @@ -21510,13 +21937,13 @@ recommendations for developers.") (define-public r-loo (package (name "r-loo") - (version "2.3.1") + (version "2.4.0") (source (origin (method url-fetch) (uri (cran-uri "loo" version)) (sha256 - (base32 "12z0k8lhz0rxygs5lc7076nw6qhk0pda8nxf65hkinfrf4dy53fr")))) + (base32 "01a15ikfnyxhjhrgvy3ag929rg45dxp3wji1j38r4hg4q1yz4ma9")))) (properties `((upstream-name . "loo"))) (build-system r-build-system) (inputs @@ -21812,14 +22239,14 @@ Encyclopedia of Integer Sequences} (OEIS) in the function help page.") (define-public r-isoband (package (name "r-isoband") - (version "0.2.2") + (version "0.2.3") (source (origin (method url-fetch) (uri (cran-uri "isoband" version)) (sha256 (base32 - "044fg014gb6v6v11gm7ivfipz45iqw9cpahjhaacw6kyahyb66zx")))) + "1zkzdc39dpw2z59bjck27nimz9a2vskmw0f7wb17s53dvy7k3lzr")))) (properties `((upstream-name . "isoband"))) (build-system r-build-system) (propagated-inputs @@ -22428,17 +22855,109 @@ connection, user authentication and file transfer. A simple R client is included in this package as well.") (license license:gpl2))) +(define-public r-gamm4 + (package + (name "r-gamm4") + (version "0.2-6") + (source + (origin + (method url-fetch) + (uri (cran-uri "gamm4" version)) + (sha256 + (base32 + "128c725y9s07c1m9cvd9hgi9hldrymcs5divd8pw7bdjh9jvdiap")))) + (properties `((upstream-name . "gamm4"))) + (build-system r-build-system) + (propagated-inputs + `(("r-lme4" ,r-lme4) + ("r-matrix" ,r-matrix) + ("r-mgcv" ,r-mgcv))) + (home-page "https://cran.r-project.org/web/packages/gamm4/") + (synopsis "Generalized additive mixed models using mgcv and lme4") + (description + "Estimate generalized additive mixed models via a version of function +@code{gamm} from the @code{mgcv} package, using the @code{lme4} packagefor +estimation.") + (license license:gpl2+))) + +(define-public r-optimx + (package + (name "r-optimx") + (version "2020-4.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "optimx" version)) + (sha256 + (base32 + "00bi2sr2hr7x6cfwlsn7hz2r56lcyv9naa8vmfcgr1r269fc50b3")))) + (properties `((upstream-name . "optimx"))) + (build-system r-build-system) + (propagated-inputs `(("r-numderiv" ,r-numderiv))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://cran.r-project.org/web/packages/optimx/") + (synopsis "Expanded replacement and extension of the optim function") + (description + "This package provides a replacement and extension of the @code{optim} +function to call to several function minimization codes in R in a single +statement. These methods handle smooth, possibly box constrained functions of +several or many parameters. Note that the function @code{optimr} was prepared +to simplify the incorporation of minimization codes going forward. This +package also implements some utility codes and some extra solvers, including +safeguarded Newton methods. Many methods previously separate are now included +here.") + (license license:gpl2))) + +(define-public r-projpred + (package + (name "r-projpred") + (version "2.0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "projpred" version)) + (sha256 + (base32 + "0nx514mrfh3gv854pr71w5x3zgdnn0kinf5nh7z90q3h7ysry2mg")))) + (properties `((upstream-name . "projpred"))) + (build-system r-build-system) + (propagated-inputs + `(("r-dplyr" ,r-dplyr) + ("r-gamm4" ,r-gamm4) + ("r-ggplot2" ,r-ggplot2) + ("r-lme4" ,r-lme4) + ("r-loo" ,r-loo) + ("r-magrittr" ,r-magrittr) + ("r-mass" ,r-mass) + ("r-mgcv" ,r-mgcv) + ("r-optimx" ,r-optimx) + ("r-rcpp" ,r-rcpp) + ("r-rcpparmadillo" ,r-rcpparmadillo) + ("r-rngtools" ,r-rngtools) + ("r-rstantools" ,r-rstantools) + ("r-tidyverse" ,r-tidyverse))) + (native-inputs `(("r-knitr" ,r-knitr))) + (home-page "https://mc-stan.org/projpred/") + (synopsis "Projection predictive feature selection") + (description + "This package performs projection predictive feature selection for +generalized linear models and generalized linear and additive multilevel +models. The package is compatible with the @code{rstanarm} and @code{brms} +packages, but other reference models can also be used. See the package +vignette for more information and examples.") + (license license:gpl3))) + (define-public r-brms (package (name "r-brms") - (version "2.14.0") + (version "2.14.4") (source (origin (method url-fetch) (uri (cran-uri "brms" version)) (sha256 (base32 - "0s8dl1xm3bpivfv3hw94zv9cifjg8cgs5137yd8d755kc2v0fdmf")))) + "0mzwihhgmn405l6zq11a180q4k3chggj9qj0j7q838b9vrszg59j")))) (properties `((upstream-name . "brms"))) (build-system r-build-system) (propagated-inputs @@ -22456,6 +22975,7 @@ included in this package as well.") ("r-mgcv" ,r-mgcv) ("r-nleqslv" ,r-nleqslv) ("r-nlme" ,r-nlme) + ("r-projpred" ,r-projpred) ("r-rcpp" ,r-rcpp) ("r-rstan" ,r-rstan) ("r-rstantools" ,r-rstantools) @@ -22655,14 +23175,14 @@ counting and recursive k-means partitioning.") (define-public r-hardhat (package (name "r-hardhat") - (version "0.1.4") + (version "0.1.5") (source (origin (method url-fetch) (uri (cran-uri "hardhat" version)) (sha256 (base32 - "0gaj4hr4dj27jaasp7v0hzaivipplvq746ajsyz4yd1in03hfjvs")))) + "1b7f9i9fy39j9n03g40vd6nzgq9fgq914xg3svf84najlknvjzly")))) (properties `((upstream-name . "hardhat"))) (build-system r-build-system) (propagated-inputs @@ -23060,14 +23580,14 @@ which may also be useful for other purposes.") (define-public r-spatstat-data (package (name "r-spatstat-data") - (version "1.4-3") + (version "1.5-2") (source (origin (method url-fetch) (uri (cran-uri "spatstat.data" version)) (sha256 (base32 - "18lfj5vkwxgf5w9qz0g5al3zy8y2yi3bnd13w24hszfc82nbcmc9")))) + "17vbf48g1mh8iigzzlaa9j4mw087hib7f1kkbl3c50xjcrr5iw6b")))) (properties `((upstream-name . "spatstat.data"))) (build-system r-build-system) (propagated-inputs @@ -23150,14 +23670,14 @@ for linear mixed models (AIREML).") (define-public r-cpp11 (package (name "r-cpp11") - (version "0.2.3") + (version "0.2.4") (source (origin (method url-fetch) (uri (cran-uri "cpp11" version)) (sha256 (base32 - "1avcip33bldzz0rhkl43b4sljrbb8i24684xxmr9il5bijcpyy97")))) + "08lrmpfkwh1w290a5ikhs9yn1vn32wbgvbzb4n3zb2indb8s5g69")))) (properties `((upstream-name . "cpp11"))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -23964,27 +24484,26 @@ for creating, simulating, or validating values for such parameters.") (define-public r-tune (package (name "r-tune") - (version "0.1.1") + (version "0.1.2") (source (origin (method url-fetch) (uri (cran-uri "tune" version)) (sha256 (base32 - "0293xkmv1nyvm72wxznnlm3qpf6475xzl2sf52mnrjxxr7i447p1")))) + "0ja7rjkjj88v3ngrc6izcz2qh9qv4s8abgcafmvx2ihgz99hds37")))) (properties `((upstream-name . "tune"))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) - ("r-crayon" ,r-crayon) ("r-dials" ,r-dials) ("r-dplyr" ,r-dplyr) ("r-foreach" ,r-foreach) + ("r-generics" ,r-generics) ("r-ggplot2" ,r-ggplot2) ("r-glue" ,r-glue) ("r-gpfit" ,r-gpfit) ("r-hardhat" ,r-hardhat) - ("r-lifecycle" ,r-lifecycle) ("r-parsnip" ,r-parsnip) ("r-purrr" ,r-purrr) ("r-recipes" ,r-recipes) @@ -24286,20 +24805,19 @@ model-related packages.") (define-public r-tidymodels (package (name "r-tidymodels") - (version "0.1.1") + (version "0.1.2") (source (origin (method url-fetch) (uri (cran-uri "tidymodels" version)) (sha256 (base32 - "0w2xnr642klmqlflkw6rkvqcrgs01i8f34nk9wdax3fsl1yx2wi4")))) + "09njrl655sh82xrzckgg56a6ndfrjla5fy8675wj4jsj14jpv0fw")))) (properties `((upstream-name . "tidymodels"))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) ("r-cli" ,r-cli) - ("r-crayon" ,r-crayon) ("r-dials" ,r-dials) ("r-dplyr" ,r-dplyr) ("r-ggplot2" ,r-ggplot2) @@ -24573,14 +25091,14 @@ Maximum Parsimony, distance methods and Hadamard conjugation.") (define-public r-diversitree (package (name "r-diversitree") - (version "0.9-14") + (version "0.9-15") (source (origin (method url-fetch) (uri (cran-uri "diversitree" version)) (sha256 (base32 - "0xkxw4n1rsagip51smh9k0h0lmnnvsajqcxma7yh95ifdkyrcyy4")))) + "1sk3sgn5hi04978s5s7gy6pzp28g3v9rglmiamlgs96c9wyyyff7")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -24656,3 +25174,54 @@ orthogonal coordinate systems: cartesian, polar, spherical, cylindrical, parabolic or user defined by custom scale factors.") (license license:gpl3))) +(define-public r-aws-signature + (package + (name "r-aws-signature") + (version "0.6.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "aws.signature" version)) + (sha256 + (base32 + "15llpcnrdq4y6jsn7079yjmgbr5d1wgy2ymsm3jj3gkrd5l4zzpp")))) + (properties `((upstream-name . "aws.signature"))) + (build-system r-build-system) + (propagated-inputs + `(("r-base64enc" ,r-base64enc) + ("r-digest" ,r-digest))) + (home-page "https://github.com/cloudyr/aws.signature") + (synopsis "Amazon Web Services Request Signatures") + (description + "This package generates version 2 and 4 request signatures for Amazon Web +Services (AWS) and provides a mechanism for retrieving credentials from +environment variables, AWS credentials files, and EC2 instance metadata. For +use on EC2 instances, the package 'aws.ec2metadata' is suggested.") + (license license:gpl2+))) + +(define-public r-aws-s3 + (package + (name "r-aws-s3") + (version "0.3.21") + (source + (origin + (method url-fetch) + (uri (cran-uri "aws.s3" version)) + (sha256 + (base32 + "132cczq0ml7lpp2yl6l4p99dn1zihrncnpa6wyad4m9mnr50a8dx")))) + (properties `((upstream-name . "aws.s3"))) + (build-system r-build-system) + (propagated-inputs + `(("r-aws-signature" ,r-aws-signature) + ("r-base64enc" ,r-base64enc) + ("r-curl" ,r-curl) + ("r-digest" ,r-digest) + ("r-httr" ,r-httr) + ("r-xml2" ,r-xml2))) + (home-page "https://github.com/cloudyr/aws.s3") + (synopsis "AWS S3 Client Package") + (description + "This package provides a simple client package for the Amazon Web +Services (AWS) Simple Storage Service (S3) REST API.") + (license license:gpl2+))) diff --git a/gnu/packages/crates-graphics.scm b/gnu/packages/crates-graphics.scm index 9a755d46b4..02bf7b27a4 100644 --- a/gnu/packages/crates-graphics.scm +++ b/gnu/packages/crates-graphics.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -167,8 +168,38 @@ text or blue underlined text, on ANSI terminals.") "1xif1bh938qpfc3d0f9xgidibpm65xix11w9gszwqnia00q7rb13")))) (arguments `()))) +(define-public rust-aom-sys-0.2 + (package + (name "rust-aom-sys") + (version "0.2.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "aom-sys" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "03a0xhaafjn0hlpcf9ba73hv557m0jqnmj9wl57wzrcnka96zvgj")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-bindgen" ,rust-bindgen-0.54) + ("rust-metadeps" ,rust-metadeps-1.1)))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libaom" ,libaom) + ("clang" ,clang) + ("llvm" ,llvm))) + (home-page "https://github.com/rust-av/aom-rs") + (synopsis "FFI bindings to aom") + (description "This package provides FFI bindings to aom.") + (license license:expat))) + (define-public rust-aom-sys-0.1 (package + (inherit rust-aom-sys-0.2) (name "rust-aom-sys") (version "0.1.4") (source @@ -190,11 +221,7 @@ text or blue underlined text, on ANSI terminals.") (inputs `(("libaom" ,libaom) ("clang" ,clang) - ("llvm" ,llvm))) - (home-page "https://github.com/rust-av/aom-rs") - (synopsis "FFI bindings to aom") - (description "This package provides FFI bindings to aom.") - (license license:expat))) + ("llvm" ,llvm))))) (define-public rust-ascii-canvas-2 (package diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 78fa6a1cd3..6f71cf6398 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com> ;;; Copyright © 2020 André Batista <nandre@riseup.net> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> +;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1080,6 +1081,29 @@ standard library.") (description "Test CLI Applications.") (license (list license:expat license:asl2.0)))) +(define-public rust-assert-cmd-0.9 + (package + (inherit rust-assert-cmd-1) + (name "rust-assert-cmd") + (version "0.9.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "assert-cmd" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02gq7j9qzjkbyq4hk18cih3kylk3dyxwa2gc5k7lah9kdwkhrdn5")))) + (arguments + `(#:cargo-inputs + (("rust-escargot" ,rust-escargot-0.3) + ("rust-predicates" ,rust-predicates-0.9) + ("rust-predicates-core" ,rust-predicates-core-0.9) + ("rust-predicates-tree" ,rust-predicates-tree-0.9)) + #:cargo-development-inputs + (("rust-docmatic" ,rust-docmatic-0.1)))))) + (define-public rust-assert-fs-0.11 (package (name "rust-assert-fs") @@ -1306,6 +1330,32 @@ methods.") "1chwgimpx5z7xbag7krr9d8asxfqbh683qhgl9kn3hxk2l0djj8x")))) (arguments '(#:skip-build? #t)))) +(define-public rust-automod-1 + (package + (name "rust-automod") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "automod" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1z8kdbvvz0k8mfs45mvs16lr9xj59cdcp0sm45fawfh93gai4mhg")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-proc-macro2" ,rust-proc-macro2-1) + ("rust-quote" ,rust-quote-1) + ("rust-syn" ,rust-syn-1)) + ;; Tests not included in tar. + #:tests? #f)) + (home-page "https://github.com/dtolnay/automod") + (synopsis "Pull in every source file in a directory as a module") + (description "Pull in every source file in a directory as a module.") + (license (list license:expat license:asl2.0)))) + (define-public rust-average-0.10 (package (name "rust-average") @@ -1727,6 +1777,29 @@ tracebacks.") that uses Serde for transforming structs into bytes and vice versa!") (license license:expat))) +(define-public rust-bincode-0.8 + (package + (inherit rust-bincode-1) + (name "rust-bincode") + (version "0.8.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "bincode" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0nbj0lwykwa1a7sa4303rxgpng9p2hcz9s5d5qcrckrpmcxjsjkf")))) + (arguments + `(#:cargo-inputs + (("rust-byteorder" ,rust-byteorder-1) + ("rust-num-traits" ,rust-num-traits-0.1) + ("rust-serde" ,rust-serde-1)) + #:cargo-development-inputs + (("rust-serde-bytes" ,rust-serde-bytes-0.10) + ("rust-serde-derive" ,rust-serde-derive-1)))))) + (define-public rust-bindgen-0.55 (package (name "rust-bindgen") @@ -1966,6 +2039,41 @@ bindings to C and C++ libraries.") ("rust-diff" ,rust-diff-0.1) ("rust-shlex" ,rust-shlex-0.1)))))) +(define-public rust-bindgen-0.46 + (package + (inherit rust-bindgen-0.50) + (name "rust-bindgen") + (version "0.46.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "bindgen" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1qclvj5pydn5camw396b0r3nz4nn3p5wpxg4fgg1favp043pyzwg")))) + (arguments + `(#:cargo-inputs + (("rust-bitflags" ,rust-bitflags-1) + ("rust-cexpr" ,rust-cexpr-0.3) + ("rust-cfg-if" ,rust-cfg-if-0.1) + ("rust-clang-sys" ,rust-clang-sys-0.26) + ("rust-clap" ,rust-clap-2) + ("rust-env-logger" ,rust-env-logger-0.6) + ("rust-hashbrown" ,rust-hashbrown-0.1) + ("rust-lazy-static" ,rust-lazy-static-1) + ("rust-log" ,rust-log-0.4) + ("rust-peeking-take-while" ,rust-peeking-take-while-0.1) + ("rust-proc-macro2" ,rust-proc-macro2-0.4) + ("rust-quote" ,rust-quote-0.6) + ("rust-regex" ,rust-regex-1) + ("rust-which" ,rust-which-2.0)) + #:cargo-development-inputs + (("rust-clap" ,rust-clap-2) + ("rust-diff" ,rust-diff-0.1) + ("rust-shlex" ,rust-shlex-0.1))))) ) + (define-public rust-bindgen-0.37 (package (inherit rust-bindgen-0.50) @@ -3216,6 +3324,32 @@ exposed as Reader/Writer streams.") "The ChaCha family of stream ciphers.") (license (list license:asl2.0 license:expat)))) +(define-public rust-cachedir-0.1 + (package + (name "rust-cachedir") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "cachedir" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1j18j73fxrr82marcdrn86123vr9v5n0fgyjkf9mi9pzyk8hjrf0")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-tempfile" ,rust-tempfile-3)) + ;; Tests require a mutable home directory and access to /var/tmp. + #:tests? #f)) + (home-page "https://github.com/lilianmoraru/cachedir") + (synopsis "Interact with cache directories and @file{CACHEDIR.TAG} files") + (description + "This package provides a library to help interacting with cache +directories and @code{CACHEDIR.TAG} files.") + (license (list license:expat license:asl2.0)))) + (define-public rust-calloop-0.4 (package (name "rust-calloop") @@ -3598,6 +3732,32 @@ archive to be linked into Rustcode.") #:cargo-development-inputs (("rust-clang-sys" ,rust-clang-sys-0.11)))))) +(define-public rust-cfg-if-1 + (package + (name "rust-cfg-if") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "cfg-if" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1za0vb97n4brpzpv8lsbnzmq5r8f2b0cpqqr0sy8h5bn751xxwds")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-compiler-builtins" ,rust-compiler-builtins-0.1) + ("rust-rustc-std-workspace-core" ,rust-rustc-std-workspace-core-1)))) + (home-page "https://github.com/alexcrichton/cfg-if") + (synopsis "Define an item depending on parameters") + (description "This package provides a macro to ergonomically define an +item depending on a large number of @code{#[cfg]} parameters. Structured like +an @code{if-else} chain, the first matching branch is the item that gets +emitted.") + (license (list license:asl2.0 license:expat)))) + (define-public rust-cfg-if-0.1 (package (name "rust-cfg-if") @@ -3626,7 +3786,7 @@ depending on a large number of #[cfg] parameters. Structured like an (define-public rust-chrono-0.4 (package (name "rust-chrono") - (version "0.4.13") + (version "0.4.19") (source (origin (method url-fetch) @@ -3635,28 +3795,30 @@ depending on a large number of #[cfg] parameters. Structured like an (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1dm0q1kmk2vq5djwhp1j9cm4aa38wr9vy1i1w19p2y0nj4188kf7")))) + "0wyfl6c00vhfl562spnfcna3zkw8jqvcp652m9iskhl8j26dc2k7")))) (build-system cargo-build-system) (arguments - `(#:skip-build? #t - #:cargo-inputs - (("rust-num-integer" ,rust-num-integer-0.1) + `(#:cargo-inputs + (("rust-js-sys" ,rust-js-sys-0.3) + ("rust-libc" ,rust-libc-0.2) + ("rust-num-integer" ,rust-num-integer-0.1) ("rust-num-traits" ,rust-num-traits-0.2) - ("rust-js-sys" ,rust-js-sys-0.3) + ("rust-pure-rust-locales" ,rust-pure-rust-locales-0.5) ("rust-rustc-serialize" ,rust-rustc-serialize-0.3) ("rust-serde" ,rust-serde-1) ("rust-time" ,rust-time-0.1) ("rust-wasm-bindgen" ,rust-wasm-bindgen-0.2)) #:cargo-development-inputs - (;("rust-bincode" ,rust-bincode-0.8) - ("rust-criterion" ,rust-criterion-0.2) + (("rust-bincode" ,rust-bincode-0.8) + ("rust-criterion" ,rust-criterion-0.3) ("rust-doc-comment" ,rust-doc-comment-0.3) ("rust-num-iter" ,rust-num-iter-0.1) ("rust-serde-derive" ,rust-serde-derive-1) ("rust-serde-json" ,rust-serde-json-1) - ("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.2)))) - (home-page - "https://github.com/chronotope/chrono") + ("rust-wasm-bindgen-test" ,rust-wasm-bindgen-test-0.3)) + #:features '("unstable-locales") + #:tests? #f)) + (home-page "https://github.com/chronotope/chrono") (synopsis "Date and time library for Rust") (description "Date and time library for Rust.") (license (list license:expat license:asl2.0)))) @@ -6528,7 +6690,7 @@ error-chain.") (define-public rust-derive-more-0.99 (package (name "rust-derive-more") - (version "0.99.9") + (version "0.99.11") (source (origin (method url-fetch) @@ -6537,7 +6699,7 @@ error-chain.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0xizcpj39rx0474mbbx8m0xww98qh92zsg82gf52qnvbryqri299")))) + "131xrz5nmnh8zq3vcvv0wfpcaflypbxp3fin984fsqddc5hhxjs1")))) (build-system cargo-build-system) (arguments `(#:tests? #f ; Some test files missing. @@ -6895,6 +7057,28 @@ on Linux, the Known Folder API on Windows, and the Standard Directory guidelines on macOS.") (license (list license:expat license:asl2.0)))) +(define-public rust-directories-next-1 + (package + (inherit rust-directories-3) + (name "rust-directories-next") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "directories-next" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0mmym1h9vlyapwlzygfas3q9mx03mki8cnf5y1bmr713q7mwqa4a")))) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-1) + ("rust-dirs-sys" ,rust-dirs-sys-next-0.1)) + #:cargo-development-inputs + (("rust-bencher" ,rust-bencher-0.1)))) + (home-page "https://github.com/xdg-rs/dirs/tree/master/directories"))) + (define-public rust-dirs-3 (package (name "rust-dirs") @@ -6954,6 +7138,28 @@ standard locations of directories for config, cache and other data.") ("rust-redox-users" ,rust-redox-users-0.3) ("rust-winapi" ,rust-winapi-0.3)))))) +(define-public rust-dirs-next-1 + (package + (inherit rust-dirs-1.0) + (name "rust-dirs-next") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "dirs-next" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1dl2dqzsrcb7qigfiwpdpakhdkpz0629pvylbj2ylyrkh1dfcdng")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-cfg-if" ,rust-cfg-if-1) + ("rust-dirs-sys" ,rust-dirs-sys-next-0.1)))) + (home-page "https://github.com/xdg-rs/dirs") + (license (list license:expat license:asl2.0)))) + (define-public rust-dirs-sys-0.3 (package (name "rust-dirs-sys") @@ -6982,6 +7188,27 @@ standard locations of directories for config, cache and other data.") and @code{directories} crates.") (license (list license:asl2.0 license:expat)))) +(define-public rust-dirs-sys-next-0.1 + (package + (inherit rust-dirs-sys-0.3) + (name "rust-dirs-sys-next") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "dirs-sys-next" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0zgy7is3h2dyf1l4sa7k065w2kvx0l12l40my4rswm2mc1gkdplr")))) + (arguments + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-redox-users" ,rust-redox-users-0.3) + ("rust-winapi" ,rust-winapi-0.3)))) + (home-page "https://github.com/xdg-rs/dirs/tree/master/dirs-sys"))) + (define-public rust-discard-1.0 (package (name "rust-discard") @@ -8305,6 +8532,54 @@ variables.") (description "Cargo API written in Paris.") (license (list license:expat license:asl2.0)))) +(define-public rust-escargot-0.3 + (package + (inherit rust-escargot-0.5) + (name "rust-escargot") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "escargot" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "19fmn7bz1h6nlqy0mp825xwjwnrjn4xjdpwc06jl51j3fiz1znqr")))) + (arguments + `(#:cargo-inputs + (("rust-serde" ,rust-serde-1) + ("rust-serde-json" ,rust-serde-json-1)))))) + +(define-public rust-exitfailure-0.5 + (package + (name "rust-exitfailure") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "exitfailure" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0585wix3b3pjjj90fkqj9x4ar46d24x82k8rdin3czzk5a1vvx9g")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-failure" ,rust-failure-0.1)) + #:cargo-development-inputs + (("rust-assert-cmd" ,rust-assert-cmd-0.9) + ("rust-predicates" ,rust-predicates-0.9)) + ;; Tests fail with "No such file or directory". + #:tests? #f)) + (home-page "https://github.com/tismith/exitfailure") + (synopsis "Provide @code{newtype} wrappers for using @code{?} in @code{main}") + (description + "This package provides a basic @code{newtype} wrappers to help with using +@code{?} in @code{main}.") + (license (list license:expat license:asl2.0)))) + (define-public rust-expat-sys-2.1 (package (name "rust-expat-sys") @@ -8842,6 +9117,21 @@ streams.") (base32 "03hmx3n48hjm0x1ig84n1j87kzp75lzr6cj1sgi6a6pykgn4n8km")))))) +(define-public rust-float-cmp-0.4 + (package + (inherit rust-float-cmp-0.5) + (name "rust-float-cmp") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "float-cmp" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0036jb8ry4h83n319jb20b5yvyfyq8mx8dkxnyjm22nq8fl8yjhk")))))) + (define-public rust-float-cmp-0.3 (package (inherit rust-float-cmp-0.5) @@ -11394,6 +11684,39 @@ hash map.") ("rust-rustc-hash" ,rust-rustc-hash-1) ("rust-serde-test" ,rust-serde-test-1)))))) +(define-public rust-hashbrown-0.1 + (package + (inherit rust-hashbrown-0.5) + (name "rust-hashbrown") + (version "0.1.8") + (source + (origin + (method url-fetch) + (uri (crate-uri "hashbrown" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1np350nrzysy021ndn2135q5vpzrp5nli78ywz114d1vcnv2kbiv")) + (modules '((guix build utils))) + (snippet + '(begin + (substitute* "Cargo.toml" + (("~1.2") "1.2")) + #t)))) + (arguments + `(#:cargo-inputs + (("rust-byteorder" ,rust-byteorder-1) + ("rust-rayon" ,rust-rayon-1) + ("rust-scopeguard" ,rust-scopeguard-0.3) + ("rust-serde" ,rust-serde-1)) + #:cargo-development-inputs + (("rust-lazy-static" ,rust-lazy-static-1) + ("rust-rand" ,rust-rand-0.5) + ("rust-rayon" ,rust-rayon-1) + ("rust-rustc-hash" ,rust-rustc-hash-1) + ("rust-serde-test" ,rust-serde-test-1)))))) + (define-public rust-hashlink-0.6 (package (name "rust-hashlink") @@ -16180,8 +16503,32 @@ a default trait implementation you've defined.") libmysqlclient.") (license (list license:expat license:asl2.0)))) +(define-public rust-nasm-rs-0.2 + (package + (name "rust-nasm-rs") + (version "0.2.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "nasm-rs" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1lgc3gg32hj4pcbfp07vzwy013smdm27469fyy4rqgyil3x46vx7")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-arrayvec" ,rust-arrayvec-0.5) + ("rust-rayon" ,rust-rayon-1)))) + (home-page "https://github.com/medek/nasm-rs") + (synopsis "Run NASM during your Cargo build") + (description "Run NASM during your Cargo build.") + (license (list license:expat license:asl2.0)))) + (define-public rust-nasm-rs-0.1 (package + (inherit rust-nasm-rs-0.2) (name "rust-nasm-rs") (version "0.1.7") (source @@ -16197,11 +16544,7 @@ libmysqlclient.") (arguments `(#:skip-build? #t #:cargo-inputs - (("rust-rayon" ,rust-rayon-1)))) - (home-page "https://github.com/medek/nasm-rs") - (synopsis "Run NASM during your Cargo build") - (description "Run NASM during your Cargo build.") - (license (list license:expat license:asl2.0)))) + (("rust-rayon" ,rust-rayon-1)))))) (define-public rust-nalgebra-0.21 (package @@ -16938,6 +17281,21 @@ combinators library.") with all line endings.") (license license:asl2.0))) +(define-public rust-normalize-line-endings-0.2 + (package + (inherit rust-normalize-line-endings-0.3) + (name "rust-normalize-line-endings") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (crate-uri "normalize-line-endings" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1a1knz9j1w5a1pl2q6whmjphm3z6p64r5njnam7syp5rx8wil2if")))))) + (define-public rust-notify-4 (package (name "rust-notify") @@ -20257,6 +20615,30 @@ dependency to expose a precomputed hash.") functions.") (license (list license:expat license:asl2.0)))) +(define-public rust-predicates-0.9 + (package + (inherit rust-predicates-1) + (name "rust-predicates") + (version "0.9.1") + (source + (origin + (method url-fetch) + (uri (crate-uri "predicates" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "085ysw5iigw9l7fdy0pxqs7h165m9hxaxdknmkyq868izivpj7pk")))) + (arguments + `(#:cargo-inputs + (("rust-difference" ,rust-difference-2) + ("rust-float-cmp" ,rust-float-cmp-0.4) + ("rust-normalize-line-endings" ,rust-normalize-line-endings-0.2) + ("rust-predicates-core" ,rust-predicates-core-0.9) + ("rust-regex" ,rust-regex-1)) + #:cargo-development-inputs + (("rust-predicates-tree" ,rust-predicates-tree-0.9)))))) + (define-public rust-predicates-core-1 (package (name "rust-predicates-core") @@ -20278,6 +20660,21 @@ functions.") "An API for boolean-valued predicate functions.") (license (list license:expat license:asl2.0)))) +(define-public rust-predicates-core-0.9 + (package + (inherit rust-predicates-core-1) + (name "rust-predicates-core") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "predicates-core" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ig5wi3j2faxss6kshv5xdwnchiwbkq2fgx6v962mh6ij31hpy45")))))) + (define-public rust-predicates-tree-1 (package (name "rust-predicates-tree") @@ -20304,6 +20701,25 @@ functions.") "Render boolean-valued predicate functions results as a tree.") (license (list license:expat license:asl2.0)))) +(define-public rust-predicates-tree-0.9 + (package + (inherit rust-predicates-tree-1) + (name "rust-predicates-tree") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (crate-uri "predicates-tree" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ga0yyfmqbwi28naxlr6cvpmiig0qnwx5adc858hmjxxh6dxz1if")))) + (arguments + `(#:cargo-inputs + (("rust-predicates-core" ,rust-predicates-core-0.9) + ("rust-treeline" ,rust-treeline-0.1)))))) + (define-public rust-pretty-assertions-0.6 (package (name "rust-pretty-assertions") @@ -21111,6 +21527,31 @@ compliant email address validation.") (description "This package provides a library for async wake signals.") (license license:asl2.0))) +(define-public rust-pure-rust-locales-0.5 + (package + (name "rust-pure-rust-locales") + (version "0.5.3") + (source + (origin + (method url-fetch) + (uri (crate-uri "pure-rust-locales" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ryjj0gs4hfadqx9vl4sgi32zyb2dlvwpxca1m1kmrw9hk1g7gv5")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-itertools" ,rust-itertools-0.8) + ("rust-nom" ,rust-nom-5)))) + (home-page "https://github.com/cecton/pure-rust-locales") + (synopsis "Pure Rust locales imported directly from the GNU C Library") + (description + "Pure Rust locales imported directly from the GNU C Library. +@code{LC_COLLATE} and @code{LC_CTYPE} are not yet supported.") + (license license:expat))) + (define-public rust-quantiles-0.7 (package (name "rust-quantiles") diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index 6365961699..df8e440383 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -415,17 +415,16 @@ should only be used as part of the Guix cups-pk-helper service.") (define-public hplip (package (name "hplip") - (version "3.20.9") + (version "3.20.11") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/hplip/hplip/" version "/hplip-" version ".tar.gz")) (sha256 (base32 - "1prdbp410405xrfggjc7y34nzljg7jnbgjzalgv4khwwma4i299n")) + "04fvdyjyjbkviy3awgm7g43p3lrvrsmgaqz8bwra22g7v2rpa5hb")) (modules '((guix build utils))) - (patches (search-patches "hplip-fix-bug-1898438.patch" - "hplip-remove-imageprocessor.patch")) + (patches (search-patches "hplip-remove-imageprocessor.patch")) (snippet '(begin ;; Delete non-free blobs: .so files, pre-compiled diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 55b7e4393b..98fc6b3d63 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Tomáš Čech <sleep_walker@suse.cz> -;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017, 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> @@ -53,16 +53,15 @@ (define-public curl (package (name "curl") - (version "7.69.1") - (replacement curl-7.71.0) + (version "7.73.0") + (replacement curl-7.74.0) (source (origin - (method url-fetch) - (uri (string-append "https://curl.haxx.se/download/curl-" - version ".tar.xz")) - (sha256 - (base32 - "0kwxh76iq9fblk7iyv4f75bmcmasarp2bcm1mm07wyvzd7kdbiq3")) - (patches (search-patches "curl-use-ssl-cert-env.patch")))) + (method url-fetch) + (uri (string-append "https://curl.haxx.se/download/curl-" + version ".tar.xz")) + (sha256 + (base32 + "12j0qaij1ppgspray8xvs2qk3h3m23wdqh27x87y1aw8xaj7qk3w")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;1.2 MiB of man3 pages @@ -126,25 +125,6 @@ (substitute* "tests/runtests.pl" (("/bin/sh") (which "sh"))) - ;; XXX FIXME: Test #1510 seems to work on some machines and not - ;; others, possibly based on the kernel version. It works on Guix System - ;; on x86_64 with linux-libre-4.1, but fails on Hydra for both i686 - ;; and x86_64 with the following error: - ;; - ;; test 1510...[HTTP GET connection cache limit (CURLOPT_MAXCONNECTS)] - ;; - ;; 1510: output (log/stderr1510) FAILED: - ;; --- log/check-expected 2015-06-27 07:45:53.166720834 +0000 - ;; +++ log/check-generated 2015-06-27 07:45:53.166720834 +0000 - ;; @@ -1,5 +1,5 @@ - ;; * Connection #0 to host server1.example.com left intact[LF] - ;; * Connection #1 to host server2.example.com left intact[LF] - ;; * Connection #2 to host server3.example.com left intact[LF] - ;; -* Closing connection 0[LF] - ;; +* Closing connection 1[LF] - ;; * Connection #3 to host server4.example.com left intact[LF] - (delete-file "tests/data/test1510") - ;; The top-level "make check" does "make -C tests quiet-test", which ;; is too quiet. Use the "test" target instead, which is more ;; verbose. @@ -171,30 +151,18 @@ tunneling, and so on.") (name "curl-minimal") (inputs (alist-delete "openldap" (package-inputs curl)))))) -;; Replacement package to fix CVE-2020-8169 and CVE-2020-8177. -(define curl-7.71.0 +;; Replacement package to fix multiple security vulnerabilities. +(define curl-7.74.0 (package (inherit curl) - (version "7.71.0") + (version "7.74.0") (source (origin (inherit (package-source curl)) (uri (string-append "https://curl.haxx.se/download/curl-" version ".tar.xz")) (sha256 (base32 - "0wlppmx9iry8slh4pqcxj7lwc6fqwnlhh9ri2pcym2rx76a8gwfd")))) - (arguments - (substitute-keyword-arguments (package-arguments curl) - ((#:phases phases) - `(modify-phases ,phases - (replace 'check - (lambda _ - ;; Test 1510 is now disabled upstream, and the test runner - ;; complains that it can not disable a non-existing test. - ;; Thus, override the phase to not delete the test. - (substitute* "tests/runtests.pl" - (("/bin/sh") (which "sh"))) - (invoke "make" "-C" "tests" "test"))))))))) + "12w7gskrglg6qrmp822j37fmbr0icrcxv7rib1fy5xiw80n5z7cr")))))) (define-public kurly (package diff --git a/gnu/packages/cybersecurity.scm b/gnu/packages/cybersecurity.scm index 8ded081c50..b77d714ec8 100644 --- a/gnu/packages/cybersecurity.scm +++ b/gnu/packages/cybersecurity.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> +;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,13 +27,13 @@ (define-public ropgadget (package (name "ropgadget") - (version "6.3") + (version "6.4") (source (origin (method url-fetch) (uri (pypi-uri "ROPGadget" version)) (sha256 - (base32 "0v34w88if3p4vn46aby24msfnxj6znmkf4848n4d24jnykxcsqk9")))) + (base32 "1hz6y5a8d4gc2sryz5alpz9mivrk8kj4l3dw00zkz2xca7gwpmsi")))) (build-system python-build-system) (propagated-inputs `(("python-capstone" ,python-capstone))) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index bfa78556bc..4b1a1ff09d 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1206,6 +1206,18 @@ pictures, sounds, or video.") (define-public postgresql-10 postgresql) +(define-public postgresql-13 + (package + (inherit postgresql) + (version "13.1") + (source (origin + (inherit (package-source postgresql)) + (uri (string-append "https://ftp.postgresql.org/pub/source/v" + version "/postgresql-" version ".tar.bz2")) + (sha256 + (base32 + "07z6zwr58dckaa97yl9ml240z83d1lhgaxw9aq49i8lsp21mqd0j")))))) + (define-public postgresql-11 (package (inherit postgresql) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index 78bb1811f9..9bc3925128 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -211,14 +211,14 @@ It comes with a German-English dictionary with approximately 270,000 entries.") (define-public grammalecte (package (name "grammalecte") - (version "1.12.2") + (version "2.0.0") (source (origin (method url-fetch/zipbomb) (uri (string-append "https://grammalecte.net/grammalecte/zip/" "Grammalecte-fr-v" version ".zip")) (sha256 - (base32 "1qny2l5dr08pfj2dnzmvm5gmwqz8m879ryxfaw4k8dhaacrrrf62")))) + (base32 "1mcpqglndcafiz9bnz69vjxncl5k98yzcy8pr8rmn738hgpzb53v")))) (build-system python-build-system) (home-page "https://grammalecte.net") (synopsis "French spelling and grammar checker") diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index cb835f1c58..df29704acf 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -72,7 +72,7 @@ (define-public diffoscope (package (name "diffoscope") - (version "161") + (version "162") (source (origin (method git-fetch) (uri (git-reference @@ -81,7 +81,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "1c9afc0s8p2wh7pw7xclr8j06ma3fjk6r1dnfaf1gdfk05hdxi78")))) + "02wjjbmdbyqpyizw384j50bc2ar4g5m40amz9q102gqbw6sflwbf")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index d4179024d8..403ebd3d8b 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -533,14 +533,14 @@ asynchronous fashion.") (define-public nsd (package (name "nsd") - (version "4.3.3") + (version "4.3.4") (source (origin (method url-fetch) (uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-" version ".tar.gz")) (sha256 - (base32 "0lgdiqnkfvy245h6kkiqic586qjwmg51lsfs86vlc0kwjwddiijz")))) + (base32 "0l4ba80ihwg3s2ifhnkmk7rjabrcy5zw6sz4hn0vm9sif6lk9s1v")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -937,17 +937,14 @@ synthesis, and on-the-fly re-configuration.") (define-public knot-resolver (package (name "knot-resolver") - (version "5.2.0") + (version "5.2.1") (source (origin (method url-fetch) (uri (string-append "https://secure.nic.cz/files/knot-resolver/" "knot-resolver-" version ".tar.xz")) (sha256 (base32 - "0cwlipib3x88dr6cijqv2aps13b4ijv524wc85ns07rkldy2c948")) - (patches - (search-patches - "knot-resolver-fix-map-command-on-32-bit.patch")))) + "09jqy23q1pgj76y2qd1xfk72wwmypnyawm3span3gx00qi2bfdxa")))) (build-system meson-build-system) (outputs '("out" "doc")) (arguments diff --git a/gnu/packages/ebook.scm b/gnu/packages/ebook.scm index a23c677880..f1e2bd49cb 100644 --- a/gnu/packages/ebook.scm +++ b/gnu/packages/ebook.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> +;;; Copyright © 2020 Zheng Junjie <873216071@qq.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix git-download) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) @@ -314,6 +316,32 @@ e-books for convenient reading.") license:silofl1.1 license:cc-by-sa3.0)))) +(define-public ebook-tools + (package + (name "ebook-tools") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/ebook-tools/ebook-tools/" + version "/ebook-tools-" version ".tar.gz")) + (sha256 + (base32 + "1bi7wsz3p5slb43kj7lgb3r6lb91lvb6ldi556k4y50ix6b5khyb")))) + (arguments + `(#:tests? #f)) ; No 'test' target + (build-system cmake-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libzip" ,libzip) + ("libxml2" ,libxml2))) + (home-page "http://ebook-tools.sourceforge.net") + (synopsis "Tools and library for dealing with various ebook file formats") + (description "This package provides command-line tools and a library for +accessing and converting various ebook file formats.") + (license license:expat))) + (define-public liblinebreak (package (name "liblinebreak") diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index 8a03b2d7a3..ef2c891a27 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -86,6 +86,7 @@ ;;; Copyright © 2020 Tim Howes <timhowes@lavabit.com> ;;; Copyright © 2020 Noah Landis <noahlandis@posteo.net> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> +;;; Copyright © 2020 André A. Gomes <andremegafone@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -362,42 +363,38 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.") (license license:gpl3+))) (define-public emacs-with-editor - ;; This commit fixes an (magit) issue with emacs 28, see - ;; https://lists.gnu.org/archive/html/help-gnu-emacs/2020-10/msg00211.html - (let ((commit "c4768f51c7415119519b4626d8643d60e584098c") - (revision "1")) - (package - (name "emacs-with-editor") - (version (git-version "2.9.4" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/magit/with-editor") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "01ysb9pnscpmingay6njdywkqgj4hn5l5d9igsg3x7p7061jwwix")))) - (build-system emacs-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'install 'make-info - (lambda _ - (invoke "makeinfo" "--no-split" - "-o" "with-editor.info" "with-editor.texi")))))) - (native-inputs - `(("texinfo" ,texinfo))) - (propagated-inputs - `(("emacs-dash" ,emacs-dash))) - (home-page "https://github.com/magit/with-editor") - (synopsis "Emacs library for using Emacsclient as EDITOR") - (description - "This package provides an Emacs library to use the Emacsclient as + (package + (name "emacs-with-editor") + (version "3.0.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/magit/with-editor") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0hw6i5r3adkm4988badi94825lywkrh3sddiff4z04kj1nj15d0k")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'install 'make-info + (lambda _ + (invoke "makeinfo" "--no-split" + "-o" "with-editor.info" "with-editor.texi")))))) + (native-inputs + `(("texinfo" ,texinfo))) + (propagated-inputs + `(("emacs-async" ,emacs-async))) + (home-page "https://github.com/magit/with-editor") + (synopsis "Emacs library for using Emacsclient as EDITOR") + (description + "This package provides an Emacs library to use the Emacsclient as @code{$EDITOR} of child processes, making sure they know how to call home. For remote processes a substitute is provided, which communicates with Emacs on stdout instead of using a socket as the Emacsclient does.") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-libgit (let ((commit "0ef8b13aef011a98b7da756e4f1ce3bb18e4d55a") @@ -682,16 +679,16 @@ Alternatively the menu can be bound globally, for example: (define-public emacs-moody (package (name "emacs-moody") - (version "0.5.3") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/tarsius/moody") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "1xyw4l42053595r76lj8safsx6pj25as0107wd96by3h7dg9m586")))) + (version "0.5.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tarsius/moody") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0n8p864yj5m3n7f9qiq9hy24dwfvv0a0wchx2818rppff6vfq3hf")))) (build-system emacs-build-system) (home-page "https://github.com/tarsius/moody") (synopsis "Tabs and ribbons for Emacs mode-line") @@ -1813,7 +1810,8 @@ mode, Rmail, Gnus, MH-E, and VM). BBDB is fully customizable.") (base32 "1dq04p6ms0zx4awlypp4crkz7dzal4xg8ac7p8fqacz196rczssp")))) (build-system emacs-build-system) (inputs - `(("bluez" ,bluez))) + `(("bluez" ,bluez) + ("dbus" ,dbus))) (propagated-inputs `(("emacs-dash" ,emacs-dash))) (home-page "https://gitlab.com/rstocker/emacs-bluetooth") @@ -2767,20 +2765,21 @@ type, for example: packages, buffers, files, etc.") (license license:gpl3+))) (define-public emacs-guix - (let ((commit "58a840d0671091e3064e36244790ef8839da87d6") - (revision "2")) + (let* ((commit "a694fdbcedb6edd2239a31d326e475c763ee32f8") + (revision "3")) (package (name "emacs-guix") (version (git-version "0.5.2" revision commit)) (source (origin (method git-fetch) (uri (git-reference - (url "https://gitlab.com/emacs-guix/emacs-guix") + ;; TODO: Use the official version when it has a new home + (url "https://github.com/jsoo1/guix.el") (commit commit))) (file-name (git-file-name name version)) (sha256 (base32 - "1qnr5sixmvrhr9rinrhfy7sy20mikjvvwbdixwkbx30qpcdwgwj1")))) + "1pqw7zbgxzwpig4xr0izc3z8h80c72i6bl5yi12br0d7aq6dbkvj")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) @@ -2789,7 +2788,8 @@ type, for example: packages, buffers, files, etc.") ("texinfo" ,texinfo) ("emacs" ,emacs-minimal))) (inputs - `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) + `(("guile" + ,@(assoc-ref (package-native-inputs guix) "guile")) ("guix" ,guix))) (propagated-inputs `(("geiser" ,emacs-geiser) @@ -3248,7 +3248,7 @@ files and directories.") (define-public emacs-fountain-mode (package (name "emacs-fountain-mode") - (version "3.3.0") + (version "3.3.3") (source (origin (method git-fetch) @@ -3257,7 +3257,7 @@ files and directories.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "04jrv6i4ah3i8c9hcd9wyaw2vrxr46f50qb9qwna2v7qa5vaway3")))) + (base32 "095nrkg2bap6rcg9hy3bh0nis4v2f8w8d9hnahkzsa3njlpqa4ka")))) (build-system emacs-build-system) (home-page "https://github.com/rnkn/fountain-mode") (synopsis "Major mode for screenwriting in Fountain markup") @@ -4843,14 +4843,14 @@ source code using IPython.") (define-public emacs-debbugs (package (name "emacs-debbugs") - (version "0.26") + (version "0.27") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/debbugs-" version ".tar")) (sha256 - (base32 "14n2rrs3ccvlp8fhxs08awlqdfawxwbj8nq1xpa0wwlbfvxnf24c")))) + (base32 "1zn9p9vmfv5ihrp8d06b6abs48q225v42cgwa01s39hld6zg6wbv")))) (build-system emacs-build-system) (arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$"))) (propagated-inputs @@ -6627,14 +6627,14 @@ board and goal value can be customized.") (define-public emacs-chess (package (name "emacs-chess") - (version "2.0.4") + (version "2.0.5") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "chess-" version ".tar")) (sha256 - (base32 "1sq1bjmp513vldfh7hc2bbfc54665abqiz0kqgqq3gijckaxn5js")))) + (base32 "1a4iwjdh6k348df6qywjws9z9f862d62m0b2sz57z4xhywiyxpr7")))) (build-system emacs-build-system) (arguments `(#:phases @@ -7783,6 +7783,33 @@ The purpose of this library is to wrap all the quirks and hassle of @code{package.el} into a sane API.") (license license:gpl3+))) +(define-public emacs-counsel-jq + (let ((release "1.0.0") + (revision "0") + (commit "aaf33fc2447096cd0d03b77395fe2a95c9fe1481")) + (package + (name "emacs-counsel-jq") + (version (git-version release revision commit)) + (home-page "https://github.com/200ok-ch/counsel-jq") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10rz0qm8a4bl0m86kx19zq8lri047p4sxqyny08bgm9pbam0wvwn")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-swiper" ,emacs-swiper) + ("jq" ,jq))) + (synopsis "Live preview @code{jq} queries using counsel") + (description + "This Emacs package provides the ability to live preview @code{jq} +queries using counsel.") + (license license:gpl3+)))) + (define-public emacs-counsel-notmuch ;; Upstream provides no release. Extract version for main file. (let ((commit "a4a1562935e4180c42524c51609d1283e9be0688") @@ -10240,6 +10267,30 @@ lists, and project planning with a fast and effective plain-text system. This package is equivalent to org-plus-contrib, but only includes additional files that you would find in @file{contrib/} from the git repository."))) +(define-public emacs-org-pretty-table + ;; There is no release yet. + (let ((commit "1331c600b83d95b28730b1bfcb48369ac1cf12ef") + (revision "0")) + (package + (name "emacs-org-pretty-table") + (version (git-version "0.0.1" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Fuco1/org-pretty-table") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0yvqxh66y400n2n5ykmb1zrzd80bakffpwn6nmf37728x4cj8krh")))) + (build-system emacs-build-system) + (home-page "https://github.com/Fuco1/org-pretty-table") + (synopsis "Make tables in Org mode and OrgTbl mode prettier") + (description + "This package displays tables in Org mode and OrgTbl mode using Unicode +characters.") + (license license:gpl3+)))) + (define-public emacs-ob-sclang (package (inherit emacs-org-contrib) @@ -15211,6 +15262,14 @@ and @code{erc-send-modify-hook} to download and show images.") (sha256 (base32 "07hbz2md52ccy95gv4d5n6szrfmpfqf3w4kwqdg2cf54c7kgf7hw")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-require-cl + (lambda _ + (substitute* "list-utils.el" + (("\\(require 'cl\\)") "(require 'cl-lib)")) + #t))))) (home-page "https://github.com/rolandwalker/list-utils") (synopsis "List-manipulation utility functions") (description "This package provides a list manipulation library for Emacs.") @@ -20987,31 +21046,29 @@ and code peeking.") (license license:gpl3+)))) (define-public emacs-lsp-ivy - (let ((commit "caf1e1d7e22ed0b5fe18dd508d1a6f83dd163288") - (revision "2")) - (package - (name "emacs-lsp-ivy") - (version (git-version "0.1" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/emacs-lsp/lsp-ivy") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "084ds4qhzhivfnicy3h7z4mblxgcqx8pfnkbjr9qjrfng7cisy4z")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-ivy" ,emacs-ivy) - ("emacs-lsp-mode" ,emacs-lsp-mode) - ("emacs-dash" ,emacs-dash))) - (home-page "https://github.com/emacs-lsp/lsp-ivy") - (synopsis "Provide LSP-enhanced completion for symbols") - (description - "This package enhances @code{ivy} with completion for symbols from + (package + (name "emacs-lsp-ivy") + (version "0.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-lsp/lsp-ivy") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "08dpn0vcfdwwysijwdpnnj91m69yw0q464i0wmp51zpj3dyd4kb1")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-ivy" ,emacs-ivy) + ("emacs-lsp-mode" ,emacs-lsp-mode))) + (home-page "https://github.com/emacs-lsp/lsp-ivy") + (synopsis "Provide LSP-enhanced completion for symbols") + (description + "This package enhances @code{ivy} with completion for symbols from workspaces with a LSP-compliant server running.") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-helm-lsp (let ((commit "3a58ca4cfd94b9ab1e15e819d3b16ef568e8889b") @@ -21922,8 +21979,8 @@ copied into @code{org-mode} buffers.") (license license:gpl3+)))) (define-public emacs-dash-docs - (let ((commit "111fd9b97001f1ad887b45e5308a14ddd68ce70a") - (revision "1")) + (let ((commit "dafc8fc9f1ddb2e4e39e0b8d066c42d5d7ce8d06") + (revision "2")) (package (name "emacs-dash-docs") (version (git-version "1.4.0" revision commit)) @@ -21936,7 +21993,7 @@ copied into @code{org-mode} buffers.") (file-name (git-file-name name version)) (sha256 (base32 - "0sckb7z0ylflva212bns7iq9mfnffgjghi0qspsbfwra35zb9xng")))) + "0n6d3mm43gj16v8kjjradcfik93wb89dsqnfcbskb28bvcamafid")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-async" ,emacs-async))) @@ -22656,10 +22713,10 @@ it forcibly (lambda _ (invoke "makeinfo" "elpher.texi")))))) (home-page "gopher://thelambdalab.xyz/1/projects/elpher/") - (synopsis "Gopher client for Emacs") - (description "Elpher is a full-featured gopher client for Emacs. Its -features include intuitive keyboard and mouse-driven browsing, out-of-the-box -compatibility with evil-mode, clickable web and gopher links in plain text, + (synopsis "Gopher and gemini client for Emacs") + (description "Elpher is a full-featured gopher and gemini client for +Emacs. Its features include intuitive keyboard and mouse-driven browsing, +out-of-the-box compatibility with evil-mode, clickable links in plain text, caching of visited sites, pleasant and configurable visualization of Gopher directories, direct visualisation of image files, jumping directly to links by name (with autocompletion), a simple bookmark management system and @@ -23201,10 +23258,10 @@ Emacs that integrate with major modes like Org-mode.") (home-page "https://github.com/hlissner/emacs-doom-themes") (license license:expat)))) -(define-public emacs-modus-operandi-theme +(define-public emacs-modus-themes (package - (name "emacs-modus-operandi-theme") - (version "0.13.0") + (name "emacs-modus-themes") + (version "1.0.2") (source (origin (method git-fetch) @@ -23213,56 +23270,27 @@ Emacs that integrate with major modes like Org-mode.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0i6n3pzrmlgabsijy6z0hhs71q7g99yagwr2m33lr30skqc9rvdn")))) + (base32 "1v82payjgx8z0qdklsrkim7xkb6hqrbs34d5qpq0sii43jwhiy5j")))) (build-system emacs-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'remove-other-theme - (lambda _ - (delete-file "modus-vivendi-theme.el") - #t))))) - (home-page "https://gitlab.com/protesilaos/modus-themes") - (synopsis "Accessible light theme (WCAG AAA)") + (home-page "https://protesilaos.com/modus-themes/") + (synopsis "Accessible themes (WCAG AAA)") (description - "Modus operandi is the light version of the Modus accessible themes for -GNU Emacs. The contrast ratio between foreground and background values should -always be greater than 7:1, which conforms with the WCAG AAA accessibility -standard. This is the highest standard of its kind.") - (license license:gpl3+))) + "The Modus themes are designed for accessible readability. They conform +with the highest standard for color contrast between any given combination of +background and foreground values. This corresponds to the WCAG AAA standard, +which specifies a minimum rate of distance in relative luminance of 7:1. -(define-public emacs-modus-vivendi-theme - (package - (name "emacs-modus-vivendi-theme") - (version "0.13.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/protesilaos/modus-themes") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0i6n3pzrmlgabsijy6z0hhs71q7g99yagwr2m33lr30skqc9rvdn")))) - (build-system emacs-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'remove-other-theme - (lambda _ - (delete-file "modus-operandi-theme.el") - #t))))) - (home-page "https://gitlab.com/protesilaos/modus-themes") - (synopsis "Accessible dark theme (WCAG AAA)") - (description - "Modus vivendi is the dark version of the Modus accessible themes for GNU -Emacs. The contrast ratio between foreground and background values should -always be greater than 7:1, which conforms with the WCAG AAA accessibility -standard. This is the highest standard of its kind.") +Modus Operandi (modus-operandi) is a light theme, while Modus +Vivendi (modus-vivendi) is dark. Each theme’s color palette is designed to +meet the needs of the numerous interfaces that are possible in the Emacs +computing environment.") (license license:gpl3+))) -(define-public emacs-modus-themes - (deprecated-package "emacs-modus-themes" emacs-modus-operandi-theme)) +(define-public emacs-modus-operandi-theme + (deprecated-package "emacs-modus-operandi-theme" emacs-modus-themes)) + +(define-public emacs-modus-vivendi-theme + (deprecated-package "emacs-modus-vivendi-theme" emacs-modus-themes)) (define-public emacs-punpun-theme (let ((commit "2f78125609277b2478abdebd8f9d5ee10a823b65") @@ -23541,6 +23569,30 @@ Google guidelines.") fish-completion. It can be used in both Eshell and M-x shell.") (license license:gpl3+))) +(define-public emacs-helm-switch-to-repl + (package + (name "emacs-helm-switch-to-repl") + (version "0.1.0") + (home-page "https://github.com/emacs-helm/helm-switch-to-repl") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0n19brymwnawhi0y10m54cas3qg64pmkqq1ajvjw1rfibmw3n6nk")))) + (build-system emacs-build-system) + (propagated-inputs + `(("helm" ,emacs-helm))) + (synopsis "Helm action to switch directory in Emacs REPLs") + (description "Helm \"Switch-to-REPL\" offers the +@code{helm-switch-to-repl} action, a generalized and extensible version of +@code{helm-ff-switch-to-shell}. It can be added to @code{helm-find-files} and +other @code{helm-type-file} sources such as @code{helm-locate}.") + (license license:gpl3+))) + (define-public emacs-telega ;; This package has versions newer than indicated on MELPA. ;; Get the current version from `telega-version` in telega.el. @@ -24821,7 +24873,7 @@ variables.") (define-public emacs-company-emoji (package (name "emacs-company-emoji") - (version "2.5.2") + (version "2.6.0") (source (origin (method git-fetch) @@ -24830,7 +24882,7 @@ variables.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0r9zcbm3nb3zw5cwrkl098v5b49jbga5404bj7j55g6k4rwkjar2")))) + (base32 "0pa67yfcr8lrxdbvln8hs663gsxz38ggwpva7121ngascqgx42wp")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-company" ,emacs-company))) @@ -25728,3 +25780,112 @@ syntax highlighting and UI components.") "This Emacs package provides a Janet REPL to evaluate @code{janet-mode} s-expression.") (license license:expat)))) + +(define-public emacs-map + (package + (name "emacs-map") + (version "2.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://elpa.gnu.org/packages/map-" + version ".el")) + (sha256 + (base32 + "0ydz5w1n4vwhhzxxj003s7jv8n1wjijwfryk5z93bwhnr0cak0i0")))) + (build-system emacs-build-system) + (home-page "http://elpa.gnu.org/packages/map.html") + (synopsis "Map manipulation functions") + (description "This package provides Emacs map-manipulation functions that +work on alists, hash-table and arrays. All functions are prefixed with +@code{map-}.") + (license license:gpl3+))) + +(define-public emacs-burly + (package + (name "emacs-burly") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alphapapa/burly.el") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1vaikknjzmhpszyi4yxjjkp1ihgmhpbnbx1s5pjy4mnhl1ibi33b")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-map" ,emacs-map))) + (home-page "https://github.com/alphapapa/burly.el") + (synopsis "Save and restore frame/window configurations with buffers") + (description "This package provides tools to save and restore frame and +window configurations in Emacs, including buffers that may not be live +anymore. In this way, it's like a lightweight \"workspace\" manager, allowing +you to easily restore one or more frames, including their windows, the +windows' layout, and their buffers.") + (license license:gpl3+))) + +(define-public emacs-smart-hungry-delete + (let ((commit "7c1d56a92481594e14d40b5fdf6c48657a0108a0")) + (package + (name "emacs-smart-hungry-delete") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hrehfeld/emacs-smart-hungry-delete") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0mxaslx5823s68a8ggbbnmfk1jiswjvip5s4sg7ihfagnci72wni")))) + (build-system emacs-build-system) + (home-page "https://github.com/hrehfeld/emacs-smart-hungry-delete") + (synopsis "Smart hungry deletion of whitespace") + (description "@code{emacs-smart-hungry-delete} hungrily deletes whitespace +between cursor and next word, parenthesis or delimiter while honoring some +rules about where space should be left to separate words and parentheses.") + (license license:gpl2+)))) + +(define-public emacs-webpaste + (package + (name "emacs-webpaste") + (version "3.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/etu/webpaste.el") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "08545ihkzflw80rwklnxiswrpdrl8kr74xzxm5wsgrf36fkj9rn2")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #t + #:test-command '("make" "unit" "integration") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-tests + (lambda _ + ;; Do not use cask to run tests. + (substitute* "Makefile" + (("\\$\\{CASK\\} exec ") "")) + ;; Disable tests that need network access. + (substitute* (list "tests/unit/test-webpaste-provider-creation.el" + "tests/integration/test-webpaste-providers.el") + (("describe") "xdescribe"))))))) + (native-inputs + `(("emacs-buttercup" ,emacs-buttercup))) + (propagated-inputs + `(("emacs-request" ,emacs-request))) + (home-page "https://github.com/etu/webpaste.el") + (synopsis "Paste to pastebin-like services") + (description "This mode allows to paste whole buffers or parts of buffers +to pastebin-like services. It supports more than one service and will +failover if one service fails. More services can easily be added over time +and prefered services can easily be configured.") + (license license:gpl3+))) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 86880be0d6..c2601297ac 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1330,7 +1330,7 @@ multi-system game/emulator system.") (source (origin (method url-fetch) - (uri (string-append "http://www.scummvm.org/frs/scummvm/" version + (uri (string-append "https://downloads.scummvm.org/frs/scummvm/" version "/scummvm-" version ".tar.xz")) (sha256 (base32 "11vknasm5dna2vqr6gk343qynh7nhsq3kf60zayarn1vb5z6as8l")))) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 558541dd5a..7eb8bbf893 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -1133,22 +1133,23 @@ use on a given system.") (define-public libredwg (package (name "libredwg") - (version "0.11") + (version "0.11.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libredwg/libredwg-" version ".tar.xz")) (sha256 - (base32 "1vd7ii32k5447z7k4w9s005hv1ffpj6dyf1w40x6c53qksrblny2")))) + (base32 "1xx6y6ckm4mzqln8y8lqf5frcn2b32ypc0d0h9dzpz6363zh7pdn")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-bindings"))) (native-inputs `(("libxml2" ,libxml2) ("parallel" ,parallel) + ("perl" ,perl) ("pkg-config" ,pkg-config) - ("python" ,python) + ("python" ,python-wrapper) ("python-libxml2" ,python-libxml2))) (inputs `(("pcre2" ,pcre2))) @@ -2434,7 +2435,7 @@ full programmatic control over your models.") (define-public freecad (package (name "freecad") - (version "0.18.4") + (version "0.18.5") (source (origin (method git-fetch) @@ -2453,7 +2454,7 @@ full programmatic control over your models.") (file-name (git-file-name name version)) (sha256 (base32 - "170hk1kgrvsddrwykp24wyj0cha78zzmzbf50gn98x7ngqqs395s")))) + "0r31jzzkamf76l19fb175hhv48irk06fpi8ldxdlr31w8c1ix4aa")))) (build-system qt-build-system) (native-inputs `(("doxygen" ,doxygen) @@ -2496,8 +2497,28 @@ full programmatic control over your models.") #:configure-flags (list "-DBUILD_QT5=ON" - (string-append "-DCMAKE_INSTALL_LIBDIR=" - (assoc-ref %outputs "out") "/lib")) + (string-append "-DCMAKE_INSTALL_LIBDIR=" (assoc-ref %outputs "out") "/lib") + + (string-append "-DPYSIDE2UICBINARY=" + (assoc-ref %build-inputs "python-pyside-2-tools") + "/bin/uic") + (string-append "-DPYSIDE2RCCBINARY=" + (assoc-ref %build-inputs "python-pyside-2-tools") + "/bin/rcc") + + "-DPYSIDE_LIBRARY=PySide2::pyside2" + (string-append + "-DPYSIDE_INCLUDE_DIR=" + (assoc-ref %build-inputs "python-pyside-2") "/include;" + (assoc-ref %build-inputs "python-pyside-2") "/include/PySide2;" + (assoc-ref %build-inputs "python-pyside-2") "/include/PySide2/QtCore;" + (assoc-ref %build-inputs "python-pyside-2") "/include/PySide2/QtWidgets;" + (assoc-ref %build-inputs "python-pyside-2") "/include/PySide2/QtGui;") + + "-DSHIBOKEN_LIBRARY=Shiboken2::libshiboken" + (string-append "-DSHIBOKEN_INCLUDE_DIR=" + (assoc-ref %build-inputs "python-shiboken-2") + "/include/shiboken2")) #:phases (modify-phases %standard-phases (add-before 'configure 'restore-pythonpath diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm new file mode 100644 index 0000000000..ed0d928fc7 --- /dev/null +++ b/gnu/packages/fcitx5.scm @@ -0,0 +1,450 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Zhu Zihao <all_but_last@163.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 fcitx5) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module (guix build-system copy) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages boost) + #:use-module (gnu packages curl) + #:use-module (gnu packages datastructures) + #:use-module (gnu packages enchant) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gcc) + #:use-module (gnu packages gettext) + #:use-module (gnu packages glib) + #:use-module (gnu packages gtk) + #:use-module (gnu packages iso-codes) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages libevent) + #:use-module (gnu packages linux) + #:use-module (gnu packages lua) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages pretty-print) + #:use-module (gnu packages python) + #:use-module (gnu packages qt) + #:use-module (gnu packages textutils) + #:use-module (gnu packages unicode) + #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages xorg)) + +(define-public xcb-imdkit + (package + (name "xcb-imdkit") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://download.fcitx-im.org/fcitx5/xcb-imdkit/xcb-imdkit-" + version ".tar.xz")) + (sha256 + (base32 "1qgbbp8y8ci7haz99vgbrgpjsbrwwyjianyhdvxcirnbm5bybvmz")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove bundled uthash. + (delete-file-recursively "uthash") + #t)))) + (build-system cmake-build-system) + (inputs + `(("uthash" ,uthash) + ("libxcb" ,libxcb) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/xcb-imdkit") + (synopsis "Input method development support for XCB") + (description "Xcb-imdkit is an implementation of xim protocol in XCB, +comparing with the implementation of IMDkit with Xlib, and xim inside Xlib, it +has less memory foot print, better performance, and safer on malformed +client.") + (license license:lgpl2.1))) + +(define-public fcitx5 + (package + (name "fcitx5") + (version "5.0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-" + version "_dict.tar.xz")) + (sha256 + (base32 "06zkb33m2rnhg385iy79n3r4svz5jbav74di61xqa3lhbv7534s3")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCLDR_DIR=" + (assoc-ref %build-inputs "unicode-cldr-common") + "/share/unicode/cldr")))) + (inputs + `(("cairo" ,cairo) + ("cairo-xcb" ,cairo-xcb) + ("dbus" ,dbus) + ("enchant" ,enchant) + ("expat" ,expat) + ("fmt" ,fmt) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gettext" ,gettext-minimal) + ("glib" ,glib) + ("iso-codes" ,iso-codes) + ("json-c" ,json-c) + ("libevent" ,libevent) + ("libpthread-stubs" ,libpthread-stubs) + ("libuuid" ,util-linux "lib") + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("libxfixes" ,libxfixes) + ("libxinerama" ,libxinerama) + ("libxkbcommon" ,libxkbcommon) + ("libxkbfile" ,libxkbfile) + ("pango" ,pango) + ("unicode-cldr-common" ,unicode-cldr-common) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xcb-imdkit" ,xcb-imdkit) + ("xcb-util" ,xcb-util) + ("xcb-util-keysyms" ,xcb-util-keysyms) + ("xcb-util-wm" ,xcb-util-wm) + ("xkeyboard-config" ,xkeyboard-config))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (native-search-paths + (list (search-path-specification + (variable "FCITX_ADDON_DIRS") + (files '("lib/fcitx5"))))) + (home-page "https://github.com/fcitx/fcitx5") + (synopsis "Input method framework") + (description "Fcitx 5 is a generic input method framework.") + (license license:lgpl2.1+))) + +(define-public fcitx5-lua + (package + (name "fcitx5-lua") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-" + version ".tar.xz")) + (sha256 + (base32 "177mj56j8yrl79hvk7bbrifvm137np23pwalv83ibgk4l51z92hf")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("lua" ,lua) + ("gettext" ,gettext-minimal) + ("libpthread-stubs" ,libpthread-stubs))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-lua") + (synopsis "Lua support for Fcitx 5") + (description "Fcitx5-lua allows writing Fcitx5 extension in Lua.") + (license license:lgpl2.1+))) + +(define-public libime + (package + (name "libime") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-" + version "_dict.tar.xz")) + (sha256 + (base32 "006pncby7p6h3rnicckzjwi6jzsrqiqbj6p9bpic80lanlllgw31")))) + (build-system cmake-build-system) + (inputs + `(("fcitx5" ,fcitx5) + ("boost" ,boost))) + (native-inputs + `(("gcc" ,gcc-9) ;for #include <filesystem> and ld support + ("extra-cmake-modules" ,extra-cmake-modules) + ("python" ,python))) ;needed to run test + (home-page "https://github.com/fcitx/libime") + (synopsis "Library for implementing generic input method") + (description "Libime is a library for implmenting various input methods +editors.") + (license license:lgpl2.1+))) + +(define-public fcitx5-gtk + (package + (name "fcitx5-gtk") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-gtk/fcitx5-gtk-" + version ".tar.xz")) + (sha256 + (base32 "0h53liraqc5nz4nyi3ixdfdw3zzkdcsiff7j25acc3gmaa5gyij7")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;No test + #:configure-flags + (list (string-append "-DGOBJECT_INTROSPECTION_GIRDIR=" + %output "/share/gir-1.0") + (string-append "-DGOBJECT_INTROSPECTION_TYPELIBDIR=" + %output "/lib/girepository-1.0")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-install-prefix + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gtk2 (assoc-ref outputs "gtk2"))) + ;; Install GTK+ 2 input method module to its own output. + (substitute* "gtk2/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}") + (string-append gtk2 "/lib"))))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxkbcommon" ,libxkbcommon) + ("gobject-introspection" ,gobject-introspection) + ("gtk2" ,gtk+-2) + ("gtk3" ,gtk+) + ("glib" ,glib) + ("libx11" ,libx11) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("glib" ,glib "bin"))) ;for glib-genmarshal + ;; TODO: Add "lib" output to reduce the closure size of "gtk2". + (outputs '("out" "gtk2")) + (home-page "https://github.com/fcitx/fcitx5-gtk") + (synopsis "Glib based D-Bus client and GTK IM module for Fcitx 5") + (description "Fcitx5-gtk provides a Glib based D-Bus client and IM module +for GTK+2/GTK+3 application.") + (license license:lgpl2.1+))) + +(define-public fcitx5-qt + (package + (name "fcitx5-qt") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-qt/fcitx5-qt-" + version ".tar.xz")) + (sha256 + (base32 "0ilhb4yw9k3m1c4fidnv3nd5dgm9xxds11dgdys6gswjjnmcgqqm")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list (string-append "-DCMAKE_INSTALL_QT5PLUGINDIR=" + %output "/lib/qt5/plugins") + "-DENABLE_QT4=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("qtbase" ,qtbase) + ("gettext" ,gettext-minimal))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (home-page "https://github.com/fcitx/fcitx5-qt") + (synopsis "Qt library and IM module for Fcitx 5") + (description "Fcitx5-qt provides Qt library for development and IM module +for Qt based application.") + (license (list license:lgpl2.1+ + ;; Files under qt4(Fcitx5Qt4DBusAddons), qt5/dbusaddons + ;; and qt5/platforminputcontext. + license:bsd-3)))) + +(define-public fcitx5-chinese-addons + (package + (name "fcitx5-chinese-addons") + (version "5.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://download.fcitx-im.org/fcitx5" + "/fcitx5-chinese-addons/fcitx5-chinese-addons-" + version "_dict.tar.xz")) + (sha256 + (base32 "0mf91gzwzhfci0jn6g3l516xjw8r4v40ginnbl70h1zx6vr24rfp")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'split-outputs + ;; Build with GUI supports requires Qt and increase package closure + ;; by 800M on x86_64, so place it under another output. + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "gui/pinyindictmanager/CMakeLists.txt" + (("\\$\\{CMAKE_INSTALL_LIBDIR\\}" _) + (string-append (assoc-ref outputs "gui") "/lib")))))))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-lua" ,fcitx5-lua) + ("boost" ,boost) + ("libime",libime) + ("curl" ,curl) + ("gettext" ,gettext-minimal) + ("fmt" ,fmt) + ("libpthread-stubs" ,libpthread-stubs) + ("opencc" ,opencc) + ("qtbase" ,qtbase) + ("fcitx5-qt" ,fcitx5-qt) + ("qtwebkit" ,qtwebkit))) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (outputs '("out" "gui")) + (home-page "https://github.com/fcitx/fcitx5-chinese-addons") + (synopsis "Chinese related addons for Fcitx 5") + (description "Fcitx5-chinese-addons provides Chinese related addons, +including input methods previous bundled inside Fcitx 4: + +@itemize +@item Bingchan +@item Cangjie +@item Erbi +@item Pinyin +@item Shuangpin +@item Wanfeng +@item Wubi +@item Wubi Pinyin +@item Ziranma +@end itemize\n") + (license (list license:lgpl2.1+ + license:gpl2+ + ;; im/pinyin/emoji.txt + license:unicode)))) + +(define-public fcitx5-configtool + (package + (name "fcitx5-configtool") + (version "5.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://download.fcitx-im.org/fcitx5" + "/fcitx5-configtool/fcitx5-configtool-" version ".tar.xz")) + (sha256 + (base32 "0mrqhzvab41hkvhkz7vkb8d2mv5bgx4aqp9jpz4kf3kskwm1q14b")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + ;; KDE is currently not working on Guix, KCM supports doesn't make sense. + '("-DENABLE_KCM=Off"))) + (inputs + `(("fcitx5" ,fcitx5) + ("fcitx5-qt" ,fcitx5-qt) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("kitemviews" ,kitemviews) + ("kwidgetsaddons" ,kwidgetsaddons) + ("libx11" ,libx11) + ("xkeyboard-config" ,xkeyboard-config) + ("libxkbfile" ,libxkbfile) + ("gettext" ,gettext-minimal) + ("iso-codes" ,iso-codes))) + (native-inputs + `(("gcc" ,gcc-9) + ("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/fcitx/fcitx5-configtool") + (synopsis "Graphical configuration tool for Fcitx 5") + (description "Fcitx5-configtool is a graphical configuration tool +to manage different input methods in Fcitx 5.") + (license license:gpl2+))) + +(define-public fcitx5-material-color-theme + (package + (name "fcitx5-material-color-theme") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hosxy/Fcitx5-Material-Color") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1mgc722521jmfx0xc3ibmiycd3q2w7xg2956xcpc07kz90gcdjaa")))) + (build-system copy-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (use-modules (srfi srfi-26)) + + (let* ((out (assoc-ref outputs "out")) + (assets-dir (string-append + out "/share/fcitx5-material-color-theme")) + (themes-prefix (string-append out "/share/fcitx5/themes"))) + + (define (install-theme-variant variant target) + (let ((dir (string-append themes-prefix "/" target)) + (png (string-append "panel-" variant ".png")) + (conf (string-append "theme-" variant ".conf"))) + (format #t "install: Installing color variant \"~a\" to ~a~%" + variant dir) + (substitute* conf + (("^Name=.*") + (string-append "Name=" target "\n"))) + (mkdir-p dir) + (install-file png dir) + (copy-file conf (string-append dir "/theme.conf")) + (symlink (string-append assets-dir "/arrow.png") + (string-append dir "/arrow.png")))) + + (mkdir-p assets-dir) + (install-file "arrow.png" assets-dir) + (for-each + (lambda (x) + (install-theme-variant + x (string-append "Material-Color-" (string-capitalize x)))) + '("black" "blue" "brown" "indigo" + "orange" "pink" "red" "teal")) + + (install-theme-variant + "deepPurple" "Material-Color-DeepPurple"))))))) + (home-page "https://github.com/hosxy/Fcitx5-Material-Color") + (synopsis "Material Design for Fcitx 5") + (description "Fcitx5-material-color-theme is a Material Design theme +for Fcitx 5 with following color variants: + +@itemize +@item Black +@item Blue +@item Brown +@item Indigo +@item Orange +@item Pink +@item Red +@item teal +@item DeepPurple +@end itemize\n") + (license license:asl2.0))) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index a79c70d1e0..579e060d26 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com> +;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -69,6 +70,7 @@ #:use-module (gnu packages dbm) #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) + #:use-module (gnu packages golang) #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) #:use-module (gnu packages graphviz) @@ -623,7 +625,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch ;; the system's dynamically linked library. (package (name "monero") - (version "0.17.1.5") + (version "0.17.1.6") (source (origin (method git-fetch) @@ -643,7 +645,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch "external/unbound")) #t)) (sha256 - (base32 "0yy9n2qng02j314h8fh5n0mcy6vpdks0yk4d8ifn8hj03f3g2c8b")))) + (base32 "0b6zyr3mzqvcxf48i2g45gr649x6nhppik5598jsvg0z7i2hxb9q")))) (build-system cmake-build-system) (native-inputs `(("doxygen" ,doxygen) @@ -733,7 +735,7 @@ the Monero command line client and daemon.") (define-public monero-gui (package (name "monero-gui") - (version "0.17.1.5") + (version "0.17.1.6") (source (origin (method git-fetch) @@ -742,7 +744,7 @@ the Monero command line client and daemon.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0qlcqli0wvrjfy89mbgh1hpmk60dxgn5sws93h8lhgyfwx557iw0")))) + (base32 "0kn5wvx2psbdaqmy1cxlbf5l1mdpvh0b6hh9drah3s7nj3654a3r")))) (build-system qt-build-system) (native-inputs `(,@(package-native-inputs monero) @@ -1229,20 +1231,25 @@ trezord as a regular user instead of needing to it run as root.") (define-public trezord (package (name "trezord") - (version "2.0.29") + (version "2.0.30") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/trezor/trezord-go") - (commit (string-append "v" version)))) + (url "https://github.com/trezor/trezord-go") + (commit (string-append "v" version)))) (sha256 (base32 - "1ks1fa0027s3xp0z6qp0dxmayvrb4dwwscfhbx7da0khp153f2cp")) + "1hzvk0wfgg7b4wpqjk3738yqxlv3pj5i7zxwm0jady2h97hmrqrr")) (file-name (git-file-name name version)))) (build-system go-build-system) (arguments '(#:import-path "github.com/trezor/trezord-go")) + (native-inputs + `(("github.com/gorilla-csrf" ,go-github-com-gorilla-csrf) + ("github.com/gorilla/handlers" ,go-github-com-gorilla-handlers) + ("github.com/gorilla/mux" ,go-github-com-gorilla-mux) + ("gopkg.in/natefinch/lumberjack.v2" ,go-gopkg-in-natefinch-lumberjack.v2))) (home-page "https://trezor.io") (synopsis "Trezor Communication Daemon aka Trezor Bridge (written in Go)") (description "This allows a Trezor hardware wallet to communicate to the @@ -1648,3 +1655,54 @@ generate a variety of reports from them, and provides a web interface.") (synopsis "Emacs mode for beancount") (description "Emacs-beancount is an Emacs mode for the Beancount accounting tool."))) + +(define-public hledger-web + (package + (name "hledger-web") + (version "1.14.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "hledger-web/hledger-web-" version ".tar.gz")) + (sha256 + (base32 + "0w59nr7mj0nx8z44cvhy1rhlj5rmx0wq4p5nfl4dycfmp7jwvsm1")))) + (build-system haskell-build-system) + (inputs + `(("ghc-decimal" ,ghc-decimal) + ("ghc-aeson" ,ghc-aeson) + ("ghc-blaze-html" ,ghc-blaze-html) + ("ghc-blaze-markup" ,ghc-blaze-markup) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-clientsession" ,ghc-clientsession) + ("ghc-cmdargs" ,ghc-cmdargs) + ("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-data-default" ,ghc-data-default) + ("ghc-hjsmin" ,ghc-hjsmin) + ("hledger" ,hledger) + ("ghc-hledger-lib" ,ghc-hledger-lib) + ("ghc-http-client" ,ghc-http-client) + ("ghc-http-conduit" ,ghc-http-conduit) + ("ghc-http-types" ,ghc-http-types) + ("ghc-json" ,ghc-json) + ("ghc-megaparsec" ,ghc-megaparsec) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-shakespeare" ,ghc-shakespeare) + ("ghc-wai" ,ghc-wai) + ("ghc-wai-extra" ,ghc-wai-extra) + ("ghc-wai-handler-launch" ,ghc-wai-handler-launch) + ("ghc-warp" ,ghc-warp) + ("ghc-yaml" ,ghc-yaml) + ("ghc-yesod" ,ghc-yesod) + ("ghc-yesod-core" ,ghc-yesod-core) + ("ghc-yesod-form" ,ghc-yesod-form) + ("ghc-yesod-static" ,ghc-yesod-static))) + (home-page "https://hledger.org") + (synopsis "Web-based user interface for the hledger accounting system") + (description "This package provides a simple Web-based User +Interface (UI) for the hledger accounting system. It can be used as a +local, single-user UI, or as a multi-user UI for viewing, adding, and +editing on the Web.") + (license license:gpl3))) diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index ed2e960938..0181536c37 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2017 Nikita <nikita@n0.is> ;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> @@ -73,14 +73,14 @@ (define-public freetype (package (name "freetype") - (version "2.10.1") - (replacement freetype/fixed) - (source (origin - (method url-fetch) - (uri (string-append "mirror://savannah/freetype/freetype-" - version ".tar.xz")) - (sha256 (base32 - "0vx2dg1jh5kq34dd6ifpjywkpapp8a7p1bvyq9yq5zi1i94gmnqn")))) + (version "2.10.4") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://savannah/freetype/freetype-" + version ".tar.xz")) + (sha256 + (base32 "112pyy215chg7f7fmp2l9374chhhpihbh8wgpj5nj6avj3c59a46")))) (build-system gnu-build-system) (arguments ;; The use of "freetype-config" is deprecated, but other packages still @@ -103,19 +103,6 @@ anti-aliased glyph bitmap generation with 256 gray levels.") (license license:freetype) ; some files have other licenses (home-page "https://www.freetype.org/"))) -(define freetype/fixed - ;; Security fix for CVE-2020-15999. - (package - (inherit freetype) - (version "2.10.4") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://savannah/freetype/freetype-" - version ".tar.xz")) - (sha256 - (base32 "112pyy215chg7f7fmp2l9374chhhpihbh8wgpj5nj6avj3c59a46")))))) - (define-public ttfautohint (package (name "ttfautohint") @@ -331,12 +318,6 @@ Font Format (WOFF).") (define-public fontconfig (package (name "fontconfig") - - ;; This replacement is not security-related, but works around the fact - ;; that gs-fonts are not recognized by newer versions of Pango, causing - ;; many applications to fail to find fonts otherwise. - (replacement fontconfig/font-dejavu) - (version "2.13.1") (source (origin (method url-fetch) @@ -351,16 +332,19 @@ Font Format (WOFF).") (propagated-inputs `(("expat" ,expat) ("freetype" ,freetype) ("libuuid" ,util-linux "lib"))) - (inputs `(("gs-fonts" ,gs-fonts))) + (inputs + ;; We use to use 'gs-fonts' but they are not recognized by newer versions + ;; of Pango, causing many applications to fail to find fonts otherwise. + `(("font-dejavu" ,font-dejavu))) (native-inputs `(("gperf" ,gperf) ("pkg-config" ,pkg-config))) (arguments `(#:configure-flags (list "--with-cache-dir=/var/cache/fontconfig" - ;; register gs-fonts as default fonts + ;; register the default fonts (string-append "--with-default-fonts=" - (assoc-ref %build-inputs "gs-fonts") + (assoc-ref %build-inputs "font-dejavu") "/share/fonts") ;; Register fonts from user and system profiles. @@ -393,13 +377,6 @@ high quality, anti-aliased and subpixel rendered text on a display.") "See COPYING in the distribution.")) (home-page "https://www.freedesktop.org/wiki/Software/fontconfig"))) -(define fontconfig/font-dejavu - (package - (inherit fontconfig) - (inputs - ;; XXX: Reuse the name to avoid having to override the configure flags. - `(("gs-fonts" ,font-dejavu))))) - (define-public t1lib (package (name "t1lib") @@ -575,16 +552,15 @@ using the above tables.") (define-public libspiro (package (name "libspiro") - (version "20190731") - (replacement libspiro-20200505) + (version "20200505") (source (origin (method url-fetch) (uri (string-append "https://github.com/fontforge/libspiro/releases" - "/download/" version "/libspiro-" version ".tar.gz")) + "/download/" version "/libspiro-dist-" version ".tar.gz")) (sha256 (base32 - "0m63x97b7aciviijprvy85gm03p2jsgslxn323zl9zn7qz6d3ir4")))) + "0j8fmyj4wz6mqk17dqs6f8jx0i52n68gv5px17qbrjnbilg9mih6")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-static"))) @@ -595,19 +571,6 @@ smooth contours with constant curvature at the spline joins.") (license license:gpl2+) (home-page "http://libspiro.sourceforge.net/"))) -(define libspiro-20200505 - (package - (inherit libspiro) - (version "20200505") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/fontforge/libspiro/releases" - "/download/" version "/libspiro-dist-" version ".tar.gz")) - (sha256 - (base32 - "0j8fmyj4wz6mqk17dqs6f8jx0i52n68gv5px17qbrjnbilg9mih6")))))) - (define-public libuninameslist (package (name "libuninameslist") diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index c57ea5a908..21f7f7e880 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -1071,7 +1071,14 @@ to create fully featured games and multimedia programs in the python language.") (method url-fetch) (uri (string-append "https://www.renpy.org/dl/" renpy-version "/pygame_sdl2-" version ".tar.gz")) - (sha256 (base32 "1bmr7j9mlsc4czpgw70ld15ymyp4wxrk9hdsqad40wjwdxvvg2dr")))) + (sha256 (base32 "1bmr7j9mlsc4czpgw70ld15ymyp4wxrk9hdsqad40wjwdxvvg2dr")) + (modules '((guix build utils))) + (snippet + '(begin + ;; drop generated sources + (delete-file-recursively "gen") + (delete-file-recursively "gen3") + #t)))) (build-system python-build-system) (arguments `(#:tests? #f ; tests require pygame to be installed first @@ -1090,11 +1097,6 @@ to create fully featured games and multimedia programs in the python language.") "/lib -Wl,-rpath," (assoc-ref inputs "sdl-union") "/lib -Wl,--enable-new-dtags -lSDL2")) - #t)) - (add-before 'build 'drop-generated-files - (lambda args - (delete-file-recursively "gen") - (delete-file-recursively "gen3") #t))))) (inputs `(("sdl-union" @@ -1118,7 +1120,18 @@ developed mainly for Ren'py.") (method url-fetch) (uri (string-append "https://www.renpy.org/dl/" version "/renpy-" version "-source.tar.bz2")) - (sha256 (base32 "1anr5cfbvbsbik4v4rvrkdkciwhg700k4lydfbs4n85raimz9mw4")))) + (sha256 (base32 "1anr5cfbvbsbik4v4rvrkdkciwhg700k4lydfbs4n85raimz9mw4")) + (modules '((guix build utils))) + (patches + (search-patches + "renpy-use-system-fribidi.patch")) + (snippet + '(with-directory-excursion "module" + ;; drop generated sources + (delete-file-recursively "gen") + ;; drop fribidi sources + (delete-file-recursively "fribidi-src") + #t)))) (build-system python-build-system) (arguments `(#:tests? #f ; Ren'py doesn't seem to package tests @@ -1131,6 +1144,13 @@ developed mainly for Ren'py.") (("xdg-open") (which "xdg-open"))) #t)) + (add-after 'unpack 'fix-include-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "module/setup.py" + (("/usr/include/fribidi") + (string-append (assoc-ref inputs "fribidi") + "/include/fribidi"))) + #t)) (add-after 'set-paths 'set-build-vars (lambda* (#:key inputs #:allow-other-keys) (setenv "RENPY_CYTHON" @@ -1168,6 +1188,7 @@ developed mainly for Ren'py.") (inputs `(("ffmpeg" ,ffmpeg) ("freetype" ,freetype) + ("fribidi" ,fribidi) ("glew" ,glew) ("libpng" ,libpng) ("python2-pygame" ,python2-pygame-sdl2) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 140e7a48e1..c90cd67bbb 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -7927,7 +7927,7 @@ their own levels.") (define-public libmanette (package (name "libmanette") - (version "0.2.5") + (version "0.2.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libmanette/" @@ -7935,7 +7935,7 @@ their own levels.") "libmanette-" version ".tar.xz")) (sha256 (base32 - "0awsl0d34k3w18jdiyh377r7qi00s4kmh5gc97vx9jy0h22f01l0")))) + "1b3bcdkk5xd5asq797cch9id8692grsjxrc1ss87vv11m1ck4rb3")))) (build-system meson-build-system) (native-inputs `(("glib" ,glib "bin") ; for glib-compile-resources diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 4d56f05cf2..03a516dc52 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -170,7 +170,9 @@ printing, and psresize, for adjusting page sizes.") (sha256 (base32 "0z1w42y2jmcpl2m1l3z0sfii6zmvzcwcgzn6bydklia6ig7jli2p")) - (patches (search-patches "ghostscript-no-header-creationdate.patch" + (patches (search-patches "ghostscript-freetype-compat.patch" + "ghostscript-CVE-2020-15900.patch" + "ghostscript-no-header-creationdate.patch" "ghostscript-no-header-id.patch" "ghostscript-no-header-uuid.patch")) (modules '((guix build utils))) diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index c0c66e52f5..da19939679 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2018 Leo Famulari <leo@famulari.name> +;;; Copyright © 2018, 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> @@ -409,7 +409,7 @@ inverse fourier transform.") (define-public libmypaint (package (name "libmypaint") - (version "1.5.1") + (version "1.6.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/mypaint/libmypaint/" @@ -417,7 +417,7 @@ inverse fourier transform.") version ".tar.xz")) (sha256 (base32 - "0aqcv4fyscpfhknxgfpq0v84aj2nzigqvpi4zgv2zkl41h51by5f")))) + "0priwpmc7dizccqvn21ig6d649bprl3xl1hmjj7nddznjgr585vl")))) (build-system gnu-build-system) (native-inputs `(("intltool" ,intltool) @@ -538,3 +538,92 @@ tools for healing selections (content-aware fill), enlarging the canvas and healing the border, increasing the resolution while adding detail, and transferring the style of an image.") (license license:gpl3+))) + +(define-public glimpse + (package + (name "glimpse") + (version "0.2.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/glimpse-editor/Glimpse") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0drngj2xqzxfaag6pc4xjffiw003n4y43x5rb5bf4ziv1ac51dm9")))) + (build-system gnu-build-system) + (outputs '("out" + "doc")) ; 9 MiB of gtk-doc HTML + (arguments + '(#:configure-flags + (list (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html") + "--enable-gtk-doc" + + ;; Prevent the build system from running 'gtk-update-icon-cache' + ;; which is not needed during the build because Guix runs it at + ;; profile creation time. + "ac_cv_path_GTK_UPDATE_ICON_CACHE=true" + + ;; Disable automatic network request on startup to check for + ;; version updates. + "--disable-check-update" + + ;; ./configure requests not to annoy upstream with packaging bugs. + "--with-bug-report-url=https://bugs.gnu.org/guix") + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-sitecustomize.py + ;; Install 'sitecustomize.py' into glimpse's python directory to + ;; add pygobject and pygtk to pygimp's search path. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((pythonpath (getenv "PYTHONPATH")) + (out (assoc-ref outputs "out")) + (sitecustomize.py + (string-append + out "/lib/glimpse/2.0/python/sitecustomize.py"))) + (call-with-output-file sitecustomize.py + (lambda (port) + (format port "import site~%") + (format port "for dir in '~a'.split(':'):~%" pythonpath) + (format port " site.addsitedir(dir)~%"))))))))) + (native-inputs + `(("autoconf" ,autoconf-wrapper) + ("automake" ,automake) + ("gtk-doc" ,gtk-doc) + ("intltool" ,intltool) + ("libtool" ,libtool) + ("libxslt" ,libxslt) ; for xsltproc + ("pkg-config" ,pkg-config) + ("glib:bin" ,glib "bin"))) ; for gdbus-codegen + (inputs + `(("babl" ,babl) + ("glib" ,glib) + ("glib-networking" ,glib-networking) + ("libtiff" ,libtiff) + ("libwebp" ,libwebp) + ("libjpeg" ,libjpeg-turbo) + ("atk" ,atk) + ("gexiv2" ,gexiv2) + ("gtk+" ,gtk+-2) + ("libmypaint" ,libmypaint) + ("mypaint-brushes" ,mypaint-brushes-1.3) + ("exif" ,libexif) ; optional, EXIF + XMP support + ("lcms" ,lcms) ; optional, color management + ("librsvg" ,librsvg) ; optional, SVG support + ("libxcursor" ,libxcursor) ; optional, Mouse Cursor support + ("poppler" ,poppler) ; optional, PDF support + ("poppler-data" ,poppler-data) + ("python" ,python-2) ; optional, Python support + ("python2-pygtk" ,python2-pygtk) ; optional, Python support + ("gegl" ,gegl))) + (home-page "https://glimpse-editor.github.io/") + (synopsis "Glimpse Image Editor") + (description "The Glimpse Image Editor is an application for image +manipulation tasks such as photo retouching, composition and authoring. +It supports all common image formats as well as specialized ones. It +features a highly customizable interface that is extensible via a plugin +system. It was forked from the GNU Image Manipulation Program.") + (license license:gpl3+))) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index a8b142cacb..d9d83e7d32 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> +;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -60,6 +61,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system meson) + #:use-module (guix build-system waf) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) @@ -1013,3 +1015,62 @@ the glProgramViewportFlip before it was replaced with glProgramViewportInfo.") The C# wrapper was written to be used for FNA's platform support. However, this is written in a way that can be used for any general C# application.") (license license:zlib)))) + +(define-public glmark2 + (package + (name "glmark2") + (version "2020.04") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/glmark2/glmark2") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ywpzp0imi3f8iyp7d1739576zx2nsr3db5hp2as4yhflfyq1as2")) + (modules '((guix build utils))) + ;; Fix Python 3 incompatibility. + (snippet + '(begin + (substitute* "wscript" + (("(sorted\\()FLAVORS\\.keys\\(\\)(.*)" _ beginning end) + (string-append beginning "list(FLAVORS)" end))) + #t)))) + (build-system waf-build-system) + (arguments + '(#:tests? #f ; no check target + #:configure-flags + (list (string-append "--with-flavors=" + (string-join '("x11-gl" "x11-glesv2" + "drm-gl" "drm-glesv2" + "wayland-gl" "wayland-glesv2") + ","))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((mesa (assoc-ref inputs "mesa"))) + (substitute* (find-files "src" "gl-state-.*\\.cpp$") + (("libGL.so") (string-append mesa "/lib/libGL.so")) + (("libEGL.so") (string-append mesa "/lib/libEGL.so")) + (("libGLESv2.so") (string-append mesa "/lib/libGLESv2.so"))) + #t)))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("eudev" ,eudev) + ("libdrm" ,libdrm) + ("libjpeg-turbo" ,libjpeg-turbo) + ("libpng" ,libpng) + ("libx11" ,libx11) + ("libxcb" ,libxcb) + ("mesa" ,mesa) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols))) + (home-page "https://github.com/glmark2/glmark2") + (synopsis "OpenGL 2.0 and OpenGL ES 2.0 benchmark") + (description + "glmark2 is an OpenGL 2.0 and OpenGL ES 2.0 benchmark based on the +original glmark benchmark by Ben Smith.") + (license license:gpl3+))) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index ce132f8fcf..a37369c49a 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org> @@ -91,7 +91,6 @@ (package (name "dbus") (version "1.12.16") - (replacement dbus/fixed) (source (origin (method url-fetch) (uri (string-append @@ -100,7 +99,8 @@ (sha256 (base32 "107ckxaff1cv4q6kmfdi2fb1nlsv03312a7kf6lb4biglhpjv8jl")) - (patches (search-patches "dbus-helper-search-path.patch")))) + (patches (search-patches "dbus-CVE-2020-12049.patch" + "dbus-helper-search-path.patch")))) (build-system gnu-build-system) (arguments '(#:configure-flags @@ -168,20 +168,10 @@ or through unencrypted TCP/IP suitable for use behind a firewall with shared NFS home directories.") (license license:gpl2+))) ; or Academic Free License 2.1 -;; Replacement package to fix CVE-2020-12049. -(define dbus/fixed - (package - (inherit dbus) - (source (origin - (inherit (package-source dbus)) - (patches (append (search-patches "dbus-CVE-2020-12049.patch") - (origin-patches (package-source dbus)))))))) - (define glib (package (name "glib") (version "2.62.6") - (replacement glib-with-gio-patch) (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" @@ -190,7 +180,8 @@ shared NFS home directories.") (sha256 (base32 "174bsmbmcvaw69ff9g60q5sx0fn23rkhqcwqz17h5s7sprps4kqh")) - (patches (search-patches "glib-tests-timer.patch")) + (patches (search-patches "glib-appinfo-watch.patch" + "glib-tests-timer.patch")) (modules '((guix build utils))) (snippet '(begin @@ -388,16 +379,6 @@ dynamic loading, and an object system.") (home-page "https://developer.gnome.org/glib/") (license license:lgpl2.1+))) -(define glib-with-gio-patch - ;; GLib with a fix for <https://bugs.gnu.org/35594>. - ;; TODO: Fold into 'glib' above in the next rebuild cycle. - (package - (inherit glib) - (source (origin - (inherit (package-source glib)) - (patches (cons (search-patch "glib-appinfo-watch.patch") - (origin-patches (package-source glib)))))))) - (define-public glib-with-documentation ;; glib's doc must be built in a separate package since it requires gtk-doc, ;; which in turn depends on glib. diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 623732d8bc..64fded105a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -11504,7 +11504,7 @@ and toolbars.") (define-public setzer (package (name "setzer") - (version "0.3.6") + (version "0.3.8") (source (origin (method git-fetch) @@ -11513,7 +11513,7 @@ and toolbars.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "118gip6bv4mcsq4nrai7kl0vmqqbyzpsd4ky9vhxb1x2cvg048s8")))) + (base32 "1f5qmkz4hzn54sh56z3hw8zrvg93xlz62ggzlzyg7vgsr83kpns9")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm index dcee4dc166..f71e8209fa 100644 --- a/gnu/packages/gnucash.scm +++ b/gnu/packages/gnucash.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com> +;;; Copyright © 2020 Christopher Lam <christopher.lck@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -51,6 +52,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages swig) #:use-module (gnu packages tls) #:use-module (gnu packages web) #:use-module (gnu packages webkit) @@ -61,25 +63,24 @@ ;; directory. (package (name "gnucash") - (version "3.8") + (version "4.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gnucash/gnucash%20%28stable%29/" - version "/gnucash-" version "b" ".tar.bz2")) + version "/gnucash-" version ".tar.bz2")) (sha256 (base32 - "0dvzm3bib7jcj685sklpzyy9mrak9mxyvih2k9fk4sl3v21wlphg")))) + "020k1mm909dcgs52ls4v7xx3yn8gqazi9awyr81l6y7pkq1spn2n")))) (build-system cmake-build-system) (inputs - `(("guile" ,guile-2.2) + `(("guile" ,guile-3.0) ("boost" ,boost) ("icu4c" ,icu4c) ("glib" ,glib) ("gtk" ,gtk+) ("libdbi" ,libdbi) ("libdbi-drivers" ,libdbi-drivers) - ("libgnomecanvas" ,libgnomecanvas) ("libofx" ,libofx) ("libxml2" ,libxml2) ("libxslt" ,libxslt) @@ -95,6 +96,7 @@ ("googlemock" ,(package-source googletest)) ("googletest" ,googletest) ("gnucash-docs" ,gnucash-docs) + ("swig" ,swig) ("pkg-config" ,pkg-config))) (propagated-inputs ;; dconf is required at runtime according to README.dependencies. @@ -134,8 +136,8 @@ ;; execute them with perl, so execute them directly instead. (add-after 'unpack 'fix-finance-quote-check (lambda _ - (substitute* "libgnucash/scm/price-quotes.scm" - (("\"perl\" \"-w\" ") "")) + (substitute* "gnucash/price-quotes.scm" + (("\"perl\" \"-w\" ") "")) #t)) ;; The qof test requires the en_US, en_GB, and fr_FR locales. (add-before 'check 'install-locales @@ -230,7 +232,7 @@ installed as well as Yelp, the Gnome help browser.") version "/gnucash-docs-" version revision ".tar.gz")) (sha256 (base32 - "19v6kchda724xkkgwlw5rg21jcpirhch12j9sr6ibnv61sd4ql52")))) + "1p1rbv0gyi07nh5pzhk3xm46w66kjyaipb6rpaq9yb9gil1nl7q5")))) (build-system gnu-build-system) ;; These are native-inputs because they are only required for building the ;; documentation. diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index afe5768faf..13bba7b661 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -791,7 +791,7 @@ from forcing GEXP-PROMISE." ("llvm" ,llvm) ("clang" ,clang) ("perl" ,perl) - ("node" ,node-10.22) + ("node" ,node) ("python" ,python) ("python-2" ,python-2) ("python2-pysqlite" ,python2-pysqlite) @@ -1460,7 +1460,7 @@ standards of the IceCat project.") ("clang" ,clang) ("llvm" ,llvm) ("nasm" ,nasm) - ("node" ,node-10.22) + ("node" ,node) ("perl" ,perl) ("pkg-config" ,pkg-config) ("python" ,python) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 94b6fb814e..3b42bf3c8f 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -22,6 +22,7 @@ ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com> ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 raingloom <raingloom@riseup.net> +;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -511,6 +512,35 @@ way of specifying command line options.") (home-page "https://github.com/jessevdk/go-flags") (license license:bsd-3))) +(define-public go-github-com-aws-sdk + (package + (name "go-github-com-aws-sdk") + (version "1.35.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/aws/aws-sdk-go") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ky5lw2s2zpslnnqcs6hgsrwvwbxwgflb5jwf16dd4aga3vrg10c")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/aws/aws-sdk-go/aws" + #:unpack-path "github.com/aws/aws-sdk-go")) + (propagated-inputs + `(("go-github-com-go-sql-driver-mysql" ,go-github-com-go-sql-driver-mysql) + ("go-github-com-jmespath-go-jmespath" ,go-github-com-jmespath-go-jmespath) + ("go-github-com-pkg-errors" ,go-github-com-pkg-errors) + ("go-golang-org-x-net" ,go-golang-org-x-net))) + (home-page "https://github.com/aws/aws-sdk-go") + (synopsis "Library to access Amazon Web Services (AWS)") + (description + "This is the official AWS SDK for the Go programming language.") + (license license:asl2.0))) + (define-public go-gopkg.in-tomb.v2 (let ((commit "d5d1b5820637886def9eef33e03a27a9f166942c") (revision "0")) @@ -545,6 +575,32 @@ termination.") (home-page "https://gopkg.in/tomb.v2") (license license:bsd-3)))) +(define-public go-gopkg-in-natefinch-lumberjack.v2 + (package + (name "go-gopkg-in-natefinch-lumberjack.v2") + (version "2.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/natefinch/lumberjack") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1l3vlv72b7rfkpy1164kwd3qzrqmmjnb67akzxqp2mlvc66k6p3d")))) + (build-system go-build-system) + (arguments + '(#:import-path "gopkg.in/natefinch/lumberjack.v2")) + (propagated-inputs + `(("github.com/burntsush/toml" ,go-github-com-burntsushi-toml) + ("gopkg.in/yaml.v2" ,go-gopkg-in-yaml-v2))) + (home-page "https://github.com/natefinch/lumberjack") + (synopsis "Rolling logger for Go") + (description + "Lumberjack is a Go package for writing logs to rolling files.") + (license license:expat))) + (define-public go-github.com-jtolds-gls (package (name "go-github.com-jtolds-gls") @@ -1307,30 +1363,106 @@ values for the purpose of fuzz testing.") (license license:bsd-3)))) (define-public go-github-com-gorilla-mux - (let ((commit "599cba5e7b6137d46ddf58fb1765f5d928e69604") - (revision "0")) - (package - (name "go-github-com-gorilla-mux") - (version (git-version "0.0.0" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/gorilla/mux") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0wd6jjii1kg5s0nk3ri6gqriz6hbd6bbcn6x4jf8n7ncrb8qsxyz")))) - (build-system go-build-system) - (arguments - '(#:import-path "github.com/gorilla/mux")) - (home-page "https://github.com/gorilla/mux") - (synopsis "URL router and dispatcher for Go") - (description - "Gorilla/Mux implements a request router and dispatcher for matching + (package + (name "go-github-com-gorilla-mux") + (version "1.8.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gorilla/mux") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "18f0q9qxgq1yh4ji07mqhiydfcwvi56z9d775v7dc7yckj33kpdk")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/gorilla/mux")) + (home-page "https://github.com/gorilla/mux") + (synopsis "URL router and dispatcher for Go") + (description + "Gorilla/Mux implements a request router and dispatcher for matching incoming requests with their respective handler.") - (license license:bsd-3)))) + (license license:bsd-3))) + +(define-public go-github-com-gorilla-handlers + (package + (name "go-github-com-gorilla-handlers") + (version "1.5.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gorilla/handlers") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "15gycdz9lkjnsvvichsbdf25vf6pi1sfn41khhz53iqf300l0w0s")))) + (build-system go-build-system) + (propagated-inputs + `(("github.com/felixge/httpsnoop" ,go-github-com-felixge-httpsnoop))) + (arguments + '(#:tests? #f ; Tries to download from the internet + #:import-path "github.com/gorilla/handlers")) + (home-page "https://github.com/gorilla/handlers") + (synopsis "Middleware for Go HTTP services and web applications") + (description "A collection of useful middleware for Go HTTP services +and web applications.") + (license license:bsd-3))) + +(define-public go-github-com-gorilla-securecookie + (package + (name "go-github-com-gorilla-securecookie") + (version "1.1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gorilla/securecookie") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "16bqimpxs9vj5n59vm04y04v665l7jh0sddxn787pfafyxcmh410")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/gorilla/securecookie")) + (home-page "https://github.com/gorilla/securecookie") + (synopsis "Encodes and decodes authenticated and optionally encrypted +cookie values") + (description + "Gorilla/securecookie encodes and decodes authenticated and optionally +encrypted cookie values for Go web applications.") + (license license:bsd-3))) + +(define-public go-github-com-gorilla-csrf + (package + (name "go-github-com-gorilla-csrf") + (version "1.7.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gorilla/csrf") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0iryq0z48yi7crfbd8jxyn7lh1gsglpiglvjgnf23bz6xfisssav")))) + (build-system go-build-system) + (propagated-inputs + `(("github.com/gorilla/securecookie" ,go-github-com-gorilla-securecookie) + ("github.com/pkg/errors" ,go-github-com-pkg-errors))) + (arguments + '(#:import-path "github.com/gorilla/csrf")) + (home-page "https://github.com/gorilla/csrf") + (synopsis "Cross Site Request Forgery (CSRF) prevention middleware") + (description + "Gorilla/csrf provides Cross Site Request Forgery (CSRF) prevention +middleware for Go web applications and services.") + (license license:bsd-3))) (define-public go-github-com-jonboulle-clockwork (let ((commit "e3653ace2d63753697e0e5b07b9393971c0bba9d") @@ -1524,6 +1656,31 @@ GNU extensions} to the POSIX recommendations for command-line options.") all types of configuration needs and formats.") (license license:expat))) +(define-public go-github-com-felixge-httpsnoop + (package + (name "go-github-com-felixge-httpsnoop") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/felixge/httpsnoop") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ncd8lar5zxiwjhsp315s4hsl4bhnm271h49jhyxc66r5yffgmac")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/felixge/httpsnoop")) + (home-page "https://github.com/felixge/httpsnoop/") + (synopsis "Capture http related metrics") + (description + "Httpsnoop provides an easy way to capture http related +metrics (i.e. response time, bytes written, and http status code) from your +application's http.Handlers.") + (license license:expat))) + (define-public go-github-com-fsnotify-fsnotify (package (name "go-github-com-fsnotify-fsnotify") @@ -3454,6 +3611,31 @@ without requiring a real database connection.") (home-page "https://github.com/DATA-DOG/go-sqlmock") (license license:expat)))) +(define-public go-github-com-go-sql-driver-mysql + (package + (name "go-github-com-go-sql-driver-mysql") + (version "1.5.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/go-sql-driver/mysql") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "11x0m9yf3kdnf6981182r824psgxwfaqhn3x3in4yiidp0w0hk3v")))) + (build-system go-build-system) + (arguments + '(#:tests? #f ;; tests require a network connection + #:import-path "github.com/go-sql-driver/mysql")) + (home-page "https://github.com/go-sql-driver/mysql") + (synopsis "MySQL driver for golang") + (description + "This is a pure Go implementaton of the MySQL API, compatible with +golang's database/sql package.") + (license license:mpl2.0))) + (define-public go-golang-org-colorful (package (name "go-golang-org-colorful") @@ -4976,6 +5158,34 @@ the parse trees produced by the html package.") to jQuery to the Go language.") (license license:bsd-3))) +(define-public go-github-com-jmespath-go-jmespath + (package + (name "go-github-com-jmespath-go-jmespath") + (version "0.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jmespath/go-jmespath") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "18zyr9nlywmwp3wpzcjxrgq9s9d2mmc6zg6xhsna00m663nkyc3n")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/jmespath/go-jmespath")) + (native-inputs + `(("go-github-com-davecgh-go-spew" ,go-github-com-davecgh-go-spew) + ("go-github-com-pmezard-go-difflib" ,go-github-com-pmezard-go-difflib) + ("go-gopkg-in-yaml-v2" ,go-gopkg-in-yaml-v2))) + (home-page "https://github.com/jmespath/go-jmespath") + (synopsis "Golang implementation of JMESPath") + (description + "This package implements JMESPath, a query language for JSON. It +transforms one JSON document into another through a JMESPath expression.") + (license license:asl2.0))) + (define-public go-github-com-aymerick-douceur (package (name "go-github-com-aymerick-douceur") diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 3c930722b5..b4472a5e98 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -357,7 +357,18 @@ used throughout the world.") (base32 "17bwb7dgbncrfsmchlib03k9n3xaalirb39g3yb43gg8cg6p8aqx")))) (build-system gnu-build-system) - (arguments '()))) + (arguments + '(#:phases (modify-phases %standard-phases + (add-after 'configure 'disable-layout-test + (lambda _ + ;; This test requires that fontconfig uses bitmap fonts + ;; such as "gs-fonts"; however providing such a package + ;; alone is not enough, as the requirement comes from + ;; deeper in the font stack. Since this version of Pango + ;; is only used for librsvg, simply disable the test. + (substitute* "tests/Makefile" + (("test-layout\\$\\(EXEEXT\\)") "")) + #t))))))) (define-public pangox-compat (package diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 54725cc00d..dfffbfc62f 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -32,6 +32,7 @@ ;;; Copyright © 2020 Jesse Gibbons <jgibbons2357@gmail.com> ;;; Copyright © 2020 Mike Rosset <mike.rosset@gmail.com> ;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at> +;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -58,6 +59,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) #:use-module (gnu packages databases) #:use-module (gnu packages disk) #:use-module (gnu packages emacs) @@ -886,8 +888,8 @@ Vicare Scheme and IronScheme. Right now it contains: (license license:bsd-3))) (define-public guile-prometheus - (let ((commit "2549c482fb04db84481d595f0bf99a1c8bb97c4c") - (revision "3")) + (let ((commit "35dc26c0ea44c3d70f1819f240d84e2cbb4b7b4c") + (revision "5")) (package (name "guile-prometheus") (version (git-version "0" revision commit)) @@ -898,7 +900,7 @@ Vicare Scheme and IronScheme. Right now it contains: (commit commit))) (sha256 (base32 - "0wfaspy3gvn2bkfzlvgx9ncz6114ldxxj25vnj4frcgbzqbdsair")) + "07822jj4appw37lf444kc4xlgl7nm64mgldag56072l55kwashgb")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (native-inputs @@ -966,8 +968,8 @@ convenient nested tree operations.") (license license:gpl3+))) (define-public guile-simple-zmq - (let ((commit "5fc3b7190d31c258ce969c2a5d2ad38c66a09d09") - (revision "4")) + (let ((commit "f8b7d81afb38525750f8818ed2956ca18c828ee8") + (revision "5")) (package (name "guile-simple-zmq") (version (git-version "0.0.0" revision commit)) @@ -979,7 +981,7 @@ convenient nested tree operations.") (commit commit))) (sha256 (base32 - "0inhvl5jssvbw3nd129wdahfwyvy1iciq403wzf0algbvl1fqs7z")) + "1gpzlpcq7bxw7sxyrg8zslwb3631vizw56lgg1aavw4gafh0hxb3")) (file-name (git-file-name name version)))) (build-system guile-build-system) (arguments @@ -2126,8 +2128,11 @@ library.") "godir = \ $(libdir)/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n")) #t))))) - (native-inputs `(("pkg-config" ,pkg-config))) - (inputs `(("guile" ,guile-3.0))) + (native-inputs + `(("guile" ,guile-3.0) + ("pkg-config" ,pkg-config))) + (inputs + `(("guile" ,guile-3.0))) (home-page "https://www.nongnu.org/guile-lib/") (synopsis "Collection of useful Guile Scheme modules") (description @@ -2145,12 +2150,14 @@ for Guile\".") (package (inherit guile-lib) (name "guile2.0-lib") + (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.0))))) (define-public guile2.2-lib (package (inherit guile-lib) (name "guile2.2-lib") + (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.2))))) (define-public guile3.0-lib @@ -4171,3 +4178,65 @@ recursively. It also provides new versions of @code{open-output-file}, directory of its argument if it does not exist.") (home-page "https://mkdir-p.divoplade.fr") (license license:asl2.0))) + +(define-public guile-sodium + (package + (name "guile-sodium") + (version "0.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://inqlab.net/git/guile-sodium.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 (base32 "189jsj87hycs57a54x0b9lifwvhr63nypb9vfxdrq7rwrpcvi5f8")))) + (build-system gnu-build-system) + (arguments `()) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo))) + (inputs `(("guile" ,guile-3.0))) + (propagated-inputs `(("libsodium" ,libsodium))) + (synopsis "Guile bindings to the libsodium cryptographic library") + (description + "This package provides Guile bindings to the libsodium cryptographic library +which provides core cryptographic primitives needed to build higher-level +tools.") + (home-page "https://inqlab.net/git/guile-sodium.git") + (license license:gpl3+))) + +(define-public guile-eris + (package + (name "guile-eris") + (version "0.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://inqlab.net/git/eris.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 (base32 "1ijglmwkdy1l87gj429qfjis0v8b1zlxhbyfhx5za8664h68nqka")))) + (build-system gnu-build-system) + (arguments '()) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo) + ;; test dependency + ("guile-srfi-180" ,guile-srfi-180))) + (inputs `(("guile" ,guile-3.0))) + (propagated-inputs + `(("guile-sodium" ,guile-sodium))) + (synopsis "Guile implementation of the Encoding for Robust Immutable Storage (ERIS)") + (description + "Guile-ERIS is the reference implementation of the Encoding for Robust +Immutable Storage (ERIS). ERIS allows arbirtary content to be encoded into +uniformly sized, encrypted blocks that can be reassembled using a short +read-capability.") + (home-page "https://inqlab.net/git/eris.git") + (license license:gpl3+))) diff --git a/gnu/packages/haskell-crypto.scm b/gnu/packages/haskell-crypto.scm index c92dec9932..032c6fb899 100644 --- a/gnu/packages/haskell-crypto.scm +++ b/gnu/packages/haskell-crypto.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Nikita <nikita@n0.is> ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net> ;;; Copyright © 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -838,3 +839,38 @@ implementation of SSL.") (description "This library contains io-streams routines for secure networking using OpenSSL (by way of HsOpenSSL).") (license license:bsd-3))) + +(define-public ghc-cryptonite-conduit + (package + (name "ghc-cryptonite-conduit") + (version "0.2.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "cryptonite-conduit/cryptonite-conduit-" + version ".tar.gz")) + (sha256 + (base32 + "1bldcmda4xh52mw1wfrjljv8crhw3al7v7kv1j0vidvr7ymnjpbh")))) + (build-system haskell-build-system) + (inputs + `(("ghc-conduit" ,ghc-conduit) + ("ghc-conduit-extra" ,ghc-conduit-extra) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-memory" ,ghc-memory) + ("ghc-resourcet" ,ghc-resourcet))) + (native-inputs + `(("ghc-conduit-combinators" ,ghc-conduit-combinators) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck))) + (arguments + `(#:cabal-revision + ("1" "1hh2nzfz4qpxgivfilgk4ll416lph8b2fdkzpzrmqfjglivydfmz"))) + (home-page "https://github.com/haskell-crypto/cryptonite-conduit") + (synopsis "Cryptonite bridge for conduit") + (description "This package provides conduit interfaces for some of +cryptonite's implementations of cryptographic primitives.") + (license license:bsd-3))) diff --git a/gnu/packages/haskell-web.scm b/gnu/packages/haskell-web.scm index 9a149187b6..0be9890d23 100644 --- a/gnu/packages/haskell-web.scm +++ b/gnu/packages/haskell-web.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org> +;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1258,7 +1259,7 @@ avoid any issues with characters.") (define-public ghc-yesod-core (package (name "ghc-yesod-core") - (version "1.6.16.1") + (version "1.6.17.2") (source (origin (method url-fetch) @@ -1267,7 +1268,7 @@ avoid any issues with characters.") "yesod-core-" version ".tar.gz")) (sha256 (base32 - "0a0yv7wkwvb0n6iia532y9nzrirgnm09pjc8hpm0lx4ff609pgd2")))) + "0rcfksbxnwcpg5qh9vjkddv39q95mx4nxzgix51bbwa128hhzcwf")))) (build-system haskell-build-system) (inputs `(("ghc-wai" ,ghc-wai) ("ghc-extra" ,ghc-extra) @@ -2024,3 +2025,248 @@ Bower's package manifest file, bower.json.") Authoring and Versioning (WebDAV) extensions to HTTP as well an executable, @command{hdav}, for command-line operation.") (license license:gpl3))) + +(define-public ghc-yesod-test + (package + (name "ghc-yesod-test") + (version "1.6.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "yesod-test/yesod-test-" version ".tar.gz")) + (sha256 + (base32 + "0v25lqq7hgd5lggnyfd9kamkzd4126rd7vlhc131n253n4by4yak")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-aeson" ,ghc-aeson) + ("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-blaze-builder" ,ghc-blaze-builder) + ("ghc-blaze-html" ,ghc-blaze-html) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-conduit" ,ghc-conduit) + ("ghc-cookie" ,ghc-cookie) + ("ghc-hspec-core" ,ghc-hspec-core) + ("ghc-html-conduit" ,ghc-html-conduit) + ("ghc-http-types" ,ghc-http-types) + ("ghc-network" ,ghc-network) + ("ghc-memory" ,ghc-memory) + ("ghc-pretty-show" ,ghc-pretty-show) + ("ghc-semigroups" ,ghc-semigroups) + ("ghc-wai" ,ghc-wai) + ("ghc-wai-extra" ,ghc-wai-extra) + ("ghc-xml-conduit" ,ghc-xml-conduit) + ("ghc-xml-types" ,ghc-xml-types) + ("ghc-yesod-core" ,ghc-yesod-core))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-yesod-form" ,ghc-yesod-form) + ("ghc-unliftio" ,ghc-unliftio) + ("ghc-unliftio-core" ,ghc-unliftio-core))) + (home-page "https://www.yesodweb.com") + (synopsis "Integration testing for WAI/Yesod Applications") + (description "This package's main goal is to encourage integration +and system testing of web applications by making everything easy to +test. Tests are like browser sessions that keep track of cookies and +the last visited page. You can perform assertions on the content of +HTML responses using CSS selectors.") + (license license:expat))) + +(define-public ghc-wai-app-static + (package + (name "ghc-wai-app-static") + (version "3.1.7.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "wai-app-static/wai-app-static-" + version ".tar.gz")) + (sha256 + (base32 + "10k6jb450p89r6dgpnwh428gg0wfw2qbx9n126jkvbchcjr1f4v8")))) + (build-system haskell-build-system) + (inputs + `(("ghc-wai" ,ghc-wai) + ("ghc-http-types" ,ghc-http-types) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-old-locale" ,ghc-old-locale) + ("ghc-file-embed" ,ghc-file-embed) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-memory" ,ghc-memory) + ("ghc-http-date" ,ghc-http-date) + ("ghc-blaze-html" ,ghc-blaze-html) + ("ghc-blaze-markup" ,ghc-blaze-markup) + ("ghc-mime-types" ,ghc-mime-types) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-zlib" ,ghc-zlib) + ("ghc-wai-extra" ,ghc-wai-extra) + ("ghc-optparse-applicative" ,ghc-optparse-applicative) + ("ghc-warp" ,ghc-warp))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-network" ,ghc-network) + ("ghc-temporary" ,ghc-temporary) + ("ghc-mockery" ,ghc-mockery))) + (arguments + `(#:cabal-revision + ("1" "0bkmml30rzifvb7nxddj3pxczk0kniahra19mjn0qrkzy1n5752p"))) + (home-page "https://www.yesodweb.com/book/web-application-interface") + (synopsis "WAI application for static serving") + (description "This package provides a Web Application +Interface (WAI) application for static serving. It also provides some +helper functions and datatypes for use outside of WAI.") + (license license:expat))) + +(define-public ghc-hjsmin + (package + (name "ghc-hjsmin") + (version "0.2.0.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "hjsmin/hjsmin-" version ".tar.gz")) + (sha256 + (base32 + "1r2p5rjdjr25j3w4s57q5hxw2c3ymw12x7ms18yvglnq2ivr9fc1")))) + (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'fix-dist-directory-for-tests + (lambda _ + (substitute* '("test/test-cli.hs" "test/cli/core/runner") + (("dist-newstyle") "dist"))))))) + (inputs + `(("ghc-language-javascript" ,ghc-language-javascript) + ("ghc-optparse-applicative" ,ghc-optparse-applicative))) + (native-inputs + `(("ghc-extra" ,ghc-extra))) + (home-page "https://github.com/erikd/hjsmin") + (synopsis "Haskell implementation of a JavaScript minifier") + (description "This library provides tools reduce the size of +JavaScript files by stripping out extraneous whitespace and other +syntactic elements, without changing the semantics.") + (license license:bsd-3))) + +(define-public ghc-yesod-static + (package + (name "ghc-yesod-static") + (version "1.6.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "yesod-static/yesod-static-" version ".tar.gz")) + (sha256 + (base32 + "1jd0ryfr2vyrwasyvbqmc6j4ngv1lgz78w427f169l7gyl1firxb")))) + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-base64-bytestring" ,ghc-base64-bytestring) + ("ghc-blaze-builder" ,ghc-blaze-builder) + ("ghc-conduit" ,ghc-conduit) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-cryptonite-conduit" ,ghc-cryptonite-conduit) + ("ghc-css-text" ,ghc-css-text) + ("ghc-data-default" ,ghc-data-default) + ("ghc-file-embed" ,ghc-file-embed) + ("ghc-hashable" ,ghc-hashable) + ("ghc-hjsmin" ,ghc-hjsmin) + ("ghc-http-types" ,ghc-http-types) + ("ghc-memory" ,ghc-memory) + ("ghc-mime-types" ,ghc-mime-types) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-wai" ,ghc-wai) + ("ghc-wai-app-static" ,ghc-wai-app-static) + ("ghc-yesod-core" ,ghc-yesod-core))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-yesod-test" ,ghc-yesod-test) + ("ghc-wai-extra" ,ghc-wai-extra) + ("ghc-hunit" ,ghc-hunit) + ("ghc-rio" ,ghc-rio))) + (home-page "https://www.yesodweb.com/") + (synopsis "Static file serving subsite for Yesod") + (description "This package provides a static file serving subsite +for the Yesod Web Framework.") + (license license:expat))) + +(define-public ghc-wai-handler-launch + (package + (name "ghc-wai-handler-launch") + (version "3.0.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "wai-handler-launch/wai-handler-launch-" + version ".tar.gz")) + (sha256 + (base32 + "1ifqgyc1ccig5angh5l1iq7vyms4lvi8wzvysg5dw82nml49n02m")))) + (build-system haskell-build-system) + (inputs + `(("ghc-wai" ,ghc-wai) + ("ghc-warp" ,ghc-warp) + ("ghc-http-types" ,ghc-http-types) + ("ghc-streaming-commons" ,ghc-streaming-commons) + ("ghc-async" ,ghc-async))) + (home-page "https://hackage.haskell.org/package/wai-handler-launch") + (synopsis "Launch a Web application in the default browser") + (description "This package handles cross-platform Web browser +launching and inserts JavaScript code to ping the server. When the +server no longer receives pings, it shuts down.") + (license license:expat))) + +(define-public ghc-wai-cors + (package + (name "ghc-wai-cors") + (version "0.2.7") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "wai-cors/wai-cors-" version ".tar.gz")) + (sha256 + (base32 + "10gv3jjlkcb13031frr818p56v2s0qf6dqjsfpwlhwdxdssvx5r5")))) + (build-system haskell-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; As of version 0.2.7, there are two test suites: "unit-tests" + ;; and "phantomjs". Since we do not have a PhantomJS package, + ;; we only run the unit tests. + (replace 'check + (lambda _ + (invoke "runhaskell" "Setup.hs" "test" "unit-tests")))))) + (inputs + `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-base-unicode-symbols" ,ghc-base-unicode-symbols) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-http-types" ,ghc-http-types) + ("ghc-wai" ,ghc-wai))) + (native-inputs + `(("ghc-network" ,ghc-network) + ("ghc-wai-websockets" ,ghc-wai-websockets) + ("ghc-warp" ,ghc-warp) + ("ghc-websockets" ,ghc-websockets) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-wai-extra" ,ghc-wai-extra) + ("ghc-wai-websockets" ,ghc-wai-websockets) + ("ghc-warp" ,ghc-warp) + ("ghc-websockets" ,ghc-websockets))) + (home-page "https://github.com/larskuhtz/wai-cors") + (synopsis "Cross-Origin Resource Sharing (CORS) for WAI") + (description "This package provides an implemenation of Cross-Origin +Resource Sharing (CORS) for the Web Application Framework (WAI) that +aims to be compliant with @url{https://www.w3.org/TR/cors}.") + (license license:expat))) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 3182dbb317..0a6be77d24 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -74,7 +74,7 @@ (define-public feh (package (name "feh") - (version "3.6") + (version "3.6.1") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -82,7 +82,7 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "1n6gbyzlc3kx2cq9wfz7azn7mrjmcc9pq436k1n4mrh0lik5sxw7")))) + "1a0ygdpyvpcsr0hdi9ai7ycbkgvacq8dpd8cacbppsds5k2xw7lv")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index b86b91364a..06f70f085f 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -59,8 +59,10 @@ #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) + #:use-module (gnu packages gimp) #:use-module (gnu packages gl) #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) #:use-module (gnu packages graphics) #:use-module (gnu packages gtk) #:use-module (gnu packages lua) @@ -76,6 +78,7 @@ #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages sphinx) + #:use-module (gnu packages swig) #:use-module (gnu packages textutils) #:use-module (gnu packages video) #:use-module (gnu packages web) @@ -1610,15 +1613,14 @@ is hereby granted.")))) (define-public libjpeg-turbo (package (name "libjpeg-turbo") - (version "2.0.4") - (replacement libjpeg-turbo/fixed) + (version "2.0.5") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/libjpeg-turbo/" version "/libjpeg-turbo-" version ".tar.gz")) (sha256 (base32 - "01ill8bgjyk582wipx7sh7gj2nidylpbzvwhx0wkcm6mxx3qbp9k")))) + "0pbv6pc97kbj7ib31qcwi7lnmm9xg5y3b11aasmkhfjvf7rgdy0n")))) (build-system cmake-build-system) (native-inputs `(("nasm" ,nasm))) @@ -1668,18 +1670,6 @@ and decompress to 32-bit and big-endian pixel buffers (RGBX, XBGR, etc.).") license:ijg ;the libjpeg library and associated tools license:zlib)))) ;the libjpeg-turbo SIMD extensions -(define libjpeg-turbo/fixed - (package - (inherit libjpeg-turbo) - (version "2.0.5") - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/libjpeg-turbo/" - version "/libjpeg-turbo-" version ".tar.gz")) - (sha256 - (base32 - "0pbv6pc97kbj7ib31qcwi7lnmm9xg5y3b11aasmkhfjvf7rgdy0n")))))) - (define-deprecated libjpeg libjpeg-turbo) (export libjpeg) @@ -2163,6 +2153,66 @@ painting and palette manipulation tools. It also handles JPEG, JPEG2000, GIF, TIFF, WEBP, BMP, PNG, XPM formats.") (license license:gpl3+))) +(define-public mypaint + (package + (name "mypaint") + (version "2.0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mypaint/mypaint/" + "releases/download/v" version "/mypaint-" + version ".tar.xz")) + (sha256 + (base32 + "05mvay73vb9d2sh1ckv4vny45n059dmsps1jcppjizfmrpbkgr7k")))) + (build-system python-build-system) + (arguments + `(#:imported-modules ((guix build glib-or-gtk-build-system) + ,@%python-build-system-modules) + #:modules ((guix build python-build-system) + ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) + (add-after 'install 'wrap-program + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (gdk-pixbuf (assoc-ref inputs "gdk-pixbuf")) + (gtk+ (assoc-ref inputs "gtk+"))) + (wrap-program (string-append out "/bin/mypaint") + `("GI_TYPELIB_PATH" ":" prefix + (,(getenv "GI_TYPELIB_PATH")))) + #t))) + (add-before 'check 'pre-check + (lambda _ + ;; Tests need writing access + (setenv "HOME" "/tmp") + #t))))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("gobject-introspection" ,gobject-introspection) + ("swig" ,swig) + ("gettext" ,gettext-minimal))) + (inputs + `(("gtk+" ,gtk+) + ("gdk-pixbuf" ,gdk-pixbuf+svg) + ("hicolor-icon-theme" ,hicolor-icon-theme) + ("libmypaint" ,libmypaint) + ("mypaint-brushes" ,mypaint-brushes) + ("json-c" ,json-c) + ("lcms" ,lcms) + ("python-numpy" ,python-numpy) + ("python-pycairo" ,python-pycairo) + ("python-pygobject" ,python-pygobject))) + (home-page "http://mypaint.org/") + (synopsis "Fast and simple painting app for artists") + (description + "MyPaint is a simple drawing and painting program that works well with +Wacom-style graphics tablets.") + (license license:gpl2+))) + (define-public phockup (package (name "phockup") diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index ac9fbfea60..48bde160cd 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -31,10 +31,31 @@ #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system cmake) #:use-module (guix build-system trivial) #:use-module (guix build-system minify) #:use-module (guix utils)) +(define-public cjson + (package + (name "cjson") + (version "1.7.14") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/DaveGamble/cJSON") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1rlnailhjm180zb6pc17jwphjwivw8kfpqgixjfgq4iyryq46sah")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DENABLE_CJSON_UTILS=On"))) + (home-page "https://github.com/DaveGamble/cJSON") + (synopsis "JSON parser written in ANSI C") + (description "This library provides a portable embeddable JSON parser.") + (license license:expat))) + (define-public font-mathjax (package (name "font-mathjax") diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index febdb1f4f0..951a2f8554 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -811,7 +811,7 @@ interfaces in the areas of colors, fonts, text, images, keyboard input.") (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) - (home-page "https://cgit.kde.org/kholidays.git") + (home-page "https://invent.kde.org/frameworks/kholidays") (synopsis "Library for regional holiday information") (description "This library provides a C++ API that determines holiday and other special events for a geographical region.") diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm index 4203ffbaec..617937002e 100644 --- a/gnu/packages/kde-internet.scm +++ b/gnu/packages/kde-internet.scm @@ -450,7 +450,7 @@ a full-featured client for BitTorrent.") ("qtbase" ,qtbase))) (arguments `(#:tests? #f)) ;; 2/7 tests fail (due to network issues?) - (home-page "https://cgit.kde.org/libgravatar.git") + (home-page "https://invent.kde.org/pim/libgravatar") (synopsis "Online avatar lookup library") (description "This library retrieves avatar images based on a hash from a person's email address, as well as local caching to avoid @@ -484,7 +484,7 @@ unnecessary network operations.") ("qca" ,qca) ("qtbase" ,qtbase) ("solid" ,solid))) - (home-page "https://cgit.kde.org/libktorrent.git") + (home-page "https://invent.kde.org/network/libktorrent") (synopsis "BitTorrent protocol library for C++ / Qt 5 / KDE Frameworks") (description "The KTorrent library supports connectivity to HTTP and UDP trackers, mainline DHT and the new generation Micro Transport diff --git a/gnu/packages/kde-multimedia.scm b/gnu/packages/kde-multimedia.scm index 23417a982d..cc312b6c40 100644 --- a/gnu/packages/kde-multimedia.scm +++ b/gnu/packages/kde-multimedia.scm @@ -695,7 +695,7 @@ Its features include: ("qtbase" ,qtbase))) (arguments `(#:tests? #f)) ; Most tests require network - (home-page "https://cgit.kde.org/libkcddb.git") + (home-page "https://invent.kde.org/multimedia/libkcddb") (synopsis "CDDB library for KDE Platform (runtime)") (description "A library for retrieving and sending cddb information.") (license ;; GPL for programs, LGPL for libraries, FDL for documentation @@ -722,7 +722,7 @@ Its features include: ("phonon" ,phonon) ("qtbase" ,qtbase) ("solid" ,solid))) - (home-page "https://cgit.kde.org/libkcompactdisc.git/") + (home-page "https://invent.kde.org/multimedia/libkcompactdisc") (synopsis "KDE library for playing & ripping CDs") (description "The KDE Compact Disc library provides an API for applications using the KDE Platform to interface with the CD drives for audio diff --git a/gnu/packages/kde-pim.scm b/gnu/packages/kde-pim.scm index 4ef49743fe..b0a2e565ed 100644 --- a/gnu/packages/kde-pim.scm +++ b/gnu/packages/kde-pim.scm @@ -391,7 +391,7 @@ Akonadi PIM data server. It uses Xapian for indexing and querying.") ("kwallat" ,kwallet) ("libkdepim" ,libkdepim) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/incidenceeditor.git") + (home-page "https://invent.kde.org/pim/incidenceeditor") (synopsis "KDE PIM library for editing incidences") (description "This library provides an incidence editor for KDE PIM.") (license ;; GPL for programs, LGPL for libraries @@ -518,7 +518,7 @@ calendar data.") ("qtbase" ,qtbase) ("syndication" ,syndication))) ;; Note: Some tests take up to 90 sec. - (home-page "https://cgit.kde.org/kblog.git") + (home-page "https://invent.kde.org/pim/kblog") (synopsis "Client-side support library for web application remote blogging APIs") (description "KBlog is a library for calling functions on Blogger 1.0, @@ -634,7 +634,7 @@ functions for accessing calendar data using the kcalcore API.") ("kio" ,kio) ("qtbase" ,qtbase) ("qtxmlpatterns" ,qtxmlpatterns))) - (home-page "https://cgit.kde.org/kdav.git") + (home-page "https://invent.kde.org/frameworks/kdav") (synopsis "DAV protocol implementation with KJobs") (description "This is a DAV protocol implementation with KJobs. Calendars and todos are supported, using either GroupDAV or CalDAV, and contacts are @@ -679,7 +679,7 @@ supported using GroupDAV or CardDAV.") ("prison" ,prison) ("qgpgme" ,qgpgme) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/kdepim-apps-libs.git") + (home-page "https://invent.kde.org/pim/kdepim-apps-libs") (synopsis "KDE PIM mail related libraries and data files") (description "This package provides mail related libraries and data files for KDE PIM.") @@ -761,7 +761,7 @@ for KDE PIM.") "/include/KF5:" (or (getenv "CPLUS_INCLUDE_PATH") ""))) #t))))) - (home-page "https://cgit.kde.org/kdepim-runtime.git") + (home-page "https://invent.kde.org/pim/kdepim-runtime") (synopsis "Runtime components for Akonadi KDE") (description "This package contains Akonadi agents written using KDE Development Platform libraries. Any package that uses Akonadi should probably @@ -816,7 +816,7 @@ package.") ("kxmlgui" ,kxmlgui) ("libkdepim" ,libkdepim) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/eventviews.git") + (home-page "https://invent.kde.org/pim/eventviews") (synopsis "KDE PIM library for creating events") (description "This library provides an event creator for KDE PIM.") (license ;; GPL for programs, LGPL for libraries @@ -1180,7 +1180,7 @@ manager from KDE.") ("qtbase" ,qtbase))) (arguments `(#:tests? #f)) ;; TODO: 4/56 tests fail, even with "offscreen" and dbus - (home-page "https://cgit.kde.org/mailcommon.git") + (home-page "https://invent.kde.org/pim/mailcommon") (synopsis "KDE email utility library") (description "The mail common library provides utility functions for dealing with email.") @@ -1219,7 +1219,7 @@ dealing with email.") ("kxmlgui" ,kxmlgui) ("libkdepim" ,libkdepim) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/mailimporter.git") + (home-page "https://invent.kde.org/pim/mailimporter") (synopsis "KDE mail importer library") (description "This package provides libraries for importing mails other e-mail client programs into KMail and KDE PIM.") @@ -1373,7 +1373,7 @@ using a Qt/KMime C++ API.") "/include/KF5:" (or (getenv "CPLUS_INCLUDE_PATH") ""))) #t))))) - (home-page "https://cgit.kde.org/messagelib.git") + (home-page "https://invent.kde.org/pim/messagelib") (synopsis "KDE PIM messaging libraries") (description "This package provides several libraries for messages, e.g. a message list, a mime tree parse, a template parser and the @@ -1701,7 +1701,7 @@ Virtual Contact File}) files to the KPeople contact management library.") ("qtwebengine" ,qtwebengine))) (arguments `(#:tests? #f)) ;; TODO tests hang - (home-page "https://cgit.kde.org/pimcommon.git") + (home-page "https://invent.kde.org/pim/pimcommon") (synopsis "Common libraries for KDE PIM") (description "This package provides common libraries for KDE PIM.") (license ;; GPL for programs, LGPL for libraries @@ -1782,7 +1782,7 @@ text in the text edit to all kinds of markup, like HTML or BBCODE.") _ prefix) (string-append prefix "${KDE_INSTALL_TARGETS_DEFAULT_ARGS})"))) #t))))) - (home-page "https://cgit.kde.org/ksmtp.git") + (home-page "https://invent.kde.org/pim/ksmtp") (synopsis "Library for sending email through an SMTP server") (description "This library provides an API for handling SMTP services. SMTP (Simple Mail Transfer Protocol) is the most prevalent Internet @@ -1863,7 +1863,7 @@ and allows one to view/extract message formatted text in Rich Text Format.") ("kwallet" ,kwallet) ("kwidgetsaddons" ,kwidgetsaddons) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/libkdepim.git") + (home-page "https://invent.kde.org/pim/libkdepim") (synopsis "Libraries for common KDE PIM apps") (description "This package provided libraries for common KDE PIM apps.") (license ;; GPL for programs, LGPL for libraries @@ -1898,7 +1898,7 @@ and allows one to view/extract message formatted text in Rich Text Format.") ("qtwebengine" ,qtwebengine))) (arguments `(#:tests? #f)) ;; TODO 6/48 tests fail - (home-page "https://cgit.kde.org/libkgapi.git") + (home-page "https://invent.kde.org/pim/libkgapi") (synopsis "Library for accessing various Google services via their public API") (description "@code{LibKGAPI} is a C++ library that implements APIs for @@ -1936,7 +1936,7 @@ various Google services.") ("kpimtextedit" ,kpimtextedit) ("qgpgme" ,qgpgme) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/libkleo.git/") + (home-page "https://invent.kde.org/pim/libkleo") (synopsis "KDE PIM cryptographic library") (description "@code{libkleo} is a library for Kleopatra and other parts of KDE using certificate-based crypto.") @@ -1999,7 +1999,7 @@ KDE using certificate-based crypto.") ((".*sieveeditorgraphicalmodewidgettest\\.cpp.*") "")) #t))))) - (home-page "https://cgit.kde.org/libksieve.git") + (home-page "https://invent.kde.org/pim/libksieve") (synopsis "KDE Sieve library") (description "Sieve is a language that can be used filter emails. KSieve is a Sieve parser and interpreter library for KDE.") diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index c53f6b29c7..e18d521ad2 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -52,7 +52,7 @@ (inputs `(("ki18n" ,ki18n) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/kdecoration.git") + (home-page "https://invent.kde.org/plasma/kdecoration") (synopsis "Plugin based library to create window decorations") (description "KDecoration is a library to create window decorations. These window decorations can be used by for example an X11 based window @@ -119,7 +119,7 @@ manager which re-parents a Client window to a window decoration frame.") ("solid" ,solid) ("wayland" ,wayland) ("xcb-util-keysyms" ,xcb-util-keysyms))) - (home-page "https://cgit.kde.org/kscreenlocker.git") + (home-page "https://invent.kde.org/plasma/kscreenlocker") (synopsis "Screen locking library") (description "@code{kscreenlocker} is a library for creating secure lock screens.") diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index 546d8caa9b..3a15aa6554 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Prafulla Giri <pratheblackdiamond@gmail.com> +;;; Copyright © 2020 Zheng Junjie <873216071@qq.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -130,7 +131,7 @@ This package contains GUI widgets for baloo.") ("kiconthemes" ,kiconthemes) ("knewstuff" ,knewstuff) ("qtbase" ,qtbase))) - (home-page "https://cgit.kde.org/grantleetheme.git") + (home-page "https://invent.kde.org/pim/grantleetheme") (synopsis "Library providing Grantlee theme support") (description "This library provides Grantlee theme support.") (license ;; LGPL for libraries, FDL for documentation @@ -362,7 +363,7 @@ for some KDevelop language plugins (Ruby, PHP, CSS...).") (inputs `(("qtbase" ,qtbase) ("qtsvg" ,qtsvg))) - (home-page "https://cgit.kde.org/kdiagram.git/") + (home-page "https://invent.kde.org/graphics/kdiagram") (synopsis "Libraries for creating business diagrams") (description "This package provides libraries for integrating business diagrams in Qt-based applications. @@ -518,7 +519,7 @@ used in KDE development tools Kompare and KDevelop.") straightforward and cross-platform API for a range of cryptographic features, including SSL/TLS, X.509 certificates, SASL, OpenPGP, S/MIME CMS, and smart cards.") - (license license:lgpl2.1))) + (license license:lgpl2.1+))) (define-public kpmcore (package @@ -765,6 +766,52 @@ Python, PHP, and Perl.") (description "Runtime library for kdegames") (license (list license:gpl2+ license:fdl1.2+)))) +(define-public kdegraphics-mobipocket + (package + (name "kdegraphics-mobipocket") + (version "20.12.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/release-service/" version + "/src/" name "-" version ".tar.xz")) + (sha256 + (base32 "0fm880lp9g60zgrkjyh4jxws6x0s77l9ia4f8pza3w8sxcbbswk5")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("kio" ,kio) + ("qtbase" ,qtbase))) + (home-page "https://apps.kde.org/en/kdegraphics_mobipocket") + (synopsis "KDE thumbnailer for Mobipocket files") + (description "This package provides a KDE plugin that shows thumbnails of +Mobipocket e-books in Dolphin and other KDE apps.") + (license license:gpl2+))) + +(define-public libkexiv2 + (package + (name "libkexiv2") + (version "20.12.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/release-service/" version + "/src/" name "-" version ".tar.xz")) + (sha256 + (base32 "0k0iinf7s8qlk3fwvq7iic1b4zn2gm65rfd58q7d3wb1i1j2hjjk")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules))) + (inputs + `(("exiv2" ,exiv2) + ("qtbase" ,qtbase))) + (home-page "https://invent.kde.org/graphics/libkexiv2") + (synopsis "Manipulate the metadata of images") + (description "Libkexiv2 wraps the Exiv2 library, allowing to manipulate +picture metadata as EXIF/IPTC and XMP.") + (license license:gpl2+))) + (define-public zeroconf-ioslave (package (name "zeroconf-ioslave") diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index eadbaa8f35..f245635f80 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -352,7 +352,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernel. That is, the most recently released major ;; version. -(define-public linux-libre-5.9-version "5.9.12") +(define-public linux-libre-5.9-version "5.9.14") (define deblob-scripts-5.9 (linux-libre-deblob-scripts linux-libre-5.9-version @@ -360,7 +360,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0yb04a4j2wq3mwvks3cj7kcm2pscmfs29lrz3falkxpbvjxbbgq2"))) (define-public linux-libre-5.9-pristine-source (let ((version linux-libre-5.9-version) - (hash (base32 "1gfrn3sz3h4cbsf3r8f9jxja400qsmbrk8sclk4cjx1l5qcmczyr"))) + (hash (base32 "0jbb3rzbkh0l75zq9bnc60w55ryvrvcg7vw85fsbcwfzvi0zpz1r"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.9))) @@ -368,7 +368,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The "longterm" kernels — the older releases with long-term upstream support. ;; Here are the support timelines: ;; <https://www.kernel.org/category/releases.html> -(define-public linux-libre-5.4-version "5.4.81") +(define-public linux-libre-5.4-version "5.4.83") (define deblob-scripts-5.4 (linux-libre-deblob-scripts linux-libre-5.4-version @@ -376,12 +376,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "167zcfkw62pm6nv1xdvvhxw0ca724sywcywnv3z00189f8f8p3vg"))) (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "09w4bpr3v9rzcvxics5wddabplwbpk1mynl45lh9csbjfpjbsw4l"))) + (hash (base32 "1ik14pfgynkn1sjhgyhgmxjvviq0mgvk0ygj76w8mplkpc5rgv5y"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.161") +(define-public linux-libre-4.19-version "4.19.163") (define deblob-scripts-4.19 (linux-libre-deblob-scripts linux-libre-4.19-version @@ -389,12 +389,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf"))) (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "0h9wskmz9wridwnicnjlcmj1112qnlvqk01bhjkxv6b8jsajjh87"))) + (hash (base32 "1z65iwwyx2b01fncygckmhpxirzs52qfqmv3agirn4laxgjw9viy"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.210") +(define-public linux-libre-4.14-version "4.14.212") (define deblob-scripts-4.14 (linux-libre-deblob-scripts linux-libre-4.14-version @@ -402,12 +402,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky"))) (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "067xqi6sgf50p7s3n6y77cgf5bj5062s3bz3kqpp6f9wnk85267r"))) + (hash (base32 "0y8ck8pfxm8862wi4cz8qp9x9b18yl448i8m7bpbphs290nc66qf"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.247") +(define-public linux-libre-4.9-version "4.9.248") (define deblob-scripts-4.9 (linux-libre-deblob-scripts linux-libre-4.9-version @@ -415,12 +415,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2"))) (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "1mngdbsq8pdzd0x9hif4715cc7wzc3ahgp1yrknnqk598q0fnfpp"))) + (hash (base32 "1kzczy0lz3lnjkhvx90dgjmzn3d3y55qxlihiclkr4y9c602d1s6"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.247") +(define-public linux-libre-4.4-version "4.4.248") (define deblob-scripts-4.4 (linux-libre-deblob-scripts linux-libre-4.4-version @@ -428,7 +428,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf"))) (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "1jh7vmyx55krk6y2r9v48liifs5wwkgns3gp8rs5sm4klfm36r2a"))) + (hash (base32 "1z1xbkm0z0v6k3scszii5hi24pn391332g0li93p3n1rnv74jap5"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) @@ -4050,18 +4050,18 @@ thanks to the use of namespaces.") (modify-phases %standard-phases (add-after 'unpack 'patch-references (lambda _ - (substitute* "libexec/cli/build.exec" - (("if ! singularity_which mksquashfs") "if 0") - (("if ! mksquashfs") - (string-append "if ! " (which "mksquashfs")))) - (substitute* (list "libexec/cli/help.exec" - "libexec/bootstrap-scripts/functions" - "libexec/bootstrap-scripts/post.sh" - "libexec/functions") + (substitute* "libexec/cli/build.exec.in" + (("-mksquashfs") (string-append "-" (which "mksquashfs")))) + (substitute* (append + (find-files "libexec" "functions") + (find-files "libexec/bootstrap-scripts" ".*sh$") + (find-files "libexec/cli" ".*exec$")) (("\\| grep ") (string-append "| " (which "grep") " ")) (("egrep ") - (string-append (which "egrep") " "))) + (string-append (which "egrep") " ")) + ((" sed ") + (string-append " " (which "sed") " "))) #t)) (add-after 'install 'set-PATH (lambda* (#:key inputs outputs #:allow-other-keys) @@ -4549,7 +4549,7 @@ arrays when needed.") ;; For tests. ("cmocka" ,cmocka))) (inputs - `(("json-c" ,json-c-0.13) + `(("json-c" ,json-c) ("libaio" ,libaio) ("liburcu" ,liburcu) ("lvm2" ,lvm2) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 6fd4ec5b2d..f77e949fea 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -309,6 +309,45 @@ streams which are similar to string streams.") (define-public ecl-flexi-streams (sbcl-package->ecl-package sbcl-flexi-streams)) +(define-public sbcl-cl-abnf + ;; There are no releases + (let ((commit "ba1fbb104dedbdaddb1ef93d2e4da711bd96cd70") + (revision "1")) + (package + (name "sbcl-cl-abnf") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dimitri/cl-abnf") + (commit commit))) + (file-name (git-file-name "cl-abnf" version)) + (sha256 + (base32 "0f09nsndxa90acm71zd4qdnp40v705a4sqm04mnv9x76h6dlggmz")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("cl-ppcre" ,sbcl-cl-ppcre) + ("esrap" ,sbcl-esrap))) + (arguments + `(#:asd-systems '("abnf"))) + (home-page "https://github.com/dimitri/cl-abnf") + (synopsis "ABNF parser generator for Common Lisp") + (description "This Common Lisp library implements a parser generator for +the ABNF grammar format as described in RFC2234. The generated parser is a +regular expression scanner provided by the cl-ppcre lib, which means that we +can't parse recursive grammar definition. One such definition is the ABNF +definition as given by the RFC. Fortunately, as you have this lib, you most +probably don't need to generate another parser to handle that particular ABNF +grammar.") + (license license:expat)))) + +(define-public cl-abnf + (sbcl-package->cl-source-package sbcl-cl-abnf)) + +(define-public ecl-cl-abnf + (sbcl-package->ecl-package sbcl-cl-abnf)) + (define-public sbcl-cl-ppcre (package (name "sbcl-cl-ppcre") @@ -2725,7 +2764,11 @@ Lisp, featuring: (sbcl-package->cl-source-package sbcl-lparallel)) (define-public ecl-lparallel - (sbcl-package->ecl-package sbcl-lparallel)) + (package + (inherit (sbcl-package->ecl-package sbcl-lparallel)) + (arguments + ;; TODO: Find why the tests get stuck forever; disable them for now. + `(#:tests? #f)))) (define-public sbcl-cl-markup (let ((commit "e0eb7debf4bdff98d1f49d0f811321a6a637b390")) @@ -5638,6 +5681,41 @@ extension-points via the concept of hooks.") (define-public ecl-cl-hooks (sbcl-package->ecl-package sbcl-cl-hooks)) +(define-public sbcl-cl-autowrap + (let ((revision "1") + (commit "ae846d6968fc0d000de0c541638929a157f3009e")) + ;; no taged branches + (package + (name "sbcl-cl-autowrap") + (version (git-version "1.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rpav/cl-autowrap") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1gisldp2zns92kdcaikghm7c38ldy2d884n8bfg0wcjvbz78p3ar")))) + (build-system asdf-build-system/sbcl) + (inputs + `(("alexandria" ,sbcl-alexandria) + ("cffi" ,sbcl-cffi) + ("cl-json" ,sbcl-cl-json) + ("cl-ppcre" ,sbcl-cl-ppcre) + ("defpackage-plus" ,sbcl-defpackage-plus) + ("trivial-features" ,sbcl-trivial-features))) + (home-page "https://github.com/rpav/cl-autowrap") + (synopsis "FFI wrapper generator for Common Lisp") + (description "This is a c2ffi-based wrapper generator for Common Lisp.") + (license license:bsd-2)))) + +(define-public cl-autowrap + (sbcl-package->cl-source-package sbcl-cl-autowrap)) + +(define-public ecl-cl-autowrap + (sbcl-package->ecl-package sbcl-cl-autowrap)) + (define-public sbcl-s-sysdeps ;; No release since 2013. (let ((commit "9aa23bbdceb24bcdbe0e7c39fa1901858f823106") @@ -11234,17 +11312,18 @@ XML to Lisp structures or s-expressions and back.") (define-public sbcl-geco (package (name "sbcl-geco") - (version "2.01a") + (version "2.1.1") (source (origin - (method url-fetch) - (uri (string-append "https://common-lisp.net/project/geco/download/" - "geco-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/gpwwjr/GECO") + (commit (string-append "v" version)))) + (file-name (git-file-name "geco" version)) (sha256 - (base32 "0kk0bzr1019cfmf2b1jl1rk9shv3gx5z1znifxllg9mb98yqsgw0")) - (patches (search-patches "sbcl-geco-fix-organism-class.patch")))) + (base32 "1rc8a4mk40hjx5qy980hjylv6xxqdbq38hg8c4w30y93abfd519s")))) (build-system asdf-build-system/sbcl) - (home-page "https://common-lisp.net/project/geco/") + (home-page "http://hiwaay.net/~gpw/geco/geco.html") (synopsis "Genetic algorithm toolkit for Common Lisp") (description "GECO (Genetic Evolution through Combination of Objects) is an extensible, @@ -12405,3 +12484,44 @@ Service (S3) and CloudFront service from Common Lisp.") (define-public ecl-zs3 (sbcl-package->ecl-package sbcl-zs3)) + +(define-public sbcl-simple-neural-network + (package + (name "sbcl-simple-neural-network") + (version "3.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/glv2/simple-neural-network") + (commit (string-append "v" version)))) + (file-name (git-file-name "simple-neural-network" version)) + (sha256 + (base32 "1jj1c90fr5clwka0jv32hv6xp1bkdlpa6x5jh19an13rhx8ll4zr")))) + (build-system asdf-build-system/sbcl) + (native-inputs + `(("chipz" ,sbcl-chipz) + ("fiveam" ,sbcl-fiveam))) + (inputs + `(("cl-store" ,sbcl-cl-store) + ("lparallel" ,sbcl-lparallel))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'check 'remove-test-data + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (for-each delete-file (find-files out "\\.gz$")))))))) + (synopsis "Simple neural network in Common Lisp") + (description + "@code{simple-neural-network} is a Common Lisp library for creating, +training and using basic neural networks. The networks created by this +library are feedforward neural networks trained using backpropagation.") + (home-page "https://github.com/glv2/simple-neural-network") + (license license:gpl3+))) + +(define-public cl-simple-neural-network + (sbcl-package->cl-source-package sbcl-simple-neural-network)) + +(define-public ecl-simple-neural-network + (sbcl-package->ecl-package sbcl-simple-neural-network)) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index f1d0922ef2..920b5d82ed 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -582,7 +582,7 @@ in terms of new algorithms.") (define-public python-onnx (package (name "python-onnx") - (version "1.7.0") + (version "1.8.0") (source (origin (method url-fetch) @@ -591,7 +591,7 @@ in terms of new algorithms.") ;; to use googletest from Guix and enable tests by default. (patches (search-patches "python-onnx-use-system-googletest.patch")) (sha256 - (base32 "0j6rgfbhsw3a8id8pyg18y93k68lbjbj1kq6qia36h69f6pvlyjy")))) + (base32 "0365zkikq6v3cl5hh2daa5z1alhij8xpn8rmlcny340jrv9pyy2z")))) (build-system python-build-system) (native-inputs `(("cmake" ,cmake) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index edd07065d4..f85713433e 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -39,6 +39,7 @@ ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com> +;;; Copyright © 2020 divoplade <d@divoplade.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -444,7 +445,7 @@ aliasing facilities to work just as they would on normal mail.") (define-public mutt (package (name "mutt") - (version "2.0.2") + (version "2.0.3") (source (origin (method url-fetch) (uri (list @@ -454,7 +455,7 @@ aliasing facilities to work just as they would on normal mail.") version ".tar.gz"))) (sha256 (base32 - "1j0i2jmlk5sc78af9flj3ynj0iiwa8biw7jgf12qm5lppsx1h4j7")) + "1vf1ab3mnx7p4s4n4pssajj211s3zr4730bwgsjx9gxcnyppqclw")) (patches (search-patches "mutt-store-references.patch")))) (build-system gnu-build-system) (inputs @@ -1700,7 +1701,13 @@ delivery.") (("(ZCAT_COMMAND=).*" all var) (string-append var gzip "/bin/zcat\n")) (("# (USE_GNUTLS(|_PC)=.*)" all line) - (string-append line "\n"))) + (string-append line "\n")) + (("# (AUTH_CRAM_MD5=yes)" all line) line) + (("# (AUTH_DOVECOT=yes)" all line) line) + (("# (AUTH_EXTERNAL=yes)" all line) line) + (("# (AUTH_PLAINTEXT=yes)" all line) line) + (("# (AUTH_SPA=yes)" all line) line) + (("# (AUTH_TLS=yes)" all line) line)) ;; This file has hard-coded relative file names for tools despite ;; the zcat configuration above. (substitute* '("src/exigrep.src") @@ -1993,7 +2000,7 @@ hashing scheme (such as scrypt) plug-in for @code{Dovecot}.") (inputs `(("bdb" ,bdb) ("cyrus-sasl" ,cyrus-sasl) - ("openssl" ,openssl-1.0) + ("openssl" ,openssl) ("zlib" ,zlib))) (home-page "https://isync.sourceforge.io/") (synopsis "Mailbox synchronization program") @@ -3746,7 +3753,7 @@ PGP handling, multiple servers, and secure connections.") (define-public imapfilter (package (name "imapfilter") - (version "2.7.4") + (version "2.7.5") (source (origin (method git-fetch) @@ -3755,7 +3762,7 @@ PGP handling, multiple servers, and secure connections.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0nb0ysdp91r6dr3jgx24halbf4f56g4imx9112hkbz1abzgrmxs3")))) + (base32 "0a7f85r3axwclzw1s79zl2l8222nj2gklvvq33w9qv0dz5n71dcx")))) (build-system gnu-build-system) (arguments `(#:tests? #f diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 7d841af8f5..c118e9e25c 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -518,7 +518,7 @@ numbers.") (define-public sleef (package (name "sleef") - (version "3.4.1") + (version "3.5.1") (source (origin (method git-fetch) @@ -527,7 +527,7 @@ numbers.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1gvf7cfvszmgjrsqivwmyy1jnp3hy80dmszxx827lhjz8yqq5019")))) + (base32 "1jybqrl2dvjxzg30xrhh847s375n2jr1pix644wi6hb5wh5mx3f7")))) (build-system cmake-build-system) (arguments '(#:configure-flags (list "-DCMAKE_BUILD_TYPE=Release" @@ -2211,13 +2211,13 @@ ASCII text files using Gmsh's own scripting language.") (define-public veusz (package (name "veusz") - (version "3.2.1") + (version "3.3.1") (source (origin (method url-fetch) (uri (pypi-uri "veusz" version)) (sha256 - (base32 "00vmfpvyd6f33l5awlf02qdik3gmbhzyfizfwwbx7qnam2i9bbwy")))) + (base32 "1q7hi1qwwg4pgiz62isvv1pia85m13bspdpp1q3mrnwl11in0ag0")))) (build-system python-build-system) (arguments `(;; Tests will fail because they depend on optional packages like @@ -4194,7 +4194,7 @@ revised simplex and the branch-and-bound methods.") (define-public dealii (package (name "dealii") - (version "9.1.1") + (version "9.2.0") (source (origin (method url-fetch) @@ -4202,7 +4202,7 @@ revised simplex and the branch-and-bound methods.") "download/v" version "/dealii-" version ".tar.gz")) (sha256 (base32 - "0xhjv0gzswpjbc43xbrpwfc5848g508l01855nszx3g5gwzlhnzw")) + "0fm4xzrnb7dfn4415j24d8v3jkh0lssi86250x2f5wgi83xq4nnh")) (modules '((guix build utils))) (snippet ;; Remove bundled sources: UMFPACK, TBB, muParser, and boost @@ -4987,6 +4987,58 @@ be fed to @command{tcalc} through the command line.") (home-page "https://sites.google.com/site/mohammedisam2000/tcalc") (license license:gpl3+))) +(define-public tiny-bignum + (let ((commit "1d7a1f9b8e77316187a6b3eae8e68d60a6f9a4d4")) + (package + (name "tiny-bignum") + (version (git-version "0" "0" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kokke/tiny-bignum-c") + (commit commit))) + (file-name (git-file-name "tiny-bignum" commit)) + (sha256 + (base32 "0vj71qlhlaa7d92bfar1kwqv6582dqrby8x3kdw0yzh82k2023g6")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (add-after 'unpack 'patch-tests + (lambda _ + (substitute* "scripts/test_rand.py" + (("\t") " ") + (("\" % (\\w+)" _ symbol) (string-append "\" % int(" symbol ")"))) + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "make" "test")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((share (string-append (assoc-ref outputs "out") "/share")) + (doc (string-append (assoc-ref outputs "out") "/doc"))) + (mkdir-p share) + (install-file "bn.c" share) + (install-file "bn.h" share) + (mkdir-p doc) + (install-file "LICENSE" doc) + (install-file "README.md" doc)) + #t))))) + (native-inputs + `(("python" ,python-wrapper))) + (home-page "https://github.com/kokke/tiny-bignum-c") + (synopsis "Small portable multiple-precision unsigned integer arithmetic in C") + (description + "This library provides portable Arbitrary-precision unsigned integer +arithmetic in C, for calculating with large numbers. Basic arithmetic (+, -, +*, /, %) and bitwise operations (&, |, ^. <<, >>) plus increments, decrements +and comparisons are supported.") + (license license:unlicense)))) + (define-public sundials (package (name "sundials") diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm index 6a6cc628ca..426f26d1e1 100644 --- a/gnu/packages/matrix.scm +++ b/gnu/packages/matrix.scm @@ -61,13 +61,13 @@ an LDAP server.") (define-public synapse (package (name "synapse") - (version "1.22.1") + (version "1.24.0") (source (origin (method url-fetch) (uri (pypi-uri "matrix-synapse" version)) (sha256 (base32 - "1pbxdqpfa7wzdz61p6x58x7841vng1g65qayxgcw73bn1shl50jb")))) + "0pmn8aqc7jj2xdrwljjz2vwg58hlyxp9axac471pcmg2vqais5yb")))) (build-system python-build-system) ;; TODO Run tests with ‘PYTHONPATH=. trial3 tests’. (propagated-inputs diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index 0ee4b4c9ee..8cd113a092 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -158,7 +158,7 @@ etc. via a Web interface. Features include: (define-public zabbix-agentd (package (name "zabbix-agentd") - (version "5.2.1") + (version "5.2.2") (source (origin (method url-fetch) @@ -166,7 +166,7 @@ etc. via a Web interface. Features include: "https://cdn.zabbix.com/zabbix/sources/stable/" (version-major+minor version) "/zabbix-" version ".tar.gz")) (sha256 - (base32 "0rz5hg0r2m6qc0dj9b57g96dgilbg8i0rjhm4v9025v51jkby3xq")))) + (base32 "16sqx5hrqkciwnl6xs1b8mwf0fz7x9f4214jhj9s86w0mqiscw8g")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 8a84c8476a..1226b8606f 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -3024,6 +3024,19 @@ asynchronous model using a modern C++ approach.") (base32 "1idd9b4f2pnhcpk1bh030hqg5zq25gkwxd53xi3c0cj242w7sp2j")) (file-name (git-file-name name version)))) + (inputs + `(("openssl" ,openssl))) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-crypto-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "shadowsocks/shell.py" + (("config\\.get\\('libopenssl', None\\)") + (format #f "config.get('libopenssl', ~s)" + (string-append + (assoc-ref inputs "openssl") + "/lib/libssl.so"))))))))) (build-system python-build-system) (synopsis "Fast tunnel proxy that helps you bypass firewalls") (description diff --git a/gnu/packages/nfs.scm b/gnu/packages/nfs.scm index ba50ca5e01..8370107939 100644 --- a/gnu/packages/nfs.scm +++ b/gnu/packages/nfs.scm @@ -117,10 +117,11 @@ `(("keyutils" ,keyutils) ("libevent" ,libevent) ("libnfsidmap" ,libnfsidmap) - ("rpcsvc-proto" ,rpcsvc-proto) ;for 'rpcgen' + ("rpcsvc-proto" ,rpcsvc-proto) ;for 'rpcgen' ("sqlite" ,sqlite) ("lvm2" ,lvm2) - ("util-linux" ,util-linux "lib") + ("util-linux" ,util-linux) ; only for above substitutions + ("util-linux:lib" ,util-linux "lib") ; for libblkid ("mit-krb5" ,mit-krb5) ("libtirpc" ,libtirpc) ("python-wrapper" ,python-wrapper))) ;for the Python based tools diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index f04e39bbd5..66ef4f0905 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -48,14 +48,14 @@ (define-public node (package (name "node") - (version "10.20.0") + (version "10.22.1") (source (origin (method url-fetch) (uri (string-append "https://nodejs.org/dist/v" version "/node-v" version ".tar.xz")) (sha256 (base32 - "0cvjwnl0wkcsyw3kannbdv01s235wrnp11n2s6swzjx95gpichfi")) + "0pr569qiabr4m7k38s7rwi3iyzrc5jmx19z2z0k7n4xfvhjlfzzl")) (modules '((guix build utils))) (snippet `(begin @@ -201,24 +201,6 @@ devices.") (properties '((max-silent-time . 7200) ;2h, needed on ARM (timeout . 21600))))) ;6h -;; TODO: Make this the default node on core-updates. This cannot be done on -;; master since this version of node requires a newer nghttp2 library at link -;; time. -(define-public node-10.22 - (package - (inherit node) - (version "10.22.1") - (source (origin - (inherit (package-source node)) - (uri (string-append "https://nodejs.org/dist/v" version - "/node-v" version ".tar.xz")) - (sha256 - (base32 - "0pr569qiabr4m7k38s7rwi3iyzrc5jmx19z2z0k7n4xfvhjlfzzl")))) - (inputs - (alist-replace "nghttp2" (list nghttp2-1.41 "lib") - (package-inputs node))))) - (define-public libnode (package (inherit node) diff --git a/gnu/packages/ntp.scm b/gnu/packages/ntp.scm index 95d784c62a..6d046eed1b 100644 --- a/gnu/packages/ntp.scm +++ b/gnu/packages/ntp.scm @@ -166,14 +166,14 @@ computers over a network.") (define-public openntpd (package (name "openntpd") - (version "6.2p3") + (version "6.8p1") (source (origin (method url-fetch) (uri (string-append "mirror://openbsd/OpenNTPD/openntpd-" version ".tar.gz")) (sha256 (base32 - "0fn12i4kzsi0zkr4qp3dp9bycmirnfapajqvdfx02zhr4hanj0kv")))) + "0ijsylc7a4jlpxsqa0jq1w1c7333id8pcakzl7a5749ria1xp0l5")))) (build-system gnu-build-system) (arguments '(#:configure-flags `( "--with-privsep-user=ntpd" diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 369e819573..2bfda7307e 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -739,8 +739,7 @@ Emacs.") (define-public ocaml-menhir (package (name "ocaml-menhir") - ;; More recent versions can be built after we have dune >= 2.0 - (version "20190626") + (version "20200211") (source (origin (method git-fetch) @@ -749,19 +748,12 @@ Emacs.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0v8av4pw6rykzb7wx54xhbsx0jhh8xyb4x0k4yrxi0w5ylkck6mb")))) - (build-system ocaml-build-system) + (base32 "019izf51kdc7pzkw68zg8a2alc8lxw1gwdp7in970mr90n16b5zj")))) + (build-system dune-build-system) (inputs `(("ocaml" ,ocaml))) - (native-inputs - `(("ocamlbuild" ,ocamlbuild))) (arguments - `(#:make-flags `("USE_OCAMLFIND=true" - ,(string-append "PREFIX=" (assoc-ref %outputs "out"))) - #:tests? #f ; No check target - #:phases - (modify-phases %standard-phases - (delete 'configure)))) + `(#:tests? #f)) ; No check target (home-page "http://gallium.inria.fr/~fpottier/menhir/") (synopsis "Parser generator") (description "Menhir is a parser generator. It turns high-level grammar diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm index 6e863388d8..fb917882e7 100644 --- a/gnu/packages/openldap.scm +++ b/gnu/packages/openldap.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> @@ -61,25 +61,23 @@ (define-public openldap (package (name "openldap") - (replacement openldap-2.4.50) - (version "2.4.49") + (version "2.4.50") (source (origin - (method url-fetch) - - ;; See <http://www.openldap.org/software/download/> for a list of - ;; mirrors. - (uri (list (string-append - "ftp://mirror.switch.ch/mirror/OpenLDAP/" - "openldap-release/openldap-" version ".tgz") - (string-append - "https://www.openldap.org/software/download/OpenLDAP/" - "openldap-release/openldap-" version ".tgz") - (string-append - "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" - "openldap-release/openldap-" version ".tgz"))) - (sha256 - (base32 - "0vp524rsngdcykf6ki7vprsyg7gj8z7hszg8xwxz50219fa1gcg3")))) + (method url-fetch) + ;; See <http://www.openldap.org/software/download/> for a list of + ;; mirrors. + (uri (list (string-append + "ftp://mirror.switch.ch/mirror/OpenLDAP/" + "openldap-release/openldap-" version ".tgz") + (string-append + "https://www.openldap.org/software/download/OpenLDAP/" + "openldap-release/openldap-" version ".tgz") + (string-append + "ftp://ftp.dti.ad.jp/pub/net/OpenLDAP/" + "openldap-release/openldap-" version ".tgz"))) + (sha256 + (base32 + "1f46nlfwmys110j36sifm7ah8m8f3s10c3vaiikmmigmifapvdaw")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb-5.3) ("cyrus-sasl" ,cyrus-sasl) @@ -127,19 +125,6 @@ (license openldap2.8) (home-page "https://www.openldap.org/"))) -(define openldap-2.4.50 - (package - (inherit openldap) - (version "2.4.50") - (source (origin - (method url-fetch) - (uri (string-append "https://www.openldap.org/software/download/" - "OpenLDAP/openldap-release/openldap-" version - ".tgz")) - (sha256 - (base32 - "1f46nlfwmys110j36sifm7ah8m8f3s10c3vaiikmmigmifapvdaw")))))) - (define-public nss-pam-ldapd (package (name "nss-pam-ldapd") diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index df0e5fb07a..f8a3a7771a 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -131,8 +131,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "1.2.0") - (commit "c952a9312a94bb236495ec654bf184685cf9fe79") - (revision 5)) + (commit "799f066768bacb321ebad84c75b2bbfd269e7cd8") + (revision 6)) (package (name "guix") @@ -148,7 +148,7 @@ (commit commit))) (sha256 (base32 - "1k32p37ikwls086mgxjhz9qhrbc7lgvfpbnk0ikfg4p40rxjp4w8")) + "04k8q5yjmxazskl13ap210jki2zh73zlzd0xdx06v08liskgz10q")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -405,7 +405,7 @@ $(prefix)/etc/init.d\n"))) ("glibc-utf8-locales" ,glibc-utf8-locales))) (propagated-inputs - `(("gnutls" ,(if (%current-target-system) gnutls/fixed gnutls)) + `(("gnutls" ,gnutls) ;; Avahi requires "glib" which doesn't cross-compile yet. ,@(if (%current-target-system) '() @@ -1026,8 +1026,8 @@ environments.") (license (list license:gpl3+ license:agpl3+ license:silofl1.1)))) (define-public guix-build-coordinator - (let ((commit "49c0596c6d5589f0e46268c9b28e7e31932a7964") - (revision "9")) + (let ((commit "79e28fbfd7298eecd754f75170c09c59c0943f67") + (revision "10")) (package (name "guix-build-coordinator") (version (git-version "0" revision commit)) @@ -1038,7 +1038,7 @@ environments.") (commit commit))) (sha256 (base32 - "16mdf4fw83ni5qwx48f8z4p8fwln4q92nk5fljlx726inyrx451k")) + "02yk56iisfwg8k4l1allxlanisp1cm13v6yifgl90b7msvy7qz3a")) (file-name (string-append name "-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -1097,9 +1097,13 @@ environments.") (inputs `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) ("sqlite" ,sqlite) - ("sqitch" ,sqitch))) + ,@(if (hurd-target?) + '() + `(("sqitch" ,sqitch))))) (propagated-inputs - `(("guile-fibers" ,guile-fibers) + `(,@(if (hurd-target?) + '() + `(("guile-fibers" ,guile-fibers))) ("guile-prometheus" ,guile-prometheus) ("guile-gcrypt" ,guile-gcrypt) ("guile-json" ,guile-json-4) diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index c1bd212f09..ffad80b1d2 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -307,15 +307,19 @@ applications, there is xclip integration." ) (define-public yapet (package (name "yapet") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) (uri (string-append "https://yapet.guengel.ch/downloads/yapet-" version ".tar.xz")) (sha256 - (base32 "0b1v0whf70dfjzlwqwwvfv526s828skjvm4xvwly3vcvcmpz59sh")))) + (base32 "0hpibsdry259cmvps35isr6jn9cd9fsk3r1h0ppjx9zxfrpqwldg")))) (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list (string-append "--docdir=" (assoc-ref %outputs "out") + "/share/doc",name "-" ,version)))) (inputs `(("argon2" ,argon2) ("ncurses" ,ncurses) diff --git a/gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch b/gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch deleted file mode 100644 index 1518df067f..0000000000 --- a/gnu/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch +++ /dev/null @@ -1,68 +0,0 @@ -See: https://bugs.gentoo.org/708350 -Author: Patrick McLean <patrick.mclean@sony.com> -Date: 2020-02-06 23:06:22 +0000 -diff --git a/coreutils/date.c b/coreutils/date.c -index 3414d38ae..4ade6abb4 100644 ---- a/coreutils/date.c -+++ b/coreutils/date.c -@@ -279,6 +279,9 @@ int date_main(int argc UNUSED_PARAM, char **argv) - time(&ts.tv_sec); - #endif - } -+#if !ENABLE_FEATURE_DATE_NANO -+ ts.tv_nsec = 0; -+#endif - localtime_r(&ts.tv_sec, &tm_time); - - /* If date string is given, update tm_time, and maybe set date */ -@@ -301,9 +304,10 @@ int date_main(int argc UNUSED_PARAM, char **argv) - if (date_str[0] != '@') - tm_time.tm_isdst = -1; - ts.tv_sec = validate_tm_time(date_str, &tm_time); -+ ts.tv_nsec = 0; - - /* if setting time, set it */ -- if ((opt & OPT_SET) && stime(&ts.tv_sec) < 0) { -+ if ((opt & OPT_SET) && clock_settime(CLOCK_REALTIME, &ts) < 0) { - bb_perror_msg("can't set date"); - } - } -diff --git a/libbb/missing_syscalls.c b/libbb/missing_syscalls.c -index 87cf59b3d..dc40d9155 100644 ---- a/libbb/missing_syscalls.c -+++ b/libbb/missing_syscalls.c -@@ -15,14 +15,6 @@ pid_t getsid(pid_t pid) - return syscall(__NR_getsid, pid); - } - --int stime(const time_t *t) --{ -- struct timeval tv; -- tv.tv_sec = *t; -- tv.tv_usec = 0; -- return settimeofday(&tv, NULL); --} -- - int sethostname(const char *name, size_t len) - { - return syscall(__NR_sethostname, name, len); -diff --git a/util-linux/rdate.c b/util-linux/rdate.c -index 70f829e7f..878375d78 100644 ---- a/util-linux/rdate.c -+++ b/util-linux/rdate.c -@@ -95,9 +95,13 @@ int rdate_main(int argc UNUSED_PARAM, char **argv) - if (!(flags & 2)) { /* no -p (-s may be present) */ - if (time(NULL) == remote_time) - bb_error_msg("current time matches remote time"); -- else -- if (stime(&remote_time) < 0) -+ else { -+ struct timespec ts; -+ ts.tv_sec = remote_time; -+ ts.tv_nsec = 0; -+ if (clock_settime(CLOCK_REALTIME, &ts) < 0) - bb_perror_msg_and_die("can't set time of day"); -+ } - } - - if (flags != 1) /* not lone -s */ diff --git a/gnu/packages/patches/ghostscript-CVE-2020-15900.patch b/gnu/packages/patches/ghostscript-CVE-2020-15900.patch new file mode 100644 index 0000000000..b6658d7c7f --- /dev/null +++ b/gnu/packages/patches/ghostscript-CVE-2020-15900.patch @@ -0,0 +1,36 @@ +Fix CVE-2020-15900. + +https://cve.circl.lu/cve/CVE-2020-15900 +https://artifex.com/security-advisories/CVE-2020-15900 + +Taken from upstream: +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=5d499272b95a6b890a1397e11d20937de000d31b + +diff --git a/psi/zstring.c b/psi/zstring.c +--- a/psi/zstring.c ++++ b/psi/zstring.c +@@ -142,13 +142,18 @@ search_impl(i_ctx_t *i_ctx_p, bool forward) + return 0; + found: + op->tas.type_attrs = op1->tas.type_attrs; +- op->value.bytes = ptr; +- r_set_size(op, size); ++ op->value.bytes = ptr; /* match */ ++ op->tas.rsize = size; /* match */ + push(2); +- op[-1] = *op1; +- r_set_size(op - 1, ptr - op[-1].value.bytes); +- op1->value.bytes = ptr + size; +- r_set_size(op1, count + (!forward ? (size - 1) : 0)); ++ op[-1] = *op1; /* pre */ ++ op[-3].value.bytes = ptr + size; /* post */ ++ if (forward) { ++ op[-1].tas.rsize = ptr - op[-1].value.bytes; /* pre */ ++ op[-3].tas.rsize = count; /* post */ ++ } else { ++ op[-1].tas.rsize = count; /* pre */ ++ op[-3].tas.rsize -= count + size; /* post */ ++ } + make_true(op); + return 0; + } diff --git a/gnu/packages/patches/ghostscript-freetype-compat.patch b/gnu/packages/patches/ghostscript-freetype-compat.patch new file mode 100644 index 0000000000..cc225b5ad6 --- /dev/null +++ b/gnu/packages/patches/ghostscript-freetype-compat.patch @@ -0,0 +1,35 @@ +Fix build with FreeType 2.10.3 and newer. + +Taken from upstream: +https://git.ghostscript.com/?p=ghostpdl.git;a=commitdiff;h=41ef9a0bc36b9db7115fbe9623f989bfb47bbade + +diff --git a/base/fapi_ft.c b/base/fapi_ft.c +--- a/base/fapi_ft.c ++++ b/base/fapi_ft.c +@@ -125,7 +125,7 @@ static void + delete_inc_int_info(gs_fapi_server * a_server, + FT_IncrementalRec * a_inc_int_info); + +-FT_CALLBACK_DEF(void *) ++static void * + FF_alloc(FT_Memory memory, long size) + { + gs_memory_t *mem = (gs_memory_t *) memory->user; +@@ -133,7 +133,7 @@ FF_alloc(FT_Memory memory, long size) + return (gs_malloc(mem, size, 1, "FF_alloc")); + } + +-FT_CALLBACK_DEF(void *) ++static void * + FF_realloc(FT_Memory memory, long cur_size, long new_size, void *block) + { + gs_memory_t *mem = (gs_memory_t *) memory->user; +@@ -153,7 +153,7 @@ FT_CALLBACK_DEF(void *) + return (tmp); + } + +-FT_CALLBACK_DEF(void) ++static void + FF_free(FT_Memory memory, void *block) + { + gs_memory_t *mem = (gs_memory_t *) memory->user; diff --git a/gnu/packages/patches/hplip-fix-bug-1898438.patch b/gnu/packages/patches/hplip-fix-bug-1898438.patch deleted file mode 100644 index 7c095f9b2a..0000000000 --- a/gnu/packages/patches/hplip-fix-bug-1898438.patch +++ /dev/null @@ -1,19 +0,0 @@ -From: Tobias Geerinckx-Rice <me@tobias.gr> -Date: Sun, 04 Oct 2020 13:28:49 +0200 -Subject: [PATCH] gnu: hplip: Fix non-network builds (bug #1898438) - -Reported as <https://bugs.launchpad.net/hplip/+bug/1898438>. - -diff -Naur a/scan/sane/hpaio.c b/scan/sane/hpaio.c ---- a/scan/sane/hpaio.c 1970-01-01 01:00:01.000000000 +0100 -+++ b/scan/sane/hpaio.c 2020-10-04 13:26:34.665244052 +0200 -@@ -36,7 +36,9 @@ - #include <string.h> - #include <cups/cups.h> - #include "hpmud.h" -+#ifdef HAVE_LIBNETSNMP - #include "avahiDiscovery.h" -+#endif - #include "hp_ipp.h" - #include "soap.h" - #include "soapht.h" diff --git a/gnu/packages/patches/knot-resolver-fix-map-command-on-32-bit.patch b/gnu/packages/patches/knot-resolver-fix-map-command-on-32-bit.patch deleted file mode 100644 index 02c0fbcb70..0000000000 --- a/gnu/packages/patches/knot-resolver-fix-map-command-on-32-bit.patch +++ /dev/null @@ -1,146 +0,0 @@ -commit e01979620025666633250b3e2d545fe59c629f73 -Author: Vladimír Čunát <vladimir.cunat@nic.cz> -Date: Fri Nov 13 14:16:32 2020 +0100 - - fix map() command on 32-bit platforms; regressed in 5.2.0 - - LuaJIT FFI was using opendir() (etc.) variants with 32-bit inodes - but the C parts was using them as 64-bit inode variants. - Consequently the `struct dirent` layout didn't match and we were getting - filenames shifted by eight bytes. - - Now the whole dir-listing lua function is written in C. - -diff --git a/.luacheckrc b/.luacheckrc -index 0cf0b884..67bc18f6 100644 ---- a/.luacheckrc -+++ b/.luacheckrc -@@ -20,6 +20,7 @@ new_read_globals = { - 'user', - 'verbose', - 'worker', -+ 'kluautil_list_dir', - -- Sandbox declarations - 'kB', - 'MB', -diff --git a/NEWS b/NEWS -index 2eae3082..9d8cde99 100644 ---- a/NEWS -+++ b/NEWS -@@ -1,6 +1,10 @@ - Knot Resolver X.Y.X (yyyy-mm-dd) - ================================ - -+Bugfixes -+-------- -+- fix map() command on 32-bit platforms; regressed in 5.2.0 (!1093) -+ - - Knot Resolver 5.2.0 (2020-11-11) - ================================ -diff --git a/daemon/bindings/impl.c b/daemon/bindings/impl.c -index d10f4525..d9ad0774 100644 ---- a/daemon/bindings/impl.c -+++ b/daemon/bindings/impl.c -@@ -2,6 +2,7 @@ - * SPDX-License-Identifier: GPL-3.0-or-later - */ - -+#include <dirent.h> - #include <lua.h> - #include <lauxlib.h> - #include <string.h> -@@ -29,6 +30,29 @@ const char * lua_table_checkindices(lua_State *L, const char *keys[]) - return NULL; - } - -+/** Return table listing filenames in a given directory (ls -A). */ -+static int kluautil_list_dir(lua_State *L) -+{ -+ lua_newtable(L); // empty table even on errors -+ -+ const char *path = lua_tolstring(L, 1, NULL); -+ if (!path) return 1; -+ DIR *dir = opendir(path); -+ if (!dir) return 1; -+ -+ struct dirent *entry; -+ int lua_i = 1; -+ while ((entry = readdir(dir)) != NULL) { -+ if (strcmp(entry->d_name, ".") && strcmp(entry->d_name, "..")) { -+ lua_pushstring(L, entry->d_name); -+ lua_rawseti(L, -2, lua_i++); -+ } -+ } -+ -+ closedir(dir); -+ return 1; -+} -+ - - /* Each of these just creates the correspondingly named lua table of functions. */ - int kr_bindings_cache (lua_State *L); /* ./cache.c */ -@@ -44,6 +68,9 @@ void kr_bindings_register(lua_State *L) - kr_bindings_modules(L); - kr_bindings_net(L); - kr_bindings_worker(L); -+ -+ /* Finally some lua utils *written in C*, not really a binding. */ -+ lua_register(L, "kluautil_list_dir", kluautil_list_dir); - } - - void lua_error_p(lua_State *L, const char *fmt, ...) -diff --git a/daemon/lua/kluautil.lua b/daemon/lua/kluautil.lua -index 57912e7b..e73e952c 100644 ---- a/daemon/lua/kluautil.lua -+++ b/daemon/lua/kluautil.lua -@@ -1,6 +1,5 @@ - -- SPDX-License-Identifier: GPL-3.0-or-later - --local ffi = require('ffi') - local kluautil = {} - - -- Get length of table -@@ -28,14 +27,6 @@ function kluautil.kr_table_unpack(tab) - return unpack(tab, 1, tab.n) - end - --ffi.cdef([[ -- typedef struct __dirstream DIR; -- DIR *opendir(const char *name); -- struct dirent *readdir(DIR *dirp); -- int closedir(DIR *dirp); -- char *strerror(int errnum); --]]) -- - -- Fetch over HTTPS - function kluautil.kr_https_fetch(url, out_file, ca_file) - local http_ok, http_request = pcall(require, 'http.request') -@@ -88,26 +79,6 @@ function kluautil.kr_https_fetch(url, out_file, ca_file) - return true - end - ---- List directory --function kluautil.list_dir (path) -- local results = {} -- local dir = ffi.C.opendir(path) -- if dir == nil then -- return results -- end -- -- local entry = ffi.C.readdir(dir) -- while entry ~= nil do -- local entry_name = ffi.string(ffi.C.kr_dirent_name(entry)) -- if entry_name ~= '.' and entry_name ~= '..' then -- table.insert(results, entry_name) -- end -- entry = ffi.C.readdir(dir) -- end -- -- ffi.C.closedir(dir) -- -- return results --end -+kluautil.list_dir = kluautil_list_dir - - return kluautil diff --git a/gnu/packages/patches/libssh2-CVE-2019-17498.patch b/gnu/packages/patches/libssh2-CVE-2019-17498.patch new file mode 100644 index 0000000000..6f69e562e2 --- /dev/null +++ b/gnu/packages/patches/libssh2-CVE-2019-17498.patch @@ -0,0 +1,126 @@ +https://github.com/libssh2/libssh2/commit/dedcbd106f8e52d5586b0205bc7677e4c9868f9c.patch + +From dedcbd106f8e52d5586b0205bc7677e4c9868f9c Mon Sep 17 00:00:00 2001 +From: Will Cosgrove <will@panic.com> +Date: Fri, 30 Aug 2019 09:57:38 -0700 +Subject: [PATCH] packet.c: improve message parsing (#402) + +* packet.c: improve parsing of packets + +file: packet.c + +notes: +Use _libssh2_get_string API in SSH_MSG_DEBUG/SSH_MSG_DISCONNECT. Additional uint32 bounds check in SSH_MSG_GLOBAL_REQUEST. +--- + src/packet.c | 68 ++++++++++++++++++++++------------------------------ + 1 file changed, 29 insertions(+), 39 deletions(-) + +diff --git a/src/packet.c b/src/packet.c +index 38ab62944..2e01bfc5d 100644 +--- a/src/packet.c ++++ b/src/packet.c +@@ -419,8 +419,8 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + size_t datalen, int macstate) + { + int rc = 0; +- char *message = NULL; +- char *language = NULL; ++ unsigned char *message = NULL; ++ unsigned char *language = NULL; + size_t message_len = 0; + size_t language_len = 0; + LIBSSH2_CHANNEL *channelp = NULL; +@@ -472,33 +472,23 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + + case SSH_MSG_DISCONNECT: + if(datalen >= 5) { +- size_t reason = _libssh2_ntohu32(data + 1); ++ uint32_t reason = 0; ++ struct string_buf buf; ++ buf.data = (unsigned char *)data; ++ buf.dataptr = buf.data; ++ buf.len = datalen; ++ buf.dataptr++; /* advance past type */ + +- if(datalen >= 9) { +- message_len = _libssh2_ntohu32(data + 5); ++ _libssh2_get_u32(&buf, &reason); ++ _libssh2_get_string(&buf, &message, &message_len); ++ _libssh2_get_string(&buf, &language, &language_len); + +- if(message_len < datalen-13) { +- /* 9 = packet_type(1) + reason(4) + message_len(4) */ +- message = (char *) data + 9; +- +- language_len = +- _libssh2_ntohu32(data + 9 + message_len); +- language = (char *) data + 9 + message_len + 4; +- +- if(language_len > (datalen-13-message_len)) { +- /* bad input, clear info */ +- language = message = NULL; +- language_len = message_len = 0; +- } +- } +- else +- /* bad size, clear it */ +- message_len = 0; +- } + if(session->ssh_msg_disconnect) { +- LIBSSH2_DISCONNECT(session, reason, message, +- message_len, language, language_len); ++ LIBSSH2_DISCONNECT(session, reason, (const char *)message, ++ message_len, (const char *)language, ++ language_len); + } ++ + _libssh2_debug(session, LIBSSH2_TRACE_TRANS, + "Disconnect(%d): %s(%s)", reason, + message, language); +@@ -539,24 +529,24 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + int always_display = data[1]; + + if(datalen >= 6) { +- message_len = _libssh2_ntohu32(data + 2); +- +- if(message_len <= (datalen - 10)) { +- /* 6 = packet_type(1) + display(1) + message_len(4) */ +- message = (char *) data + 6; +- language_len = _libssh2_ntohu32(data + 6 + +- message_len); +- +- if(language_len <= (datalen - 10 - message_len)) +- language = (char *) data + 10 + message_len; +- } ++ struct string_buf buf; ++ buf.data = (unsigned char *)data; ++ buf.dataptr = buf.data; ++ buf.len = datalen; ++ buf.dataptr += 2; /* advance past type & always display */ ++ ++ _libssh2_get_string(&buf, &message, &message_len); ++ _libssh2_get_string(&buf, &language, &language_len); + } + + if(session->ssh_msg_debug) { +- LIBSSH2_DEBUG(session, always_display, message, +- message_len, language, language_len); ++ LIBSSH2_DEBUG(session, always_display, ++ (const char *)message, ++ message_len, (const char *)language, ++ language_len); + } + } ++ + /* + * _libssh2_debug will actually truncate this for us so + * that it's not an inordinate about of data +@@ -579,7 +569,7 @@ _libssh2_packet_add(LIBSSH2_SESSION * session, unsigned char *data, + uint32_t len = 0; + unsigned char want_reply = 0; + len = _libssh2_ntohu32(data + 1); +- if(datalen >= (6 + len)) { ++ if((len <= (UINT_MAX - 6)) && (datalen >= (6 + len))) { + want_reply = data[5 + len]; + _libssh2_debug(session, + LIBSSH2_TRACE_CONN, diff --git a/gnu/packages/patches/minimap2-aarch64-support.patch b/gnu/packages/patches/minimap2-aarch64-support.patch new file mode 100644 index 0000000000..95db8579d6 --- /dev/null +++ b/gnu/packages/patches/minimap2-aarch64-support.patch @@ -0,0 +1,52 @@ +This patch should be removed with the next release. There is WIP upstream +support for proper support of more architectures, including aarch64 and powerpc64le. + +diff --git a/Makefile b/Makefile +index ed341f6..94dbd85 100644 +--- a/Makefile ++++ b/Makefile +@@ -6,20 +6,18 @@ PROG= minimap2 + PROG_EXTRA= sdust minimap2-lite + LIBS= -lm -lz -lpthread + +-ifeq ($(arm_neon),) # if arm_neon is not defined +-ifeq ($(sse2only),) # if sse2only is not defined +- OBJS+=ksw2_extz2_sse41.o ksw2_extd2_sse41.o ksw2_exts2_sse41.o ksw2_extz2_sse2.o ksw2_extd2_sse2.o ksw2_exts2_sse2.o ksw2_dispatch.o +-else # if sse2only is defined +- OBJS+=ksw2_extz2_sse.o ksw2_extd2_sse.o ksw2_exts2_sse.o +-endif +-else # if arm_neon is defined ++ifneq ($(arm_neon),) # if arm_neon is defined + OBJS+=ksw2_extz2_neon.o ksw2_extd2_neon.o ksw2_exts2_neon.o +- INCLUDES+=-Isse2neon +-ifeq ($(aarch64),) #if aarch64 is not defined + CFLAGS+=-D_FILE_OFFSET_BITS=64 -mfpu=neon -fsigned-char +-else #if aarch64 is defined ++ INCLUDES+=-Isse2neon ++else ifneq ($(aarch64),) #if aarch64 is defined ++ OBJS+=ksw2_extz2_neon.o ksw2_extd2_neon.o ksw2_exts2_neon.o + CFLAGS+=-D_FILE_OFFSET_BITS=64 -fsigned-char +-endif ++ INCLUDES+=-Isse2neon ++else ifneq ($(sse2only),) # if sse2only is defined ++ OBJS+=ksw2_extz2_sse.o ksw2_extd2_sse.o ksw2_exts2_sse.o ++else # none of the above ++ OBJS+=ksw2_extz2_sse41.o ksw2_extd2_sse41.o ksw2_exts2_sse41.o ksw2_extz2_sse2.o ksw2_extd2_sse2.o ksw2_exts2_sse2.o ksw2_dispatch.o + endif + + .PHONY:all extra clean depend +@@ -46,9 +44,12 @@ sdust:sdust.c kalloc.o kalloc.h kdq.h kvec.h kseq.h ketopt.h sdust.h + + # SSE-specific targets on x86/x86_64 + +-ifeq ($(arm_neon),) # if arm_neon is defined, compile this target with the default setting (i.e. no -msse2) ++ifneq ($(arm_neon),) # if arm_neon is defined, compile this target with the default setting (i.e. no -msse2) ++ksw2_ll_sse.o:ksw2_ll_sse.c ksw2.h kalloc.h ++else ifneq ($(aarch64),) + ksw2_ll_sse.o:ksw2_ll_sse.c ksw2.h kalloc.h +- $(CC) -c $(CFLAGS) -msse2 $(CPPFLAGS) $(INCLUDES) $< -o $@ ++else ++ $(CC) -c $(CFLAGS) -msse2 $(CPPFLAGS) $(INCLUDES) $< -o $@ + endif + + ksw2_extz2_sse41.o:ksw2_extz2_sse.c ksw2.h kalloc.h diff --git a/gnu/packages/patches/pam-mount-luks2-support.patch b/gnu/packages/patches/pam-mount-luks2-support.patch deleted file mode 100644 index b59daf5ce1..0000000000 --- a/gnu/packages/patches/pam-mount-luks2-support.patch +++ /dev/null @@ -1,51 +0,0 @@ -From d4434c05e7c0cf05d87089404cfa2deedc60811a Mon Sep 17 00:00:00 2001 -From: Ingo Franzki <ifranzki@linux.ibm.com> -Date: Mon, 29 Oct 2018 16:47:40 +0100 -Subject: [PATCH] crypto: Add support for LUKS2 - -Cryptsetup version 2.0 added support for LUKS2. -This patch adds support for mounting LUKS2 volumes with -pam_mount. - -Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com> ---- - src/crypto-dmc.c | 10 ++++++++-- - 1 file changed, 8 insertions(+), 2 deletions(-) - -diff --git a/src/crypto-dmc.c b/src/crypto-dmc.c -index d0ab6ca..abd0358 100644 ---- a/src/crypto-dmc.c -+++ b/src/crypto-dmc.c -@@ -21,6 +21,12 @@ - #include "libcryptmount.h" - #include "pam_mount.h" - -+#ifndef CRYPT_LUKS -+ #define CRYPT_LUKS NULL /* Passing NULL to crypt_load will -+ default to LUKS(1) on older -+ libcryptsetup versions. */ -+#endif -+ - /** - * dmc_is_luks - check if @path points to a LUKS volume (cf. normal dm-crypt) - * @path: path to the crypto container -@@ -48,7 +54,7 @@ EXPORT_SYMBOL int ehd_is_luks(const char *path, bool blkdev) - - ret = crypt_init(&cd, device); - if (ret == 0) { -- ret = crypt_load(cd, CRYPT_LUKS1, NULL); -+ ret = crypt_load(cd, CRYPT_LUKS, NULL); - if (ret == -EINVAL) - ret = false; - else if (ret == 0) -@@ -106,7 +112,7 @@ static bool dmc_run(const struct ehd_mount_request *req, - #endif - } - -- ret = crypt_load(cd, CRYPT_LUKS1, NULL); -+ ret = crypt_load(cd, CRYPT_LUKS, NULL); - if (ret == 0) { - ret = crypt_activate_by_passphrase(cd, mt->crypto_name, - CRYPT_ANY_SLOT, req->key_data, req->key_size, flags); --- -2.21.0 diff --git a/gnu/packages/patches/pciutils-hurd-fix.patch b/gnu/packages/patches/pciutils-hurd-fix.patch new file mode 100644 index 0000000000..f1979d4352 --- /dev/null +++ b/gnu/packages/patches/pciutils-hurd-fix.patch @@ -0,0 +1,23 @@ +Fix a build error on GNU/Hurd for pciutils 3.7.0. + +commit 053cf6c8b2acafadf828912828336d90fe9b8696 +Author: Martin Mares <mj@ucw.cz> +Date: Sun May 31 11:53:28 2020 +0200 + + HURD backend should compile again + + Fixes a bug introduced by commit 82c06b47dea5a38075ce9d56f743360bc47b4c78. + +diff --git a/lib/hurd.c b/lib/hurd.c +index 7b3b2ae..ccd92f6 100644 +--- a/lib/hurd.c ++++ b/lib/hurd.c +@@ -307,7 +307,6 @@ hurd_fill_regions(struct pci_dev *d) + d->base_addr[i] |= regions[i].is_64 << 2; + d->base_addr[i] |= regions[i].is_prefetchable << 3; + +- if (flags & PCI_FILL_SIZES) +- d->size[i] = regions[i].size; ++ d->size[i] = regions[i].size; + } + } diff --git a/gnu/packages/patches/python-CVE-2020-26116.patch b/gnu/packages/patches/python-CVE-2020-26116.patch new file mode 100644 index 0000000000..dc0571e964 --- /dev/null +++ b/gnu/packages/patches/python-CVE-2020-26116.patch @@ -0,0 +1,47 @@ +Fix CVE-2020-26116: + +https://cve.circl.lu/cve/CVE-2020-26116 +https://bugs.python.org/issue39603 + +Taken from upstream (sans test and NEWS update): +https://github.com/python/cpython/commit/668d321476d974c4f51476b33aaca870272523bf + +diff --git a/Lib/http/client.py b/Lib/http/client.py +--- a/Lib/http/client.py ++++ b/Lib/http/client.py +@@ -147,6 +147,10 @@ + # _is_allowed_url_pchars_re = re.compile(r"^[/!$&'()*+,;=:@%a-zA-Z0-9._~-]+$") + # We are more lenient for assumed real world compatibility purposes. + ++# These characters are not allowed within HTTP method names ++# to prevent http header injection. ++_contains_disallowed_method_pchar_re = re.compile('[\x00-\x1f]') ++ + # We always set the Content-Length header for these methods because some + # servers will otherwise respond with a 411 + _METHODS_EXPECTING_BODY = {'PATCH', 'POST', 'PUT'} +@@ -1087,6 +1091,8 @@ def putrequest(self, method, url, skip_host=False, + else: + raise CannotSendRequest(self.__state) + ++ self._validate_method(method) ++ + # Save the method for use later in the response phase + self._method = method + +@@ -1177,6 +1183,15 @@ def _encode_request(self, request): + # ASCII also helps prevent CVE-2019-9740. + return request.encode('ascii') + ++ def _validate_method(self, method): ++ """Validate a method name for putrequest.""" ++ # prevent http header injection ++ match = _contains_disallowed_method_pchar_re.search(method) ++ if match: ++ raise ValueError( ++ f"method can't contain control characters. {method!r} " ++ f"(found at least {match.group()!r})") ++ + def _validate_path(self, url): + """Validate a url for putrequest.""" + # Prevent CVE-2019-9740. diff --git a/gnu/packages/patches/renpy-use-system-fribidi.patch b/gnu/packages/patches/renpy-use-system-fribidi.patch new file mode 100644 index 0000000000..1437274bcc --- /dev/null +++ b/gnu/packages/patches/renpy-use-system-fribidi.patch @@ -0,0 +1,52 @@ +See also [Arch] and [Gentoo] for similar patches in other distros. +[Arch] https://github.com/archlinux/svntogit-community/blob/packages/renpy/trunk/renpy-system-fribidi.patch +[Gentoo] https://gitweb.gentoo.org/repo/gentoo.git/tree/games-engines/renpy/files/renpy-7.3.5-use-system-fribidi.patch + +Index: renpy-7.3.5-source/module/renpybidicore.c +=================================================================== +--- renpy-7.3.5-source.orig/module/renpybidicore.c ++++ renpy-7.3.5-source/module/renpybidicore.c +@@ -1,5 +1,5 @@ + #include <Python.h> +-#include <fribidi-src/lib/fribidi.h> ++#include <fribidi.h> + #include <stdlib.h> + + #ifndef alloca +Index: renpy-7.3.5-source/module/setup.py +=================================================================== +--- renpy-7.3.5-source.orig/module/setup.py ++++ renpy-7.3.5-source/module/setup.py +@@ -119,30 +119,13 @@ cython( + sdl + [ png, 'z', 'm' ]) + + FRIBIDI_SOURCES = """ +-fribidi-src/lib/fribidi.c +-fribidi-src/lib/fribidi-arabic.c +-fribidi-src/lib/fribidi-bidi.c +-fribidi-src/lib/fribidi-bidi-types.c +-fribidi-src/lib/fribidi-deprecated.c +-fribidi-src/lib/fribidi-joining.c +-fribidi-src/lib/fribidi-joining-types.c +-fribidi-src/lib/fribidi-mem.c +-fribidi-src/lib/fribidi-mirroring.c +-fribidi-src/lib/fribidi-run.c +-fribidi-src/lib/fribidi-shape.c + renpybidicore.c + """.split() + cython( + "_renpybidi", + FRIBIDI_SOURCES, +- includes=[ +- BASE + "/fribidi-src/", +- BASE + "/fribidi-src/lib/", +- ], +- define_macros=[ +- ("FRIBIDI_ENTRY", ""), +- ("HAVE_CONFIG_H", "1"), +- ]) ++ includes=["/usr/include/fribidi"], ++ libs=["fribidi"]) + + + cython("_renpysteam", language="c++", compile_if=steam_sdk, libs=["steam_api"]) diff --git a/gnu/packages/patches/sbcl-geco-fix-organism-class.patch b/gnu/packages/patches/sbcl-geco-fix-organism-class.patch deleted file mode 100644 index 817596241e..0000000000 --- a/gnu/packages/patches/sbcl-geco-fix-organism-class.patch +++ /dev/null @@ -1,13 +0,0 @@ -Fix the ORGANISM class so that SBCL >= 2.0.9 can compile it without error. - ---- a/classes.lisp 2020-10-28 12:11:10.725659464 +0100 -+++ b/classes.lisp 2020-10-31 17:34:36.822752447 +0100 -@@ -148,7 +148,7 @@ - :accessor score - :initarg :score - :initform 'nil -- :type number) -+ :type (or number null)) - (NORMALIZED-SCORE - :accessor normalized-score - :initarg :normalized-score diff --git a/gnu/packages/pciutils.scm b/gnu/packages/pciutils.scm index a5ed121c85..d7d224b292 100644 --- a/gnu/packages/pciutils.scm +++ b/gnu/packages/pciutils.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2014, 2015, 2017, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> @@ -92,7 +92,15 @@ (replace 'install (lambda* (#:key outputs #:allow-other-keys) ;; Install the commands, library, and .pc files. - (invoke "make" "install" "install-lib")))) + (invoke "make" "install" "install-lib"))) + + ,@(if (hurd-target?) + '((add-after 'unpack 'apply-hurd-patch + (lambda* (#:key inputs #:allow-other-keys) + (let ((patch (assoc-ref inputs "hurd-patch"))) + (invoke "patch" "-p1" "--batch" "-i" + patch))))) + '())) ;; Make sure programs have an RPATH so they can find libpciutils.so. #:make-flags (list (string-append "LDFLAGS=-Wl,-rpath=" @@ -109,6 +117,9 @@ (package-supported-systems kmod)) `(("kmod" ,kmod)) '()) + ,@(if (hurd-target?) + `(("hurd-patch" ,(search-patch "pciutils-hurd-fix.patch"))) + '()) ("zlib" ,zlib))) (home-page "https://mj.ucw.cz/sw/pciutils/") (synopsis "Programs for inspecting and manipulating PCI devices") diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 107f579ad6..9195b8328c 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -4989,7 +4989,7 @@ Some things HTTP Core does do: (define-public python-httpx (package (name "python-httpx") - (version "0.15.4") + (version "0.16.1") (source (origin ;; PyPI tarball does not contain tests. @@ -4999,7 +4999,7 @@ Some things HTTP Core does do: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1qr91xw6jxynvihmw953bi5446ssm9ffmb2c4nhfa77v7883sp21")))) + (base32 "00gmq45fckcqkj910bvd7pyqz1mvgsdvz4s0k7dzbnc5czzq1f4a")))) (build-system python-build-system) (arguments `(#:phases diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d07c91121a..bfe005dc30 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -719,18 +719,6 @@ etc. ") (define-public python2-babel (package-with-python2 python-babel)) -;; Sphinx < 2.0 requires this version. Remove once no longer needed. -(define-public python2-babel-2.6 - (package - (inherit python2-babel) - (version "2.6.0") - (source (origin - (method url-fetch) - (uri (pypi-uri "Babel" version)) - (sha256 - (base32 - "08rxmbx2s4irp0w0gmn498vns5xy0fagm0fg33xa772jiks51flc")))))) - (define-public python2-backport-ssl-match-hostname (package (name "python2-backport-ssl-match-hostname") @@ -2184,14 +2172,14 @@ backported for previous versions of Python from 2.4 to 3.3.") (define-public python-parse (package (name "python-parse") - (version "1.8.4") + (version "1.18.0") (source (origin (method url-fetch) (uri (pypi-uri "parse" version)) (sha256 (base32 - "0f8997xr8nq2nq35iiviq8ningd1zvy59fg503xfpbi2dwhgdkf3")))) + "19063x4xdjpaf7rfxai6jpgm2k4yvkq7wha8aa8cagbjsqr60rli")))) (build-system python-build-system) (arguments `(#:phases @@ -8813,13 +8801,13 @@ third-party code.") (define-public python-llfuse (package (name "python-llfuse") - (version "1.3.6") + (version "1.3.8") (source (origin (method url-fetch) - (uri (pypi-uri "llfuse" version ".tar.bz2")) + (uri (pypi-uri "llfuse" version)) (sha256 (base32 - "1j9fzxpgmb4rxxyl9jcf84zvznhgi3hnh4hg5vb0qaslxkvng8ii")))) + "1g2cdhdqrb6m7655qp61pn61pwj1ql61cdzhr2jvl3w4i8877ddr")))) (build-system python-build-system) (inputs `(("fuse" ,fuse) @@ -8838,22 +8826,6 @@ third-party code.") (strip-python2-variant python-llfuse))) (propagated-inputs `(("python2-contextlib2" ,python2-contextlib2))))) -;; For attic-0.16 -(define-public python-llfuse-0.41 - (package (inherit python-llfuse) - (version "0.41.1") - (source (origin - (method url-fetch) - (uri (string-append - "https://bitbucket.org/nikratio/python-llfuse/downloads/" - "llfuse-" version ".tar.bz2")) - (sha256 - (base32 - "1imlqw9b73086y97izr036f58pgc5akv4ihc2rrf8j5h75jbrlaa")))) - ;; Python-LLFUSE < 0.42 includes underscore.js, which is MIT (expat) - ;; licensed. The rest of the package is licensed under LGPL2.0 or later. - (license (list license:expat license:lgpl2.0+)))) - (define-public python-msgpack (package (name "python-msgpack") diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 43704bccae..533b2bdeff 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -370,6 +370,7 @@ data types.") (uri (string-append "https://www.python.org/ftp/python/" version "/Python-" version ".tar.xz")) (patches (search-patches + "python-CVE-2020-26116.patch" "python-3-fix-tests.patch" "python-3.8-fix-tests.patch" "python-3-deterministic-build-info.patch" diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index f48685be22..4c16f84099 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -228,7 +228,7 @@ a focus on simplicity and productivity.") (define-public mruby (package (name "mruby") - (version "2.0.0") + (version "2.1.2") (source (origin (method git-fetch) @@ -238,7 +238,7 @@ a focus on simplicity and productivity.") (file-name (git-file-name name version)) (sha256 (base32 - "1r6w1asjshff43ymdwa6xmrkggza99mi2kw88k7ic6ag2j81hcj5")))) + "0fhfv8pi7i8jn2vgk2n2rjnbnfa12nhj514v8i4k353n7q4pmkh3")))) (build-system gnu-build-system) (arguments `(#:test-target "test" diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 146177f7f3..0f2434d7c5 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2015, 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2019 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> @@ -165,7 +165,8 @@ applications.") version ".tar.gz")) (sha256 (base32 - "1zfsz9nldakfz61d2j70pk29zlmj7w2vv46s9l3x2prhcgaqpyym")))) + "1zfsz9nldakfz61d2j70pk29zlmj7w2vv46s9l3x2prhcgaqpyym")) + (patches (search-patches "libssh2-CVE-2019-17498.patch")))) (build-system gnu-build-system) ;; The installed libssh2.pc file does not include paths to libgcrypt and ;; zlib libraries, so we need to propagate the inputs. diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 314a11e429..c45544f52e 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -503,14 +503,14 @@ Hubert, based on Kaufman and Rousseeuw (1990) \"Finding Groups in Data\".") (define-public r-codetools (package (name "r-codetools") - (version "0.2-16") + (version "0.2-18") (source (origin (method url-fetch) (uri (cran-uri "codetools" version)) (sha256 (base32 - "00bmhzqprqfn3w6ghx7sakai6s7il8gbksfiawj8in5mbhbncypn")))) + "0a2c115glq8jxixwfigrpvjabhxchn9r4mc40y41dg9dg6wsd7hs")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/codetools") (synopsis "Code analysis tools for R") @@ -889,14 +889,18 @@ algorithms.") (define-public r-magrittr (package (name "r-magrittr") - (version "1.5") + (version "2.0.1") (source (origin (method url-fetch) (uri (cran-uri "magrittr" version)) (sha256 - (base32 "1s1ar6rag8m277qcqmdp02gn4awn9bdj9ax0r8s32i59mm1mki05")))) + (base32 "0pxd99fvg406whqsk9wh756rayrwh84xn3h44zmlpcy23kanbhkm")))) (build-system r-build-system) + ;; knitr needs magrittr + #; + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://cran.r-project.org/web/packages/magrittr/index.html") (synopsis "A forward-pipe operator for R") (description @@ -1579,26 +1583,36 @@ R packages that praise their users.") (define-public r-testthat (package (name "r-testthat") - (version "2.3.2") + (version "3.0.0") (source (origin (method url-fetch) (uri (cran-uri "testthat" version)) (sha256 (base32 - "0v70v2fs0f2ir962z9csbjlj8snrq9mbjfyhhb9dhz3zy26qs9hs")))) + "069ixg03r1s85my9dbc9c1261i4gz8fc1mv67whi2l6kpbp4cjzh")))) (build-system r-build-system) (propagated-inputs - `(("r-cli" ,r-cli) + `(("r-brio" ,r-brio) + ("r-callr" ,r-callr) + ("r-cli" ,r-cli) ("r-crayon" ,r-crayon) + ("r-desc" ,r-desc) ("r-digest" ,r-digest) ("r-ellipsis" ,r-ellipsis) ("r-evaluate" ,r-evaluate) + ("r-jsonlite" ,r-jsonlite) + ("r-lifecycle" ,r-lifecycle) ("r-magrittr" ,r-magrittr) ("r-pkgload" ,r-pkgload) ("r-praise" ,r-praise) + ("r-processx" ,r-processx) + ("r-ps" ,r-ps) ("r-r6" ,r-r6) ("r-rlang" ,r-rlang) + ("r-waldo" ,r-waldo) ("r-withr" ,r-withr))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/hadley/testthat") (synopsis "Unit testing for R") (description @@ -1631,13 +1645,13 @@ defined in different packages.") (define-public r-rlang (package (name "r-rlang") - (version "0.4.8") + (version "0.4.9") (source (origin (method url-fetch) (uri (cran-uri "rlang" version)) (sha256 (base32 - "0z8hnwbzpwal66svwp04csjm49vdb9rmwzvn8hyqn93qy6pd9015")))) + "0qix6jigz3qqjx151fpv1k5hq2miqyakvm3jql2qqsyr9d1028yr")))) (build-system r-build-system) (home-page "http://rlang.tidyverse.org") (synopsis "Functions for base types, core R and Tidyverse features") @@ -1717,14 +1731,14 @@ database.") (define-public r-dbplyr (package (name "r-dbplyr") - (version "1.4.4") + (version "2.0.0") (source (origin (method url-fetch) (uri (cran-uri "dbplyr" version)) (sha256 (base32 - "1v0p0557n6bz84nq9jc4182k00mdd1hvz7h4w3bbg81z0fmpj0d8")))) + "0sa0ggirvfn8j9y4cvhj04z93h6979jm4knjzahdvyzyxhv1kmzc")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -1738,7 +1752,8 @@ database.") ("r-r6" ,r-r6) ("r-rlang" ,r-rlang) ("r-tibble" ,r-tibble) - ("r-tidyselect" ,r-tidyselect))) + ("r-tidyselect" ,r-tidyselect) + ("r-withr" ,r-withr))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://github.com/tidyverse/dbplyr") @@ -1835,13 +1850,13 @@ times.") (define-public r-data-table (package (name "r-data-table") - (version "1.13.2") + (version "1.13.4") (source (origin (method url-fetch) (uri (cran-uri "data.table" version)) (sha256 (base32 - "011qsjfybvlpy2sjn9b6hfkcgwx2xrnpxlaqq3y3baps8n1lgnr7")))) + "0jrvl5b8qbzmiymhjgbj4l2nai87ijvv33aw24xvzjx0rkys9dv1")))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -2110,14 +2125,14 @@ limited to R.") (define-public r-backports (package (name "r-backports") - (version "1.1.10") + (version "1.2.0") (source (origin (method url-fetch) (uri (cran-uri "backports" version)) (sha256 (base32 - "1pq16bf40zx441ylmqqqilj3xp39r707h56kwqp5yqklq9yln2z1")))) + "1xgp4i6yxkh2viia96hlf004hn47yrhfivwf8wv63xdldqa8yj9v")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/backports") (synopsis "Reimplementations of functions introduced since R 3.0.0") @@ -2418,14 +2433,16 @@ pure C implementation of the Git core methods.") (define-public r-rstudioapi (package (name "r-rstudioapi") - (version "0.11") + (version "0.13") (source (origin (method url-fetch) (uri (cran-uri "rstudioapi" version)) (sha256 (base32 - "0srh0m4mw4k6s7spwb84l4cx4xnn04cp5cjxi0fwza7bwavpzq0k")))) + "12vdfzzjc6mv4h105l8cp108j3hjk0mqmg23m6mqr3jarfymphxa")))) (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://cran.r-project.org/web/packages/rstudioapi") (synopsis "Safely access the RStudio API") (description @@ -2613,13 +2630,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.10.1.0.0") + (version "0.10.1.2.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "0m0f4viw3r6zfk85b7v7h5dqydhdkjdacpl0bqxkmcndlzq8jnsb")))) + "0nzi6plhdijx3khavmywzw9wbch0hj8kygphw35wdlslm4cnqcj1")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (propagated-inputs @@ -2682,17 +2699,17 @@ encoder/decoder, round-off-error-free sum and cumsum, etc.") (define-public r-rprojroot (package (name "r-rprojroot") - (version "1.3-2") + (version "2.0.2") (source (origin (method url-fetch) (uri (cran-uri "rprojroot" version)) (sha256 (base32 - "12r3fdxmi2pmwn6ic3rhg0b20ll5z420m0d8fziv1n21961namnz")))) + "07wy07yhms8zln9qb0iwx69dq08h4lrdi8kavjcplfxcskq638az")))) (build-system r-build-system) - (propagated-inputs - `(("r-backports" ,r-backports))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/krlmlr/rprojroot") (synopsis "Finding files in project subdirectories") (description @@ -2723,7 +2740,8 @@ certain criterion, e.g., it contains a certain regular file.") ("r-tinytex" ,r-tinytex) ("r-xfun" ,r-xfun) ("r-yaml" ,r-yaml) - ("pandoc" ,pandoc))) + ("pandoc" ,pandoc) + ("pandoc-citeproc" ,pandoc-citeproc))) (native-inputs `(("r-knitr" ,r-knitr))) (home-page "https://rmarkdown.rstudio.com") @@ -4012,13 +4030,13 @@ package instead.") (define-public r-hmisc (package (name "r-hmisc") - (version "4.4-1") + (version "4.4-2") (source (origin (method url-fetch) (uri (cran-uri "Hmisc" version)) (sha256 - (base32 "0mm3r2kv0kgrhg7salk2hw0s37d4i2mghwk0l0qxaw2ny0w8w5z6")))) + (base32 "1j7vkckmahdh90ndcl646sjpxq82y4x55ngxqvkni22mv16wc2j9")))) (properties `((upstream-name . "Hmisc"))) (build-system r-build-system) (native-inputs @@ -4208,14 +4226,14 @@ including: (define-public r-gplots (package (name "r-gplots") - (version "3.1.0") + (version "3.1.1") (source (origin (method url-fetch) (uri (cran-uri "gplots" version)) (sha256 (base32 - "05rislwgaw6v5dmhcwyvc04hi1fgaxrpb61f66kx483px45w6f24")))) + "0f8khaymz383w2ksnk80d4kpnvgmdk37pbycpsnl2vabaz11kbpr")))) (build-system r-build-system) (propagated-inputs `(("r-catools" ,r-catools) @@ -4700,14 +4718,14 @@ models, generalized linear models and model-based clustering.") (define-public r-mclust (package (name "r-mclust") - (version "5.4.6") + (version "5.4.7") (source (origin (method url-fetch) (uri (cran-uri "mclust" version)) (sha256 (base32 - "1z46qask09x3xpv0wzvhn09218vwyrip4f5jrhnx96khpwvczzyl")))) + "08scl72llpinfijiyx14yqvmx8lma9jvh8h92v9ynnzfr9kadxa5")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran) @@ -4919,14 +4937,14 @@ of the points.") (define-public r-fpc (package (name "r-fpc") - (version "2.2-8") + (version "2.2-9") (source (origin (method url-fetch) (uri (cran-uri "fpc" version)) (sha256 (base32 - "07a125pji1flmybn6iidcnizwnqyl6chnrckxa5jp4qxxfdqx658")))) + "0f7sfmpcycr9y7cy5gasyjm2ardxa62kglqms92mcr68jrp01c19")))) (build-system r-build-system) (propagated-inputs `(("r-class" ,r-class) @@ -5144,14 +5162,14 @@ algorithms.") (define-public r-lme4 (package (name "r-lme4") - (version "1.1-25") + (version "1.1-26") (source (origin (method url-fetch) (uri (cran-uri "lme4" version)) (sha256 (base32 - "0vvjac7hnn5lfbyl92zi8qxyc8kkjcwsg94z0p2s2q311in4gnp4")))) + "0ls2krph4pfjn45vf9fn3ln3x98s85wxrkvm5pnxyx55n1pnsjrn")))) (build-system r-build-system) (propagated-inputs `(("r-boot" ,r-boot) @@ -5480,14 +5498,14 @@ is supported.") (define-public r-lubridate (package (name "r-lubridate") - (version "1.7.9") + (version "1.7.9.2") (source (origin (method url-fetch) (uri (cran-uri "lubridate" version)) (sha256 (base32 - "0wnjzvfkrgp2hkr8g5r5vcgcxmsq8bhdmkzkk0m93wr3fgh5xyfb")))) + "0yfvlgksasmia7rsp83lsipjpgvlly5qkldcfxj68lfaz9l2sspf")))) (build-system r-build-system) (propagated-inputs `(("r-generics" ,r-generics) diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index 878cbb669d..749b93e29f 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Tom Zander <tomz@freedommail.ch> +;;; Copyright © 2020 Mark Meyer <mark@ofosos.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -62,6 +63,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) #:use-module (gnu packages qt) #:use-module (gnu packages regex) @@ -1029,3 +1031,42 @@ files. It was originally developed on the Amiga 3000T.") systems that displays its buffer(s) as a hex dump. The user interface is kept similar to vi/ex.") (license license:bsd-3))) + +(define-public virtaal + (package + (name "virtaal") + (version "0.7.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/translate/Virtaal/" + version "/virtaal-" version ".tar.bz2")) + (sha256 + (base32 + "0cyimjp3191qlmw6n0ipqdr9xr0cq4f6dqvz4rl9q31h6l3kywf9")))) + (build-system python-build-system) + (arguments + `(#:python ,python-2 + #:use-setuptools? #f + #:tests? #f ;; Failing tests + #:phases + (modify-phases %standard-phases + (add-before 'build 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; Set data file path to absolute store path. + (substitute* "virtaal/common/pan_app.py" + (("file_discovery\\.get_abs_data_filename.*") + (string-append "os.path.join('" + (assoc-ref outputs "out") + "/share', *path_parts)")))))))) + (inputs + `(("python2-lxml" ,python2-lxml) + ("python2-pygtk" ,python2-pygtk) + ("python2-simplejson" ,python2-simplejson) + ("python2-translate-toolkit" ,python2-translate-toolkit) + ("python2-pycurl" ,python2-pycurl))) + (synopsis "Graphical translation tool") + (description "Virtaal is a powerful yet simple translation tool with an +uncluttered user interface. It supports a multitude of translation formats +provided by the Translate Toolkit, including XLIFF and PO.") + (home-page "https://virtaal.translatehouse.org/") + (license license:gpl2+))) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 28c6d8c392..0d8421a1f9 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -164,21 +164,19 @@ living in the same process.") (define-public gnutls (package (name "gnutls") - ;; XXX Unversion openconnect's "gnutls" input when ungrafting. - (replacement gnutls/fixed) - (version "3.6.12") + (version "3.6.15") (source (origin - (method url-fetch) - (uri + (method url-fetch) ;; Note: Releases are no longer on ftp.gnu.org since the ;; schism (after version 3.1.5). - (string-append "mirror://gnupg/gnutls/v" - (version-major+minor version) - "/gnutls-" version ".tar.xz")) - (patches (search-patches "gnutls-skip-trust-store-test.patch")) - (sha256 - (base32 - "0jvca1qahn9lrwv6f5kfs95icirc15b2a8x9fzczyj996ipg3b5z")))) + (uri (string-append "mirror://gnupg/gnutls/v" + (version-major+minor version) + "/gnutls-" version ".tar.xz")) + (patches (search-patches "gnutls-skip-trust-store-test.patch" + "gnutls-cross.patch")) + (sha256 + (base32 + "0n0m93ymzd0q9hbknxc2ycanz49sqlkyyf73g9fk7n787llc7a0f")))) (build-system gnu-build-system) (arguments `(#:tests? ,(not (or (%current-target-system) @@ -228,7 +226,11 @@ living in the same process.") "debug" "doc")) ;4.1 MiB of man pages (native-inputs - `(,@(if (hurd-target?) '() + `(,@(if (%current-target-system) ;for cross-build + `(("guile" ,guile-3.0)) ;to create .go files + '()) + ,@(if (hurd-target?) + '() `(("net-tools" ,net-tools))) ("pkg-config" ,pkg-config) ("which" ,which) @@ -254,27 +256,6 @@ required structures.") (properties '((ftp-server . "ftp.gnutls.org") (ftp-directory . "/gcrypt/gnutls"))))) -;; Replacement package to fix multiple security vulnerabilities. -(define-public gnutls/fixed - (package - (inherit gnutls) - (version "3.6.15") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnupg/gnutls/v" - (version-major+minor version) - "/gnutls-" version ".tar.xz")) - (patches (search-patches "gnutls-skip-trust-store-test.patch" - "gnutls-cross.patch")) - (sha256 - (base32 - "0n0m93ymzd0q9hbknxc2ycanz49sqlkyyf73g9fk7n787llc7a0f")))) - (native-inputs - `(,@(if (%current-target-system) ;for cross-build - `(("guile" ,guile-3.0)) ;to create .go files - '()) - ,@(package-native-inputs gnutls))))) - (define-public gnutls/guile-2.0 ;; GnuTLS for Guile 2.0. (package/inherit gnutls @@ -287,7 +268,7 @@ required structures.") ;; Authentication of Named Entities. This is required for GNS functionality ;; by GNUnet and gnURL. This is done in an extra package definition ;; to have the choice between GnuTLS with Dane and without Dane. - (package/inherit gnutls/fixed + (package/inherit gnutls (name "gnutls-dane") (inputs `(("unbound" ,unbound) ,@(package-inputs gnutls))))) @@ -306,8 +287,7 @@ required structures.") (define-public openssl (package (name "openssl") - (version "1.1.1f") - (replacement openssl-1.1.1g) + (version "1.1.1i") (source (origin (method url-fetch) (uri (list (string-append "https://www.openssl.org/source/openssl-" @@ -317,10 +297,10 @@ required structures.") (string-append "ftp://ftp.openssl.org/source/old/" (string-trim-right version char-set:letter) "/openssl-" version ".tar.gz"))) + (patches (search-patches "openssl-1.1-c-rehash-in.patch")) (sha256 (base32 - "0d9zv9srjqivs8nn099fpbjv1wyhfcb8lzy491dpmfngdvz6nv0q")) - (patches (search-patches "openssl-1.1-c-rehash-in.patch")))) + "0hjj1phcwkz69lx1lrvr9grhpl4y529mwqycqc1hdla1zqsnmgp8")))) (build-system gnu-build-system) (outputs '("out" "doc" ;6.8 MiB of man3 pages and full HTML documentation @@ -439,24 +419,6 @@ required structures.") (license license:openssl) (home-page "https://www.openssl.org/"))) -(define openssl-1.1.1g - (package - (inherit openssl) - (version "1.1.1g") - (source (origin - (method url-fetch) - (uri (list (string-append "https://www.openssl.org/source/openssl-" - version ".tar.gz") - (string-append "ftp://ftp.openssl.org/source/" - "openssl-" version ".tar.gz") - (string-append "ftp://ftp.openssl.org/source/old/" - (string-trim-right version char-set:letter) - "/openssl-" version ".tar.gz"))) - (patches (search-patches "openssl-1.1-c-rehash-in.patch")) - (sha256 - (base32 - "0ikdcc038i7jk8h7asq5xcn8b1xc2rrbc88yfm4hqbz3y5s4gc6x")))))) - (define-public openssl-1.0 (package (inherit openssl) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 12e708e4e8..8504c8b006 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -31,6 +31,7 @@ ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org> +;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2912,3 +2913,64 @@ defects faster.") (synopsis "Git implementation library") (description "This package provides a Git implementation library.") (license license:asl2.0))) + +(define-public gita + (let ((commit "62eb3d69874f75bdd6f95743e57315bc59890f70") + (revision "1")) + (package + (name "gita") + (version (git-version "0.10.10" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nosarthur/gita") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1jn5wnmjbdrrgz9fif7s81pv3g92q0wjcqy5qxl77kjy7iv0kpfp")))) + (build-system python-build-system) + (native-inputs + `(("git" ,git) ;for tests + ("python-pytest" ,python-pytest))) + (propagated-inputs + `(("python-pyyaml" ,python-pyyaml))) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "tests/test_main.py" + (("'gita\\\\n'") "'source\\n'") + (("'gita'") "'source'")) + (invoke (string-append (assoc-ref inputs "git") "/bin/git") + "init") + (add-installed-pythonpath inputs outputs) + (invoke (string-append (assoc-ref inputs "python-pytest") + "/bin/pytest") + "-vv" "tests"))) + (add-after 'install 'install-shell-completions + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash-completion (string-append out "/etc/bash_completion.d")) + (zsh-completion (string-append out "/etc/zsh/site-functions"))) + (mkdir-p bash-completion) + (copy-file ".gita-completion.bash" + (string-append bash-completion "/gita")) + (mkdir-p zsh-completion) + (copy-file ".gita-completion.zsh" + (string-append zsh-completion "/_gita")))))))) + (home-page "https://github.com/nosarthur/gita") + (synopsis "Command-line tool to manage multiple Git repos") + (description "This package provides a command-line tool to manage +multiple Git repos. + +This tool does two things: +@itemize +@item display the status of multiple Git repos such as branch, modification, +commit message side by side +@item (batch) delegate Git commands/aliases from any working directory +@end itemize + +If several repos are related, it helps to see their status together.") + (license license:expat)))) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4a8ff1d40d..f4c7174c03 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -46,6 +46,7 @@ ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru> +;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2189,14 +2190,14 @@ To load this plugin, specify the following option when starting mpv: (define-public youtube-dl (package (name "youtube-dl") - (version "2020.11.29") + (version "2020.12.12") (source (origin (method url-fetch) (uri (string-append "https://youtube-dl.org/downloads/latest/" "youtube-dl-" version ".tar.gz")) (sha256 (base32 - "10px5wnsjw4lzdh75810q4sjbhnd7cjxwpa3crapd3yj0f3bwa76")))) + "0iv4l78ylzx8q6myv4v7xq6r5y0hacz6l30bqk1szncfikvfc3cf")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion @@ -4637,7 +4638,7 @@ result in several formats: (define-public rav1e (package (name "rav1e") - (version "0.3.3") + (version "0.3.4") (source (origin (method url-fetch) @@ -4646,17 +4647,18 @@ result in several formats: (string-append name "-" version ".tar.gz")) (sha256 (base32 - "053bh8hc6jj81ydq4gcak01b0ady59hvkl7d87im3y8nafg7xzb4")))) + "1mx6jlx2rdhmyh68h9h34kn9ssa7lv0y97j8fd9qm7qhs2q1n0cj")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs - (("rust-aom-sys" ,rust-aom-sys-0.1) + (("rust-aom-sys" ,rust-aom-sys-0.2) ("rust-arbitrary" ,rust-arbitrary-0.2) ("rust-arg-enum-proc-macro" ,rust-arg-enum-proc-macro-0.3) ("rust-arrayvec" ,rust-arrayvec-0.5) ("rust-backtrace" ,rust-backtrace-0.3) ("rust-bitstream-io" ,rust-bitstream-io-0.8) ("rust-byteorder" ,rust-byteorder-1) + ("rust-cc" ,rust-cc-1) ("rust-cfg-if" ,rust-cfg-if-0.1) ("rust-clap" ,rust-clap-2) ("rust-console" ,rust-console-0.11) @@ -4668,6 +4670,7 @@ result in several formats: ("rust-ivf" ,rust-ivf-0.1) ("rust-libc" ,rust-libc-0.2) ("rust-log" ,rust-log-0.4) + ("rust-nasm-rs" ,rust-nasm-rs-0.2) ("rust-noop-proc-macro" ,rust-noop-proc-macro-0.2) ("rust-num-derive" ,rust-num-derive-0.3) ("rust-num-traits" ,rust-num-traits-0.2) @@ -4676,17 +4679,15 @@ result in several formats: ("rust-rand-chacha" ,rust-rand-chacha-0.2) ("rust-rayon" ,rust-rayon-1) ("rust-rust-hawktracer" ,rust-rust-hawktracer-0.7) + ("rust-rustc-version" ,rust-rustc-version-0.2) ("rust-scan-fmt" ,rust-scan-fmt-0.2) ("rust-serde" ,rust-serde-1) ("rust-signal-hook" ,rust-signal-hook-0.1) ("rust-simd-helpers" ,rust-simd-helpers-0.1) ("rust-thiserror" ,rust-thiserror-1) ("rust-toml" ,rust-toml-0.5) - ("rust-y4m" ,rust-y4m-0.5) - ("rust-cc" ,rust-cc-1) - ("rust-nasm-rs" ,rust-nasm-rs-0.1) - ("rust-rustc-version" ,rust-rustc-version-0.2) - ("rust-vergen" ,rust-vergen-3.1)) + ("rust-vergen" ,rust-vergen-3.1) + ("rust-y4m" ,rust-y4m-0.5)) #:cargo-development-inputs (("rust-assert-cmd" ,rust-assert-cmd-1) ("rust-criterion" ,rust-criterion-0.3) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index baf6ca91cf..81d5ab00c9 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -121,36 +121,30 @@ (substitute* "src/testdir/test_swap.vim" (("if !IsRoot\\(\\)") "if 0")) - ;; These tests compares output against a golden ‘…/|b|i|n|/|s|h…’ + ;; These tests check how the terminal looks after executing some + ;; actions. The path of the bash binary is shown, which results in + ;; a difference being detected. Patching the expected result is + ;; non-trivial due to the special format used, so skip the test. + (substitute* "src/testdir/test_terminal.vim" + ((".*Test_terminal_postponed_scrollback.*" line) + (string-append line "return\n"))) + (substitute* "src/testdir/test_popupwin.vim" + ((".*Test_popup_drag_termwin.*" line) + (string-append line "return\n"))) + + ;; This test compares output against a golden ‘…/|b|i|n|/|s|h…’ ;; literal. We need to match that and substitute a similarly ;; ‘spliced’ path to ‘sh’ in the store, truncated to the last - ;; 44 (spliced: 88) or so characters. - ;; Two of the tests we simply skip instead of patching the screen dump. - (substitute* "src/testdir/test_popupwin.vim" - ((".*Test_popupwin_term_0[1|2].*") "")) - ;; We replace the external program call (!) with a scroll-back (<) - ;; symbol and blindly fix some other differences based on error output. + ;; 44 (spliced: 88) characters. (let ((splice (lambda (s separator) (string-join (map string (string->list s)) separator)))) (substitute* "src/testdir/dumps/Test_terminal_from_cmd.dump" (((splice "/bin/sh" "\\|")) (splice (string-take-right (which "sh") 44) "|")) + ;; Blindly fix some other differences based on error output. (("^\\|!") "|<") - (("@37") "")) - (substitute* '("src/testdir/dumps/Test_terminal_scrollback_1.dump" - "src/testdir/dumps/Test_terminal_scrollback_2.dump") - (((splice "/bin/sh" "\\|")) - (splice (string-take-right (which "sh") 61) "|")) - (("^\\|!") "|<") - ((" @55") " @1")) - (substitute* '("src/testdir/dumps/Test_terminal_scrollback_3.dump" - "src/testdir/dumps/Test_popupwin_term_03.dump" - "src/testdir/dumps/Test_popupwin_term_04.dump") - (((splice "/bin/sh" "\\|")) - (splice (string-take-right (which "sh") 62) "|")) - (("^\\|!") "|<") - (("\\]\\| @56") "]| @1"))) + (("@37") ""))) #t))))) (inputs `(("gawk" ,gawk) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 142d5e2225..a05e52f29f 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -2053,14 +2053,14 @@ use with virtualization provisioning tools") (define-public python-transient (package (name "python-transient") - (version "0.11") + (version "0.12") (source (origin (method url-fetch) (uri (pypi-uri "transient" version)) (sha256 (base32 - "1pcyw8j2l354qa6c8gr58xd7fmxcx1svnfyr2rj5nh04ircx3x7l")))) + "148yiqrmcscsi6787y0f27i1y9cf0gcw3mqfv5frhpmsmv62mv5z")))) (build-system python-build-system) (arguments `(#:tests? #f ; Requires behave diff --git a/gnu/packages/visidata.scm b/gnu/packages/visidata.scm index 6ba2939b4f..db126eb4ff 100644 --- a/gnu/packages/visidata.scm +++ b/gnu/packages/visidata.scm @@ -31,14 +31,14 @@ (define-public visidata (package (name "visidata") - (version "2.0.1") + (version "2.1") (source (origin (method url-fetch) (uri (pypi-uri "visidata" version)) (sha256 (base32 - "1p4x9fz59ablyjvp18y50zdsapavhzx7w5hk2v8rsar5ill8947v")))) + "15y6yif0h610ill57ck85l8n5faw849caw6rhf95rd0x67hkikaa")))) (build-system python-build-system) (arguments '(#:phases diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 04c34c3d4d..8628d9f4bb 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com> ;;; Copyright © 2020 Ivan Kozlov <kanichos@yandex.ru> +;;; Copyright © 2020 David Dashyan <mail@davie.li> ;;; ;;; This file is part of GNU Guix. ;;; @@ -263,9 +264,7 @@ the user specifically asks to proxy, so the @dfn{VPN} interface no longer (build-system gnu-build-system) (propagated-inputs `(("libxml2" ,libxml2) - ;; XXX ‘DTLS is insecure in GnuTLS v3.6.3 through v3.6.12.’ - ;; See <https://gitlab.com/gnutls/gnutls/-/issues/960>. - ("gnutls" ,gnutls/fixed) + ("gnutls" ,gnutls) ("zlib" ,zlib))) (inputs `(("lz4" ,lz4) @@ -287,6 +286,34 @@ and probably others.") (license license:lgpl2.1) (home-page "https://www.infradead.org/openconnect/"))) +(define-public openfortivpn + (package + (name "openfortivpn") + (version "1.15.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/adrienverge/openfortivpn") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1qsfgpxg553s8rc9cyrc4k96z0pislxsdxb9wyhp8fdprkak2mw2")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("autotools" ,automake) + ("pkg-config" ,pkg-config))) + (inputs + `(("openssl" ,openssl) + ("ppp" ,ppp))) + (home-page "https://github.com/adrienverge/openfortivpn") + (synopsis "Client for PPP+SSL VPN tunnel services") + (description "Openfortivpn is a client for PPP+SSL VPN tunnel services. It +spawns a pppd process and operates the communication between the gateway and +this process. It is compatible with Fortinet VPNs.") + (license license:gpl3+))) + (define-public openvpn (package (name "openvpn") diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index b101b78008..6f92942f13 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -473,7 +473,7 @@ interface.") (define-public qutebrowser (package (name "qutebrowser") - (version "1.14.0") + (version "1.14.1") (source (origin (method url-fetch) @@ -481,7 +481,7 @@ interface.") "qutebrowser/releases/download/v" version "/" "qutebrowser-" version ".tar.gz")) (sha256 - (base32 "0jip413yvyhdaywz0iadc32aaanjnhbx1d1vwzx3z1xbgc4i9svn")))) + (base32 "15l7jphy1qjsh6y6kd5mgkxsl6ymm9564g1yypa946jbyrgi8k2m")))) (build-system python-build-system) (native-inputs `(("python-attrs" ,python-attrs))) ; for tests @@ -749,7 +749,7 @@ key-bindings and is fully configurable and extensible in Common Lisp.") (define-public bombadillo (package (name "bombadillo") - (version "2.3.1") + (version "2.3.3") (source (origin (method git-fetch) (uri (git-reference @@ -757,7 +757,7 @@ key-bindings and is fully configurable and extensible in Common Lisp.") (commit version))) (sha256 (base32 - "0n0gza9qfx1hxigicyvf6wg1ccc2irvh17yhzpw9gx75ls5ybrjn")) + "02w6h44sxzmk3bkdidl8xla0i9rwwpdqljnvcbydx5kyixycmg0q")) (file-name (git-file-name name version)))) (build-system go-build-system) (arguments diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index ecd04e5bd9..041e24b53a 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -79,8 +79,10 @@ #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) #:use-module (guix build-system go) + #:use-module (guix build-system meson) #:use-module (guix build-system perl) #:use-module (guix build-system python) + #:use-module (guix build-system qt) #:use-module (guix build-system scons) #:use-module (guix build-system trivial) #:use-module (gnu packages) @@ -90,6 +92,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages bison) + #:use-module (gnu packages bittorrent) #:use-module (gnu packages boost) #:use-module (gnu packages check) #:use-module (gnu packages compression) @@ -111,6 +114,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnu-doc) + #:use-module (gnu packages gnunet) #:use-module (gnu packages gnupg) #:use-module (gnu packages golang) #:use-module (gnu packages gperf) @@ -118,6 +122,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) #:use-module (gnu packages hurd) + #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages java) #:use-module (gnu packages jemalloc) @@ -152,6 +157,7 @@ #:use-module (gnu packages qt) #:use-module (gnu packages re2c) #:use-module (gnu packages readline) + #:use-module (gnu packages search) #:use-module (gnu packages sphinx) #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) @@ -894,7 +900,6 @@ data.") (define-public json-c (package - (replacement json-c/fixed) (name "json-c") (version "0.14") (source (origin @@ -904,7 +909,8 @@ data.") version ".tar.gz")) (sha256 (base32 - "0w381krr99q5a2rypx4g437fa7gzgl82i64sgnrs6g5jr44dwxxk")))) + "0w381krr99q5a2rypx4g437fa7gzgl82i64sgnrs6g5jr44dwxxk")) + (patches (search-patches "json-c-CVE-2020-12762.patch")))) (build-system cmake-build-system) (home-page "https://github.com/json-c/json-c/wiki") (synopsis "JSON implementation in C") @@ -915,15 +921,6 @@ parse JSON-formatted strings back into the C representation of JSON objects. It aims to conform to RFC 7159.") (license license:x11))) -(define json-c/fixed - (package - (inherit json-c) - (name "json-c") - (version "0.14") - (source (origin - (inherit (package-source json-c)) - (patches (search-patches "json-c-CVE-2020-12762.patch")))))) - ;; TODO: Remove these old versions when all dependents have been updated. (define-public json-c-0.13 (package @@ -1063,7 +1060,8 @@ instances, while JSON's objects will be mapped to @code{QVariantMap}.") `(("qca" ,qca) ("qtbase" ,qtbase))) (arguments - '(#:phases + '(#:tests? #f ;FIXME: some tests are failing + #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-code (lambda _ @@ -1071,11 +1069,17 @@ instances, while JSON's objects will be mapped to @code{QVariantMap}.") (substitute* "src/src.pro" (("/lib64") "/lib")) #t)) - (delete 'configure) ; no configure script - (delete 'check) ; no test target - (add-before 'build 'qmake - (lambda _ - (let ((qca (assoc-ref %build-inputs "qca"))) + (add-after 'unpack 'adjust-mkspecs-directory + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "src/src.pro" + ;; Do not attempt to install the .prf file into qtbase + ;; "lib/qt5/mkspecs/features", ref <https://bugs.gnu.org/45031>. + (("\\$\\$\\[QMAKE_MKSPECS\\]") + (string-append (assoc-ref outputs "out") "/lib/qt5/mkspecs"))) + #t)) + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((qca (assoc-ref inputs "qca"))) (invoke "qmake" (string-append "PREFIX=" (assoc-ref %outputs "out")) @@ -1472,7 +1476,7 @@ used to validate and fix HTML data.") (define-public esbuild (package (name "esbuild") - (version "0.8.16") + (version "0.8.21") (source (origin (method git-fetch) @@ -1481,7 +1485,7 @@ used to validate and fix HTML data.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1i1fbqzvp31lr9ii2shxxn9hba8zzrn2d4rsd4db86q9xqm7pbiw")) + (base32 "1gkh3ka7gfdqvzymj6vh9w2d0cp7n2vih42y7ghg7y8x6ry4c6mi")) (modules '((guix build utils))) (snippet '(begin @@ -7437,8 +7441,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.") (define-public nghttp2 (package (name "nghttp2") - (version "1.40.0") - (replacement nghttp2-1.41) + (version "1.41.0") (source (origin (method url-fetch) @@ -7447,7 +7450,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.") "nghttp2-" version ".tar.xz")) (sha256 (base32 - "0wwhwv7cvi1vxpdjwvg0kpa4jzhszclpnwrwfcw728zz53a47z09")))) + "1hk77vngjmvvzb5y1gi1aqwf6qywrc7yak08zvzb7x81qs6mphmb")))) (build-system gnu-build-system) (outputs (list "out" "lib")) ; only libnghttp2 @@ -7521,20 +7524,6 @@ compressed JSON header blocks. @end itemize\n") (license license:expat))) -(define-public nghttp2-1.41 ;fixes CVE-2020-11080 - (package - (inherit nghttp2) - (version "1.41.0") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/nghttp2/nghttp2/" - "releases/download/v" version "/" - "nghttp2-" version ".tar.xz")) - (sha256 - (base32 - "1hk77vngjmvvzb5y1gi1aqwf6qywrc7yak08zvzb7x81qs6mphmb")))))) - (define-public hpcguix-web (let ((commit "9de63562b06b4aef3a3afe5ecb18d3c91e57ee74") (revision "5")) @@ -7847,3 +7836,148 @@ solution for any project's interface needs: (description "gmnisrv is a simple Gemini protocol server written in C.") (license (list license:gpl3+ license:bsd-3))))) ;; for ini.c and ini.h + +(define-public libzim + (package + (name "libzim") + (version "6.2.2") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/openzim/libzim") + (commit version))) + (sha256 + (base32 + "0p2317cp19lx0hw9n4fsb3nw2vc4hc1yyi98k3yrs41pkr840kwa")) + (file-name (git-file-name name version)))) + (build-system meson-build-system) + (arguments + ;; TODO: Find out why tests fail. + '(#:tests? #f)) + (inputs + `(("icu4c" ,icu4c) + ("liblzma" ,xz) + ("libuuid" ,util-linux "lib") + ("xapian" ,xapian) + ("zlib" ,zlib) + ("zstd" ,zstd "lib"))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("googletest" ,googletest))) + (home-page "https://wiki.openzim.org/wiki/Main_Page") + (synopsis "Reference implementation of the ZIM specification") + (description "The openZIM project proposes offline storage solutions for +content coming from the Web. The zimlib is the standard implementation of the +ZIM specification. It is a library which implements the read and write method +for ZIM files.") + (license license:gpl2))) + +(define-public kiwix-lib + (package + (name "kiwix-lib") + (version "9.4.0") + (home-page "https://github.com/kiwix/kiwix-lib/") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (sha256 + (base32 + "0nsm4qgl0cb6wv983n0px1kf217k4kykb8q56b8j6ikp061lzamm")) + (file-name (git-file-name name version)))) + (build-system meson-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-paths-and-includes + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CPPFLAGS" (string-append "-I" (assoc-ref inputs "mustache"))) + (substitute* "src/aria2.cpp" + (("ARIA2_CMD \"aria2c\"") + (string-append "ARIA2_CMD \"" + (assoc-ref inputs "aria2") + "/bin/aria2c\""))) + #t))))) + (inputs + `(("aria2" ,aria2) + ("curl" ,curl) + ("icu4c" ,icu4c) + ("libmicrohttpd" ,libmicrohttpd) + ("libzim" ,libzim) + ("pugixml" ,pugixml) + ("xapian" ,xapian) + ("zlib" ,zlib) + ("zstd" ,zstd "lib"))) + (native-inputs + `(("mustache" ,(origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kainjow/Mustache") + ;; XXX: Readme says to use version 3. Can we use 3.2.1? + (commit "v4.1"))) + (file-name (git-file-name "mustache" "4.1")) + (sha256 + (base32 + "0r9rbk6v1wpld2ismfsk2lkhbyv3dkf0p03hkjivbj05qkfhvlbb")))) + ("pkg-config" ,pkg-config))) + (synopsis "Common code base for all Kiwix ports") + (description "The Kiwix library provides the Kiwix software suite core. +It contains the code shared by all Kiwix ports.") + (license license:gpl3))) + +(define-public kiwix-desktop + (package + (name "kiwix-desktop") + (version "2.0.5") + (source (origin + (method url-fetch) + (uri (string-append + "https://download.kiwix.org/release/kiwix-desktop/kiwix-desktop-" + version + ".tar.gz")) + (sha256 + (base32 + "1a9h4qmh6fkfscyp6lax0ri07dvvzw2wp4kr1sm86n0bdk3cwwha")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (invoke "qmake" + (string-append "PREFIX=" + (assoc-ref outputs "out"))))) + (add-before 'configrue 'enable-print-support + (lambda _ + (substitute* "kiwix-desktop.pro" + (("webenginewidgets") "webenginewidgets printsupport")) + #t)) + (add-before 'configure 'substitute-source + ;; Looks like .pro file is missing a feature. + ;; See https://github.com/kiwix/kiwix-desktop/issues/556. + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "kiwix-desktop.pro" + (("webenginewidgets" all) (string-append all " printsupport"))) + #t))))) + (inputs + `(("curl" ,curl) + ("icu4c" ,icu4c) + ("kiwix-lib" ,kiwix-lib) + ("libzim" ,libzim) + ("pugixml" ,pugixml) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtwebchannel" ,qtwebchannel) + ("qtwebengine" ,qtwebengine) + ("xapian" ,xapian) + ("zlib" ,zlib) + ("zstd" ,zstd "lib"))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qmake" ,qtbase))) + (home-page "https://wiki.kiwix.org/wiki/Software") + (synopsis "Viewer and manager of ZIM files") + (description "Kiwix Desktop allows you to enjoy a lot of different content +offline (such as Wikipedia), without any access to Internet.") + (license license:gpl3))) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 653af37de7..6c4f2c6960 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -38,6 +38,9 @@ ;;; Copyright © 2020 EuAndreh <eu@euandre.org> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net> +;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com> +;; Copyright © 2020 Niklas Eklund <niklas.eklund@posteo.net> +;;; Copyright © 2020 Robert Smith <robertsmith@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1557,6 +1560,27 @@ modules for building a Wayland compositor.") Wlroots based compositors.") (license license:expat))) ; MIT license +(define-public wlr-randr + (package + (name "wlr-randr") + (version "0.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emersion/wlr-randr") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10c8zzp78s5bw34vvjhilipa28bsdx3jbyhnxgp8f8kawh3cvgsc")))) + (build-system meson-build-system) + (inputs `(("wayland" ,wayland))) + (native-inputs `(("pkg-config" ,pkg-config))) + (home-page "https://github.com/emersion/wlr-randr") + (synopsis "Utility to manage Wayland compositor outputs") + (description "wlr-randr is a utility to manage outputs of a Wayland compositor.") + (license license:expat))) ; MIT license + (define-public mako (package (name "mako") @@ -1679,6 +1703,7 @@ productive, customizable lisp based systems.") (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (program (string-append out "/bin/stumpwm"))) + (setenv "HOME" "/tmp") (build-program program outputs #:entry-program '((stumpwm:stumpwm) 0) #:dependencies '("stumpwm" "slynk") @@ -2029,6 +2054,52 @@ formatting, RandR and Xinerama support and EWMH compliance without wasting your precious memory.") (license license:x11)))) +(define-public lemonbar-xft + ;; Upstream v2.0 tag is several years behind HEAD + (let ((commit "481e12363e2a0fe0ddd2176a8e003392be90ed02")) + (package + (inherit lemonbar) + (name "lemonbar-xft") + (version (string-append "2.0." (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/drscream/lemonbar-xft") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0588g37h18lv50h7w8vfbwhvc3iajh7sdr53848spaif99nh3mh4")))) + (inputs + `(("freetype" ,freetype) + ("libxft" ,libxft) + ("libx11" ,libx11) + ,@(package-inputs lemonbar))) + (arguments + (substitute-keyword-arguments (package-arguments lemonbar) + ((#:make-flags make-flags) + `(append + ,make-flags + (list (string-append + "CFLAGS=" + (string-join + (list (string-append + "-I" (assoc-ref %build-inputs "freetype") + "/include/freetype2") + (string-append + "-D" "VERSION=" + (format #f "'~s'" ,version)))))))))) + (home-page "https://github.com/drscream/lemonbar-xft") + (synopsis + (string-append + (package-synopsis lemonbar) + " with fontconfig support")) + (description + (string-append + (package-description lemonbar) + "This is a fork of the @code{lemonbar} package that adds fontconfig +support, for easier unicode usage."))))) + (define-public xclickroot (package (name "xclickroot") diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index 7c4148c87f..93f23d6722 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -42,6 +42,7 @@ ;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com> ;;; Copyright © 2020 James Smith <jsubuntuxp@disroot.org> ;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com> +;;; Copyright © 2020 Zheng Junjie <873216071@qq.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2618,3 +2619,43 @@ and execute @file{.desktop} files of the Application type.") "@command{sx} is a simple alternative to both @command{xinit} and @command{startx} for starting an Xorg server.") (license license:x11))) + +(define-public hsetroot + (package + (name "hsetroot") + (version "1.0.5") + (home-page "https://github.com/himdel/hsetroot") + (source (origin + (method git-fetch) + (file-name (git-file-name name version)) + (uri (git-reference + (url home-page) + (commit version))) + (sha256 + (base32 + "1jbk5hlxm48zmjzkaq5946s58rqwg1v1ds2sdyd2ba029hmvr722")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f + #:make-flags + (list + "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'install 'mkdir-install-path + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (mkdir-p (string-append out "/bin")))))))) + (inputs + `(("libx11" ,libx11) + ("imlib2" ,imlib2) + ("libxinerama" ,libxinerama))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Imlib2-based wallpaper changer") + (description + "The @command{hsetroot} command composes wallpapers for X. +This package is the fork of hsetroot by Hyriand.") + (license license:gpl2+))) diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm index 4090372805..dad7c1d03d 100644 --- a/gnu/packages/xfce.scm +++ b/gnu/packages/xfce.scm @@ -38,6 +38,7 @@ #:use-module (gnu packages cdrom) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) + #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gstreamer) @@ -592,11 +593,21 @@ keys for controlling the audio volume.") (inputs `(("xfce4-panel" ,xfce4-panel) ("garcon" ,garcon) + ("gettext" ,gettext-minimal) ("exo" ,exo) ("gtk+" ,gtk+) ("libxfce4ui" ,libxfce4ui))) (arguments - `(#:tests? #f)) ; no tests + `(#:tests? #f ; no tests + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-shell-script + (lambda* (#:key inputs #:allow-other-keys) + (substitute* (string-append "panel-plugin/xfce4-popup-whiskermenu.in") + (("@CMAKE_INSTALL_FULL_BINDIR@") + (string-append (assoc-ref inputs "xfce4-panel") "/bin")) + (("gettext") (which "gettext"))) + #t))))) (home-page "https://goodies.xfce.org/projects/panel-plugins/xfce4-whiskermenu-plugin") (synopsis "Application menu panel plugin for Xfce") (description diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index e64ffb58fc..4e8af397fd 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014, 2015, 2017, 2018, 2020 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org> -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com> @@ -5473,8 +5473,7 @@ draggable titlebars and borders.") (define-public libx11 (package (name "libx11") - (version "1.6.9") - (replacement libx11/fixed) + (version "1.6.10") (source (origin (method url-fetch) @@ -5484,7 +5483,7 @@ draggable titlebars and borders.") ".tar.bz2")) (sha256 (base32 - "1ldyn9c6pyx54sxzaw120n3q42rqi7b503aqmyjky6fn038fiiww")))) + "09k2pqmqbn2m1bpgl7jfxyqxaaxsnzbnp2bp8ycmqldqi5ln4j5g")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;8 MiB of man pages + XML @@ -5512,19 +5511,6 @@ draggable titlebars and borders.") (description "Xorg Core X11 protocol client library.") (license license:x11))) -(define libx11/fixed ; Fixes CVE-2020-14344 - (package - (inherit libx11) - (version "1.6.A") - (source - (origin - (method url-fetch) - (uri (string-append - "mirror://xorg/individual/lib/libX11-1.6.10.tar.bz2")) - (sha256 - (base32 - "09k2pqmqbn2m1bpgl7jfxyqxaaxsnzbnp2bp8ycmqldqi5ln4j5g")))))) - ;; packages of height 5 in the propagated-inputs tree (define-public libxcursor diff --git a/gnu/services/audio.scm b/gnu/services/audio.scm index 627b941871..c60053f33c 100644 --- a/gnu/services/audio.scm +++ b/gnu/services/audio.scm @@ -163,7 +163,11 @@ audio_output { (let ((directory #$(mpd-file-name config ".mpd"))) (mkdir-p directory) - (chown directory (passwd:uid %user) (passwd:gid %user)))))) + (chown directory (passwd:uid %user) (passwd:gid %user)) + + ;; Make /var/run/mpd/USER user-owned as well. + (chown (dirname directory) + (passwd:uid %user) (passwd:gid %user)))))) (define %mpd-accounts diff --git a/gnu/services/avahi.scm b/gnu/services/avahi.scm index 54656708ca..7812191cb2 100644 --- a/gnu/services/avahi.scm +++ b/gnu/services/avahi.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -130,7 +130,7 @@ (list (shepherd-service (documentation "Run the Avahi mDNS/DNS-SD responder.") (provision '(avahi-daemon)) - (requirement '(dbus-system networking)) + (requirement '(user-processes dbus-system networking)) (start #~(make-forkexec-constructor (list #$(file-append avahi "/sbin/avahi-daemon") diff --git a/gnu/services/base.scm b/gnu/services/base.scm index d0d88e18a6..8449d924af 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1568,6 +1568,27 @@ proxy of 'guix-daemon'...~%") (environ environment) #t))))) +(define shepherd-discover-action + ;; Shepherd action to enable or disable substitute servers discovery. + (shepherd-action + (name 'discover) + (documentation + "Enable or disable substitute servers discovery and restart the +'guix-daemon'.") + (procedure #~(lambda* (_ status) + (let ((environment (environ))) + (if (and status + (string=? status "on")) + (begin + (format #t "enable substitute servers discovery~%") + (setenv "discover" "on")) + (begin + (format #t "disable substitute servers discovery~%") + (unsetenv "discover"))) + (action 'guix-daemon 'restart) + (environ environment) + #t))))) + (define (guix-shepherd-service config) "Return a <shepherd-service> for the Guix daemon service with CONFIG." (match-record config <guix-configuration> @@ -1579,7 +1600,8 @@ proxy of 'guix-daemon'...~%") (documentation "Run the Guix daemon.") (provision '(guix-daemon)) (requirement '(user-processes)) - (actions (list shepherd-set-http-proxy-action)) + (actions (list shepherd-set-http-proxy-action + shepherd-discover-action)) (modules '((srfi srfi-1) (ice-9 match) (gnu build shepherd))) @@ -1594,6 +1616,9 @@ proxy of 'guix-daemon'...~%") ;; the 'set-http-proxy' action. (or (getenv "http_proxy") #$http-proxy)) + (define discover? + (or (getenv "discover") #$discover?)) + ;; Start the guix-daemon from a container, when supported, ;; to solve an installation issue. See the comment below for ;; more details. @@ -1608,9 +1633,8 @@ proxy of 'guix-daemon'...~%") #$@(if use-substitutes? '() '("--no-substitutes")) - #$@(if discover? - '("--discover=yes") - '()) + (string-append "--discover=" + (if discover? "yes" "no")) "--substitute-urls" #$(string-join substitute-urls) #$@extra-options @@ -1801,7 +1825,9 @@ raise a deprecation warning if the 'compression-level' field was used." advertise?) (list (shepherd-service (provision '(guix-publish)) - (requirement '(guix-daemon)) + (requirement `(user-processes + guix-daemon + ,@(if advertise? '(avahi-daemon) '()))) (start #~(make-forkexec-constructor (list #$(file-append guix "/bin/guix") "publish" "-u" "guix-publish" diff --git a/gnu/services/cuirass.scm b/gnu/services/cuirass.scm index a50f583807..7706ed41c6 100644 --- a/gnu/services/cuirass.scm +++ b/gnu/services/cuirass.scm @@ -69,6 +69,8 @@ (default "cuirass")) (interval cuirass-configuration-interval ;integer (seconds) (default 60)) + (queue-size cuirass-configuration-queue-size + (default 1)) (database cuirass-configuration-database ;string (file-name) (default "/var/lib/cuirass/cuirass.db")) (port cuirass-configuration-port ;integer (port) @@ -98,6 +100,7 @@ (user (cuirass-configuration-user config)) (group (cuirass-configuration-group config)) (interval (cuirass-configuration-interval config)) + (queue-size (cuirass-configuration-queue-size config)) (database (cuirass-configuration-database config)) (ttl (cuirass-configuration-ttl config)) (port (cuirass-configuration-port config)) @@ -119,6 +122,7 @@ "--database" #$database "--ttl" #$(string-append (number->string ttl) "s") "--interval" #$(number->string interval) + "--queue-size" #$(number->string queue-size) #$@(if queries-log-file (list (string-append "--log-queries=" queries-log-file)) diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index ac68bce8ac..5123a8c441 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -36,8 +36,12 @@ #:use-module (srfi srfi-26) #:use-module (srfi srfi-35) #:export (darkstat-configuration - prometheus-node-exporter-configuration darkstat-service-type + + prometheus-node-exporter-configuration + prometheus-node-exporter-configuration? + prometheus-node-exporter-configuration-package + prometheus-node-exporter-web-listen-address prometheus-node-exporter-service-type zabbix-server-configuration @@ -110,6 +114,11 @@ HTTP.") (service-extension shepherd-root-service-type (compose list darkstat-shepherd-service)))))) + +;;; +;;; Prometheus node exporter +;;; + (define-record-type* <prometheus-node-exporter-configuration> prometheus-node-exporter-configuration make-prometheus-node-exporter-configuration @@ -117,31 +126,73 @@ HTTP.") (package prometheus-node-exporter-configuration-package (default go-github-com-prometheus-node-exporter)) (web-listen-address prometheus-node-exporter-web-listen-address - (default ":9100"))) + (default ":9100")) + (textfile-directory prometheus-node-exporter-textfile-directory + (default "/var/lib/prometheus/node-exporter")) + (extra-options prometheus-node-exporter-extra-options + (default '()))) + +(define %prometheus-node-exporter-accounts + (list (user-account + (name "prometheus-node-exporter") + (group "prometheus-node-exporter") + (system? #t) + (comment "Prometheus node exporter daemon user") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin"))) + (user-group + (name "prometheus-node-exporter") + (system? #t)))) (define prometheus-node-exporter-shepherd-service (match-lambda (( $ <prometheus-node-exporter-configuration> - package web-listen-address) - (shepherd-service - (documentation "Prometheus node exporter.") - (provision '(prometheus-node-exporter)) - (requirement '(networking)) - (start #~(make-forkexec-constructor - (list #$(file-append package "/bin/node_exporter") - "--web.listen-address" #$web-listen-address))) - (stop #~(make-kill-destructor)))))) + package web-listen-address textfile-directory extra-options) + (list + (shepherd-service + (documentation "Prometheus node exporter.") + (provision '(prometheus-node-exporter)) + (requirement '(networking)) + (start #~(make-forkexec-constructor + (list #$(file-append package "/bin/node_exporter") + "--web.listen-address" #$web-listen-address + #$@(if textfile-directory + (list "--collector.textfile.directory" + textfile-directory) + '()) + #$@extra-options) + #:user "prometheus-node-exporter" + #:group "prometheus-node-exporter" + #:log-file "/var/log/prometheus-node-exporter.log")) + (stop #~(make-kill-destructor))))))) + +(define (prometheus-node-exporter-activation config) + (with-imported-modules '((guix build utils)) + #~(let ((textfile-directory + #$(prometheus-node-exporter-textfile-directory config))) + (use-modules (guix build utils)) + + (when textfile-directory + (let ((user (getpw "prometheus-node-exporter"))) + #t + (mkdir-p textfile-directory) + (chown textfile-directory (passwd:uid user) (passwd:gid user)) + (chmod textfile-directory #o775)))))) (define prometheus-node-exporter-service-type (service-type (name 'prometheus-node-exporter) (description "Run @command{node_exporter} to serve hardware and OS metrics to -prometheus.") +Prometheus.") (extensions - (list (service-extension - shepherd-root-service-type - (compose list prometheus-node-exporter-shepherd-service)))) + (list + (service-extension account-service-type + (const %prometheus-node-exporter-accounts)) + (service-extension activation-service-type + prometheus-node-exporter-activation) + (service-extension shepherd-root-service-type + prometheus-node-exporter-shepherd-service))) (default-value (prometheus-node-exporter-configuration)))) diff --git a/gnu/services/science.scm b/gnu/services/science.scm index 94ff0f36f2..6f7ac91154 100644 --- a/gnu/services/science.scm +++ b/gnu/services/science.scm @@ -1,3 +1,21 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> +;;; +;;; 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 services science) #:export (<rshiny-configuration> rshiny-configuration diff --git a/gnu/services/security-token.scm b/gnu/services/security-token.scm index 354549b33c..ec26006538 100644 --- a/gnu/services/security-token.scm +++ b/gnu/services/security-token.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> +;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -57,7 +58,7 @@ (modules '((gnu build shepherd))) (start #~(lambda _ (invoke #$(file-append pcsc-lite "/sbin/pcscd")) - (call-with-input-file "/var/run/pcscd/pcscd.pid" read))) + (call-with-input-file "/run/pcscd/pcscd.pid" read))) (stop #~(make-kill-destructor))))))) (define pcscd-activation diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index eaf0bbde43..f435630faf 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -36,7 +36,6 @@ #:use-module (gnu system file-systems) #:use-module (gnu system hurd) #:use-module (gnu system image) - #:use-module (gnu system images hurd) #:use-module (gnu system shadow) #:use-module (gnu system) #:use-module (guix derivations) @@ -913,14 +912,12 @@ that will be listening to receive secret keys on port 1004, TCP." (define (hurd-vm-disk-image config) "Return a disk-image for the Hurd according to CONFIG. The secret-service is added to the OS specified in CONFIG." - (let ((os (secret-service-operating-system (hurd-vm-configuration-os config))) - (disk-size (hurd-vm-configuration-disk-size config))) - (system-image - (image - (inherit hurd-disk-image) - (format 'compressed-qcow2) - (size disk-size) - (operating-system os))))) + (let* ((os (secret-service-operating-system + (hurd-vm-configuration-os config))) + (disk-size (hurd-vm-configuration-disk-size config)) + (type (lookup-image-type-by-name 'hurd-qcow2)) + (os->image (image-type-constructor type))) + (system-image (os->image os)))) (define (hurd-vm-port config base) "Return the forwarded vm port for this childhurd config." diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 7701297411..a6b9e3d952 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -34,6 +34,7 @@ #:use-module ((guix store) #:select (%store-prefix)) #:use-module (gnu installer) #:use-module (gnu system locale) + #:use-module (gnu services avahi) #:use-module (gnu services dbus) #:use-module (gnu services networking) #:use-module (gnu services shepherd) @@ -335,6 +336,10 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m ;; The usual services. (syslog-service) + ;; Use the Avahi daemon to discover substitute servers on the local + ;; network. It can be faster than fetching from remote servers. + (service avahi-service-type) + ;; The build daemon. Register the default substitute server key(s) ;; as trusted to allow the installation process to use substitutes by ;; default. @@ -435,6 +440,7 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m (host-name "gnu") (timezone "Europe/Paris") (locale "en_US.utf8") + (name-service-switch %mdns-host-lookup-nss) (bootloader (bootloader-configuration (bootloader grub-bootloader) (target "/dev/sda"))) diff --git a/guix/avahi.scm b/guix/avahi.scm index 8a82fd3beb..aa90a5cdd4 100644 --- a/guix/avahi.scm +++ b/guix/avahi.scm @@ -92,6 +92,7 @@ when STOP-LOOP? procedure returns true." (define* (avahi-browse-service-thread proc #:key types + (ignore-local? #t) (family AF_INET) (stop-loop? (const #f)) (timeout 100)) @@ -116,7 +117,9 @@ when STOP-LOOP? procedure returns true." ;; Add the service if the host is unknown. This means that if a ;; service is available on multiple network interfaces for a single ;; host, only the first interface found will be considered. - (unless (hash-ref %known-hosts service-name) + (unless (or (hash-ref %known-hosts service-name) + (and ignore-local? + (member lookup-result-flag/local flags))) (let* ((address (inet-ntop family address)) (local-address (interface->ip-address interface)) (service* (avahi-service @@ -144,8 +147,8 @@ when STOP-LOOP? procedure returns true." ((eq? event browser-event/remove) (let ((service (hash-ref %known-hosts service-name))) (when service - (proc 'remove-service service) - (hash-remove! %known-hosts service-name)))))) + (proc 'remove-service service) + (hash-remove! %known-hosts service-name)))))) (define client-callback (lambda (client state) diff --git a/guix/build-system/r.scm b/guix/build-system/r.scm index 5ef982d66a..e2bf41f18d 100644 --- a/guix/build-system/r.scm +++ b/guix/build-system/r.scm @@ -59,7 +59,7 @@ release corresponding to NAME and VERSION." "/src/contrib/" name "_" version ".tar.gz") ;; TODO: use %bioconductor-version from (guix import cran) - (string-append "https://bioconductor.org/packages/3.11" + (string-append "https://bioconductor.org/packages/3.12" type-url-part "/src/contrib/" name "_" version ".tar.gz")))) diff --git a/guix/ci.scm b/guix/ci.scm index 7a03befc7c..f429bf198f 100644 --- a/guix/ci.scm +++ b/guix/ci.scm @@ -31,6 +31,7 @@ build? build-id build-derivation + build-evaluation build-system build-status build-timestamp @@ -49,6 +50,7 @@ %query-limit queued-builds latest-builds + evaluation latest-evaluations evaluations-for-commit)) @@ -71,6 +73,7 @@ json->build (id build-id "id") ;integer (derivation build-derivation) ;string | #f + (evaluation build-evaluation) ;integer (system build-system) ;string (status build-status "buildstatus" ) ;integer (timestamp build-timestamp) ;integer @@ -138,6 +141,13 @@ string such as \"x86_64-linux\"), restrict to builds for SYSTEM." ;; 'latestbuilds', but Cuirass does. (map json->build (vector->list latest)))) +(define (evaluation url evaluation) + "Return the given EVALUATION performed by the CI server at URL." + (let ((evaluation (json-fetch + (string-append url "/api/evaluation?id=" + (number->string evaluation))))) + (json->evaluation evaluation))) + (define* (latest-evaluations url #:optional (limit %query-limit)) "Return the latest evaluations performed by the CI server at URL." (map json->evaluation diff --git a/guix/download.scm b/guix/download.scm index c24e0132c7..494825860e 100644 --- a/guix/download.scm +++ b/guix/download.scm @@ -248,22 +248,13 @@ (imagemagick ;; from http://www.imagemagick.org/script/download.php ;; (without mirrors that are unavailable or not up to date) - ;; mirrors keeping old versions at the top level - "https://sunsite.icm.edu.pl/packages/ImageMagick/" - ;; mirrors moving old versions to "legacy" - "http://mirror.checkdomain.de/imagemagick/" - "http://ftp.surfnet.nl/pub/ImageMagick/" - "http://mirror.searchdaimon.com/ImageMagick" - "http://mirror.is.co.za/pub/imagemagick/" - "http://www.imagemagick.org/download/" - "ftp://mirror.aarnet.edu.au/pub/imagemagick/" - "ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/" - "ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/imagemagick.org/" + "https://sunsite.icm.edu.pl/packages/ImageMagick/releases" + "http://mirror.checkdomain.de/imagemagick/releases" + "ftp://ftp.u-aizu.ac.jp/pub/graphics/image/ImageMagick/imagemagick.org/releases" "ftp://ftp.nluug.nl/pub/ImageMagick/" - "ftp://ftp.tpnet.pl/pub/graphics/ImageMagick/" - "ftp://ftp.fifi.org/pub/ImageMagick/" - ;; one legacy location as a last resort - "http://www.imagemagick.org/download/legacy/") + "http://www.imagemagick.org/download/releases/" + ;; Try this if all else fails (normally contains just the latest version). + "http://www.imagemagick.org/download/") (debian "http://ftp.de.debian.org/debian/" "http://ftp.fr.debian.org/debian/" diff --git a/guix/glob.scm b/guix/glob.scm index a9fc744802..d73783cd30 100644 --- a/guix/glob.scm +++ b/guix/glob.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,6 +62,11 @@ STR, a glob pattern such as \"foo*\" or \"foo??bar\"." (flatten (reverse (if (null? pending) result (cons-string pending result))))) + ((#\* #\* #\/ . rest) + (if (zero? brackets) + (loop rest '() 0 + (cons* '**/ (cons-string pending result))) + (loop rest (cons '**/ pending) brackets result))) (((and chr (or #\? #\*)) . rest) (let ((wildcard (match chr (#\? '?) @@ -121,6 +127,15 @@ STR, a glob pattern such as \"foo*\" or \"foo??bar\"." (string-null? str)) (('*) #t) + (('**/) + #t) + (('**/ suffix . rest) + (let ((rest (if (eq? '* suffix) (cdr rest) rest)) + (suffix (if (eq? '* suffix) (car rest) suffix))) + (match (string-contains str suffix) + (#f #f) + (index (loop rest (string-drop str + (+ index (string-length suffix)))))))) (('* suffix . rest) (match (string-contains str suffix) (#f #f) diff --git a/guix/http-client.scm b/guix/http-client.scm index a767175d67..553640fe9e 100644 --- a/guix/http-client.scm +++ b/guix/http-client.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2012, 2015 Free Software Foundation, Inc. ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> @@ -70,6 +70,7 @@ (define* (http-fetch uri #:key port (text? #f) (buffered? #t) + (keep-alive? #f) (verify-certificate? #t) (headers '((user-agent . "GNU Guile"))) timeout) @@ -79,6 +80,9 @@ textual. Follow any HTTP redirection. When BUFFERED? is #f, return an unbuffered port, suitable for use in `filtered-port'. HEADERS is an alist of extra HTTP headers. +When KEEP-ALIVE? is true, the connection is marked as 'keep-alive' and PORT is +not closed upon completion. + When VERIFY-CERTIFICATE? is true, verify HTTPS server certificates. TIMEOUT specifies the timeout in seconds for connection establishment; when @@ -104,11 +108,7 @@ Raise an '&http-get-error' condition if downloading fails." (setvbuf port 'none)) (let*-values (((resp data) (http-get uri #:streaming? #t #:port port - ;; XXX: When #:keep-alive? is true, if DATA is - ;; a chunked-encoding port, closing DATA won't - ;; close PORT, leading to a file descriptor - ;; leak. - #:keep-alive? #f + #:keep-alive? keep-alive? #:headers headers)) ((code) (response-code resp))) diff --git a/guix/import/cran.scm b/guix/import/cran.scm index d6baa6b5e5..1d25a5125e 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -29,6 +29,7 @@ #:use-module (srfi srfi-11) #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) + #:use-module (srfi srfi-35) #:use-module (ice-9 receive) #:use-module (web uri) #:use-module (guix memoization) @@ -142,9 +143,9 @@ package definition." (define %cran-url "https://cran.r-project.org/web/packages/") (define %bioconductor-url "https://bioconductor.org/packages/") -;; The latest Bioconductor release is 3.11. Bioconductor packages should be +;; The latest Bioconductor release is 3.12. Bioconductor packages should be ;; updated together. -(define %bioconductor-version "3.11") +(define %bioconductor-version "3.12") (define* (bioconductor-packages-list-url #:optional type) (string-append "https://bioconductor.org/packages/" @@ -585,7 +586,10 @@ s-expression corresponding to that package, or #f on failure." ((bioconductor) ;; Retry import from CRAN (cran->guix-package package-name #:repo 'cran)) - (else (values #f '())))))))) + (else + (raise (condition + (&message + (message "couldn't find meta-data for R package"))))))))))) (define* (cran-recursive-import package-name #:key (repo 'cran)) (recursive-import package-name diff --git a/guix/import/opam.scm b/guix/import/opam.scm index 867812124d..670973b193 100644 --- a/guix/import/opam.scm +++ b/guix/import/opam.scm @@ -120,12 +120,29 @@ (define-peg-pattern condition-string all (and QUOTE (* STRCHR) QUOTE)) (define-peg-pattern condition-var all (+ (or (range #\a #\z) "-" ":"))) -(define (get-opam-repository) +(define* (get-opam-repository #:optional repo) "Update or fetch the latest version of the opam repository and return the path to the repository." - (receive (location commit _) - (update-cached-checkout "https://github.com/ocaml/opam-repository") - location)) + (let ((url (cond + ((or (not repo) (equal? repo 'opam)) + "https://github.com/ocaml/opam-repository") + ((string-prefix? "coq-" (symbol->string repo)) + "https://github.com/coq/opam-coq-archive") + ((equal? repo 'coq) "https://github.com/coq/opam-coq-archive") + (else (throw 'unknown-repository repo))))) + (receive (location commit _) + (update-cached-checkout url) + (cond + ((or (not repo) (equal? repo 'opam)) + location) + ((equal? repo 'coq) + (string-append location "/released")) + ((string-prefix? "coq-" (symbol->string repo)) + (string-append location "/" (substring (symbol->string repo) 4))) + (else location))))) + +;; Prevent Guile 3 from inlining this procedure so we can mock it in tests. +(set! get-opam-repository get-opam-repository) (define (latest-version versions) "Find the most recent version from a list of versions." @@ -161,6 +178,7 @@ path to the repository." (substitute-char (cond ((equal? name "ocamlfind") "ocaml-findlib") + ((equal? name "coq") name) ((string-prefix? "ocaml" name) name) ((string-prefix? "conf-" name) (substring name 5)) (else (string-append "ocaml-" name))) @@ -235,12 +253,15 @@ path to the repository." (equal? "ocaml" name)) names))) -(define (depends->inputs depends) +(define (filter-dependencies depends) + "Remove implicit dependencies from the list of dependencies in @var{depends}." (filter (lambda (name) - (and (not (equal? "" name)) - (not (equal? "ocaml" name)) - (not (equal? "ocamlfind" name)))) - (map dependency->input depends))) + (and (not (member name '("" "ocaml" "ocamlfind" "dune" "jbuilder"))) + (not (string-prefix? "base-" name)))) + depends)) + +(define (depends->inputs depends) + (filter-dependencies (map dependency->input depends))) (define (depends->native-inputs depends) (filter (lambda (name) (not (equal? "" name))) @@ -261,18 +282,19 @@ path to the repository." (substring version 1) version))))) -(define* (opam->guix-package name #:key (repository (get-opam-repository)) version) +(define* (opam->guix-package name #:key (repo 'opam) version) "Import OPAM package NAME from REPOSITORY (a directory name) or, if REPOSITORY is #f, from the official OPAM repository. Return a 'package' sexp or #f on failure." - (and-let* ((opam-file (opam-fetch name repository)) + (and-let* ((opam-file (opam-fetch name (get-opam-repository repo))) (version (assoc-ref opam-file "version")) - (opam-content (pk (assoc-ref opam-file "metadata"))) + (opam-content (assoc-ref opam-file "metadata")) (url-dict (metadata-ref opam-content "url")) (source-url (or (metadata-ref url-dict "src") (metadata-ref url-dict "archive"))) (requirements (metadata-ref opam-content "depends")) - (dependencies (dependency-list->names requirements)) + (names (dependency-list->names requirements)) + (dependencies (filter-dependencies names)) (native-dependencies (depends->native-inputs requirements)) (inputs (dependency-list->inputs (depends->inputs requirements))) (native-inputs (dependency-list->inputs @@ -282,10 +304,7 @@ or #f on failure." (lambda (name) (not (member name '("dune" "jbuilder")))) native-dependencies)))) - ;; If one of these are required at build time, it means we - ;; can use the much nicer dune-build-system. - (let ((use-dune? (or (member "dune" (append dependencies native-dependencies)) - (member "jbuilder" (append dependencies native-dependencies))))) + (let ((use-dune? (member "dune" names))) (call-with-temporary-output-file (lambda (temp port) (and (url-fetch source-url temp) @@ -322,10 +341,11 @@ or #f on failure." (not (member name '("dune" "jbuilder")))) dependencies)))))))) -(define (opam-recursive-import package-name) +(define* (opam-recursive-import package-name #:key repo) (recursive-import package-name #:repo->guix-package opam->guix-package - #:guix-name ocaml-name->guix-name)) + #:guix-name ocaml-name->guix-name + #:repo repo)) (define (guix-name->opam-name name) (if (string-prefix? "ocaml-" name) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index 7de95349cd..e227c2e42d 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -275,9 +275,9 @@ version. If APPEND-VERSION?/string is a string, append this string." (cond ((string? append-version?/string) (string-append name "-" append-version?/string)) - ((= append-version?/string #t) + ((eq? append-version?/string #t) (string-append name "-" (version-major+minor version))) - ((#t) version))) + (else name))) ,guix-package)))) (define (build-system-modules) diff --git a/guix/profiles.scm b/guix/profiles.scm index 1b15257210..59a313ea08 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -399,22 +399,24 @@ denoting a specific output of a package." 'inferior-package->manifest-entry)) (manifest - (map (match-lambda - (((? package? package) output) - (package->manifest-entry package output)) - ((? package? package) - (package->manifest-entry package)) - ((thing output) - (if inferiors-loaded? - ((inferior->entry) thing output) - (throw 'wrong-type-arg 'packages->manifest - "Wrong package object: ~S" (list thing) (list thing)))) - (thing - (if inferiors-loaded? - ((inferior->entry) thing) - (throw 'wrong-type-arg 'packages->manifest - "Wrong package object: ~S" (list thing) (list thing))))) - packages))) + (delete-duplicates + (map (match-lambda + (((? package? package) output) + (package->manifest-entry package output)) + ((? package? package) + (package->manifest-entry package)) + ((thing output) + (if inferiors-loaded? + ((inferior->entry) thing output) + (throw 'wrong-type-arg 'packages->manifest + "Wrong package object: ~S" (list thing) (list thing)))) + (thing + (if inferiors-loaded? + ((inferior->entry) thing) + (throw 'wrong-type-arg 'packages->manifest + "Wrong package object: ~S" (list thing) (list thing))))) + packages) + manifest-entry=?))) (define (manifest->gexp manifest) "Return a representation of MANIFEST as a gexp." @@ -716,6 +718,12 @@ replace it." (manifest-pattern (name (manifest-entry-name entry)) (output (manifest-entry-output entry)))) + (define manifest-entry-pair=? + (match-lambda* + (((m1a . m2a) (m1b . m2b)) + (and (manifest-entry=? m1a m1b) + (manifest-entry=? m2a m2b))) + (_ #f))) (let loop ((input (manifest-transaction-install transaction)) (install '()) @@ -724,8 +732,16 @@ replace it." (match input (() (let ((remove (manifest-transaction-remove transaction))) - (values (manifest-matching-entries manifest remove) - (reverse install) (reverse upgrade) (reverse downgrade)))) + (values (delete-duplicates + (manifest-matching-entries manifest remove) + manifest-entry=?) + (delete-duplicates (reverse install) manifest-entry=?) + (delete-duplicates + (reverse upgrade) + manifest-entry-pair=?) + (delete-duplicates + (reverse downgrade) + manifest-entry-pair=?)))) ((entry rest ...) ;; Check whether installing ENTRY corresponds to the installation of a ;; new package or to an upgrade. diff --git a/guix/progress.scm b/guix/progress.scm index fec65b424c..cd80ae620a 100644 --- a/guix/progress.scm +++ b/guix/progress.scm @@ -337,9 +337,10 @@ should be a <progress-reporter> object." (report total) (loop total (get-bytevector-n! in buffer 0 buffer-size)))))))) -(define (progress-report-port reporter port) +(define* (progress-report-port reporter port #:key (close? #t)) "Return a port that continuously reports the bytes read from PORT using -REPORTER, which should be a <progress-reporter> object." +REPORTER, which should be a <progress-reporter> object. When CLOSE? is true, +PORT is closed when the returned port is closed." (match reporter (($ <progress-reporter> start report stop) (let* ((total 0) @@ -364,5 +365,6 @@ REPORTER, which should be a <progress-reporter> object." ;; trace. (unless (zero? total) (stop)) - (close-port port))))))) + (when close? + (close-port port)))))))) diff --git a/guix/scripts/import/cran.scm b/guix/scripts/import/cran.scm index 33944c4a3f..20e82ae2ca 100644 --- a/guix/scripts/import/cran.scm +++ b/guix/scripts/import/cran.scm @@ -97,10 +97,11 @@ Import and convert the CRAN package for PACKAGE-NAME.\n")) ((package-name) (if (assoc-ref opts 'recursive) ;; Recursive import - (map package->definition - (filter identity - (cran-recursive-import package-name - #:repo (or (assoc-ref opts 'repo) 'cran)))) + (with-error-handling + (map package->definition + (filter identity + (cran-recursive-import package-name + #:repo (or (assoc-ref opts 'repo) 'cran))))) ;; Single import (let ((sexp (cran->guix-package package-name #:repo (or (assoc-ref opts 'repo) 'cran)))) diff --git a/guix/scripts/import/opam.scm b/guix/scripts/import/opam.scm index 20da1437fe..da9392821c 100644 --- a/guix/scripts/import/opam.scm +++ b/guix/scripts/import/opam.scm @@ -45,6 +45,8 @@ Import and convert the opam package for PACKAGE-NAME.\n")) (display (G_ " -r, --recursive import packages recursively")) (display (G_ " + --repo import packages from this opam repository")) + (display (G_ " -V, --version display version information and exit")) (newline) (show-bug-report-information)) @@ -58,6 +60,9 @@ Import and convert the opam package for PACKAGE-NAME.\n")) (option '(#\V "version") #f #f (lambda args (show-version-and-exit "guix import opam"))) + (option '(#f "repo") #t #f + (lambda (opt name arg result) + (alist-cons 'repo arg result))) (option '(#\r "recursive") #f #f (lambda (opt name arg result) (alist-cons 'recursive #t result))) @@ -79,6 +84,7 @@ Import and convert the opam package for PACKAGE-NAME.\n")) %default-options)) (let* ((opts (parse-options)) + (repo (and=> (assoc-ref opts 'repo) string->symbol)) (args (filter-map (match-lambda (('argument . value) value) @@ -93,9 +99,9 @@ Import and convert the opam package for PACKAGE-NAME.\n")) `(define-public ,(string->symbol name) ,pkg)) (_ #f)) - (opam-recursive-import package-name)) + (opam-recursive-import package-name #:repo repo)) ;; Single import - (let ((sexp (opam->guix-package package-name))) + (let ((sexp (opam->guix-package package-name #:repo repo))) (unless sexp (leave (G_ "failed to download meta-data for package '~a'~%") package-name)) diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index feae2df9cb..25075eedff 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -88,6 +88,7 @@ write-narinfo %allow-unauthenticated-substitutes? + %error-to-file-descriptor-4? substitute-urls guix-substitute)) @@ -124,11 +125,7 @@ disabled!~%")) ;; purposes, and should be avoided otherwise. (make-parameter (and=> (getenv "GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES") - (cut string-ci=? <> "yes")) - (lambda (value) - (when value - (warn-about-missing-authentication)) - value))) + (cut string-ci=? <> "yes")))) (define %narinfo-ttl ;; Number of seconds during which cached narinfo lookups are considered @@ -191,9 +188,14 @@ again." (sigaction SIGALRM SIG_DFL) (apply values result))))) -(define* (fetch uri #:key (buffered? #t) (timeout? #t)) +(define* (fetch uri #:key (buffered? #t) (timeout? #t) + (keep-alive? #f) (port #f)) "Return a binary input port to URI and the number of bytes it's expected to -provide." +provide. + +When PORT is true, use it as the underlying I/O port for HTTP transfers; when +PORT is false, open a new connection for URI. When KEEP-ALIVE? is true, the +connection (typically PORT) is kept open once data has been fetched from URI." (case (uri-scheme uri) ((file) (let ((port (open-file (uri-path uri) @@ -209,7 +211,7 @@ provide." ;; sudo tc qdisc add dev eth0 root netem delay 1500ms ;; and then cancel with: ;; sudo tc qdisc del dev eth0 root - (let ((port #f)) + (let ((port port)) (with-timeout (if timeout? %fetch-timeout 0) @@ -220,10 +222,11 @@ provide." (begin (when (or (not port) (port-closed? port)) (set! port (guix:open-connection-for-uri - uri #:verify-certificate? #f)) - (unless (or buffered? (not (file-port? port))) - (setvbuf port 'none))) + uri #:verify-certificate? #f))) + (unless (or buffered? (not (file-port? port))) + (setvbuf port 'none)) (http-fetch uri #:text? #f #:port port + #:keep-alive? keep-alive? #:verify-certificate? #f)))))) (else (leave (G_ "unsupported substitute URI scheme: ~a~%") @@ -481,17 +484,17 @@ indicates that PATH is unavailable at CACHE-URL." (build-request (string->uri url) #:method 'GET #:headers headers))) (define (at-most max-length lst) - "If LST is shorter than MAX-LENGTH, return it; otherwise return its -MAX-LENGTH first elements." + "If LST is shorter than MAX-LENGTH, return it and the empty list; otherwise +return its MAX-LENGTH first elements and its tail." (let loop ((len 0) (lst lst) (result '())) (match lst (() - (reverse result)) + (values (reverse result) '())) ((head . tail) (if (>= len max-length) - (reverse result) + (values (reverse result) lst) (loop (+ 1 len) tail (cons head result))))))) (define* (http-multiple-get base-uri proc seed requests @@ -893,6 +896,9 @@ authorized substitutes." (define (valid? obj) (valid-narinfo? obj acl)) + (when (%allow-unauthenticated-substitutes?) + (warn-about-missing-authentication)) + (match (string-tokenize command) (("have" paths ..1) ;; Return the subset of PATHS available in CACHE-URLS. @@ -962,6 +968,68 @@ the URI, its compression method (a string), and the compressed file size." (((uri compression file-size) _ ...) (values uri compression file-size)))) +(define %max-cached-connections + ;; Maximum number of connections kept in cache by + ;; 'open-connection-for-uri/cached'. + 16) + +(define open-connection-for-uri/cached + (let ((cache '())) + (lambda* (uri #:key fresh?) + "Return a connection for URI, possibly reusing a cached connection. +When FRESH? is true, delete any cached connections for URI and open a new +one. Return #f if URI's scheme is 'file' or #f." + (define host (uri-host uri)) + (define scheme (uri-scheme uri)) + (define key (list host scheme (uri-port uri))) + + (and (not (memq scheme '(file #f))) + (match (assoc-ref cache key) + (#f + ;; Open a new connection to URI and evict old entries from + ;; CACHE, if any. + (let-values (((socket) + (guix:open-connection-for-uri + uri #:verify-certificate? #f)) + ((new-cache evicted) + (at-most (- %max-cached-connections 1) cache))) + (for-each (match-lambda + ((_ . port) + (false-if-exception (close-port port)))) + evicted) + (set! cache (alist-cons key socket new-cache)) + socket)) + (socket + (if (or fresh? (port-closed? socket)) + (begin + (false-if-exception (close-port socket)) + (set! cache (alist-delete key cache)) + (open-connection-for-uri/cached uri)) + (begin + ;; Drain input left from the previous use. + (drain-input socket) + socket)))))))) + +(define (call-with-cached-connection uri proc) + (let ((port (open-connection-for-uri/cached uri))) + (catch #t + (lambda () + (proc port)) + (lambda (key . args) + ;; If PORT was cached and the server closed the connection in the + ;; meantime, we get EPIPE. In that case, open a fresh connection and + ;; retry. We might also get 'bad-response or a similar exception from + ;; (web response) later on, once we've sent the request. + (if (or (and (eq? key 'system-error) + (= EPIPE (system-error-errno `(,key ,@args)))) + (memq key '(bad-response bad-header bad-header-component))) + (proc (open-connection-for-uri/cached uri #:fresh? #t)) + (apply throw key args)))))) + +(define-syntax-rule (with-cached-connection uri port exp ...) + "Bind PORT with EXP... to a socket connected to URI." + (call-with-cached-connection uri (lambda (port) exp ...))) + (define* (process-substitution store-item destination #:key cache-urls acl print-build-trace?) "Substitute STORE-ITEM (a store file name) from CACHE-URLS, and write it to @@ -984,10 +1052,12 @@ DESTINATION as a nar file. Verify the substitute against ACL." (G_ "Downloading ~a...~%") (uri->string uri))) (let*-values (((raw download-size) - ;; Note that Hydra currently generates Nars on the fly - ;; and doesn't specify a Content-Length, so - ;; DOWNLOAD-SIZE is #f in practice. - (fetch uri #:buffered? #f #:timeout? #f)) + ;; 'guix publish' without '--cache' doesn't specify a + ;; Content-Length, so DOWNLOAD-SIZE is #f in this case. + (with-cached-connection uri port + (fetch uri #:buffered? #f #:timeout? #f + #:port port + #:keep-alive? #t))) ((progress) (let* ((dl-size (or download-size (and (equal? compression "none") @@ -1001,7 +1071,9 @@ DESTINATION as a nar file. Verify the substitute against ACL." (uri->string uri) dl-size (current-error-port) #:abbreviation nar-uri-abbreviation)))) - (progress-report-port reporter raw))) + ;; Keep RAW open upon completion so we can later reuse + ;; the underlying connection. + (progress-report-port reporter raw #:close? #f))) ((input pids) ;; NOTE: This 'progress' port of current process will be ;; closed here, while the child process doing the @@ -1017,7 +1089,10 @@ DESTINATION as a nar file. Verify the substitute against ACL." ;; Skip a line after what 'progress-reporter/file' printed, and another ;; one to visually separate substitutions. - (display "\n\n" (current-error-port))))) + (display "\n\n" (current-error-port)) + + ;; Tell the daemon that we're done. + (display "success\n" (current-output-port))))) ;;; @@ -1128,6 +1203,11 @@ default value." (unless (string->uri uri) (leave (G_ "~a: invalid URI~%") uri))) +(define %error-to-file-descriptor-4? + ;; Whether to direct 'current-error-port' to file descriptor 4 like + ;; 'guix-daemon' expects. + (make-parameter #t)) + (define-command (guix-substitute . args) (category internal) (synopsis "implement the build daemon's substituter protocol") @@ -1139,71 +1219,78 @@ default value." ((= string->number number) (> number 0)) (_ #f))) - (mkdir-p %narinfo-cache-directory) - (maybe-remove-expired-cache-entries %narinfo-cache-directory - cached-narinfo-files - #:entry-expiration - cached-narinfo-expiration-time - #:cleanup-period - %narinfo-expired-cache-entry-removal-delay) - (check-acl-initialized) - - ;; Starting from commit 22144afa in Nix, we are allowed to bail out directly - ;; when we know we cannot substitute, but we must emit a newline on stdout - ;; when everything is alright. - (when (null? (substitute-urls)) - (exit 0)) - - ;; Say hello (see above.) - (newline) - (force-output (current-output-port)) - - ;; Sanity-check SUBSTITUTE-URLS so we can provide a meaningful error message. - (for-each validate-uri (substitute-urls)) - - ;; Attempt to install the client's locale so that messages are suitably - ;; translated. LC_CTYPE must be a UTF-8 locale; it's the case by default so - ;; don't change it. - (match (or (find-daemon-option "untrusted-locale") - (find-daemon-option "locale")) - (#f #f) - (locale (false-if-exception (setlocale LC_MESSAGES locale)))) - - (catch 'system-error - (lambda () - (set-thread-name "guix substitute")) - (const #t)) ;GNU/Hurd lacks 'prctl' - - (with-networking - (with-error-handling ; for signature errors - (match args - (("--query") - (let ((acl (current-acl))) - (let loop ((command (read-line))) - (or (eof-object? command) - (begin - (process-query command - #:cache-urls (substitute-urls) - #:acl acl) - (loop (read-line))))))) - (("--substitute" store-path destination) - ;; Download STORE-PATH and add store it as a Nar in file DESTINATION. - ;; Specify the number of columns of the terminal so the progress - ;; report displays nicely. - (parameterize ((current-terminal-columns (client-terminal-columns))) - (process-substitution store-path destination - #:cache-urls (substitute-urls) - #:acl (current-acl) - #:print-build-trace? print-build-trace?))) - ((or ("-V") ("--version")) - (show-version-and-exit "guix substitute")) - (("--help") - (show-help)) - (opts - (leave (G_ "~a: unrecognized options~%") opts)))))) + ;; The daemon's agent code opens file descriptor 4 for us and this is where + ;; stderr should go. + (parameterize ((current-error-port (if (%error-to-file-descriptor-4?) + (fdopen 4 "wl") + (current-error-port)))) + ;; Redirect diagnostics to file descriptor 4 as well. + (guix-warning-port (current-error-port)) + + (mkdir-p %narinfo-cache-directory) + (maybe-remove-expired-cache-entries %narinfo-cache-directory + cached-narinfo-files + #:entry-expiration + cached-narinfo-expiration-time + #:cleanup-period + %narinfo-expired-cache-entry-removal-delay) + (check-acl-initialized) + + ;; Sanity-check SUBSTITUTE-URLS so we can provide a meaningful error + ;; message. + (for-each validate-uri (substitute-urls)) + + ;; Attempt to install the client's locale so that messages are suitably + ;; translated. LC_CTYPE must be a UTF-8 locale; it's the case by default + ;; so don't change it. + (match (or (find-daemon-option "untrusted-locale") + (find-daemon-option "locale")) + (#f #f) + (locale (false-if-exception (setlocale LC_MESSAGES locale)))) + + (catch 'system-error + (lambda () + (set-thread-name "guix substitute")) + (const #t)) ;GNU/Hurd lacks 'prctl' + + (with-networking + (with-error-handling ; for signature errors + (match args + (("--query") + (let ((acl (current-acl))) + (let loop ((command (read-line))) + (or (eof-object? command) + (begin + (process-query command + #:cache-urls (substitute-urls) + #:acl acl) + (loop (read-line))))))) + (("--substitute") + ;; Download STORE-PATH and store it as a Nar in file DESTINATION. + ;; Specify the number of columns of the terminal so the progress + ;; report displays nicely. + (parameterize ((current-terminal-columns (client-terminal-columns))) + (let loop () + (match (read-line) + ((? eof-object?) + #t) + ((= string-tokenize ("substitute" store-path destination)) + (process-substitution store-path destination + #:cache-urls (substitute-urls) + #:acl (current-acl) + #:print-build-trace? + print-build-trace?) + (loop)))))) + ((or ("-V") ("--version")) + (show-version-and-exit "guix substitute")) + (("--help") + (show-help)) + (opts + (leave (G_ "~a: unrecognized options~%") opts))))))) ;;; Local Variables: ;;; eval: (put 'with-timeout 'scheme-indent-function 1) +;;; eval: (put 'with-cached-connection 'scheme-indent-function 2) ;;; End: ;;; substitute.scm ends here diff --git a/guix/self.scm b/guix/self.scm index c0de14b79a..7cda6656c9 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -649,18 +649,26 @@ load path." (program-file "guix-command" #~(begin + ;; Remove the empty extension from the search path. + (set! %load-extensions '(".scm")) + (set! %load-path - (cons (string-append #$module-directory - "/share/guile/site/" - (effective-version)) - %load-path)) + (append (list (string-append #$module-directory + "/share/guile/site/" + (effective-version)) + (string-append #$guile "/share/guile/" + (effective-version))) + %load-path)) (set! %load-compiled-path - (cons (string-append #$module-directory - "/lib/guile/" - (effective-version) - "/site-ccache") - %load-compiled-path)) + (append (list (string-append #$module-directory + "/lib/guile/" + (effective-version) + "/site-ccache") + (string-append #$guile "/lib/guile/" + (effective-version) + "/ccache")) + %load-compiled-path)) ;; To maximize the chances that locales are set up right ;; out-of-the-box, bundle "common" UTF-8 locales. diff --git a/guix/store/database.scm b/guix/store/database.scm index 2ea63b17aa..b36b127630 100644 --- a/guix/store/database.scm +++ b/guix/store/database.scm @@ -21,7 +21,6 @@ (define-module (guix store database) #:use-module (sqlite3) #:use-module (guix config) - #:use-module (guix gexp) #:use-module (guix serialization) #:use-module (guix store deduplication) #:use-module (guix base16) @@ -29,7 +28,6 @@ #:use-module (guix build syscalls) #:use-module ((guix build utils) #:select (mkdir-p executable-file?)) - #:use-module (guix utils) #:use-module (guix build store-copy) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) diff --git a/m4/guix.m4 b/m4/guix.m4 index 4fa7cdf737..f8eb5aaf51 100644 --- a/m4/guix.m4 +++ b/m4/guix.m4 @@ -26,7 +26,7 @@ AC_DEFUN([GUIX_SYSTEM_TYPE], [ AC_REQUIRE([AC_CANONICAL_HOST]) AC_PATH_PROG([SED], [sed]) - AC_ARG_WITH(system, AC_HELP_STRING([--with-system=SYSTEM], + AC_ARG_WITH(system, AS_HELP_STRING([--with-system=SYSTEM], [Platform identifier (e.g., `i686-linux').]), [guix_system="$withval"], [case "$host_cpu" in @@ -78,7 +78,7 @@ dnl Assert that this is a system to which the distro is ported. AC_DEFUN([GUIX_ASSERT_SUPPORTED_SYSTEM], [ AC_REQUIRE([GUIX_SYSTEM_TYPE]) - AC_ARG_WITH([courage], [AC_HELP_STRING([--with-courage], + AC_ARG_WITH([courage], [AS_HELP_STRING([--with-courage], [Assert that even if this platform is unsupported, you will be courageous and port the GNU System distribution to it (see "GNU Distribution" in the manual.)])], diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 8413819114..b5551b87ae 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -262,6 +262,7 @@ public: LocalStore & store; std::shared_ptr<Agent> hook; + std::shared_ptr<Agent> substituter; Worker(LocalStore & store); ~Worker(); @@ -2773,15 +2774,6 @@ private: /* Path info returned by the substituter's query info operation. */ SubstitutablePathInfo info; - /* Pipe for the substituter's standard output. */ - Pipe outPipe; - - /* Pipe for the substituter's standard error. */ - Pipe logPipe; - - /* The process ID of the builder. */ - Pid pid; - /* Lock on the store path. */ std::shared_ptr<PathLocks> outputLock; @@ -2795,6 +2787,17 @@ private: typedef void (SubstitutionGoal::*GoalState)(); GoalState state; + /* The substituter. */ + std::shared_ptr<Agent> substituter; + + /* Either the empty string, or the expected hash as returned by the + substituter. */ + string expectedHashStr; + + /* Either the empty string, or the status phrase returned by the + substituter. */ + string status; + void tryNext(); public: @@ -2840,7 +2843,7 @@ SubstitutionGoal::SubstitutionGoal(const Path & storePath, Worker & worker, bool SubstitutionGoal::~SubstitutionGoal() { - if (pid != -1) worker.childTerminated(pid); + if (substituter) worker.childTerminated(substituter->pid); } @@ -2848,9 +2851,9 @@ void SubstitutionGoal::timedOut() { if (settings.printBuildTrace) printMsg(lvlError, format("@ substituter-failed %1% timeout") % storePath); - if (pid != -1) { - pid_t savedPid = pid; - pid.kill(); + if (substituter) { + pid_t savedPid = substituter->pid; + substituter.reset(); worker.childTerminated(savedPid); } amDone(ecFailed); @@ -2977,44 +2980,29 @@ void SubstitutionGoal::tryToRun() printMsg(lvlInfo, format("fetching path `%1%'...") % storePath); - outPipe.create(); - logPipe.create(); - destPath = repair ? storePath + ".tmp" : storePath; /* Remove the (stale) output path if it exists. */ if (pathExists(destPath)) deletePath(destPath); - worker.store.setSubstituterEnv(); - - /* Fill in the arguments. */ - Strings args; - args.push_back("guix"); - args.push_back("substitute"); - args.push_back("--substitute"); - args.push_back(storePath); - args.push_back(destPath); - - /* Fork the substitute program. */ - pid = startProcess([&]() { - - commonChildInit(logPipe); - - if (dup2(outPipe.writeSide, STDOUT_FILENO) == -1) - throw SysError("cannot dup output pipe into stdout"); + if (!worker.substituter) { + const Strings args = { "substitute", "--substitute" }; + const std::map<string, string> env = { { "_NIX_OPTIONS", settings.pack() } }; + worker.substituter = std::make_shared<Agent>(settings.guixProgram, args, env); + } - execv(settings.guixProgram.c_str(), stringsToCharPtrs(args).data()); + /* Borrow the worker's substituter. */ + if (!substituter) substituter.swap(worker.substituter); - throw SysError(format("executing `%1% substitute'") % settings.guixProgram); - }); + /* Send the request to the substituter. */ + writeLine(substituter->toAgent.writeSide, + (format("substitute %1% %2%") % storePath % destPath).str()); - pid.setSeparatePG(true); - pid.setKillSignal(SIGTERM); - outPipe.writeSide.close(); - logPipe.writeSide.close(); - worker.childStarted(shared_from_this(), - pid, singleton<set<int> >(logPipe.readSide), true, true); + set<int> fds; + fds.insert(substituter->fromAgent.readSide); + fds.insert(substituter->builderOut.readSide); + worker.childStarted(shared_from_this(), substituter->pid, fds, true, true); state = &SubstitutionGoal::finished; @@ -3029,54 +3017,51 @@ void SubstitutionGoal::finished() { trace("substitute finished"); - /* Since we got an EOF on the logger pipe, the substitute is - presumed to have terminated. */ - pid_t savedPid = pid; - int status = pid.wait(true); - - /* So the child is gone now. */ - worker.childTerminated(savedPid); + /* Remove the 'guix substitute' process from the list of children. */ + worker.childTerminated(substituter->pid); - /* Close the read side of the logger pipe. */ - logPipe.readSide.close(); - - /* Get the hash info from stdout. */ - string dummy = readLine(outPipe.readSide); - string expectedHashStr = statusOk(status) ? readLine(outPipe.readSide) : ""; - outPipe.readSide.close(); + /* If max-jobs > 1, the worker might have created a new 'substitute' + process in the meantime. If that is the case, terminate ours; + otherwise, give it back to the worker. */ + if (worker.substituter) { + substituter.reset (); + } else { + worker.substituter.swap(substituter); + } /* Check the exit status and the build result. */ HashResult hash; try { - if (!statusOk(status)) - throw SubstError(format("fetching path `%1%' %2%") - % storePath % statusToString(status)); + if (status != "success") + throw SubstError(format("fetching path `%1%' (status: '%2%')") + % storePath % status); if (!pathExists(destPath)) throw SubstError(format("substitute did not produce path `%1%'") % destPath); + if (expectedHashStr == "") + throw SubstError(format("substituter did not communicate hash for `%1'") % storePath); + hash = hashPath(htSHA256, destPath); /* Verify the expected hash we got from the substituer. */ - if (expectedHashStr != "") { - size_t n = expectedHashStr.find(':'); - if (n == string::npos) - throw Error(format("bad hash from substituter: %1%") % expectedHashStr); - HashType hashType = parseHashType(string(expectedHashStr, 0, n)); - if (hashType == htUnknown) - throw Error(format("unknown hash algorithm in `%1%'") % expectedHashStr); - Hash expectedHash = parseHash16or32(hashType, string(expectedHashStr, n + 1)); - Hash actualHash = hashType == htSHA256 ? hash.first : hashPath(hashType, destPath).first; - if (expectedHash != actualHash) { - if (settings.printBuildTrace) - printMsg(lvlError, format("@ hash-mismatch %1% %2% %3% %4%") - % storePath % "sha256" - % printHash16or32(expectedHash) - % printHash16or32(actualHash)); - throw SubstError(format("hash mismatch for substituted item `%1%'") % storePath); - } - } + size_t n = expectedHashStr.find(':'); + if (n == string::npos) + throw Error(format("bad hash from substituter: %1%") % expectedHashStr); + HashType hashType = parseHashType(string(expectedHashStr, 0, n)); + if (hashType == htUnknown) + throw Error(format("unknown hash algorithm in `%1%'") % expectedHashStr); + Hash expectedHash = parseHash16or32(hashType, string(expectedHashStr, n + 1)); + Hash actualHash = hashType == htSHA256 ? hash.first : hashPath(hashType, destPath).first; + if (expectedHash != actualHash) { + if (settings.printBuildTrace) + printMsg(lvlError, format("@ hash-mismatch %1% %2% %3% %4%") + % storePath % "sha256" + % printHash16or32(expectedHash) + % printHash16or32(actualHash)); + throw SubstError(format("hash mismatch for substituted item `%1%'") % storePath); + } } catch (SubstError & e) { @@ -3122,16 +3107,40 @@ void SubstitutionGoal::finished() void SubstitutionGoal::handleChildOutput(int fd, const string & data) { - assert(fd == logPipe.readSide); - if (verbosity >= settings.buildVerbosity) writeToStderr(data); - /* Don't write substitution output to a log file for now. We - probably should, though. */ + if (verbosity >= settings.buildVerbosity + && fd == substituter->builderOut.readSide) { + writeToStderr(data); + /* Don't write substitution output to a log file for now. We + probably should, though. */ + } + + if (fd == substituter->fromAgent.readSide) { + /* DATA may consist of several lines. Process them one by one. */ + string input = data; + while (!input.empty()) { + /* Process up to the first newline. */ + size_t end = input.find_first_of("\n"); + string trimmed = (end != string::npos) ? input.substr(0, end) : input; + + /* Update the goal's state accordingly. */ + if (expectedHashStr == "") { + expectedHashStr = trimmed; + } else if (status == "") { + status = trimmed; + worker.wakeUp(shared_from_this()); + } else { + printMsg(lvlError, format("unexpected substituter message '%1%'") % input); + } + + input = (end != string::npos) ? input.substr(end + 1) : ""; + } + } } void SubstitutionGoal::handleEOF(int fd) { - if (fd == logPipe.readSide) worker.wakeUp(shared_from_this()); + worker.wakeUp(shared_from_this()); } diff --git a/nix/libstore/local-store.cc b/nix/libstore/local-store.cc index 8c479002ec..c304e2ddd1 100644 --- a/nix/libstore/local-store.cc +++ b/nix/libstore/local-store.cc @@ -57,7 +57,6 @@ void checkStoreNotSymlink() LocalStore::LocalStore(bool reserveSpace) - : didSetSubstituterEnv(false) { schemaPath = settings.nixDBPath + "/schema"; @@ -183,21 +182,6 @@ LocalStore::LocalStore(bool reserveSpace) LocalStore::~LocalStore() { try { - if (runningSubstituter) { - RunningSubstituter &i = *runningSubstituter; - if (!i.disabled) { - i.to.close(); - i.from.close(); - i.error.close(); - if (i.pid != -1) - i.pid.wait(true); - } - } - } catch (...) { - ignoreException(); - } - - try { if (fdTempRoots != -1) { fdTempRoots.close(); unlink(fnTempRoots.c_str()); @@ -796,96 +780,31 @@ Path LocalStore::queryPathFromHashPart(const string & hashPart) }); } - -void LocalStore::setSubstituterEnv() -{ - if (didSetSubstituterEnv) return; - - /* Pass configuration options (including those overridden with - --option) to substituters. */ - setenv("_NIX_OPTIONS", settings.pack().c_str(), 1); - - didSetSubstituterEnv = true; -} - - -void LocalStore::startSubstituter(RunningSubstituter & run) -{ - if (run.disabled || run.pid != -1) return; - - debug(format("starting substituter program `%1% substitute'") - % settings.guixProgram); - - Pipe toPipe, fromPipe, errorPipe; - - toPipe.create(); - fromPipe.create(); - errorPipe.create(); - - setSubstituterEnv(); - - run.pid = startProcess([&]() { - if (dup2(toPipe.readSide, STDIN_FILENO) == -1) - throw SysError("dupping stdin"); - if (dup2(fromPipe.writeSide, STDOUT_FILENO) == -1) - throw SysError("dupping stdout"); - if (dup2(errorPipe.writeSide, STDERR_FILENO) == -1) - throw SysError("dupping stderr"); - execl(settings.guixProgram.c_str(), "guix", "substitute", "--query", NULL); - throw SysError(format("executing `%1%'") % settings.guixProgram); - }); - - run.to = toPipe.writeSide.borrow(); - run.from = run.fromBuf.fd = fromPipe.readSide.borrow(); - run.error = errorPipe.readSide.borrow(); - - toPipe.readSide.close(); - fromPipe.writeSide.close(); - errorPipe.writeSide.close(); - - /* The substituter may exit right away if it's disabled in any way - (e.g. copy-from-other-stores.pl will exit if no other stores - are configured). */ - try { - getLineFromSubstituter(run); - } catch (EndOfFile & e) { - run.to.close(); - run.from.close(); - run.error.close(); - run.disabled = true; - if (run.pid.wait(true) != 0) throw; - } -} - - /* Read a line from the substituter's stdout, while also processing its stderr. */ -string LocalStore::getLineFromSubstituter(RunningSubstituter & run) +string LocalStore::getLineFromSubstituter(Agent & run) { string res, err; - /* We might have stdout data left over from the last time. */ - if (run.fromBuf.hasData()) goto haveData; - while (1) { checkInterrupt(); fd_set fds; FD_ZERO(&fds); - FD_SET(run.from, &fds); - FD_SET(run.error, &fds); + FD_SET(run.fromAgent.readSide, &fds); + FD_SET(run.builderOut.readSide, &fds); /* Wait for data to appear on the substituter's stdout or stderr. */ - if (select(run.from > run.error ? run.from + 1 : run.error + 1, &fds, 0, 0, 0) == -1) { + if (select(std::max(run.fromAgent.readSide, run.builderOut.readSide) + 1, &fds, 0, 0, 0) == -1) { if (errno == EINTR) continue; throw SysError("waiting for input from the substituter"); } /* Completely drain stderr before dealing with stdout. */ - if (FD_ISSET(run.error, &fds)) { + if (FD_ISSET(run.builderOut.readSide, &fds)) { char buf[4096]; - ssize_t n = read(run.error, (unsigned char *) buf, sizeof(buf)); + ssize_t n = read(run.builderOut.readSide, (unsigned char *) buf, sizeof(buf)); if (n == -1) { if (errno == EINTR) continue; throw SysError("reading from substituter's stderr"); @@ -903,23 +822,20 @@ string LocalStore::getLineFromSubstituter(RunningSubstituter & run) } /* Read from stdout until we get a newline or the buffer is empty. */ - else if (run.fromBuf.hasData() || FD_ISSET(run.from, &fds)) { - haveData: - do { - unsigned char c; - run.fromBuf(&c, 1); - if (c == '\n') { - if (!err.empty()) printMsg(lvlError, "substitute: " + err); - return res; - } - res += c; - } while (run.fromBuf.hasData()); + else if (FD_ISSET(run.fromAgent.readSide, &fds)) { + unsigned char c; + readFull(run.fromAgent.readSide, (unsigned char *) &c, 1); + if (c == '\n') { + if (!err.empty()) printMsg(lvlError, "substitute: " + err); + return res; + } + res += c; } } } -template<class T> T LocalStore::getIntLineFromSubstituter(RunningSubstituter & run) +template<class T> T LocalStore::getIntLineFromSubstituter(Agent & run) { string s = getLineFromSubstituter(run); T res; @@ -934,51 +850,47 @@ PathSet LocalStore::querySubstitutablePaths(const PathSet & paths) if (!settings.useSubstitutes || paths.empty()) return res; - if (!runningSubstituter) { - std::unique_ptr<RunningSubstituter>fresh(new RunningSubstituter); - runningSubstituter.swap(fresh); - } + Agent & run = *substituter(); - RunningSubstituter & run = *runningSubstituter; - startSubstituter(run); - - if (!run.disabled) { - string s = "have "; - foreach (PathSet::const_iterator, j, paths) - if (res.find(*j) == res.end()) { s += *j; s += " "; } - writeLine(run.to, s); - while (true) { - /* FIXME: we only read stderr when an error occurs, so - substituters should only write (short) messages to - stderr when they fail. I.e. they shouldn't write debug - output. */ - Path path = getLineFromSubstituter(run); - if (path == "") break; - res.insert(path); - } + string s = "have "; + foreach (PathSet::const_iterator, j, paths) + if (res.find(*j) == res.end()) { s += *j; s += " "; } + writeLine(run.toAgent.writeSide, s); + while (true) { + /* FIXME: we only read stderr when an error occurs, so + substituters should only write (short) messages to + stderr when they fail. I.e. they shouldn't write debug + output. */ + Path path = getLineFromSubstituter(run); + if (path == "") break; + res.insert(path); } return res; } -void LocalStore::querySubstitutablePathInfos(PathSet & paths, SubstitutablePathInfos & infos) +std::shared_ptr<Agent> LocalStore::substituter() { - if (!settings.useSubstitutes) return; - if (!runningSubstituter) { - std::unique_ptr<RunningSubstituter>fresh(new RunningSubstituter); - runningSubstituter.swap(fresh); + const Strings args = { "substitute", "--query" }; + const std::map<string, string> env = { { "_NIX_OPTIONS", settings.pack() } }; + runningSubstituter = std::make_shared<Agent>(settings.guixProgram, args, env); } - RunningSubstituter & run = *runningSubstituter; - startSubstituter(run); - if (run.disabled) return; + return runningSubstituter; +} + +void LocalStore::querySubstitutablePathInfos(PathSet & paths, SubstitutablePathInfos & infos) +{ + if (!settings.useSubstitutes) return; + + Agent & run = *substituter(); string s = "info "; foreach (PathSet::const_iterator, i, paths) if (infos.find(*i) == infos.end()) { s += *i; s += " "; } - writeLine(run.to, s); + writeLine(run.toAgent.writeSide, s); while (true) { Path path = getLineFromSubstituter(run); diff --git a/nix/libstore/local-store.hh b/nix/libstore/local-store.hh index 2e48cf03e6..9ba37219da 100644 --- a/nix/libstore/local-store.hh +++ b/nix/libstore/local-store.hh @@ -38,21 +38,14 @@ struct OptimiseStats }; -struct RunningSubstituter -{ - Pid pid; - AutoCloseFD to, from, error; - FdSource fromBuf; - bool disabled; - RunningSubstituter() : disabled(false) { }; -}; - - class LocalStore : public StoreAPI { private: /* The currently running substituter or empty. */ - std::unique_ptr<RunningSubstituter> runningSubstituter; + std::shared_ptr<Agent> runningSubstituter; + + /* Ensure the substituter is running and return it. */ + std::shared_ptr<Agent> substituter(); Path linksDir; @@ -178,8 +171,6 @@ public: void markContentsGood(const Path & path); - void setSubstituterEnv(); - void createUser(const std::string & userName, uid_t userId); private: @@ -213,8 +204,6 @@ private: /* Cache for pathContentsGood(). */ std::map<Path, bool> pathContentsGoodCache; - bool didSetSubstituterEnv; - /* The file to which we write our temporary roots. */ Path fnTempRoots; AutoCloseFD fdTempRoots; @@ -262,11 +251,9 @@ private: void removeUnusedLinks(const GCState & state); - void startSubstituter(RunningSubstituter & runningSubstituter); - - string getLineFromSubstituter(RunningSubstituter & run); + string getLineFromSubstituter(Agent & run); - template<class T> T getIntLineFromSubstituter(RunningSubstituter & run); + template<class T> T getIntLineFromSubstituter(Agent & run); Path createTempDirInStore(); diff --git a/nix/libutil/util.cc b/nix/libutil/util.cc index 59a2981359..69f1c634a9 100644 --- a/nix/libutil/util.cc +++ b/nix/libutil/util.cc @@ -1173,7 +1173,7 @@ void commonChildInit(Pipe & logPipe) ////////////////////////////////////////////////////////////////////// -Agent::Agent(const string &command, const Strings &args) +Agent::Agent(const string &command, const Strings &args, const std::map<string, string> &env) { debug(format("starting agent '%1%'") % command); @@ -1191,6 +1191,10 @@ Agent::Agent(const string &command, const Strings &args) commonChildInit(fromAgent); + for (auto pair: env) { + setenv(pair.first.c_str(), pair.second.c_str(), 1); + } + if (chdir("/") == -1) throw SysError("changing into `/"); /* Dup the communication pipes. */ diff --git a/nix/libutil/util.hh b/nix/libutil/util.hh index 13cff44316..880b0e93b2 100644 --- a/nix/libutil/util.hh +++ b/nix/libutil/util.hh @@ -7,6 +7,7 @@ #include <dirent.h> #include <unistd.h> #include <signal.h> +#include <map> #include <functional> #include <cstdio> @@ -281,8 +282,10 @@ struct Agent /* The process ID of the agent. */ Pid pid; - /* The command and arguments passed to the agent. */ - Agent(const string &command, const Strings &args); + /* The command and arguments passed to the agent along with a list of + environment variable name/value pairs. */ + Agent(const string &command, const Strings &args, + const std::map<string, string> &env = std::map<string, string>()); ~Agent(); }; diff --git a/po/guix/POTFILES.in b/po/guix/POTFILES.in index 5afb13ffdb..1aec3bef3c 100644 --- a/po/guix/POTFILES.in +++ b/po/guix/POTFILES.in @@ -25,6 +25,7 @@ gnu/installer/newt/network.scm gnu/installer/newt/page.scm gnu/installer/newt/partition.scm gnu/installer/newt/services.scm +gnu/installer/newt/substitutes.scm gnu/installer/newt/timezone.scm gnu/installer/newt/user.scm gnu/installer/newt/utils.scm diff --git a/scripts/guix.in b/scripts/guix.in index 0a3ab1f64d..e0194d6ea2 100644 --- a/scripts/guix.in +++ b/scripts/guix.in @@ -1,4 +1,4 @@ -#!@GUILE@ \ +#!@abs_top_builddir@/guile \ --no-auto-compile -e main -s !# ;;; GNU Guix --- Functional package management for GNU diff --git a/tests/glob.scm b/tests/glob.scm index 3134069789..2a5a40c3c6 100644 --- a/tests/glob.scm +++ b/tests/glob.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,7 +54,8 @@ "foo[abc]bar" => '("foo" (set #\a #\b #\c) "bar") "foo[a[b]c]bar" => '("foo" (set #\a #\[ #\b #\] #\c) "bar") "[123]x" => '((set #\1 #\2 #\3) "x") - "[a-z]" => '((range #\a #\z))) + "[a-z]" => '((range #\a #\z)) + "**/*.scm" => '(**/ * ".scm")) (test-glob-match ("foo" matches "foo" (and not "foobar" "barfoo")) @@ -64,6 +66,8 @@ ("ab[0-9]c" matches "ab0c" "ab7c" "ab9c" (and not "ab-c" "ab00c" "ab3")) ("ab[cdefg]" matches "abc" "abd" "abg" - (and not "abh" "abcd" "ab["))) + (and not "abh" "abcd" "ab[")) + ("foo/**/*.scm" matches "foo/bar/baz.scm" "foo/bar.scm" "foo/bar/baz/zab.scm" + (and not "foo/bar/baz.java" "foo/bar.smc"))) (test-end "glob") diff --git a/tests/lint.scm b/tests/lint.scm index 9b230814a5..7c24611934 100644 --- a/tests/lint.scm +++ b/tests/lint.scm @@ -315,7 +315,7 @@ `(("python-setuptools" ,python-setuptools)))))) (check-inputs-should-not-be-an-input-at-all pkg)))) -(test-equal "patches: file names" +(test-equal "file patches: different file name -> warning" "file names of patches should start with the package name" (single-lint-warning-message (let ((pkg (dummy-package "x" @@ -324,6 +324,37 @@ (patches (list "/path/to/y.patch"))))))) (check-patch-file-names pkg)))) +(test-equal "file patches: same file name -> no warnings" + '() + (let ((pkg (dummy-package "x" + (source + (dummy-origin + (patches (list "/path/to/x.patch"))))))) + (check-patch-file-names pkg))) + +(test-equal "<origin> patches: different file name -> warning" + "file names of patches should start with the package name" + (single-lint-warning-message + (let ((pkg (dummy-package "x" + (source + (dummy-origin + (patches + (list + (dummy-origin + (file-name "y.patch"))))))))) + (check-patch-file-names pkg)))) + +(test-equal "<origin> patches: same file name -> no warnings" + '() + (let ((pkg (dummy-package "x" + (source + (dummy-origin + (patches + (list + (dummy-origin + (file-name "x.patch"))))))))) + (check-patch-file-names pkg))) + (test-equal "patches: file name too long" (string-append "x-" (make-string 100 #\a) diff --git a/tests/opam.scm b/tests/opam.scm index ec2a668307..11984b56a6 100644 --- a/tests/opam.scm +++ b/tests/opam.scm @@ -80,38 +80,41 @@ url { (set! test-source-hash (call-with-input-file file-name port-sha256)))) (_ (error "Unexpected URL: " url))))) - (let ((my-package (string-append test-repo "/packages/foo/foo.1.0.0"))) - (mkdir-p my-package) - (with-output-to-file (string-append my-package "/opam") - (lambda _ - (format #t "~a" test-opam-file)))) - (match (opam->guix-package "foo" #:repository test-repo) - (('package - ('name "ocaml-foo") - ('version "1.0.0") - ('source ('origin - ('method 'url-fetch) - ('uri "https://example.org/foo-1.0.0.tar.gz") - ('sha256 - ('base32 - (? string? hash))))) - ('build-system 'ocaml-build-system) - ('propagated-inputs - ('quasiquote - (("ocaml-zarith" ('unquote 'ocaml-zarith))))) - ('native-inputs - ('quasiquote - (("ocaml-alcotest" ('unquote 'ocaml-alcotest)) - ("ocamlbuild" ('unquote 'ocamlbuild))))) - ('home-page "https://example.org/") - ('synopsis "Some example package") - ('description "This package is just an example.") - ('license #f)) - (string=? (bytevector->nix-base32-string - test-source-hash) - hash)) - (x - (pk 'fail x #f))))) + (mock ((guix import opam) get-opam-repository + (const test-repo)) + (let ((my-package (string-append test-repo + "/packages/foo/foo.1.0.0"))) + (mkdir-p my-package) + (with-output-to-file (string-append my-package "/opam") + (lambda _ + (format #t "~a" test-opam-file)))) + (match (opam->guix-package "foo" #:repo test-repo) + (('package + ('name "ocaml-foo") + ('version "1.0.0") + ('source ('origin + ('method 'url-fetch) + ('uri "https://example.org/foo-1.0.0.tar.gz") + ('sha256 + ('base32 + (? string? hash))))) + ('build-system 'ocaml-build-system) + ('propagated-inputs + ('quasiquote + (("ocaml-zarith" ('unquote 'ocaml-zarith))))) + ('native-inputs + ('quasiquote + (("ocaml-alcotest" ('unquote 'ocaml-alcotest)) + ("ocamlbuild" ('unquote 'ocamlbuild))))) + ('home-page "https://example.org/") + ('synopsis "Some example package") + ('description "This package is just an example.") + ('license #f)) + (string=? (bytevector->nix-base32-string + test-source-hash) + hash)) + (x + (pk 'fail x #f)))))) ;; Test the opam file parser ;; We fold over some test cases. Each case is a pair of the string to parse and the diff --git a/tests/profiles.scm b/tests/profiles.scm index 055924ba3e..2dec42bec1 100644 --- a/tests/profiles.scm +++ b/tests/profiles.scm @@ -183,6 +183,16 @@ (equal? (list glibc) install) (equal? (list (cons guile-1.8.8 guile-2.0.9)) upgrade))))) +(test-assert "manifest-transaction-effects no double install or upgrades" + (let* ((m0 (manifest (list guile-1.8.8))) + (t (manifest-transaction + (install (list guile-2.0.9 glibc glibc))))) + (let-values (((remove install upgrade downgrade) + (manifest-transaction-effects m0 t))) + (and (null? remove) (null? downgrade) + (equal? (list glibc) install) + (equal? (list (cons guile-1.8.8 guile-2.0.9)) upgrade))))) + (test-assert "manifest-transaction-effects and downgrades" (let* ((m0 (manifest (list guile-2.0.9))) (t (manifest-transaction (install (list guile-1.8.8))))) @@ -191,6 +201,14 @@ (and (null? remove) (null? install) (null? upgrade) (equal? (list (cons guile-2.0.9 guile-1.8.8)) downgrade))))) +(test-assert "manifest-transaction-effects no double downgrade" + (let* ((m0 (manifest (list guile-2.0.9))) + (t (manifest-transaction (install (list guile-1.8.8 guile-1.8.8))))) + (let-values (((remove install upgrade downgrade) + (manifest-transaction-effects m0 t))) + (and (null? remove) (null? install) (null? upgrade) + (equal? (list (cons guile-2.0.9 guile-1.8.8)) downgrade))))) + (test-assert "manifest-transaction-effects and pseudo-upgrades" (let* ((m0 (manifest (list guile-2.0.9))) (t (manifest-transaction (install (list guile-2.0.9))))) @@ -209,6 +227,16 @@ (and (manifest-transaction-removal-candidate? guile-2.0.9 t) (not (manifest-transaction-removal-candidate? glibc t))))) +(test-assert "manifest-transaction-effects no double removal" + (let* ((m0 (manifest (list guile-2.0.9))) + (t (manifest-transaction + (remove (list (manifest-pattern (name "guile"))))))) + (let-values (((remove install upgrade downgrade) + (manifest-transaction-effects m0 t))) + (and (= 1 (length remove)) + (manifest-transaction-removal-candidate? guile-2.0.9 t) + (null? install) (null? downgrade) (null? upgrade))))) + (test-assertm "profile-derivation" (mlet* %store-monad ((entry -> (package->manifest-entry %bootstrap-guile)) @@ -356,6 +384,16 @@ (manifest-entry-search-paths (package->manifest-entry mpl))))) +(test-assert "packages->manifest, no duplicates" + (let ((expected + (manifest + (list + (package->manifest-entry packages:guile-2.2)))) + (manifest (packages->manifest + (list packages:guile-2.2 packages:guile-2.2)))) + (every manifest-entry=? (manifest-entries expected) + (manifest-entries manifest)))) + (test-equal "packages->manifest, propagated inputs" (map (match-lambda ((label package) diff --git a/tests/substitute.scm b/tests/substitute.scm index 6560612c40..b86ce09425 100644 --- a/tests/substitute.scm +++ b/tests/substitute.scm @@ -47,7 +47,8 @@ it writes to GUIX-WARNING-PORT a messages that matches ERROR-RX." (test-equal name '(1 #t) (let ((error-output (open-output-string))) - (parameterize ((guix-warning-port error-output)) + (parameterize ((current-error-port error-output) + (guix-warning-port error-output)) (catch 'quit (lambda () exp @@ -57,6 +58,14 @@ it writes to GUIX-WARNING-PORT a messages that matches ERROR-RX." (let ((message (get-output-string error-output))) (->bool (string-match error-rx message)))))))))) +(define (request-substitution item destination) + "Run 'guix substitute --substitute' to fetch ITEM to DESTINATION." + (parameterize ((guix-warning-port (current-error-port))) + (with-input-from-string (string-append "substitute " item " " + destination "\n") + (lambda () + (guix-substitute "--substitute"))))) + (define %public-key ;; This key is known to be in the ACL by default. (call-with-input-file (string-append %config-directory "/signing-key.pub") @@ -183,6 +192,11 @@ a file for NARINFO." ;; Transmit these options to 'guix substitute'. (substitute-urls (list (getenv "GUIX_BINARY_SUBSTITUTE_URL"))) +;; Never use file descriptor 4, unlike what happens when invoked by the +;; daemon. +(%error-to-file-descriptor-4? #f) + + (test-equal "query narinfo without signature" "" ; not substitutable @@ -283,10 +297,12 @@ System: mips64el-linux\n") (test-quit "substitute, no signature" "no valid substitute" (with-narinfo %narinfo - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "foo"))) + (with-input-from-string (string-append "substitute " + (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo" + " foo\n") + (lambda () + (guix-substitute "--substitute"))))) (test-quit "substitute, invalid hash" "no valid substitute" @@ -294,10 +310,12 @@ System: mips64el-linux\n") (with-narinfo (string-append %narinfo "Signature: " (signature-field "different body") "\n") - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "foo"))) + (with-input-from-string (string-append "substitute " + (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo" + " foo\n") + (lambda () + (guix-substitute "--substitute"))))) (test-quit "substitute, unauthorized key" "no valid substitute" @@ -306,10 +324,12 @@ System: mips64el-linux\n") %narinfo #:public-key %wrong-public-key) "\n") - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "foo"))) + (with-input-from-string (string-append "substitute " + (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo" + " foo\n") + (lambda () + (guix-substitute "--substitute"))))) (test-equal "substitute, authorized key" "Substitutable data." @@ -318,10 +338,9 @@ System: mips64el-linux\n") (dynamic-wind (const #t) (lambda () - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved") + (request-substitution (string-append (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") + "substitute-retrieved") (call-with-input-file "substitute-retrieved" get-string-all)) (lambda () (false-if-exception (delete-file "substitute-retrieved")))))) @@ -351,10 +370,9 @@ System: mips64el-linux\n") (map (cut string-append "file://" <>) (list %alternate-substitute-directory %main-substitute-directory)))) - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved")) + (request-substitution (string-append (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") + "substitute-retrieved")) (call-with-input-file "substitute-retrieved" get-string-all)) (lambda () (false-if-exception (delete-file "substitute-retrieved"))))))) @@ -380,10 +398,9 @@ System: mips64el-linux\n") (map (cut string-append "file://" <>) (list %alternate-substitute-directory %main-substitute-directory)))) - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved")) + (request-substitution (string-append (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") + "substitute-retrieved")) (call-with-input-file "substitute-retrieved" get-string-all)) (lambda () (false-if-exception (delete-file "substitute-retrieved"))))))) @@ -416,10 +433,9 @@ System: mips64el-linux\n") (map (cut string-append "file://" <>) (list %alternate-substitute-directory %main-substitute-directory)))) - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved")) + (request-substitution (string-append (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") + "substitute-retrieved")) (call-with-input-file "substitute-retrieved" get-string-all)) (lambda () (false-if-exception (delete-file "substitute-retrieved"))))))) @@ -450,10 +466,9 @@ System: mips64el-linux\n") (map (cut string-append "file://" <>) (list %alternate-substitute-directory %main-substitute-directory)))) - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved")) + (request-substitution (string-append (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") + "substitute-retrieved")) (call-with-input-file "substitute-retrieved" get-string-all)) (lambda () (false-if-exception (delete-file "substitute-retrieved"))))))) @@ -469,10 +484,12 @@ System: mips64el-linux\n") #:public-key %wrong-public-key)) %main-substitute-directory - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved")))) + (with-input-from-string (string-append "substitute " + (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo" + " substitute-retrieved\n") + (lambda () + (guix-substitute "--substitute")))))) (test-equal "substitute, narinfo with several URLs" "Substitutable data." @@ -512,10 +529,9 @@ System: mips64el-linux\n"))) (parameterize ((substitute-urls (list (string-append "file://" %main-substitute-directory)))) - (guix-substitute "--substitute" - (string-append (%store-prefix) - "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") - "substitute-retrieved")) + (request-substitution (string-append (%store-prefix) + "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo") + "substitute-retrieved")) (call-with-input-file "substitute-retrieved" get-string-all)) (lambda () (false-if-exception (delete-file "substitute-retrieved"))))))) |